.hljs {
  background: #282c34;
  border-radius: 5px;
  color: #abb2bf;
  display: block;
  line-height: 1.3em;
  overflow-x: auto;
  padding: 0.5em;
}
.hljs-keyword,
.hljs-operator,
.hljs-pattern-match {
  color: #f92672;
}
.hljs-function,
.hljs-pattern-match .hljs-constructor {
  color: #61aeee;
}
.hljs-function .hljs-params {
  color: #a6e22e;
}
.hljs-function .hljs-params .hljs-typing {
  color: #fd971f;
}
.hljs-module-access .hljs-module {
  color: #7e57c2;
}
.hljs-constructor {
  color: #e2b93d;
}
.hljs-constructor .hljs-string {
  color: #9ccc65;
}
.hljs-comment,
.hljs-quote {
  color: #b18eb1;
  font-style: italic;
}
.hljs-doctag,
.hljs-formula {
  color: #c678dd;
}
.hljs-deletion,
.hljs-name,
.hljs-section,
.hljs-selector-tag,
.hljs-subst {
  color: #e06c75;
}
.hljs-literal {
  color: #56b6c2;
}
.hljs-addition,
.hljs-attribute,
.hljs-meta-string,
.hljs-regexp,
.hljs-string {
  color: #98c379;
}
.hljs-built_in,
.hljs-class .hljs-title {
  color: #e6c07b;
}
.hljs-attr,
.hljs-number,
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-pseudo,
.hljs-template-variable,
.hljs-type,
.hljs-variable {
  color: #d19a66;
}
.hljs-bullet,
.hljs-link,
.hljs-meta,
.hljs-selector-id,
.hljs-symbol,
.hljs-title {
  color: #61aeee;
}
.hljs-emphasis {
  font-style: italic;
}
.hljs-strong {
  font-weight: 700;
}
.hljs-link {
  text-decoration: underline;
}
@define-mixin font-main {
  font-family: Arial, "sans-serif";
}
@define-mixin font-code {
  font-family: consolas, monaco, Source Code Pro, hack, monospace;
}
body,
html,
input {
  background-color: #151820;
  font-family: Arial, "sans-serif";
  margin: 0;
}
body,
html {
  height: 100%;
}
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
}
a:hover {
  opacity: 0.9;
}
::-moz-selection {
  background-color: #fff;
  color: #000;
}
::selection {
  background-color: #fff;
  color: #000;
}
.clearfix:after,
.clearfix:before {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
.main.page {
  padding-top: 1rem;
}
.main.page .header {
  text-align: center;
}
.main.page .header .tag {
  font-size: 32px;
  font-weight: 700;
  margin: 2rem 0 0;
}
.main.page .header .tag-sub {
  color: #7f8c8d;
  font-size: 16px;
  font-weight: 400;
  margin: 10px 0 0;
}
.main.page .header .search-wrap {
  margin: 50px auto 0;
  max-width: 300px;
  position: relative;
}
.main.page .header .search-wrap .search {
  border: 1px solid #ddd;
  border-radius: 100px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  opacity: 0.9;
  padding: 10px 25px;
  width: 100%;
}
.main.page .header .search-wrap .search:focus {
  opacity: 1;
  outline: 0;
}
.main.page .header .search-wrap .icon {
  opacity: 0.3;
  position: absolute;
  right: 10px;
  top: 5px;
}
.main.page .article-list {
  margin-top: 40px;
}
.main.page .article-list .searched {
  background-color: #009a61;
  color: #000;
}
.main.page .article-list .article {
  margin-bottom: 55px;
  padding-bottom: 45px;
}
.main.page .article-list .article:last-child {
  border-bottom: 0;
}
.main.page .article-list .article .title {
  color: #fff;
  display: block;
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 5px;
  text-decoration: none;
}
.main.page .article-list .article .title .top {
  color: #7f8c8d;
  margin-right: 5px;
}
.main.page .article-list .article .cover {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #ddd;
  border-radius: 6px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #eee;
  height: 280px;
  margin-top: 15px;
  width: 100%;
}
@media (max-width: 414px) {
  .main.page .article-list .article .cover {
    height: 180px;
  }
}
.main.page .article-list .article .preview {
  color: #fff;
  display: block;
  font-size: 16px;
  line-height: 28px;
  margin-top: 10px;
}
.main.page .article-list .article .info {
  color: #7f8c8d;
  font-size: 14px;
  margin-bottom: 20px;
  margin-top: 15px;
}
.main.page .article-list .article .avatar {
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #ddd;
  border-radius: 20px;
  float: left;
  height: 20px;
  margin-right: 10px;
  margin-top: -4px;
  width: 20px;
}
.main.page .article-list .article .name {
  margin-right: 10px;
}
.main.page .article-list .article .date {
  color: #7f8c8d;
}
.main.page .article-list .article .tags {
  float: right;
  margin-left: 10px;
}
.main.page .article-list .article .tags .tag {
  color: #7f8c8d;
  margin-right: 5px;
  text-decoration: none;
}
.main.page .article-list .empty {
  font-size: 24px;
  max-width: 800px;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
}
.main.page .article-list .empty span {
  font-weight: 700;
}
.main.page .page-nav {
  font-size: 14px;
  height: 50px;
  position: relative;
}
.main.page .page-nav a {
  color: #7f8c8d;
  font-style: italic;
  text-decoration: none;
}
.main.page .page-nav .nav {
  color: #7f8c8d;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: -1;
}
.main.page .page-nav .prev {
  float: left;
}
.main.page .page-nav .prev:before {
  border: 2px solid #7f8c8d;
  border-radius: 3px;
  content: "";
  display: block;
  float: left;
  height: 3px;
  margin-right: 7px;
  margin-top: 5px;
  width: 3px;
}
.main.page .page-nav .next {
  float: right;
}
.main.page .page-nav .next:after {
  border: 2px solid #7f8c8d;
  border-radius: 3px;
  content: "";
  display: block;
  float: right;
  height: 3px;
  margin-left: 7px;
  margin-top: 5px;
  width: 3px;
}
.main.article {
  padding-bottom: 4rem;
  padding-top: 4rem;
}
.main.article .title {
  color: #fff;
  font-size: 30px;
  font-weight: 700;
  line-height: 42px;
  margin: 0;
}
.main.article .info {
  font-size: 14px;
  margin-top: 10px;
}
.main.article .info .avatar {
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #ddd;
  border-radius: 20px;
  float: left;
  height: 20px;
  margin-right: 10px;
  margin-top: -4px;
  width: 20px;
}
.main.article .info .name {
  margin-right: 5px;
}
.main.article .info .date {
  color: #7f8c8d;
  margin-right: 5px;
}
.main.article .info .tags .tag {
  color: #7f8c8d;
  margin-right: 5px;
  text-decoration: none;
}
.main.article .recommend {
  margin-top: 50px;
  overflow: auto;
}
.main.article .recommend .nav {
  width: 100%;
}
.main.article .recommend .nav .head {
  color: #7f8c8d;
  font-size: 12px;
  font-style: italic;
  margin-bottom: 10px;
  text-align: center;
}
.main.article .recommend .nav .link {
  color: #fff;
  display: block;
  text-align: center;
}
.main.article .recommend .nav.prev.more {
  float: left;
  text-align: left;
  width: 45%;
}
.main.article .recommend .nav.prev.more .head,
.main.article .recommend .nav.prev.more .link {
  text-align: left;
}
.main.article .recommend .nav.next.more {
  float: right;
  text-align: right;
  width: 45%;
}
.main.article .recommend .nav.next.more .head,
.main.article .recommend .nav.next.more .link {
  text-align: right;
}
.main.article .author {
  margin-top: 36px;
  padding-top: 40px;
  text-align: center;
}
.main.article .author .avatar {
  background-repeat: no-repeat;
  background-size: cover;
  border: 20px solid #fff;
  border-radius: 70px;
  height: 70px;
  margin: 0 auto;
  width: 70px;
}
.main.article .author .avatar:before {
  content: "";
  left: 0;
  margin-top: 36px;
  position: absolute;
  right: 0;
  width: 100%;
  z-index: -1;
}
.main.article .author .name {
  font-size: 16px;
  font-weight: 700;
  margin-top: 20px;
}
.main.article .author .intro {
  color: #7f8c8d;
  font-size: 14px;
  font-style: italic;
  margin-top: 8px;
}
.main.article #disqus_thread {
  margin-top: 50px;
}
.main.archive,
.main.tag {
  padding-top: 1rem;
}
.main.archive a,
.main.tag a {
  color: #009a61;
  text-decoration: none;
}
.main.archive .site .subtitle,
.main.archive .site .title,
.main.tag .site .subtitle,
.main.tag .site .title {
  text-align: left;
}
.main.archive .header,
.main.tag .header {
  font-size: 18px;
  padding-top: 2rem;
}
.main.archive .header .title,
.main.tag .header .title {
  font-weight: 700;
  margin-right: 5px;
  margin-top: 30px;
}
.main.archive .header .subtitle,
.main.tag .header .subtitle {
  font-style: italic;
}
.main.archive .archive-list .archive-item .archive-year,
.main.tag .archive-list .archive-item .archive-year {
  color: #fff;
  font-weight: 700;
  margin: 15px 0;
}
.main.archive .archive-list .archive-item .article-list .article-item,
.main.tag .archive-list .archive-item .article-list .article-item {
  margin-bottom: 10px;
}
.main.archive .archive-list .archive-item .article-list .article-item .date,
.main.tag .archive-list .archive-item .article-list .article-item .date {
  color: #7f8c8d;
  font-style: italic;
  margin-right: 20px;
}
.main.archive .tag-list,
.main.tag .tag-list {
  margin-top: 50px;
}
.main.archive .tag-list .tag-item,
.main.tag .tag-list .tag-item {
  float: left;
  margin-bottom: 25px;
  margin-right: 10px;
}
.main.archive .tag-list .tag-item .tag-name,
.main.tag .tag-list .tag-item .tag-name {
  border: 1px solid #eee;
  border-radius: 3px;
  font-size: 14px;
  padding: 5px 7px;
}
.main.archive .tag-list .tag-item .tag-name:hover,
.main.tag .tag-list .tag-item .tag-name:hover {
  background-color: #fff;
  border: 1px solid #fff;
  color: #000;
}
.main .content {
  color: #fff;
  font-size: 16px;
  line-height: 1.7;
}
.main .content h1 + p,
.main .content h2 + p,
.main .content h3 + p,
.main .content h4 + p,
.main .content h5 + p,
.main .content h6 + p {
  margin-top: 10px;
}
.main .content h1 {
  font-size: 28px;
  margin-bottom: 10px;
  margin-top: 40px;
}
.main .content h2 {
  font-size: 24px;
  margin-bottom: 10px;
  margin-top: 40px;
}
.main .content h3 {
  font-size: 18px;
  margin-bottom: 10px;
  margin-top: 40px;
}
.main .content p {
  margin-bottom: 1rem;
  margin-top: 1rem;
  text-align: left;
}
.main .content.preview p {
  margin-bottom: 10px;
  margin-top: 10px;
}
.main .content a {
  color: #009a61;
  text-decoration: none;
}
.main .content a:hover {
  color: #004e31;
}
.main .content code {
  background-color: #282d30;
  border-radius: 3px;
  color: #009a61;
  font-size: 14px;
  margin: 0 3px;
  padding: 1px 4px;
}
.main .content pre {
  margin: 0;
  -moz-tab-size: 2;
  -o-tab-size: 2;
  tab-size: 2;
}
.main .content pre code {
  background-color: #000;
  border-radius: 6px;
  color: #fff;
  display: block;
  font-size: 14px;
  margin: 0;
  overflow: auto;
  padding: 10px 15px;
}
.main .content blockquote {
  border-left: 4px solid #009a61;
  font-style: italic;
  margin: 25px 0 25px -23px;
  padding: 0 10px 0 20px;
}
.main .content table {
  border-collapse: collapse;
  border-color: #ddd;
  border-width: 1px;
  font-size: 14px;
  width: 100%;
}
.main .content table th {
  background-color: #eee;
  border: 1px solid #ddd;
  padding: 5px;
}
.main .content table td {
  background-color: #000;
  border: 1px solid #ddd;
  padding: 5px;
}
.main .content ul {
  list-style: circle;
  padding-left: 40px;
}
.main .content ul li {
  margin: 5px 0;
}
.main .content ol {
  padding-left: 40px;
}
.main .content ol li {
  margin: 5px 0;
}
.main .content hr {
  border: 0;
  margin: 25px 0;
}
.main .content img {
  border-radius: 5px;
  cursor: pointer;
  display: block;
  margin: 30px auto;
  max-width: 100%;
  opacity: 0.8;
  -webkit-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
.main .content .image-alt {
  color: #7f8c8d;
  font-style: italic;
  margin-bottom: 30px;
  margin-top: -10px;
  text-align: center;
}
.main .content .searched {
  background-color: #ff0;
}
.header-wrap {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 18px;
  font-weight: 700;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  left: 0;
  padding: 15px;
  position: absolute;
  right: 0;
  z-index: 1;
}
.header-wrap a {
  color: #a1b2b4;
}
.header-wrap .index {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.header-wrap .index .logo {
  border: 1px solid #ddd;
  border-radius: 50%;
  height: 30px;
  margin-right: 10px;
  width: 30px;
}
.header-wrap .menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.header-wrap .menu .menu-item {
  margin-right: 10px;
}
.main,
a.name {
  color: #fff;
}
.main {
  margin: 0 auto;
  max-width: 720px;
  min-height: 100%;
  padding: 0 15px;
  position: relative;
}
.main .site .logo {
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #ddd;
  border-radius: 50%;
  height: 80px;
  margin: 0 auto;
  width: 80px;
}
.main .site .title {
  font-size: 32px;
  font-weight: 700;
  margin: 30px 0 0;
  text-align: center;
}
.main .site .subtitle {
  color: #a1b2b4;
  font-size: 16px;
  font-style: italic;
  font-weight: 400;
  margin-top: 10px;
  text-align: center;
}
.main.about .info {
  margin-top: 80px;
  text-align: center;
}
.container {
  height: auto;
  min-height: 100%;
  padding-bottom: 0;
}
.footer {
  background-color: #000;
  border-top: 1px solid #eee;
  clear: both;
  color: #a1b2b4;
  font-size: 14px;
  height: 32px;
  margin-top: -36px;
  position: relative;
  width: 100%;
}
.footer span {
  display: block;
  padding: 8px 15px;
}
.footer span a {
  font-weight: 700;
}
.footer .copyright {
  float: left;
}
.footer .publish {
  float: right;
}
.footer .publish a {
  color: #a1b2b4;
  text-decoration: none;
}
.main .content img:hover {
    opacity: 1;
}
