body {
  margin: 0;
  font-family: sans-serif;
}

img {
  display: block;
}

:root {
  --app-bar-height: 64px;
}

.Header__toolBar___1jCgU {
  justify-content: space-between;
  height: var(--app-bar-height);
  white-space: nowrap;
}

.Header__fixed_size_app_bar___35_ED {
  height: var(--app-bar-height);
}

.Header__toolBarName___X0MJu {
  background-image: url("data:image/svg+xml,%3C?xml version='1.0' encoding='utf-8'?%3E %3C!-- Generator: Adobe Illustrator 19.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E %3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 304 182' style='enable-background:new 0 0 304 182;' xml:space='preserve'%3E %3Cstyle type='text/css'%3E .st1%7Bfill-rule:evenodd;clip-rule:evenodd;fill:%23FFF;%7D %3C/style%3E %3Cg%3E %3Cg%3E %3Cpath class='st1' d='M273.5,143.7c-32.9,24.3-80.7,37.2-121.8,37.2c-57.6,0-109.5-21.3-148.7-56.7c-3.1-2.8-0.3-6.6,3.4-4.4 c42.4,24.6,94.7,39.5,148.8,39.5c36.5,0,76.6-7.6,113.5-23.2C274.2,133.6,278.9,139.7,273.5,143.7z'/%3E %3Cpath class='st1' d='M287.2,128.1c-4.2-5.4-27.8-2.6-38.5-1.3c-3.2,0.4-3.7-2.4-0.8-4.5c18.8-13.2,49.7-9.4,53.3-5 c3.6,4.5-1,35.4-18.6,50.2c-2.7,2.3-5.3,1.1-4.1-1.9C282.5,155.7,291.4,133.4,287.2,128.1z'/%3E %3C/g%3E %3C/g%3E %3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 2.2em;
  background-position: 0 0.5em;
  margin-bottom: -0.5em !important;
  padding-bottom: 0.5em;
}

.Header__toolBarName___X0MJu::after {
  content: "Boot Camp";
}

.Header__pointsName___X7N_M::after {
  content: "Punkte"
}

@media (max-width: 550px) {
  .Header__toolBarName___X0MJu::after {
    content: "BC";
  }
  .Header__pointsName___X7N_M::after {
      content: "Pkt."
  }
}

@media (max-width: 375px) {
  .Header__toolBarNameContainer___2rbdY {
    display: none !important;
  }
}

.Header__link___2dj9X {
  color: white;
  text-decoration: none;
}

.Header__starContainer___M4OY_ {
  padding-left: 0.5em;
}

.Header__star___3PRlb {
  font-size: 2.3em !important;
  color: rgb(231, 231, 231);
}

.Header__starFilled___2RL3x {
  color: rgb(248, 192, 50);
}

.Header__star___3PRlb:nth-child(2) {
  margin: 0 -0.2em;
}

.Header__levelName___3AmJL {
  width: 100%;
  padding-right: 3em;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Header__levelPoints___lZSgy {
  border: 1px solid rgba(0, 0, 0, 0.87);
  border-radius: 1em;
  padding: 0 0.4em;
  font-size: 0.8em;
}

.UsernameButton__username___5wk_6 {
  text-transform: none;
  overflow: hidden;
  text-overflow: ellipsis;
}

.UsernameButton__userIcon___2DpyM {
 margin-left: 0.3em;
}

.UsernameButton__headerButton___2i_9t {
  max-width: 12em;
}

@media (max-width: 550px) {
  .UsernameButton__headerButton___2i_9t {
    max-width: 9em;
  }
}

.StartPage__button_group___J6JHh {
  margin: 0 auto;
  padding: 20px;
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
  flex-direction: column;
}

.StartPage__start_button___25ZwL {
  margin-bottom: 10px!important;
}

.StartPage__title___2D3Iw {
  padding: 3em 0 1em 0;
}

.StartPage__icons___Z2ADu {
  display: flex;
  justify-content: center;
}

.StartPage__icons_wrapper___2NrFf {
  padding: 2.5em 0 1em 0;
}

.StartPage__titleName___2Y3Oa {
  margin-bottom: -0.5em !important;
  padding-bottom: 0.5em;
}

.StartPage__icon___Ab_zQ {
  flex-grow: 1;
  cursor: pointer;
  transition: transform .2s;
}

.StartPage__icon___Ab_zQ:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.StartPage__icon___Ab_zQ:hover {
  transform: scale(1.15);
}

.StartPage__icon_active___1ij_T {
  transform: scale(1.1);
}

.StartPage__content___zbRRW {
  min-height: calc(100vh - 340px)
}

footer {
  position: fixed;
  bottom: 20px;
  left: 0;
  height: 16px;
  font-size: 16px;
}

@media(min-width: 700px) {
  .StartPage__button_group___J6JHh {
    flex-direction: row;
  }
  .StartPage__icons_wrapper___2NrFf {
    padding: 4em 0 1em 0;
  }
  .StartPage__content___zbRRW {
    min-height: calc(100vh - 250px)
  }
}

.AWSProduct__awsProduct___1opIx {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.AWSProduct__awsProductIcon___278J4 {
  flex-grow: 1;
  background-position: center;
  background-repeat: no-repeat;
}

.AWSProduct__awsProductName___3XJ4H {
  color: white !important;
  border: solid 0.1em white;
  border-radius: 1em;
  padding: 0 0.7em;
  font-size: 1.7vh !important;
  display: block;
  background-color: #ffffff1c;
  margin: 0 1em !important;
  overflow: hidden;
  text-align: center;
}

.AWSProduct__awsProductNameWrapper___fsvsy {
  margin: 0 auto 0.5em auto;
  max-width: -webkit-fill-available;
}

.MarkdownViewer__markdownContainer___2FJbT {
  font-family: "Roboto", sans-serif;
  padding: 1.5em;
  text-align: left;
}

.MarkdownViewer__markdownContainer___2FJbT pre {
  background-color: #f6f8fa;
  padding: 1em;
  border-radius: 5px;
}

.MarkdownViewer__markdownContainer___2FJbT a {
  color: #1b69b6;
  text-decoration: none;
}

.MarkdownViewer__markdownContainer___2FJbT a:hover {
  text-decoration: underline;
}

.MarkdownViewer__markdownContainer___2FJbT h1, .MarkdownViewer__markdownContainer___2FJbT h2 {
  padding-bottom: .3em;
  border-bottom: 1px solid #eaecef;
}

.MarkdownViewer__materialIcons___1WSrJ {
  font-size: 1em !important;
  vertical-align: middle;
  margin-left: 0.2em;
}

.YoutubePopup__dialogContent___1UkHa {
  padding: 0 !important;
}

.YoutubePopup__videoIcon___2ztfl {
  font-size: 1em !important;
  vertical-align: middle;
  margin-left: 0.2em;
}



.LevelsPage__cardButtonWrapper___13FI_ {
  width: 100%;
  display: block !important;
  text-align: left;
}

.LevelsPage__backButton___KPhKq {
  margin: 2em 0 !important;
}

.LevelsPage__gameboardContainer___1cuGe {
  width: 100%;
  height: 15em;
  background-image: linear-gradient(rgb(240, 240, 240) 2px, transparent 2px),
    linear-gradient(90deg, rgb(240, 240, 240) 2px, transparent 2px),
    linear-gradient(rgb(245,245,245) 1px, transparent 1px),
    linear-gradient(90deg, rgb(245,245,245) 1px, transparent 1px);
  background-size: 20px 20px, 20px 20px, 5px 5px, 5px 5px;
  background-position: -2px -2px, -2px -2px, -1px -1px, -1px -1px;
  position: relative;
  overflow: hidden;
}

.LevelsPage__levelItemWrapper___2D4D4 {
  padding: 2em 0;
  background-color: #f1f1f1;
}

.LevelsPage__levelSelectionTitle___1Bw5V {
  padding: 3em 0 1em 0;
}

.LevelsPage__backIcon___2RaR1 {
  margin-right: 0.4em;
}

.LevelsPage__starContainer___3KWlu {
  margin: 0.5em 0 -0.5em -0.35em;
}

.LevelsPage__star___GaVwJ {
  font-size: 2.3em !important;
  color: rgb(231, 231, 231);
}

.LevelsPage__starFilled___HdTtL {
  color: rgb(248, 192, 50);
}

.LevelsPage__star___GaVwJ:nth-child(2) {
  margin: 0 -0.2em;
}

.LevelsPage__levelPoints___27VoK {
  border: 1px solid rgba(0, 0, 0, 0.87);
  border-radius: 1em;
  padding: 0 0.4em;
  font-size: 0.8em;
  display: inline;
  font-size: 0.5em;
  vertical-align: middle;
  margin-left: 1em;
}

.GameBoard__board___3Wdiu {
    height: 100%;
    width: 100%;
    padding: 2em;
    box-sizing: border-box;
    display: grid;
    position: absolute;
    min-width: min-content;
    min-height: min-content;
}

.GameBoard__thumbnail___1qnUw {
    padding: 0.2em;
}

.GameBoard__boardElement___I5j-j {
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.GameBoard__arrowTarget___REAZw {
    display: inline-block;
}

.GameBoard__svgOverlay___3Iy46 {
    position: absolute;
    overflow: visible;
}

.Droppable__droppable___3Ynme {
  height: 17vh;
  width: 17vh;
  border: 2px solid black;
  margin: 2px;
  border-radius: 4px;
}

.Droppable__droppableHover___3jmdH {
  background-color: rgba(216, 216, 216, 0.3);
  border: 4px solid black;
  margin: 0;
}

.Droppable__droppableActive___3d1xf {
  border-style: dashed;
}

.Draggable__dragging___1dlDW {
  opacity: 0.5;
}

.Draggable__draggable___260wo {
  cursor: grab;
}

/* we need this so the child content fills the entire space */
.Draggable__draggable___260wo, .Draggable__draggable___260wo > div {
  height: 100%;
  width: 100%;
}

.IconElement__iconElement___1P6wD {
  border-radius: 6px;
  -webkit-user-drag: none;
  height: 17vh;
  width: 17vh;
}

.IconElement__thumbnailIcon___E2eaX {
  height: 3em;
  width: 3em;
}

.AWSPaletteItem__paletteItem___CNJ3v {
  position: relative;
  height: 15vh;
  width: 15vh;
  min-width: 15vh;
  min-height: 15vh;
  box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.2), 0px 1px 1px 0px rgba(0,0,0,0.14), 0px 2px 1px -1px rgba(0,0,0,0.12);
  border-radius: 4px;
  overflow: hidden;
  margin: 10px;
}

.AWSPaletteItem__infoButton___ZzZ0O {
  padding: 4px !important;
  position: absolute !important;
  top: 0;
  right: 0;
  color: white !important;
}

.GamePage__matchViewportHeight___2n72C {
  height: calc(100vh - var(--app-bar-height)) !important;
  z-index: -1;
}

.GamePage__gridBackground___vZEJM {
  background-image: linear-gradient(rgb(240, 240, 240) 2px, transparent 2px),
    linear-gradient(90deg, rgb(240, 240, 240) 2px, transparent 2px),
    linear-gradient(rgb(245,245,245) 1px, transparent 1px),
    linear-gradient(90deg, rgb(245,245,245) 1px, transparent 1px);
  background-size:100px 100px, 100px 100px, 20px 20px, 20px 20px;
  background-position:-2px -2px, -2px -2px, -1px -1px, -1px -1px;
}

.GamePage__gridBackground___vZEJM::-webkit-scrollbar {
  display: none;
}

.GamePage__startButton___2waon {
  bottom: 1em;
  position: fixed !important;
  left: 1em;
}

.GamePage__infoResetButton___pKTYs {
  bottom: 1em;
  position: fixed !important;
  right: 1em;
}

.GamePage__sidebar_upper___3qdwq {
  padding-top: 20px;
}

.GamePage__service_header___17-zX {
  text-align: center;
}

.GamePage__draggable_wrapper___2mrf7 {
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
}

.ErrorPage__backIcon___L9yPN {
  margin-right: 0.4em;
}

.ErrorPage__buttonWrapper___a5elK {
  text-align: center;
  margin-top: 2em;
}

.ErrorPage__wrapper___FzA6h {
  padding-top: 2em;
}

.EndScreen__background___2P0u7 {
  min-height: fit-content;
  height: 100%;
  box-sizing: border-box;
  color: white;
  padding-top: 5em;
  padding-bottom: 1em;
  animation: EndScreen__bg___Fm6uW 3s forwards;
  animation-delay: 0.4s;
}

@keyframes EndScreen__bg___Fm6uW {
  from {
    background-color: white;
  }
  to {
    background-color: #1b1b1b;
  }
}

.EndScreen__credits___3ySgA > hr {
  margin-top: 7em;
  margin-bottom: 1em;
}

.EndScreen__credits___3ySgA {
  color: rgb(158, 158, 158);
}

.EndScreen__italic___2ZIBz {
  font-style: italic;
}

.EndScreen__backButton___1Jie8 {
  color: white !important;
  margin-top: 1em !important;
}

.CreditsPage__backButton___3OnZE {
    margin: 2em 0 !important;
}

.CreditsPage__creditsWrapper___1up1Y {
    padding: 2em 0;
    background-color: #f1f1f1;
}

.CreditsPage__creditsTitle___arOu- {
    padding: 3em 0 1em 0;
}

.CreditsPage__backIcon___3BR62 {
    margin-right: 0.4em;
}

.CreditsPage__iconCreditsImage___3g-lr {
    display: inline-block;
    margin-right: 0.4em;
    background-color: #A1A1A1;
    vertical-align: middle;
    width: 3em;
}

.CreditsPage__card___3CKXw {
    padding: 1em 0 1em 0;
}

.FeedbackPopup__star___2y46u {
  font-size: 7em !important;
  color: rgb(231, 231, 231);
}

.FeedbackPopup__starFilled___aiTTR {
  animation-duration: 0.7s;
  animation-fill-mode: forwards;
  animation-name: FeedbackPopup__tada___3--L9;
}

.FeedbackPopup__starContainer___N3UCs {
  margin: 1em auto 0 auto;
  display: table;
  white-space: nowrap;
}

.FeedbackPopup__star___2y46u:nth-child(2) {
  margin-bottom: 0.2em;
}

/* extracted from https://github.com/daneden/animate.css */
@keyframes FeedbackPopup__tada___3--L9 {
  from {
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    transform: scale3d(1, 1, 1);
    color: rgb(248, 192, 50);
  }
}

@keyframes FeedbackPopup__headShake___19rRm {
  0% {
    transform: translateX(0);
  }

  6.5% {
    transform: translateX(-12px) rotateY(-9deg);
  }

  18.5% {
    transform: translateX(10px) rotateY(7deg);
  }

  31.5% {
    transform: translateX(-6px) rotateY(-5deg);
  }

  43.5% {
    transform: translateX(4px) rotateY(3deg);
  }

  50% {
    transform: translateX(0);
  }
}

.FeedbackPopup__failIcon___3bfKE {
  font-size: 7em !important;
  color: #f44336;
  border: 0.08em solid;
  border-radius: 1em;
  display: block !important;
  margin: 0.15em auto 0.3em auto !important;
  animation-duration: 0.7s;
  animation-delay: 0.15s;
  animation-fill-mode: forwards;
  animation-name: FeedbackPopup__headShake___19rRm;
}

.FeedbackPopup__pointsContainer___-PVLi {
  margin: 0 auto 2em auto;
}

.FeedbackPopup__pointsContainer___-PVLi span {
  margin-right: 0.2em;
  margin-left: -0.8em;
}

.FeedbackPopup__slimHr___1guqL {
  border: none;
  height: 1px;
  background-color: #e9e9e9;
  margin: 1em 0;
}

.FeedbackPopup__hintContainer___25BYJ {
  padding: 0.5em 0 0 1em;
}

.GamePageSnackbar__snackbar___1pgyu {
  margin-bottom: 4em;
}

/* remove offset for mobile snackbar */
@media (max-width: 959.95px) {
  .GamePageSnackbar__snackbar___1pgyu {
    margin-bottom: initial;
  }
}

.GamePageSnackbar__closeButton___1Nrd2 {
  color: #f44336 !important;
  margin: 0 0 0 0.5em !important;
  padding: 0 !important;
}

.SplitterPanel__panelWrapper___3M-Kp {
  position: absolute;
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.SplitterPanel__panelInner___2mbi6 {
  position: relative;
  flex: 1 1 auto;
  overflow-y: auto;
  overflow-x: auto;
}


/*# sourceMappingURL=main.css.map*/