#xw-gn-menustate
{
   display: none;
}

.xw-gn-menuitems
{
   padding: 0;
   list-style-type: none;
}

.xw-gn-menuitems li
{
   margin: 0;
}

.xw-gn-menuitems a
{
   display: block;
   padding: 10px;
}

#menu
{
   text-align: center;
}

#xw-gn-menustate ~ label
{
   display: inline-block;
   margin: 0 6px;
   padding: 10px 6px;
   vertical-align: bottom;
   cursor: pointer;
   transition: 0.5;
}

.xw-gn-menuicon-bar
{
   display: block;
   width: 16px;
   height: 0;
   margin: 4px 0;
   background: black;
   border: solid 1px;
}

.xw-gn-menuicon-bar:nth-child(1)
{
   margin-top: 3px;
}

.xw-gn-menuicon-bar:nth-child(3)
{
   margin-bottom: 3px;
}

#xw-gn-menustate ~ label:hover
{
   color: silver;
}

#xw-gn-menustate:checked ~ label .xw-gn-menuicon-bar:nth-child(1)
{
   transform: rotate(45deg) translate(4.2px, 4.2px);
}

#xw-gn-menustate:checked ~ label .xw-gn-menuicon-bar:nth-child(2)
{
   opacity: 0;
}

#xw-gn-menustate:checked ~ label .xw-gn-menuicon-bar:nth-child(3)
{
   transform: rotate(-45deg) translate(4.2px, -4.2px);
}

.xw-gn-menuitems
{
   display: block;
   height: 0;
   margin: 0 4px;
}

#xw-gn-menustate:checked ~ .xw-gn-menuitems
{
   height: calc(100vh - 36.0px);
   padding-top: 10px;
   border-top: solid black 0.5px;
   overflow: auto;
}

.xw-gn-menuitems li
{
   display: block;
   visibility: hidden;
   margin: 0;
   padding: 0;
   opacity: 0;
   text-align: center;
}

#xw-gn-menustate:checked ~ .xw-gn-menuitems li
{
   visibility: visible;
   opacity: 1;
}

