:root {
  --main-green: #a3dc61;
  --main-green-dark: #78a23c;
  --main-green-trans: #a3dc6122;
  --stat-str-blue: #376cf0;
  --stat-dex-yel: #fff77f;
  --stat-intl-grn: #81d060;
  --stat-con-prpl: #b170f3;
  --stat-luck-red: #ff5439
}

*{
  margin: 0;
  padding: 0
}

body {
  font-weight: 300;
  background: #2f2f2f;
  color: #fff;
  font-family: 'Open Sans',sans-serif
}

pre,select {
  border-radius: 10px
}

h1,h2,h3,h4,h5,h6,b {
  font-weight: 600;
}

a{
  text-decoration: none;
  color: inherit;
}

a.link,select {
  font-weight: 600
}

#dungeons-compare td{
  white-space: nowrap
}

aside,section {
  min-height: calc(100vh - 92px)
}

.article-text .hint,nav div a,pre {
  display: inline-block
}

.fab-fixed,.feedback-modal,.server-select-list {
  position: fixed;
}

.fab-fixed,.article-text table,.feedback-modal,.feedback-modal legend,.nav-button,.server-select-list,aside a.calendar-button,footer,header .side a,input[type=text],nav div a {
  text-align: center
}

#questPicker td img,.ac-description img,.ac-hint img,.article-text p img,.article-text table td img,.item ul li i, th img {
  vertical-align: middle
}

pre {
  background: #272727;
  font-size: 13px;
  padding: 8px 30px 8px 14px;
  box-shadow: 0 0 10px #0003;
  margin: 6px
}

select {
  padding: 10px;
  background: #333;
  color: var(--main-green);
  margin: 4px 0
}

footer,header,header .side,main {
  display: flex
}

a.link {
  border-bottom: 2px solid var(--main-green);
  transition: padding .2s ease-in-out
}

a.link:hover {
  padding-bottom: 2px
}

.gold {
  color: gold
}

.feedback-modal textarea {
  padding: 0 10px;
  box-sizing: border-box
}

hr {
  border: initial;
  border-bottom: 1px solid #444;
  margin:4px 0;
}

.fab-fixed {
  display: inline-block;
  background-color: #444;
  width: 50px;
  height: 50px;
  border-radius: 8px;
  bottom: 30px;
  transition: background-color .3s,opacity .3s,visibility .3s;
  opacity: 0;
  visibility: hidden
}

#back-to-top.show,#feedback-fab {
  visibility: visible;
  opacity: 1
}

.fab-fixed i{
  font-size: 26px;
  padding: 12px 0
}

.fab-fixed:hover {
  cursor: pointer;
  background-color: var(--main-green-dark)
}

.fab-fixed:active {
  background-color: #555
}

#back-to-top {
  right: 100px
}

@media (min-width: 500px) {
  #button {
    margin:30px
  }
}

.fab-fixed,.feedback-modal {
  box-shadow: 2px 2px 15px #0006;
  right: 30px;
  z-index: 1000
}

.feedback-modal {
  border-radius: 8px;
  padding: 20px;
  background: #444;
  display: none;
  bottom: 90px;
  max-width: 480px;
  box-sizing: border-box
}

.img-responsive,.item img,.main-container img,footer,header,main {
  max-width: 100%
}

@media(max-width: 600px) {
  .feedback-modal {
    max-width:100%;
    left: 10px;
    right: 10px
  }
}

.feedback-modal legend {
  margin-bottom: 20px
}

.feedback-modal textarea {
  background: #343434;
  color: #fff;
  border-radius: 8px;
  border: none;
  font-size: 1rem;
  font-family: 'Open Sans';
  resize: none;
  width: 100%
}

.feedback-modal input::placeholder,.feedback-modal textarea::placeholder {
  color: #aaa
}

.feedback-modal input[type=text] {
  width: initial;
  background: #343434;
  color: #fff
}

#dungeons-compare button:hover,#questPicker button:hover,.feedback-modal button:hover {
  background: var(--main-green-dark);
  color: #fff;
  cursor: pointer
}

.feedback-modal button {
  background: #2f2f2f;
  color: #ddd;
  padding: 10px 20px;
  margin: 10px;
  font-family: 'Open Sans';
  font-size: 1.1rem;
  border-radius: 8px;
  border: none;
  transition: background .3s, color .3s
}

input {
  font-family: 'Open Sans',sans-serif
}

a.sc-link,ul.navigation>li {
  text-transform: uppercase;
  transition: .2s linear
}

.img-responsive {
  height: auto
}

input[type=text] {
  background: #444;
  border: 0;
  width: 100px;
  padding: 6px;
  border-radius: 6px;
  color: var(--main-green);
  font-size: 1rem;
  height: auto;
  font-weight: 500
}

td img.prof {
  height: 96px
}

.table-of-contents ol,ul {
  margin-left: 1.5em
}

#dungeons-compare button,#questPicker button {
  background: #444;
  border: none;
  color: var(--main-green-dark);
  font-family: 'Open Sans',sans-serif;
  font-weight: 600;
  font-size: 20px;
  padding: 8px 12px;
  box-shadow: 2px 2px 10px #0003;
  border-radius: 10px;
  text-transform: uppercase;
  transition: background .2s linear,color .2s linear
}

