@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300&family=Roboto+Slab:wght@300&family=Roboto:wght@400&display=swap");
html {
  scroll-behavior: smooth;
  overflow-x: hidden; }

html, body {
  margin: 0;
  padding: 0;
  background-color: #161616;
  font-family: sans;
  color: white;
  box-sizing: border-box;
  font-family: 'Roboto', sans-serif; }

p, h1, h2, h3, li, a {
  color: white;
  box-sizing: border-box; }

h1, h2, h3 {
  color: white;
  font-family: 'Roboto Slab', serif !important; }

label {
  color: #8d8d8d;
  margin-bottom: 5px; }

input {
  background-color: #262626;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  outline: none;
  padding: 10px;
  color: white; }
  input:active, input:focus {
    border: 2px solid white; }

button {
  background-color: #0f62fe;
  border: none;
  outline: none;
  color: white;
  padding: 10px;
  font-size: 1.2em;
  font-weight: 300; }
  button:hover {
    background-color: #0353e9;
    cursor: pointer; }

button.danger {
  background-color: #da1e28; }
  button.danger:hover {
    background-color: #fa4d56; }

button.gray {
  background-color: #535353; }
  button.gray:hover {
    background-color: #393939; }

button.clear {
  background: none;
  outline: none;
  border: none;
  padding: 2px; }

.space-1 {
  width: 1px; }

.space-2 {
  width: 2px; }

.space-3 {
  width: 3px; }

.space-4 {
  width: 4px; }

.space-5 {
  width: 5px; }

.space-6 {
  width: 6px; }

.space-7 {
  width: 7px; }

.space-8 {
  width: 8px; }

.space-9 {
  width: 9px; }

.space-10 {
  width: 10px; }

.space-11 {
  width: 11px; }

.space-12 {
  width: 12px; }

.space-13 {
  width: 13px; }

.space-14 {
  width: 14px; }

.space-15 {
  width: 15px; }

.space-16 {
  width: 16px; }

.space-17 {
  width: 17px; }

.space-18 {
  width: 18px; }

.space-19 {
  width: 19px; }

.space-20 {
  width: 20px; }

.space-21 {
  width: 21px; }

.space-22 {
  width: 22px; }

.space-23 {
  width: 23px; }

.space-24 {
  width: 24px; }

.space-25 {
  width: 25px; }

.space-26 {
  width: 26px; }

.space-27 {
  width: 27px; }

.space-28 {
  width: 28px; }

.space-29 {
  width: 29px; }

.space-30 {
  width: 30px; }

.space-31 {
  width: 31px; }

.space-32 {
  width: 32px; }

.space-33 {
  width: 33px; }

.space-34 {
  width: 34px; }

.space-35 {
  width: 35px; }

.space-36 {
  width: 36px; }

.space-37 {
  width: 37px; }

.space-38 {
  width: 38px; }

.space-39 {
  width: 39px; }

.space-40 {
  width: 40px; }

.space-41 {
  width: 41px; }

.space-42 {
  width: 42px; }

.space-43 {
  width: 43px; }

.space-44 {
  width: 44px; }

.space-45 {
  width: 45px; }

.space-46 {
  width: 46px; }

.space-47 {
  width: 47px; }

.space-48 {
  width: 48px; }

.space-49 {
  width: 49px; }

.space-50 {
  width: 50px; }

.space-51 {
  width: 51px; }

.space-52 {
  width: 52px; }

.space-53 {
  width: 53px; }

.space-54 {
  width: 54px; }

.space-55 {
  width: 55px; }

.space-56 {
  width: 56px; }

.space-57 {
  width: 57px; }

.space-58 {
  width: 58px; }

.space-59 {
  width: 59px; }

.space-60 {
  width: 60px; }

.space-61 {
  width: 61px; }

.space-62 {
  width: 62px; }

.space-63 {
  width: 63px; }

.space-64 {
  width: 64px; }

.space-65 {
  width: 65px; }

.space-66 {
  width: 66px; }

.space-67 {
  width: 67px; }

.space-68 {
  width: 68px; }

.space-69 {
  width: 69px; }

.space-70 {
  width: 70px; }

.space-71 {
  width: 71px; }

.space-72 {
  width: 72px; }

.space-73 {
  width: 73px; }

.space-74 {
  width: 74px; }

.space-75 {
  width: 75px; }

.space-76 {
  width: 76px; }

.space-77 {
  width: 77px; }

.space-78 {
  width: 78px; }

.space-79 {
  width: 79px; }

.space-80 {
  width: 80px; }

.space-81 {
  width: 81px; }

.space-82 {
  width: 82px; }

.space-83 {
  width: 83px; }

.space-84 {
  width: 84px; }

.space-85 {
  width: 85px; }

.space-86 {
  width: 86px; }

.space-87 {
  width: 87px; }

.space-88 {
  width: 88px; }

.space-89 {
  width: 89px; }

.space-90 {
  width: 90px; }

.space-91 {
  width: 91px; }

.space-92 {
  width: 92px; }

.space-93 {
  width: 93px; }

.space-94 {
  width: 94px; }

.space-95 {
  width: 95px; }

.space-96 {
  width: 96px; }

.space-97 {
  width: 97px; }

.space-98 {
  width: 98px; }

.space-99 {
  width: 99px; }

.space-100 {
  width: 100px; }

.tooltip:hover .tooltiptext {
  visibility: visible; }

.tooltip .tooltiptext {
  visibility: hidden;
  position: absolute;
  border-radius: 5px;
  background-color: white;
  color: black;
  padding: 5px;
  margin-left: -25px;
  min-width: 50px; }

.btn-icon:hover {
  cursor: pointer; }

#page-header {
  background-color: #262626;
  padding: 10px; }

#delete-modal {
  z-index: 10000;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100vw;
  background-color: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  align-items: center; }
  #delete-modal #modal-content {
    background-color: #161616;
    width: 20vw; }
    #delete-modal #modal-content #modal-title {
      font-size: 1.5em;
      margin-bottom: 10px;
      padding: 10px; }
    #delete-modal #modal-content #modal-text {
      margin-bottom: 10px;
      padding: 10px; }
    #delete-modal #modal-content #modal-buttons {
      width: 100%;
      display: flex; }
      #delete-modal #modal-content #modal-buttons button {
        width: 50%; }

