* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: sans-serif;
}
body {
  background-color: #eeeeee;
  text-align: center;
  /* padding: 0 1rem; */
}
ul {
  list-style: none;
}

h1 {
  background-color: #222831;
  color: white;
  padding: 1rem;
  width: 100%;
}

.algorithms {
  color: white;
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin: 2rem 0;
  width: 100%;
}

.algorithms li {
  width: 100%;
  font-size: 1.2rem;
  padding: 1rem;
  background-color: #393e46;
  margin: 1rem;
  border-radius: 3px;
  cursor: pointer;
  transition: all 0.5s;
}
.algorithms li:hover,
#solve-btn:hover {
  background-color: #565c64;
}

.form {
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
  padding: 1rem;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.input-group {
  font-size: 1.1rem;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

label {
  display: block;
  width: 150px;
}
input {
  padding: 0.3rem 0.5rem;
  border: #eeeeee;
  margin-left: 1rem;
  width: 80px;
  font-size: 1.5rem;
}
#seq-a,
#seq-b {
  width: 100%;
  text-transform: uppercase;
}

#solve-btn {
  border: 0;
  background-color: #393e46;
  color: white;
  padding: 1rem 2rem;
  margin-top: 0.7rem;
  font-size: 1.2rem;
  border-radius: 3px;
  cursor: pointer;
}

.scroll-container {
  overflow: auto;
  margin: 2rem auto;
  max-width: 90%;
  max-height: 85vh;
}
.matrix {
  border: #222831 2px solid;
  /* max-width: 100%; */
  margin: 0 auto;
  border-collapse: collapse;
}

.matrix td {
  border: #222831 2px solid;
  min-width: 40px;
  height: 40px;
}

.highlight {
  background-color: #c4d4e6;
  font-weight: bold;
}

.dot-matrix__inputs {
  display: none;
}

h2 {
  font-size: 2rem;
  text-align: center;
}
.alignments {
  margin: 1rem 0;
  font-size: 1.5rem;
}
.alignments-section {
  display: none;
  max-width: 90%;
  margin: 0 auto;
  margin-bottom: 2rem;
}

.alignment {
  width: 100%;
  margin: 0 auto;
  margin-bottom: 1rem;
  padding: 0.2rem 1rem;
  border: #222831 2px solid;
  width: fit-content;
  text-align: left;
}

.alignment span {
  font-weight: bold;
  margin-right: 1rem;
}
.alignment .seq {
  display: flex;
  align-items: center;
  margin-bottom: 0.2rem;
}
.alignment .seq > div {
  width: 20px;
  text-align: center;
}

.active {
  background-color: #000000 !important ;
  box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px,
    rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px,
    rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}

.dot-cell {
  background-color: #caf7e3;
}

@media screen and (max-width: 955px) {
  .algorithms {
    flex-wrap: wrap;
  }
}

/* width */
.scroll-container::-webkit-scrollbar {
  width: 10px;
  height: 12px;
}

/* Track */
.scroll-container::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
.scroll-container::-webkit-scrollbar-thumb {
  background: #888;
}

/* Handle on hover */
.scroll-container::-webkit-scrollbar-thumb:hover {
  background: #555;
}