header .side a,
header .side button.mobileMenu-toggle,
nav div {
  border-radius: 10px;
  font-weight: 600;
}

.language-switch{
  color: #aaa;
  display: flex;
  align-items: center;
  margin: 2px 6px;
  cursor: pointer;
  padding: 0 8px;
  border-radius: 10px;
  position:relative;
}

.language-switch i{
  font-size: 24px;
  width:24px;
  height: 24px;
  margin-right: 6px;
  position: relative;
  transition: .3s all;
}
.language-switch>i:hover{
  color: #fff;
}
.language-switch i span{
  position: absolute;
  background: var(--main-green-dark);
  color: #fff;
  font-size: 10px;
  bottom: -3px;
  padding: 2px 3px 3px 3px;
  font-weight: 700;
  border-radius: 4px;
  right: -8px;
  font-family: 'Open Sans';
}
.languages{
  display:none;
  position: absolute;
  z-index: 2;
  top: 48px;
  background: #333;
  border-radius: 8px;
  padding: 4px 10px;
  list-style: none;
  box-shadow: 2px 2px 10px #0008;
  left: 0;
  margin: 0;
}
.languages::after{
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  border-top: 8px solid transparent;
  border-bottom: 8px solid #333333;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
  left: 11px;
  top: -15px;
}

.languages li {
  padding: 5px 10px;
  transition: .3s all;
}

.languages li:hover{
  color:#fff;
}

.searchBar{
  background: #363636;
  border-radius: 10px;
  margin-right: 10px;
  box-shadow: 2px 2px 10px #0004;
  display: flex;
  align-items: center;
  position:relative;
}
.searchBar::after{
  content: 'BETA';
  font-weight: 700;
  position: absolute;
  background: var(--main-green-dark);
  font-size: 10px;
  border-radius: 4px;
  padding: 1px 3px;
  bottom: -4px;
  right: -4px;
}
@media(max-width:480px){
  .side .searchBar{
    display: none;
  }
}

.searchBar input[type=text]{
  background: transparent;
  height: 100%;
  box-sizing: border-box;
  border-radius: 10px;
  width: 160px;
  text-align: left;
  padding: 6px 38px 6px 12px;
}

.searchBar input[type=text]:focus{
  outline: 2px solid var(--main-green-dark)
}

.searchBar button[type=submit]{
  color: #aaa;
  border: none;
  position: absolute;
  right:0;
  font-size: 16px;
  padding: 12px;
  cursor: pointer;
  background: transparent;
  transition: .3s all;
}
.searchBar button[type=submit]:hover{
  color: #fff;
}

span.quest-best-gold,span.quest-best-xp {
  position: relative;
  margin: 0 4px
}

span.quest-best-gold i,span.quest-best-xp i {
  position: absolute;
  right: -5px;
  bottom: -5px;
  font-size: 18px;
  color: var(--main-green);
  text-shadow: 0 0 5px #000
}

nav div a,ul.navigation>li {
  position: relative
}

.logo {
  padding: 10px 0;
}
.logo img {
  display: block;
}

header {
  padding: 0 20px;
  background: #242424;
  justify-content: space-between;
  align-items: center;
}

header .side {
  flex-wrap: wrap
}

header .side>a,
header .side>button.mobileMenu-toggle{
  margin: auto 6px;
  background: #333;
  color: #ddd;
  padding: 10px 14px;
  box-shadow: 2px 2px 10px #0004;
  transition: all .3s;
}
header .side>a:hover,
header .side>button.mobileMenu-toggle:hover{
  background: #404040;
  color: #fff;
}

header .side button.mobileMenu-toggle{
  display:none;
  width:46px;
  height:46px;
  box-sizing: border-box;
  padding:14px 14px;
  border:none;
}
header .mobileMenu{
  position: absolute;
  top: 0;
  left: 0;
  width: 240px;
  height: 100%;
  transform: translateX(-240px);
  display: flex;
  transition: .3s transform;
  background: #222;
  z-index: 2;
}

header .mobileMenu>ul{
  list-style: none;
  margin:0 auto;
  padding:10px 0;
  text-align: center;
}

header .mobileMenu>ul>li{
  padding: 10px 0;
}
header .mobileMenu>ul>li a{
  color: #aaa;
}
.mobileMenu .searchBar{
  margin:0;
}
header .mobileMenu-active{
  transform: translateX(0px);
  box-shadow: 2px 0 15px #0007;
}

@media (max-width:480px){
  header .side>a{
    display:none
  }
  header .side>button.mobileMenu-toggle{
    display:block;
  }
}

.edit-toggle,header .side a i {
  display: none;
  font-size: 20px;
}

nav {
  padding-top: 10px;
  min-width: 220px;
  box-sizing: border-box;
  background: #222;
  margin: 15px 0 auto 10px;
  border-radius: 20px;
  position: sticky;
  top: 10px;
}

nav div {
  display: block;
  text-transform: uppercase;
  font-size: 14px;
  box-sizing: border-box;
  margin: 5px 12px;
  border-bottom: 5px solid #1b1b1b;
  background: #2a2a2a;
}