#main-container.svelte-cmqi37 {
  width: 97vw;
  position: absolute;
  top: 5vh;
  left: 3vw; }

.active {
  border-left: 5px solid #0f62fe !important; }

#sidebar.svelte-bwebcx.svelte-bwebcx {
  width: 3vw;
  height: 95vh;
  position: fixed;
  top: 5vh;
  left: 0;
  background-color: white;
  transition: width .25s; }

#sidebar.svelte-bwebcx .navitem.svelte-bwebcx {
  width: 3vw;
  height: 3vw;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box; }

#sidebar.svelte-bwebcx .navitem.svelte-bwebcx:hover {
  background-color: #e0e0e0; }

#sidebar.svelte-bwebcx .navitem .label.svelte-bwebcx {
  display: none;
  color: #161616;
  font-size: 1.5em; }

#header.svelte-1f7l7pa.svelte-1f7l7pa {
  position: fixed;
  top: 0;
  left: 0;
  background-color: #202020;
  height: 5vh;
  width: 100vw;
  z-index: 10000000;
  display: flex;
  justify-content: space-between; }

#header.svelte-1f7l7pa #left.svelte-1f7l7pa {
  display: flex; }

#header.svelte-1f7l7pa #left #logotype.svelte-1f7l7pa {
  font-family: 'Roboto Slab', serif;
  padding-left: 10px;
  display: flex;
  align-items: center;
  font-size: 1.4em; }

#header.svelte-1f7l7pa #left #logotype #company.svelte-1f7l7pa {
  font-weight: bolder;
  padding-right: 2px; }

#header.svelte-1f7l7pa #left #logotype #system.svelte-1f7l7pa {
  font-weight: 100; }

#header.svelte-1f7l7pa #left img.svelte-1f7l7pa {
  height: 100%; }

#header.svelte-1f7l7pa #buttons.svelte-1f7l7pa {
  display: flex;
  align-items: center;
  padding-right: 10px; }

main.svelte-us3doy.svelte-us3doy {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 90vh; }

main.svelte-us3doy #login-page.svelte-us3doy {
  width: 30vw;
  border: 2px solid #535353;
  padding: 20px; }

main.svelte-us3doy #login-page form.svelte-us3doy {
  display: flex;
  flex-direction: column; }

main.svelte-us3doy #login-page form label.svelte-us3doy, main.svelte-us3doy #login-page form button.svelte-us3doy {
  margin-top: 20px; }

