body, div, p, h1, h2, h3, h4, h5, h6, table, tr, th, td, img {
  margin: 0;
  padding: 0;
  border: 0;
}

table {
  border-collapse: collapse;
}

body {
  background-color: #3B3836;
  font-family: "Muli", sans-serif;
  color: white;
  font-size: 14px;
}

a {
  text-decoration: none;
  color: #fec;
}

a:hover {
  text-decoration: underline;
}

.msg_error {
  color: #E56767;
}

.msg_success {
  color: #52A04F;
}

/** structure **/
div.container {
  min-width: 940px;
}
div.header_container {
  border-bottom: 4px solid #282828;
}
div.footer_container {
  border-top: 4px solid #282828;
  padding-bottom: 24px;
}
div.nav_container {
  background-color: black;
  padding-bottom: 24px;
}
div.content_container {
  background-color: black;
  padding: 1px 0 24px;
}
div#header, div#nav, div#content, div#footer {
  width: 920px;
  margin: 0 auto;
  position: relative;
}

/** header/footer **/
div#header {
  height: 66px;
}
div#header h1 {
  font-family: "Audiowide";
  color: #fec; /* #fec, #2c2 */
  text-shadow: 1px 3px #282828;
  font-size: 48px;
  text-transform: lowercase;
  height: 66px;
  line-height: 70px;
  margin: 0 0 0 100px;
  float: left;
}

div#header .tagline {
  font-family: "Audiowide";
  font-weight: bold;
  text-transform: uppercase;
  font-size: 13px;
  color: #7F7872;
  text-shadow: 1px 3px #282828;
  border-left: solid 3px #4F4842;
  text-align: left;
  float: left;
  margin: 14px 0 0 14px;
  line-height: 13px;
  width: 170px;
  height: 39px;
  padding-left: 7px;
}

div#loginbox {
  position: absolute;
  right: 0;
  bottom: 4px;
}
div#loginline {
  padding: 0 12px 0 36px;
  line-height: 32px;
  height: 32px;
  color: #b8b6b4;
}
div#loginline.noicon {
  padding-left: 12px;
}
div#loginline .icon {
  position: absolute;
  left: 12px;
  top: 8px;
  width: 10px;
  height: 15px;
  border-left: solid 5px;
}
div#loginbox:hover div#loginline {
  color: black;
  background-color: white;
}
div#logindetail {
  position: absolute;
  right: 0;
  top: 100%;
  border: solid 1px #b8b6b4;
  border-top: solid 4px white;
  background-color: #1D1D1D;
  display: none;
}
div#loginbox:hover > div#logindetail {
  display: block;
  z-index: 2;
}
#logindetail a.menu {
  display: block;
  padding: 6px 12px;
  font-family: "Roboto";
  font-size: 12px;
  text-transform: uppercase;
}
#logindetail a.menu:hover {
  text-decoration: none;
  color: white;
  background-color: #333;
}
#logindetail form {
  padding: 6px 12px 0;
}
#logindetail form div.label {
  font-family: "Roboto";
  font-size: 10px;
  text-transform: uppercase;
  color: #b8b6b4;
  padding-top: 4px;
}
#logindetail form input {
  margin-bottom: 6px;
}

#navmenu {
  font-size: 13px;
  height: 30px;
  line-height: 30px;
  padding-left: 86px;
  z-index: 2;
  text-transform: uppercase;
  font-family: "Roboto";
}

#navmenu a {
  color: #b8b6b4;
  padding: 7px 14px;
}

#navmenu a:hover {
  text-decoration: none;
  color: white;
  background-color: #282828;
}

#footer {
  padding: 16px 0 0;
}
#footer .firstcol {
  float: left;
  width: 100px;
}
#footer .col {
  float: left;
  min-width: 200px;
}
#footer h4 {
  font-family: "Roboto";
  font-weight: bold;
  font-size: 12px;
  text-transform: uppercase;
  color: #b8b6b4;
  padding: 0;
  margin: 8px 0;
}
#footer ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
#footer li {
  margin: 8px 0;
  font-family: "Roboto";
  font-size: 12px;
  text-transform: uppercase;
  padding: 0;
}
#footer .closing {
  clear: both;
  font-family: "Muli";
  font-size: 11px;
  color: #b8b6b4;
  padding: 16px 0 0 100px;
}
  

/** content **/
div#content {
  width: 920px;
  margin: 10px auto;
}

h2 {
  background-color: #1D1D1D;
  border: 1px solid #4d4b49;
  padding: 5px 16px;
  margin: 16px 0;
  color: #fec;
  font-size: 32px;
}

.left {
  float: left;
}

.right {
  float: right;
}

