#cssmenu {
  --menu-bright: var(--shade-bright, #444);
  --menu-mid: var(--shade-mid, #333);
  --menu-dark: var(--shade-dark, #222);
}
#cssmenu,
#cssmenu ul,
#cssmenu li,
#cssmenu a {
  border: none;
  line-height: 1;
  margin: 0;
  padding: 0;
  user-select: none;
}
#cssmenu {
  height: 37px;
  display: block;
  border: 1px solid var(--menu-dark);;
  border-radius: 5px;
  width: auto;
  margin: 16px 0;
  padding: 0;
}
#cssmenu > ul {
  list-style: inside none;
  margin: 0;
  padding: 0;
}
#cssmenu > ul > li {
  list-style: inside none;
  float: left;
  display: inline-block;
  position: relative;
  margin: 0;
  padding: 0;
}
#cssmenu.align-center > ul {
  text-align: center;
}
#cssmenu.align-center > ul > li {
  float: none;
  margin-left: -3px;
}
#cssmenu.align-center ul ul {
  text-align: left;
}
#cssmenu.align-center > ul > li:first-child > span,
#cssmenu.align-center > ul > li:first-child > a {
  border-radius: 0;
}
#cssmenu > ul > li > span,
#cssmenu > ul > li > a {
  outline: none;
  display: block;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-shadow: 2px 2px 1px rgba(0, 0, 0, .5);
  font-weight: 700;
  font-size: 13px;
  font-family: Arial, Helvetica, sans-serif;
  border-right: 1px solid var(--menu-dark);
  color: #ffffff;
  padding: 12px 20px;
}
#cssmenu > ul > li:first-child > span,
#cssmenu > ul > li:first-child > a {
  border-radius: 5px 0 0 5px;
}
#cssmenu > ul > li > span:after,
#cssmenu > ul > li > a:after {
  content: "";
  position: absolute;
  border-right: 1px solid var(--menu-bright);
  top: -1px;
  bottom: -1px;
  right: -2px;
  z-index: 99;
}
#cssmenu ul li.has-sub:hover > span:after,
#cssmenu ul li.has-sub:hover > a:after {
  top: 0;
  bottom: 0;
}
#cssmenu > ul > li.has-sub > span:before,
#cssmenu > ul > li.has-sub > a:before {
  content: "";
  position: absolute;
  top: 18px;
  right: 6px;
  border: 5px solid transparent;
  border-top: 5px solid #ffffff;
}
#cssmenu > ul > li.has-sub:hover > span:before,
#cssmenu > ul > li.has-sub:hover > a:before {
  top: 19px;
}
#cssmenu > ul > li.has-sub:hover > span,
#cssmenu > ul > li.has-sub:hover > a {
  padding-bottom: 14px;
  z-index: 999;
  border-color: var(--menu-mid);
}
#cssmenu ul li.has-sub:hover > ul,
#cssmenu ul li.has-sub:hover > div {
  display: block;
}
#cssmenu > ul > li.has-sub > span:hover,
#cssmenu > ul > li.has-sub > a:hover,
#cssmenu > ul > li.has-sub:hover > span,
#cssmenu > ul > li.has-sub:hover > a {
  background: var(--menu-mid);
  border-color: var(--menu-mid);
}
#cssmenu ul li > ul,
#cssmenu ul li > div {
  display: none;
  width: auto;
  position: absolute;
  top: 38px;
  background: var(--menu-mid);
  border: 1px solid var(--menu-dark);
  border-radius: 0 0 5px 5px;
  z-index: 999;
  padding: 10px 0;
}
#cssmenu ul li > ul {
  width: 200px;
}
#cssmenu ul ul ul {
  position: absolute;
}
#cssmenu ul ul li:hover > ul {
  left: 100%;
  top: -11px;
  border: 1px solid var(--menu-dark);
  border-radius: 5px;
}
#cssmenu ul li > ul li {
  display: block;
  list-style: inside none;
  position: relative;
  margin: 0;
  padding: 0;
}
#cssmenu ul li > ul li > span,
#cssmenu ul li > ul li > a {
  outline: none;
  display: block;
  position: relative;
  font: 10pt Arial, Helvetica, sans-serif;
  color: #ffffff;
  text-decoration: none;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
  margin: 0;
  padding: 8px 20px;
}
#cssmenu,
#cssmenu ul ul > li:hover > span,
#cssmenu ul ul > li:hover > a,
#cssmenu ul ul li > span:hover,
#cssmenu ul ul li > a:hover {
  background: #3cfc3c;
  background: linear-gradient(to bottom, var(--menu-bright) 0%, var(--menu-mid) 43%, var(--menu-mid) 57%, var(--menu-dark) 100%);
}
#cssmenu > ul > li > span:hover,
#cssmenu > ul > li > a:hover {
  background: var(--menu-dark);
  color: #ffffff;
}
#cssmenu ul ul span:hover,
#cssmenu ul ul a:hover {
  color: #ffffff;
}
#cssmenu > ul > li.has-sub > span:hover:before,
#cssmenu > ul > li.has-sub > a:hover:before {
  border-top: 5px solid #ffffff;
}
#cssmenu .menu-current {
  background: var(--menu-bright);
}
#cssmenu .menu-message {
  outline: none;
  display: block;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-shadow: 2px 2px 1px rgba(0, 0, 0, .5);
  font-weight: 700;
  font-size: 13px;
  font-family: Arial, Helvetica, sans-serif;
  border-right: 1px solid var(--menu-dark);
  color: #fa0;
  padding: 12px 20px;
  display: flex;
  justify-content: center;
}