main.svelte-us3doy #login-page .error label.svelte-us3doy {
  color: #fa4d56; }

main.svelte-us3doy #login-page .error input.svelte-us3doy {
  border: 2px solid #fa4d56; }

#controls-container.svelte-1twj7ia.svelte-1twj7ia {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  display: flex;
  justify-content: space-between; }

#controls-container.svelte-1twj7ia #controls-container-search.svelte-1twj7ia {
  width: 80%; }

#collections.svelte-1twj7ia.svelte-1twj7ia {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

#collections.svelte-1twj7ia .collection-tile.svelte-1twj7ia {
  background-color: #262626;
  width: 48%;
  padding: 10px;
  margin-bottom: 20px; }

#collections.svelte-1twj7ia .collection-tile .collection-tile-infos.svelte-1twj7ia {
  display: flex;
  justify-content: space-between; }

#collections.svelte-1twj7ia .collection-tile .collection-tile-progress.svelte-1twj7ia {
  margin-top: 20px; }

#collections.svelte-1twj7ia .collection-tile .name.svelte-1twj7ia, #collections.svelte-1twj7ia .collection-tile .period.svelte-1twj7ia {
  width: 30%; }

#collections.svelte-1twj7ia .collection-tile .label.svelte-1twj7ia {
  font-family: 'Roboto Slab', serif;
  font-size: .9em;
  color: #e0e0e0;
  padding-bottom: 5px; }

#collections.svelte-1twj7ia .collection-tile .value.svelte-1twj7ia {
  height: 30px;
  display: flex;
  align-items: center; }

#controls-container.svelte-13i54cy.svelte-13i54cy {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  display: flex;
  justify-content: space-between; }

#controls-container.svelte-13i54cy #controls-container-search.svelte-13i54cy {
  width: 80%; }

#collections.svelte-13i54cy.svelte-13i54cy {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

#collections.svelte-13i54cy .collection-tile.svelte-13i54cy {
  background-color: #262626;
  width: 30%;
  padding: 10px;
  margin-bottom: 20px; }

#collections.svelte-13i54cy .collection-tile .collection-tile-name.svelte-13i54cy {
  font-size: 1.5em; }

#collections.svelte-13i54cy .collection-tile.svelte-13i54cy:hover {
  cursor: pointer; }

.status-ok {
  background-color: #24a148 !important; }

.status-warning {
  background-color: #f1c21b !important; }

.status-error {
  background-color: #fa4d56 !important; }

#add-patch.svelte-ag9xg8.svelte-ag9xg8 {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  border: 1px solid #393939;
  padding: 10px; }

#add-patch.svelte-ag9xg8 #form.svelte-ag9xg8 {
  display: flex;
  justify-content: space-between;
  align-items: center; }

#add-patch.svelte-ag9xg8 #form div.svelte-ag9xg8 {
  display: flex;
  flex-direction: column; }

#add-patch.svelte-ag9xg8 #add-patch-points.svelte-ag9xg8 {
  width: 100%;
  margin-top: 10px; }

#add-patch.svelte-ag9xg8 #add-patch-points #add-patch-points-points-list.svelte-ag9xg8 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }

.points-list-invalid {
  border: 2px solid #fa4d56; }

.bx--tile--selectable {
  width: 10%;
  margin: 10px; }

#controls-container.svelte-ag9xg8.svelte-ag9xg8 {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  display: flex;
  justify-content: space-between; }

#controls-container.svelte-ag9xg8 #controls-container-search.svelte-ag9xg8 {
  width: 80%; }

#controls-container.svelte-ag9xg8 #controls-container-run.svelte-ag9xg8 {
  width: 15%;
  height: 100%; }

#controls-container.svelte-ag9xg8 #controls-container-run button.svelte-ag9xg8 {
  width: 100%;
  height: 100%; }

#patches.svelte-ag9xg8.svelte-ag9xg8 {
  width: 80vw;
  margin-left: 10vw;
  margin-top: 5vh;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

#patches.svelte-ag9xg8 .patch-tile.svelte-ag9xg8 {
  background-color: #262626;
  width: 100%;
  padding: 10px;
  margin-bottom: 20px; }

#patches.svelte-ag9xg8 .patch-tile .patch-tile-infos.svelte-ag9xg8 {
  display: flex;
  justify-content: space-between; }

#patches.svelte-ag9xg8 .patch-tile .name.svelte-ag9xg8 {
  width: 15%; }