.halfcol {
  width: 49%;
}

.thincol {
  width: 29%;
}

.thickcol {
  width: 69%;
}

div.content_box_header {
  font-size: 15px;
  text-transform: uppercase;
  height: 24px;
  line-height: 26px;
  text-align: center;
  border: 1px solid #4d4b49;
  border-bottom: none;
  background-color: black;
}

div.content_box_header a:hover {
  text-decoration: underline;
  color: #b8b6b4;
}

.single .content_box_header, .single .content_box {
  border-color: #3F364D;
}

.single .content_box_header, .single .content_box_header a {
  color: #5A4573;
}

.multi .content_box_header, .multi .content_box {
  border-color: #4C3031;
}

.multi .content_box_header, .multi .content_box_header a {
  color: #732E31;
}

div.content_box {
  background-color: #1D1D1D;
  border: 1px solid #4d4b49;
  margin-bottom: 16px;
}

h3 {
  font-size: 18px;
  font-weight: normal;
  color: #fec;
  margin: 12px 16px;
}

div.content_box p, div.content_box form {
  margin: 12px 16px;
}

div.content_box form th, div.content_box form td {
  padding: 0 10px 5px 0;
}

div.content_box form td:first-child {
  text-align: right;
}

/** summary statistics **/
table.player_summary {
  font-family: "Roboto";
  font-weight: bold;
  font-size: 14px;
  text-transform: uppercase;
  color: #b0aeac;
  margin: 10px;
  width: 100%;
}

table.player_summary td:first-child {
  text-align: right;
  padding-right: 0.5em;
  width: 50%;
}

table.player_summary span.big {
  font-family: "Pathway Gothic One";
  color: #fec;
  font-size: 40px;
}

/** game details page **/
h2.game_details {
  position: relative;
}

h2.game_details .game_time {
  font-family: "Roboto";
  text-transform: uppercase;
  font-size: 14px;
  color: #b0aeac;
  position: absolute;
  right: 15px;
  bottom: 7px;
  text-align: right;
}

table.game_summary {
  font-family: "Roboto";
  font-weight: bold;
  font-size: 14px;
  text-transform: uppercase;
  color: #b0aeac;
  margin: 10px;
  width: 100%;
}

table.game_summary td:first-child {
  text-align: right;
  padding-right: 0.5em;
  width: 18%;
}

table.game_summary span.big {
  font-family: "Pathway Gothic One";
  color: #fec;
  font-size: 40px;
}

table.game_summary tr.level_name td {
  vertical-align: top;
  text-indent: -15px;
  padding-left: 15px;
}

table.game_summary tr.level_name td:nth-child(2) {
  line-height: 40px;
  padding-top: 3px;
  padding-bottom: 3px;
}

/** title on user page **/
div.player_box {
  background: #1D1D1D;
  height: 60px;
  border: 1px solid #4d4b49;
  margin-bottom: 16px;
  position: relative;
}

div.player_box .icon {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 60px;
  width: 40px;
  border-right: 1px solid #4d4b49;
  border-left: 20px solid #332F28;
  background-color: #332F28;
}

div.player_box h2 {
  position: absolute;
  left: 74px;
  top: 0px;
  height: 60px;
  line-height: 60px;
  font-size: 40px;
  padding: 0;
  margin: 0;
  border: none;
  background: transparent;
}

div.player_box .alsoknown {
  position: absolute;
  right: 10px;
  bottom: 34px;
  font-size: 16px;
  color: #fec;
  text-align: right;
}

div.player_box .lastplayed {
  position: absolute;
  right: 10px;
  bottom: 7px;
  font-family: "Roboto";
  font-weight: bold;
  font-size: 11px;
  color: #b8b6b4;
  text-align: right;
  text-transform: uppercase;
}

/** leaderboards **/
table.leaderboard {
  width: 100%;
  color: #b0aeac;
  text-transform: none;
  font-family: "Roboto";
  font-weight: bold;
}

table.leaderboard th, table.leaderboard td {
  padding: 5px;
  padding-right: 30px;
}

table.leaderboard td {
  border-top: 1px solid #3c3d3e;
}

table.leaderboard tr.odd td {
  background-color: #1f1f1f;
}

table.leaderboard tr.even td {
  background-color: #262626;
}

table.leaderboard th {
  text-transform: uppercase;
  font-size: 11px;
  vertical-align: bottom;
  background-color: #111;
}

table.leaderboard .rank,
table.leaderboard .games {
  text-align: right;
  width: 4em;
}

table.leaderboard .title {
  text-align: left;
}

table.leaderboard td.title {
  font-family: "Muli";
  font-weight: normal;
  color: white;
}

