ul {
  list-style: none;
  margin: 0 0 0 1.775em;
  padding: 0;
}

ul::before,
ul::after {
  content: '';
  display: table;
}

ul::after {
  clear: both;
}

li {
  float: left;
  overflow: hidden;
  margin-left: -1.775em;
}

li a {
  display: block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  position: relative;
  background: green;
  padding-left: 2em;
  margin-right: 1.775em;
}

li a::after {
  content: '';
  position: absolute;
  right: -1.25em;
  top: 0.063em;
  width: 2.5em;
  height: 2.5em;
  background: green;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-color: #fff #fff transparent transparent;
  border-width: 0.125em;
  border-style: solid;
  z-index: 10;
}

li:first-child a {
  padding-left: 0.4em;
}

li:last-child a {
  padding-right: 0.8em;
  margin: 0;
}

li:last-child a::after {
  display: none;
}

li:hover a,
li:hover a::after {
  background: forestgreen;
}

li a:focus,
li a:focus::after,
li a:active,
li a:active::after {
  background: limegreen;
}

li.current a,
li.current a::after {
  background: darkgreen;
}

li.current~li a,
li.current~li a::after {
  background: lightgray;
}

li.current~li:hover a,
li.current~li:hover a::after {
  background: darkgray;
}

li.current~li a:focus,
li.current~li a:focus::after,
li.current~li a:active,
li.current~li a:active::after {
  background: gray;
}

span {
  position: relative;
  z-index: 100;
  display: block;
  padding: 0.8em 0 0.8em 0.4em;
}