#patches.svelte-ag9xg8 .patch-tile .label.svelte-ag9xg8 {
  font-family: 'Roboto Slab', serif;
  font-size: .9em;
  color: #e0e0e0;
  padding-bottom: 5px; }

#patches.svelte-ag9xg8 .patch-tile .value.svelte-ag9xg8 {
  height: 30px;
  display: flex;
  align-items: center; }

#visualizer.svelte-17kdqs7.svelte-17kdqs7 {
  width: 80vw;
  min-height: 60vh;
  margin-left: 10vw;
  margin-top: 5vh;
  background-color: #262626; }

#visualizer.svelte-17kdqs7 #visualizer-header.svelte-17kdqs7 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center; }

#visualizer.svelte-17kdqs7 #visualizer-header #visualizer-header-name.svelte-17kdqs7 {
  font-size: 1.2em;
  padding-left: 10px; }

#visualizer.svelte-17kdqs7 #visualizer-header #visualizer-header-close.svelte-17kdqs7 {
  font-size: 2em; }

#visualizer.svelte-17kdqs7 #tab-content.svelte-17kdqs7 {
  width: 100%;
  padding: 0; }

#visualizer.svelte-17kdqs7 #overview.svelte-17kdqs7 {
  display: flex; }

#visualizer.svelte-17kdqs7 #overview #visualizer-params.svelte-17kdqs7, #visualizer.svelte-17kdqs7 #overview #visualizer-points-map.svelte-17kdqs7, #visualizer.svelte-17kdqs7 #overview #visualizer-filtering.svelte-17kdqs7 {
  width: 100%; }

#visualizer.svelte-17kdqs7 #visualizer-params.svelte-17kdqs7, #visualizer.svelte-17kdqs7 #visualizer-points-map.svelte-17kdqs7, #visualizer.svelte-17kdqs7 #visualizer-filtering.svelte-17kdqs7 {
  width: 100%; }

#map.svelte-17kdqs7.svelte-17kdqs7 {
  width: 100%;
  min-height: 40vh; }

.chip {
  display: block;
  height: 20px;
  width: 20px;
  background-color: white;
  margin-right: 20px;
  border-radius: 50%; }