table.leaderboard .title.norank {
  padding-left: 40px;
}

table.leaderboard .value {
  text-align: right;
  width: 4.5em;
}

table.leaderboard .pct {
  text-align: right;
  width: 3.5em;
}

table.leaderboard td.value, table.leaderboard .pct {
  color: #fec;
}

table.leaderboard tr.user td {
  background-color: #491F1F;
  color: white;
}

table.leaderboard tr.user td.games {
  color: #b0aeac;
}

table.leaderboard .difficulty {
  text-align: left;
}

table.leaderboard td.difficulty {
  font-family: "Muli";
  font-weight: normal;
  color: white;
  width: 8em;
}

/** games history list **/
table.history td {
  border-top: none;
}

table.history .gatherer {
  padding-left: 10px;
  padding-right: 0;
}

table.history td.gatherer a {
  display: block;
  width: 10px;
  border-left: 5px solid black;
}

table.history td.gatherer a:hover {
  text-decoration: none;
}

table.history .level {
  padding-left: 20px;
  text-align: left;
  width: 45%;
}

table.history td.level {
  font-family: "Muli";
  font-weight: normal;
}

table.history .details {
  text-align: left;
  width: 25%;
}

table.history td.details {
  font-family: "Muli";
  font-weight: normal;
  font-size: 12px;
}

table.history .date {
  padding-right: 20px;
  text-align: right;
  width: 30%;
}

table.history th {
  border-bottom: 1px solid #3c3d3e;
}

table.history tr.footer th {
  border-top: 1px solid #3c3d3e;
  border-bottom: none;
}

table.history tr.footer th a {
  color: #b0aeac;
}

table.history tr.suppress td {
  background-color: #111;
  color: #333;
}

table.history tr.suppress a {
  color: #333;
}

table.history.mini .gatherer {
  width: 5%;
}

table.history.mini .level {
  width: 55%;
}

table.history.mini .details {
  width: 40%;
  padding-right: 10px;
}

/** simple list of items **/
.content_box div.row {
  padding: 0.4em 2em;
}

.content_box div.row.even {
  background-color: #262626;
}

.content_box div.row.odd {
  background-color: #1f1f1f;
}

.content_box div.row.label {
  padding-top: 0.8em;
  padding-bottom: 0;
  padding-left: 2.5em;
  font-family: "Roboto";
  font-weight: bold;
  font-size: 11px;
  text-transform: uppercase;
  color: #b0aeac;
}

.content_box div.row.item {
  padding-top: 0.2em;
}

.content_box div.row.item a.delete {
  color: #FF7D78;
  font-size: 12px;
}

.content_box div.footer {
  background-color: #111;
  border-top: 1px solid #3c3d3e;
  text-align: center;
  font-family: "Roboto";
  font-weight: bold;
  font-size: 11px;
  text-transform: uppercase;
  color: #b0aeac;
}

.content_box div.footer a {
  color: #b0aeac;
}

/** generic list of items in table **/
table.listing th, table.listing td {
  padding: 0.5em;
}

table.listing th {
  font-family: "Roboto";
  font-weight: bold;
  text-transform: uppercase;
  font-size: 11px;
  color: #b0aeac;
}

table.listing tr.even td {
  background-color: #1f1f1f;
}

table.listing tr.odd td {
  background-color: #262626;
}

/** page-specific formatting **/
.help > h3 {
  margin-top: 2em;
}

.help > h3:first-child {
  margin-top: 12px;
}

.help > p {
  padding-left: 2em;
}

.help > ul, .help > ol {
  margin-left: 3em;
}

.questions > ul {
  list-style-type: none;
  padding: 0;
  margin: 16px;
}

ul.para > li, ol.para > li {
  margin-bottom: 10px;
}

table.chat td {
  border-top: 1px solid #3c3d3e;
  padding: 5px;
  font-size: 13px;
}

table.chat td:first-child {
  text-align: right;
}

table.chat td.darkBg {
  text-shadow: 1px 1px black;
}

table.chat td.darkBg a {
  color: white;
}

table.chat td.lightBg {
  text-shadow: 1px 1px #fec;
}

table.chat td.lightBg,
table.chat td.lightBg a {
  color: black;
}

table.chat tr.timestamp td {
  text-align: left;
  background-color: #262626;
}

table.calendar {
  margin: 10px auto;
}

table.calendar th {
  font-family: "Roboto";
  font-weight: bold;
  font-size: 11px;
  text-transform: uppercase;
  color: #b0aeac;
  vertical-align: bottom;
  padding-bottom: 5px;
}

table.calendar td {
  border: 1px solid #333;
  width: 30px;
  height: 30px;
  text-align: center;
  cursor: default;
}