nav div a {
  padding: 12px 0;
  color: #ccc;
  width: 100%;
  box-sizing: border-box;
  margin-left: 5px;
  letter-spacing: -0.5px;
}

nav div img {
  position: absolute;
  height: 44px;
  top: 0;
  left: -2px;
}
@media (max-width:600px){
  nav div img{
    position: initial;
    height:32px;
    width: auto;
  }
}

nav div:hover {
  background: #fff2
}

nav div:hover a {
  color: #fff
}

.news-feed a:hover img,nav div:hover a>img {
  filter: brightness(1.2)
}

aside {
  padding: 20px 10px;
  width: 320px;
  box-sizing: border-box
}

aside .event-entry,aside .pet-entry {
  background: #3d3d3d;
  border-radius: 10px;
  padding: 6px 10px;
  box-shadow: 2px 2px 10px #2a2a2a;
  margin: 10px 0 14px
}

aside .event-entry .event-icon {
  height: 64px;
  cursor: pointer
}

aside .event-date,aside .event-pet-date {
  color: #bbb;
  font-weight: 600;
  font-size: 12px
}

.event-description img {
  vertical-align: middle;
}

.article h2,.article-text .hint,.article-text h3,.news-title,.table-of-contents ol li:hover {
  color: var(--main-green)
}

aside .pet-entry .event-pet-icon {
  height: 48px;
  border-radius: 6px;
  margin: 2px 3px 4px 0;
  cursor: pointer
}