.chip-err {
  background-color: #fa4d56 !important; }

.chip-warn {
  background-color: #f1c21b !important; }

.chip-ok {
  background-color: #24a148 !important; }

.progress.svelte-1wbo9xm.svelte-1wbo9xm {
  display: flex;
  justify-content: space-between; }

.progress.svelte-1wbo9xm .bar.svelte-1wbo9xm {
  height: 15px;
  display: flex;
  width: 85%; }

.progress.svelte-1wbo9xm .bar .current.svelte-1wbo9xm {
  background-color: var(--color);
  height: 100%; }

.progress.svelte-1wbo9xm .bar .wanted.svelte-1wbo9xm {
  background-color: #262626;
  height: 100%;
  border: 2px dashed var(--color); }

.progress.svelte-1wbo9xm .bar .total.svelte-1wbo9xm {
  border: 2px dashed #535353;
  height: 100%; }

.progress.svelte-1wbo9xm .values.svelte-1wbo9xm {
  text-align: right;
  width: 15%; }

label.svelte-qozwl4.svelte-qozwl4 {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0); }

[role="search"].svelte-qozwl4.svelte-qozwl4 {
  position: relative;
  display: flex;
  max-width: 28rem;
  width: 100%;
  margin-left: 0.5rem;
  height: 3rem;
  background-color: #393939;
  color: #fff;
  transition: max-width 0.11s cubic-bezier(0.2, 0, 0.38, 0.9), background 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

[role="search"].svelte-qozwl4.svelte-qozwl4:not(.active) {
  max-width: 3rem;
  background-color: #161616; }

[role="search"].active.svelte-qozwl4.svelte-qozwl4 {
  outline: 2px solid #fff;
  outline-offset: -2px; }

[role="combobox"].svelte-qozwl4.svelte-qozwl4 {
  display: flex;
  flex-grow: 1;
  border-bottom: 1px solid #393939; }

input.svelte-qozwl4.svelte-qozwl4 {
  width: 100%;
  height: 3rem;
  padding: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375rem;
  letter-spacing: 0;
  color: #fff;
  caret-color: #fff;
  background-color: initial;
  border: none;
  outline: none;
  transition: opacity 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

input.svelte-qozwl4.svelte-qozwl4:not(.active) {
  opacity: 0;
  pointer-events: none; }

button.svelte-qozwl4.svelte-qozwl4 {
  width: 3rem;
  height: 100%;
  padding: 0;
  flex-shrink: 0;
  opacity: 1;
  transition: background-color 0.11s cubic-bezier(0.2, 0, 0.38, 0.9), opacity 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

.disabled.svelte-qozwl4.svelte-qozwl4 {
  border: none;
  pointer-events: none; }

[aria-label="Clear search"].svelte-qozwl4.svelte-qozwl4:hover {
  background-color: #4c4c4c; }

.hidden.svelte-qozwl4.svelte-qozwl4 {
  opacity: 0;
  display: none; }

ul.svelte-qozwl4.svelte-qozwl4 {
  position: absolute;
  z-index: 10000;
  padding: 1rem 0;
  left: 0;
  right: 0;
  top: 3rem;
  background-color: #161616;
  border: 1px solid #393939;
  border-top: none;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.5); }

[role="menuitem"].svelte-qozwl4.svelte-qozwl4 {
  padding: 6px 1rem;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  display: block;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #c6c6c6; }

.selected.svelte-qozwl4.svelte-qozwl4, [role="menuitem"].svelte-qozwl4.svelte-qozwl4:hover {
  background-color: #353535;
  color: #f4f4f4; }

[role="menuitem"].svelte-qozwl4 span.svelte-qozwl4 {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  text-transform: lowercase;
  color: #c6c6c6; }

.search-wrapper.svelte-16k0yud {
  position: relative;
  display: flex;
  max-width: 28rem;
  width: 100%;
  margin-left: 0.5rem;
  height: 3rem;
  background-color: #393939;
  color: #fff;
  transition: max-width 0.11s cubic-bezier(0.2, 0, 0.38, 0.9), background 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

.search-wrapper-hidden.svelte-16k0yud {
  max-width: 3rem;
  background-color: #161616; }

.search-focus.svelte-16k0yud {
  outline: 2px solid #fff;
  outline-offset: -2px; }

.search-wrapper-2.svelte-16k0yud {
  display: flex;
  flex-grow: 1;
  border-bottom: 1px solid #393939; }

.btn-search.svelte-16k0yud {
  width: 3rem;
  height: 100%;
  padding: 0;
  flex-shrink: 0;
  opacity: 1;
  transition: background-color 0.11s cubic-bezier(0.2, 0, 0.38, 0.9), opacity 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

.btn-search-disabled.svelte-16k0yud {
  border: none;
  pointer-events: none; }

.input-search.svelte-16k0yud {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375rem;
  letter-spacing: 0;
  color: #fff;
  caret-color: #fff;
  background-color: initial;
  border: none;
  outline: none;
  width: 100%;
  height: 3rem;
  padding: 0;
  transition: opacity 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

.input-hidden.svelte-16k0yud {
  opacity: 0;
  pointer-events: none; }

.btn-clear.svelte-16k0yud {
  width: 3rem;
  height: 100%;
  padding: 0;
  flex-shrink: 0;
  opacity: 1;
  display: block;
  transition: background-color 0.11s cubic-bezier(0.2, 0, 0.38, 0.9), opacity 0.11s cubic-bezier(0.2, 0, 0.38, 0.9); }

.btn-clear.svelte-16k0yud:hover {
  background-color: #4c4c4c; }

.btn-clear-hidden.svelte-16k0yud {
  opacity: 0;
  display: none; }

.action-link.svelte-1viyq4q {
  text-align: center;
  align-items: center;
  vertical-align: middle;
  justify-content: center;
  padding-top: 10px; }

.action-text.svelte-19vx6se.svelte-19vx6se {
  font-size: 16px;
  line-height: 20px;
  text-decoration: none;
  color: #fff;
  width: 100%;
  padding: 0 1rem; }

.action-text.svelte-19vx6se > span.svelte-19vx6se {
  margin-left: 0.75rem;
  vertical-align: top; }

.subject-divider.svelte-298l2.svelte-298l2 {
  color: #525252;
  padding-bottom: 4px;
  border-bottom: 1px solid #525252;
  margin: 32px 1rem 8px; }

.subject-divider.svelte-298l2 span.svelte-298l2 {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: 0.32px;
  color: #c6c6c6; }