table.calendar td.empty {
  border: none;
}

table.calendar td a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 14px;
  padding-top: 6px;
}

table.calendar td a:hover {
  text-decoration: none;
  background-color: #606060 !important;
}

.content_box_header.with_links,
.footer.with_links {
  position: relative;
}

.with_links .leftlink,
.with_links .rightlink {
  position: absolute;
  top: 0;
}

.with_links .leftlink {
  padding-left: 10px;
  left: 0;
}

.with_links .rightlink {
  padding-right: 10px;
  right: 0;
}

.thincol .with_links .leftlink,
.thincol .with_links .rightlink {
  font-weight: bold;
  font-size: 20px;
}

.thincol .with_links .leftlink a:hover,
.thincol .with_links .rightlink a:hover {
  text-decoration: none;
}

.thickcol .with_links .leftlink,
.thickcol .with_links .rightlink {
  font-family: "Roboto";
  font-weight: bold;
  font-size: 11px;
  text-transform: uppercase;
  color: #b0aeac;
}

.thickcol .with_links .leftlink a,
.thickcol .with_links .rightlink a {
  color: #b0aeac;
}

/** average activity **/
div.activity {
  position: relative;
  width: 100%;
}

div.activity div.betweenDays,
div.activity div.atNoon,
div.activity div.currentBin {
  position: absolute;
  top: 0px;
  bottom: 0px;
  width: 1px;
  background-color: #444;
}

div.activity div.atNoon {
  background-color: #2A2A2A;
}

div.activity div.currentBin {
  background-color: #A0FF4F;
}

table.activity th {
  font-family: "Roboto";
  color: #b0aeac;
  text-transform: uppercase;
  font-size: 11px;
  background-color: #111;
  border-top: 1px solid #2A2A2A;
  padding: 5px 0;
}

table.activity th.am,
table.activity th.pm {
  border-top: 1px solid #444;
  padding: 0;
  height: 3px;
  background: #a5d2ff;
  background: linear-gradient(to right, #000c19 33%, #59acff 67%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000c19',  endColorstr='#59acff', GradientType=1);
}

table.activity th.pm {
  background: #13293f;
  background: linear-gradient(to right, #59acff 33%, #000c19 67%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#59acff',  endColorstr='#000c19', GradientType=1);
}

/** user settings **/
table.settings {
  width: 100%;
}

table.settings td {
  padding-top: 5px !important;
}

table.settings tr.second td {
  padding-top: 0px !important;
}

table.settings tr.last td {
  background-color: #111;
}

/** player list **/
.player_list_item {
  margin: 4px;
  position: relative;
}

.player_list_item .team {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 12px;
}

.player_list_item .player {
  padding-left: 1em !important;
  margin-left: 16px;
  text-shadow: 1px 1px black;
}

.player_list_item .player.away,
.player_list_item .player.away a {
  color: gray;
}

.player_list_item .player.darkBg a {
  color: white;
}

.player_list_item .player.lightBg {
  text-shadow: 1px 1px #fec;
}

.player_list_item .player.lightBg,
.player_list_item .player.lightBg a {
  color: black;
}

.player_list_item .team.notMeta {
  background-color: #555;
}

.player_list_item .player.notMeta {
  background-color: #555;
  color: #ccc;
  font-style: italic;
}

/** level info **/
h3.level_title {
  color: #0f0;
  text-align: center;
  font-family: ProFontAO, ProFont, Monaco;
  font-size: 24px;
  margin-bottom: 0;
}

.level_view_container {
  margin: 0 0 20px;
  text-align: center;
}
.level_view_link, .level_view_current {
  display: inline-block;
  padding: 3px 10px;
  margin: 3px 3px 0 0;
  min-width: 80px;
  text-align: center;
  font-family: ProFontAO, ProFont, Monaco;
  font-size: 12px;
}

a.level_view_link {
  background-color: #2f0000;
}
span.level_view_current {
  background-color: #262626;
  color: #ccc;
}

img.level_img {
  width: 920px;
  height: 736px;
}
div.edit_view img.level_img {
  width: 736px;
}

div.edit_view {
  margin: 20px 0 0;
  text-align: center;
}


.level_nav {
  border: solid 1px #4d4b49;
  margin: 20px 0 0;
  padding: 2px;
  background: #2f0000;
  text-align: center;
}
.level_nav .up {
  text-transform: uppercase;
  font-size: 15px;
  line-height: 22px;
}
.level_nav .prev {
  float: left;
  text-align: left;
  margin: 2px 10px;
  width: 25%;
}
.level_nav .next {
  float: right;
  text-align: right;
  margin: 2px 10px;
  width: 25%;
}