aside .event-selected {
  filter: brightness(1.3) drop-shadow(0px 0px 6px #ffbb00)
}

aside .article h2 {
  font-size: 1.3rem
}

aside a.calendar-button {
  margin: auto;
  background: var(--main-green-dark);
  padding: 4px 10px;
  width: fit-content;
  border-radius: 4px;
  display: block;
  font-weight: 600
}

.article-text table th,a.sc-link:hover {
  background: #78a23c;
  color: #fff
}

aside a.calendar-button:hover {
  background: #89b845
}

aside .social-media {
  display: flex;
  justify-content: space-between
}

aside .social-media-discord,aside .social-media-fb {
  margin: 4px 0;
  display: block;
  text-align: center;
  border-radius: 6px;
  padding: 8px 0;
  width: 49%;
  font-size: 18px
}
aside .social-media i{
  margin:0 4px;
}

aside .social-media-fb {
  background: #1877f2
}

aside .social-media-discord {
  background: #5865f2
}

@media(max-width: 1000px) {
  aside {
    padding:20px 0;
    width: 280px
  }
}

@media(max-width: 720px) {
  aside {
    width:200px
  }
}

section {
  padding: 20px;
  width: 100%;
  box-sizing: border-box;
}

section.content {
  width: calc(100% - 220px);
  padding-bottom: 60px
}

section.content-index {
  width: calc(100% - 540px)
}

@media (max-width: 1000px) {
  section.content-index {
    width:calc(100% - 380px)
  }
}

@media (max-width: 720px) {
  header .side a i {
    display:block
  }

  header .side a span {
    display: none
  }

  section.content-index {
    width: calc(100% - 420px)
  }
}

@media (max-width: 600px) {
  main {
    flex-wrap:wrap
  }

  nav {
    margin: 0;
    width: 100%;
    display: flex;
    overflow-x: scroll;
    padding: 12px 3px;
    border-radius: 0;
    border-top: 1px solid #3f3f3f;
    background: #282828;
    top: 0;
    z-index: 1;
  }

  nav div {
    background: #fff2;
    white-space: nowrap;
    margin: 4px;
    border:none;
    box-shadow: 2px 2px 10px #0008;
  }

  nav div img {
    padding-right: 2px;
    position: unset;
  }

  nav div a {
    padding: 4px 10px 4px 6px;
    margin: 0;
    display: flex;
    align-items: center;
    text-transform: initial;
  }

  aside {
    width: 200px
  }

  section.content {
    width: 100%
  }

  section.content-index {
    width: calc(100% - 200px)
  }
}

section.news-feed {
  padding: 0 10px;
  box-shadow: unset;
  min-height: unset;
  display: flex;
  flex-wrap: wrap
}

section.search-feed{
  padding: 0;
  box-shadow: unset;
  min-height: unset;
  display: flex;
  flex-wrap: wrap
}

.news {
  width: calc(50% - 10px);
  border-radius: 8px;
  margin: 0 10px 20px 0;
  padding: 10px 6px;
  box-sizing: border-box
}
.searchResult{
  width:100%;
  display:flex;
  margin: 20px;
}
@media(max-width:1000px){
  .searchResult{
    flex-wrap: wrap;
  }
}
.searchResult img{
  width:240px;
  height: auto;
  margin-right:10px;
}
@media(max-width:1000px){
  .searchResult img{
    width:160px;
    margin:0;
  }
}

@media (min-width: 1366px) {
  .news {
    width:calc(33.3% - 10px)
  }
}

@media(max-width: 1000px) {
  .news {
    width:100%;
    margin: 0 0 20px
  }
}

.news-title {
  font-size: 1.36rem;
  margin: 4px 0
}

.news-date {
  color: #aaa;
  font-size: .7rem;
  margin-bottom: 4px;
  font-weight: 400;
}

.news-summary {
  font-size: .9rem
}

.news-title a, .news-summary{
  -webkit-line-clamp: 2;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}

.news-thumbnail {
  width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 2px 2px 15px #0003;
  transition: all .3s;
}

.pagination {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-bottom: 20px;
}

.pagination-page,
.pagination-current {
  font-size: 18px;
  margin: 10px 5px;
  padding: 4px 12px;
  border-radius: 4px;
  color: #888;
  box-shadow: 2px 2px 10px #0006;
  font-weight: 600;
  transition: color .3s,background .3s
}

.pagination-page {
  background: #444;
  color: #888;
  font-weight: 400;
}

.pagination-page:hover{
  background: #555;
  color: #fff;
}
.pagination-current {
  background: var(--main-green-dark);
  color: #fff;
  font-weight:600;
}

.ac-title,.article h2,.article-text h3,.pet-cd-name,.stat-negative,.stat-positive,a.sc-link {
  font-weight: 600
}

article {
  padding: 12px 15px
}

.header-left,.header-right,article .article {
  display: flex
}

.article h2 {
  font-size: 1.8rem;
  margin-bottom: 4px
}

.article .thumbnail {
  margin-right: 20px;
  align-items: flex-start
}

.table-of-contents {
  margin: 20px 4px;
  padding: 10px 20px;
  border-radius: 20px;
  width: fit-content;
  box-shadow: 2px 2px 10px 5px #0001;
  background: #3a3a3a
}

.table-of-contents p {
  font-size: 1.2rem;
  margin-bottom: 6px
}

.table-of-contents ol li {
  font-size: .9em;
  color: #eee;
  line-height: 1.5
}

.article ul {
  margin-left: .9em
}

.article li {
  padding-left: 8px
}

.article ul li::marker {
  color: var(--main-green);
  font-family: 'Font Awesome 5 Free';
  content: "\f105";
  font-weight: 900
}

.article-content {
  width: 100%
}

.article-content-sc {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between
}

.article-text {
  line-height: 1.5em;
  color: #eee
}

.article-text h3 {
  font-size: 1.3em;
  margin: 15px 0 8px
}

.article-text h4 {
  margin-top: 12px
}

.article-text p {
  font-size: 17px;
  margin: 8px 0
}

.article-text .hint {
  border-left: 6px solid var(--main-green);
  padding: 8px 10px;
  border-radius: 5px;
  background: var(--main-green-trans);
  margin: 4px;
  font-weight: 400;
  font-size: 16px
}

.article-text img.text-img {
  vertical-align: middle;
  width: 20px;
  margin-top: -2px
}

.article-text img.img-article,.article-text img.img-article-header {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 2px 2px 10px #0005;
  margin: 10px 0;
}

.article-text .responsive-table {
  overflow-x: auto;
  max-width: 1440px
}

.article-text table {
  border-collapse: collapse;
  margin: 20px 16px;
  display: block
}

@media (max-width: 800px) {
  .article-text table {
    margin:14px 0;
    width: 100%
  }
}

.article-text table th {
  font-size: 14px;
  font-weight: 600;
  padding: 10px 15px;
}

.article-text table th hr {
  border-color: var(--main-green);
}

@media(max-width:480px){
  .article-text table th {
    padding: 8px;
  }
}

.article-text table th:first-child {
  border-radius: 5px 0 0 5px
}

.article-text table th:last-child {
  border-radius: 0 5px 5px 0
}

.article-text table th.no-borders {
  border-radius: 0
}

.article-text table td {
  padding: 8px 10px;
  border-bottom: 1px solid #707070;
  font-size:14px;
  font-weight:400;
}

@media(max-width:480px){
  .article-text table td {
    padding: 6px 4px;
  }
}

.article-text table td.borderless,.article-text table tr:last-child td {
  border: none
}

.article-text table.y-scroll {
  max-height: 580px;
  overflow-y: auto;
  width: fit-content;
  padding-right: 10px
}

.stat-negative {
  color: #ff6b6b
}

.stat-positive {
  color: #7ad442
}

.dungeon-floor-reward {
  position: relative;
  background: #444;
  border-radius: 6px;
  box-shadow: 3px 3px 10px #0002;
  font-weight: 600;
  color: #ddd;
  display: inline-flex;
  padding: 8px;
  width: 32px;
  height: 32px;
  justify-content: center;
  margin: 6px 4px;
  align-items: center;

}

@media(max-width:480px){
  .dungeon-floor-reward {
    width:26px;
    height:26px;
    font-size: 12px;
  }
}

.dungeon-floor-reward>img{
  position: absolute;
  max-width: 34px;
  max-height: 34px;
  bottom: -8px;
  right: -8px;
}


@media(max-width:480px){
  .dungeon-floor-reward>img{
    max-width:30px;
    max-height:30px;
  }
}

.achievements {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 20px 0
}

.achievement {
  width: calc(50% - 30px);
  margin-bottom: 20px;
  padding: 6px 10px;
  border-radius: 10px;
  background: #3a3a3a;
  box-shadow: 2px 2px 10px #2f2f2f
}

.ac-title {
  font-size: 17px
}

.ac-description {
  color: var(--main-green);
  font-style: italic
}

.ac-hint {
  border-top: 1px solid #555;
  margin-top: 4px;
  padding-top: 4px
}

a.sc-link {
  display: inline-block;
  background: #424939;
  padding: 14px 21px;
  border-radius: 10px;
  color: var(--main-green);
  font-size: 1.5rem;
  box-shadow: 2px 2px 10px #0003;
  margin: 10px 0
}

footer {
  margin-top:60px;
  padding: 20px 15%;
  justify-content: center;
  margin: auto;
  box-sizing: border-box;
  color: #aaa;
  justify-content: space-between;
}

footer div{
  padding:5px 0;
}
@media(max-width:600px){
  footer{
    display:block;
    text-align: unset;
  }
}

.scrapbook-header {
  text-transform: uppercase;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-top: 6px
}

.header-left {
  display: none
}

.server-change {
  display: flex;
  align-items: center;
  border: 1px solid #484848;
  padding: 6px;
  border-radius: 27px;
  justify-content: center;
  margin-left: 5px
}

.server-change span {
  color: #ccc;
  text-transform: uppercase;
  font-size: 14px;
  margin-right: 5px
}

.server-change .server-select {
  position: relative;
  color: #ddd;
  font-size: 14px;
  border: 2px solid #78bb67;
  border-radius: 20px;
  margin: auto;
  box-sizing: border-box;
  padding: 8px 6px;
  font-weight: 700
}

.server-select-list {
  color: #737373;
  display: none;
  border-radius: 6px;
  border: 2px solid #2a2a2a;
  background: #191919;
  box-sizing: border-box;
  z-index: 10;
  padding: 15px;
  height: 400px;
  width: 320px;
  left: 50%;
  margin-left: -160px;
  top: 50%;
  margin-top: -200px;
  box-shadow: 0 0 20px #000
}

.server-select-list span {
  color: #78bb67;
  padding-bottom: 10px;
  display: inline-block;
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 700
}

.server-select-list > ul {
  height: calc(100% - 37px);
  overflow-y: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin: 0
}

.server-select-list > ul > li {
  font-weight: 600;
  width: 59px;
  background: #2a2a2a;
  margin: 0 8px 8px 0;
  padding: 10px 0;
  border-radius: 4px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 3px;
}

.server-select-list > ul > li:hover {
  color: #fff;
  cursor: pointer;
  background: #77bb67
}

.server-select-list > ul > li > div {
    font-size: 10px;
}

ul.navigation {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}

ul.navigation>li {
  font-size: 14px;
  font-weight: 700;
  display: flex;
  margin: 0 8px 8px 0;
  background: #3f3f3f;
  border-radius: 10px;
  padding: 0
}

ul.navigation>li:first-of-type {
  margin-left: 0
}

ul.navigation>li:last-of-type {
  margin-right: 0
}

ul.navigation>li>a {
  padding: 16px;
  color: #bbb;
  font-weight: 600;
  border-radius: 10px 0 0 10px
}

ul.navigation>li i {
  padding: 18px 6px;
  border-left: 1px solid #4e4e4e;
  margin: auto;
  border-radius: 0 10px 10px 0
}

ul.navigation>li:hover {
  color: #fff;
  cursor: pointer;
  background: #505050;
}
ul.navigation>li:hover>i{
    border-color: #666;
  }

.nav-img {
  width: 28px;
  height: 28px;
  display: none
}

@media (max-width: 964px) {
  ul.navigation {
    margin:.2em 0 .8em
  }

  ul.navigation>li>a {
    padding: 15px 5px
  }

  ul.navigation>li>i {
    padding: 22px 6px
  }

  ul.navigation>li>a span {
    display: none
  }

  .nav-img {
    display: block
  }
}

.form-add,.nested-list {
  right: 0;
  background: #222;
  display: none
}

.nested-list {
  position: absolute;
  top: 52px;
  user-select: none;
  z-index: 1;
  min-width: 100%;
  list-style: none
}

.fixed,.form-add {
  position: fixed;
  justify-content: center
}

.nested-list li {
  padding: 10px
}

.nested-list li::marker {
  content: initial
}

.nested-list li:hover {
  cursor: pointer;
  color: #fff;
  background: #000
}

ul.nested-list>li>a {
  color: inherit;
  width: 100%;
  display: block
}

.nav-button {
  color: #78bb67;
  padding: 14px 20px;
  cursor: pointer
}

.form-add {
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  width: 400px;
  height: 200px;
  z-index: 3;
  padding: 10px 20px;
  box-sizing: border-box;
  flex-wrap: wrap;
  align-items: center;
  border-radius: 5px;
  box-shadow: 2px 2px 20px #0005
}

@media (max-width: 400px) {
  .server-select-list {
    width:calc(100% - 20px);
    margin: -200px 10px 0;
    left: 0;
    top: 50%
  }

  .form-add {
    width: calc(100% - 20px);
    margin: auto 10px
  }
}

.form-add .form-label {
  color: #78bb67;
  display: inline-block;
  font-size: 18px;
  font-weight: 600
}

.form-add input[type=text] {
  padding: 10px 14px;
  width: 240px;
  border-radius: 5px;
  border: none;
  background: #2f2f2f;
  color: #ddd;
  font-weight: 600;
  font-size: 16px
}

.form-add input[type=submit],.modal-close {
  font-weight: 700;
  transition: .2s linear;
  text-transform: uppercase
}

.form-add input[type=submit] {
  background: #284e1c;
  border: none;
  color: #ddd;
  padding: 9px 25px;
  border-radius: 5px;
  margin: 0 5px
}

.form-add input[type=submit]:hover {
  color: #fff;
  background: #584;
  cursor: pointer
}

.modal-close {
  background: #2a2a2a;
  color: #bbb;
  font-size: 13px;
  padding: 10px 20px;
  border-radius: 5px;
  margin-left: 5px;
  cursor: pointer
}

.fixed,.item ul li,.pet-name {
  font-weight: 600
}

.modal-close:hover {
  color: #fff;
  background: #801313
}

.welcome {
  font-size: 20px
}

.item{
  position: relative
}

.item-group,.main-container {
  display: flex;
  text-align: center
}

.switch-checked {
  background: #59a945
}

.switch div {
  width: 1em;
  background: #fff;
  box-shadow: 0 .1em .3em rgba(0,0,0,.3);
  -webkit-transition: .3s;
  -moz-transition: .3s;
  transition: .3s
}

.item,.item ul li i {
  transition: .2s ease-in-out
}

.main-container {
  width: 100%;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  box-sizing: border-box
}

.item-group {
  flex-wrap: wrap;
  justify-content: center;
  max-width: 650px;
  margin: 0 5px;
  padding-bottom: 15px
}

.item-group-single {
  width: 160px
}

.item-group-title {
  width: 100%;
  font-weight: 400;
  color: var(--main-green);
  font-size: 0.95
}

.item {
  background: #3a3a3a;
  border-radius: 5px;
  width: 115px;
  margin: 10px 5px auto;
  padding: 5px 0;
  box-shadow: 2px 2px 10px #2f2f2f
}

.floating-button,.item ul li i {
  display: none;
  color: #fff;
  position: absolute
}

.floating-button {
  margin: 10px 5px auto;
  background: rgba(120,187,103,.9);
  border-radius: 50%;
  width: 50px;
  height: 50px;
  top: 10px;
  opacity: .9;
  left: calc(50% - 30px);
  cursor: pointer;
  padding: 12px;
  box-sizing: border-box;
  font-size: 18px;
  box-shadow: 2px 2px 10px rgba(0,0,0,.5)
}

.img-wrap {
  width: 90px;
  height: 90px;
  display: flex;
  margin: auto;
  align-items: center;
  justify-content: center
}

.item img {
  width: initial;
  height: auto;
  max-height: 100%;
  transition: opacity .3s
}

.blur {
  opacity: .3
}

.item ul {
  list-style: none;
  margin: 2px auto auto;
  width: 100px
}

.item ul li {
  font-size: 13px;
  position: relative;
  color: #ddd;
  padding: 2px 0 0
}

.item ul li:first-child {
  border-top: 1px solid #414856
}

.item ul li::marker {
  content: initial
}

.item ul li:hover i {
  right: 5px;
  opacity: 1
}

.item ul li i {
  font-size: 14px;
  top: 0;
  right: -5px;
  opacity: 0;
  background: #ea1f1f;
  padding: 3px;
  border-radius: 2px;
  box-shadow: 0 0 5px #000
}

.dungeon-card-container{
  display: flex;
  flex-wrap: wrap;
}

@media (max-width:600px){
  .dungeon-card-container{
    flex-wrap: nowrap;
    overflow-x:auto;
  }
}

.dungeon-card{
  width:240px;
  height:275px;
  border-radius: 10px;
  box-shadow: 2px 2px 10px #0005;
  margin: 10px;
  text-align: center;
  justify-content: center;
  align-items: center;
}

@media (max-width:600px){
  .dungeon-card{
    min-width:260px;
    width:260px;
    height:298px;
  }
}

.dungeon-card-name{
  height: 64px;
  box-sizing: border-box;
  margin: auto;
  display: flex;
  color:#fff;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  padding:4px 10px;
  font-size:24px;
  line-height: initial;
  text-shadow: 3px 3px 10px #000a;
}

.dng-card-light{
  background: url('/img/dng-cards/light.png');
}
.dng-card-portal{
  background: url('/img/dng-cards/portal.png');
}
.dng-card-tower{
  background: url('/img/dng-cards/tower.png');
}
.dng-card-shadow{
  background: url('/img/dng-cards/shadow.png');
}
.dng-card-twister{
  background: url('/img/dng-cards/twister.png');
}
.dng-card-idols{
  background: url('/img/dng-cards/idols.png');
}

.dng-card-light,
.dng-card-portal,
.dng-card-tower,
.dng-card-shadow,
.dng-card-twister,
.dng-card-idols{
  background-size: cover;
}


.dungeon-card-list {
  max-height: 206px;
  overflow-y:auto;
  font-weight: 400;
  margin: 0px 8px;
}

@media (max-width:600px){
  .dungeon-card-list {
    max-height: 228px;
  }
}

.dungeon-card-list ul{
  margin-left:0
}
.dungeon-card-list ul li{
  padding: 2px 5px;
  font-weight: 600;
  font-size: 13px;
  text-shadow: 1px 1px 10px #000;
  background: #0006;
  margin: 0px 10px 8px 10px;
  border-radius: 8px;
  transition: color .3s;
}

.dungeon-card-list ul li.selected{
  background: var(--main-green-dark)
}

.dungeon-card-list ul li:hover{
  cursor:pointer;
  color: var(--main-green);
}

.dungeon-card-list ul li::marker {
    content: "";
}

.mob-container,.pet-container {
  text-align: center
}

.pet-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-top: 15px
}

.mob-item,.pet-item {
  max-width: 200px;
  margin-bottom: 15px
}

.mob-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around
}

.pet-paths{
  margin:10px 0;
}

img.pet-path-entry-img {
    width: 70px;
    height: auto;
    margin:4px auto 8px auto;
}

.pet-path {
    display: flex;
    overflow-x:auto;
    margin: 10px 0;
}

.pet-path-shadow .pet-path-entry {
  background: linear-gradient(0, #48265d, #7f539b);
  color: #e4c8ff;
}

.pet-path-light .pet-path-entry {
  background: linear-gradient(0, #8f7104, #cdb332);
  color:#ffffbe;
}

.pet-path-earth .pet-path-entry {
  background: linear-gradient(0, #3d5c24, #6ba33f);
  color:#b9ff9c
}

.pet-path-fire .pet-path-entry {
  background: linear-gradient(0, #7c4c23, #ad7f1a);
    color: #ffe3a2;
}

.pet-path-water .pet-path-entry {
  color: #a9dbff;
    background: linear-gradient(0, #25466e, #206daf);
}

.pet-path-entry-info span {
  background: #0007;
}

.pet-path-entry {
  line-height:initial;
  display: flex;
  flex-wrap: wrap;
  align-items:flex-start;
  min-width: 180px;
  width:180px;
  justify-content: center;
  padding: 4px 12px 4px 8px;
  position:relative;
  clip-path: polygon(90% 0, 100% 50%, 90% 100%, 0% 100%, 10% 50%, 0% 0%);
  position: relative;
  cursor:pointer;
  transition: opacity .3s;
}

.pet-path:hover .pet-path-entry-info{
  opacity:1;
}

.pet-path-entry-name {
  font-weight: 600;
  font-size:13px;
  width: 100%;
  text-align: center;
}

.pet-path-entry-info {
  opacity: 0;
  position: absolute;
  width: auto;
  display: flex;
  align-items: center;
  font-size:12px;
  font-weight:600;
  justify-content: center;
  padding: 6px 6px 6px 0px;
  flex-direction: row;
  right: 0;
  bottom: 0;
  background: #0005;
  left: 0;
  box-shadow: 0 0px 30px #0005;
  height: 22px;
  transition: opacity .3s;
}

.pet-path-entry-info span {
  display:inline-block;
  margin: 2px;
  padding: 2px 4px;
  border-radius: 6px;
}
.pet-path-entry-info span img{
  width:16px;
  height:16px;
  vertical-align: bottom;
}

.pet-legend-icon {
  width: 30px;
  height: 26px;
  background: var(--main-green-trans);
  display: inline-block;
  text-align: center;
  border-radius: 4px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 2px 0;
  vertical-align: middle;
}

.cal-event:hover .cal-event-label,.cal-pet:hover .cal-pet-label,.petCountdown {
  display: block
}

@media(max-width: 480px) {
  .news {
    padding:10px 0
  }

  .mob-img,.mob-item,.pet-img,.pet-item {
    max-width: 50%
  }
}

.mob-img,.pet-img {
  max-width: 95%;
  height: auto;
  margin: 0;
  border-radius: 6px
}

.pet-name {
  color: gold;
  font-size: 17px
}

.cal-event-label>ul>li,.mob-name {
  font-weight: 400
}

.mob-name {
  color: gold;
  font-size: 16px
}

.mob-info,.pet-type {
  font-size: 13px;
  color: #bbb;
  font-weight: 600;
  font-style: italic
}

.pet-type-rare {
  color: #b88cff
}

.pet-type-legendary {
  color: #ffb100
}

.pet-description .mob-info {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2rem
}

.mob-img {
  background: radial-gradient(#2169c9,#051831)
}

.mob-img-tower {
  background: radial-gradient(#ffc957,#944e00)
}

.petCountdown {
  max-height: 580px;
  overflow-y: auto;
  width: fit-content;
  padding-right: 10px
}

.petCountdown img {
  width: 56px;
  height: 56px;
  border-radius: 4px;
  box-sizing: content-box;
  margin: 0 10px 10px 0;
  filter: brightness(.9);
  cursor: pointer
}

.petCountdown img:hover {
  filter: brightness(1)
}

.petCdContainer {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px
}

.petCounter {
  margin: 0 12px 12px 0;
  display: flex;
  background: #383838;
  padding: 6px;
  border-radius: 6px;
  border: 1px solid #444;
  animation: .2s cubic-bezier(.39,.575,.565,1) both scale;
  overflow-x: hidden
}

.petCounter img {
  border-radius: 6px;
  margin-right: 6px;
  width: 64px;
  height: 64px
}

.pet-cd-stat-off,.pet-cd-stat-on {
  font-size: 12px;
  padding: 0 8px;
  margin: 2px 0;
  border-radius: 6px;
  font-weight: 600;
  width: fit-content
}

.pet-cd-stat-off {
  color: #ccc;
  background: #4f4f4f
}

.pet-cd-stat-on {
  color: #fff;
  background: #57811a;
  width: fit-content
}

.pet-cd-loc {
  color: #8bc5da;
  background: #3c525a;
  border-radius: 4px;
  padding: 0 6px;
  margin-top: 4px;
  font-size: 11px;
  width: fit-content;
  font-weight: 700
}

.petCounterClose {
  padding: 2px 6px;
  background: #484848;
  color: #aaa;
  margin-left: 5px;
  border-radius: 4px;
  align-self: start;
  cursor: pointer;
  transition: .15s ease-in-out
}

.petCounterClose:hover {
  color: #fff;
  background: #af3838
}

@keyframes scale {
  from {
    transform: scale(.5)
  }

  to {
    transform: scale(1)
  }
}

.event-calendar {
  position: relative;
  padding: 10px;
  border-radius: 10px;
  background: #3f3f3f
}

.event-calendar .day {
  border-bottom: 1px solid #666;
  padding: 8px;
  font-weight: 400;
  color: #eee;
  font-size: .9rem
}

.event-calendar .event {
  position: absolute;
  background: var(--main-green-dark);
  left: 70px;
  border-radius: 5px;
  padding: 2px 6px;
  width: calc(100% - 90px);
  box-sizing: border-box;
  box-shadow: 4px 4px 15px #0003;
  font-size: .9rem;
  line-height: 1.5em;
  font-weight: 600;
  display: flex;
  flex-wrap: wrap
}

.event ul li img{
  vertical-align: middle;
}

@media (max-width: 480px) {
  pre {
    display:block;
    overflow-x: scroll
  }

  header {
    justify-content: space-between;
  }

  aside {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box
  }

  section {
    padding: 10px 6px;
    min-height: calc(100vh - 188px)
  }

  .achievement,section.content-index {
    width: 100%
  }

  article {
    padding: 6px
  }

  .article {
    flex-wrap: wrap
  }

  .article .thumbnail,.item-group {
    margin: 0
  }

  .article-text table {
    margin: 10px 0;
    width: 100%;
    font-size: 14px
  }

  .event-calendar .event {
    overflow-y: auto
  }
}

.event-calendar .event .event-info {
  position: absolute;
  right: 6px;
  bottom: 6px;
  background: #577e20;
  padding: 4px 6px;
  border-radius: 6px;
  color: #fff;
  font-size: 0.8rem;
}

.event-calendar .today {
  padding: 8px;
  font-weight: 700;
  font-size: .9em;
  color: var(--main-green);
  border-bottom: 1px solid var(--main-green);
  background: var(--main-green-trans)
}

.cal-event-label,.cal-pet-label {
  text-align: center;
  display: none;
  position: absolute;
  top: 42px;
  background: #222d;
  padding: 4px 8px;
  border-radius: 6px;
  box-shadow: 2px 2px 6px #0004;
  z-index: 10;
  margin: auto
}

.cal-event-label {
  min-width: 400px;
  text-align: unset;
  top: 66px
}

.cal-event,.cal-pet {
  position: relative;
  width: fit-content;
  height: fit-content
}

.cal-event>img,.cal-pet>img {
  margin: 0 4px 4px 0;
  border-radius: 4px;
  box-shadow: 0 0 3px #0003;
  height: 36px;
  width: 36px;
  image-rendering: -webkit-optimize-contrast
}

.cal-event>img {
  max-height: 52px;
  height: auto;
  width: auto;
  box-shadow: none
}

.cal-event:hover,.cal-pet:hover {
  cursor: pointer
}

ins.adsbygoogle.adsbygoogle-noablate{
  z-index: 1 !important;
}

@media(min-width: 720px) {
  ::-webkit-scrollbar-track {
    background-color:#0a0a0a
  }

  ::-webkit-scrollbar {
    width: 16px;
    background-color: #0a0a0a
  }

  .responsive-table::-webkit-scrollbar,.y-scroll::-webkit-scrollbar, .dungeon-card-list::-webkit-scrollbar {
    width: 12px;
    background: 0 0
  }

  ::-webkit-scrollbar-thumb {
    background: linear-gradient(45deg,#26c1bf,#aac336)
  }
}

.responsive-table::-webkit-scrollbar-thumb,
.responsive-table::-webkit-scrollbar-track,
.y-scroll::-webkit-scrollbar-thumb,
.y-scroll::-webkit-scrollbar-track,
.dungeon-card-list::-webkit-scrollbar-thumb,
.dungeon-card-list::-webkit-scrollbar-track {
  border-radius: 10px
}