* {
    margin: 0;
    padding: 0
}

body,
html {
    height: 100%
}

body {
    background: #ddd;
    color: #505050;
    letter-spacing: .01em;
    font-size: 14px;
    font-family: Lato, Helvetica Neue, Arial, PingFang SC, Hiragino Sans GB, STHeiti, Microsoft YaHei, WenQuanYi Micro Hei, sans-serif;
    -webkit-transition: -webkit-transform .2s cubic-bezier(.4, .01, .165, .99);
    transition: transform .2s cubic-bezier(.4, .01, .165, .99), -webkit-transform .2s cubic-bezier(.4, .01, .165, .99);
    -webkit-tap-highlight-color: transparent;
    -webkit-text-size-adjust: none
}

h1 {
    font-size: 2em
}

h2 {
    font-size: 1.6em
}

h3 {
    font-size: 1.3em
}

h4 {
    font-size: 1em
}

a {
    color: #2479cc;
    text-decoration: none
}

a:hover {
    text-decoration: underline
}

@font-face {font-family: "iconfont";
  src: url('//at.alicdn.com/t/font_7xfbg1ri4tpgb9.eot?t=1484874598852'); /* IE9*/
  src: url('//at.alicdn.com/t/font_7xfbg1ri4tpgb9.eot?t=1484874598852#iefix') format('embedded-opentype'), /* IE6-IE8 */
  url('//at.alicdn.com/t/font_7xfbg1ri4tpgb9.woff?t=1484874598852') format('woff'), /* chrome, firefox */
  url('//at.alicdn.com/t/font_7xfbg1ri4tpgb9.ttf?t=1484874598852') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
  url('//at.alicdn.com/t/font_7xfbg1ri4tpgb9.svg?t=1484874598852#iconfont') format('svg'); /* iOS 4.1- */
}

.iconfont {
    vertical-align: sub;
    font-style: normal;
    font-size: 24px;
    font-family: iconfont!important
}

.icon-wechat:before { content: "\e675"; }

.icon-rss:before { content: "\e600"; }

.icon-instagram:before { content: "\e616"; }

.icon-facebook:before { content: "\e63c"; }

.icon-linkedin:before { content: "\e64d"; }

.icon-twitter:before { content: "\e6a4"; }

.icon-aboutus:before { content: "\e601"; }

.icon-zhihu:before { content: "\e609"; }

.icon-weibo:before { content: "\e64c"; }

.icon-google:before { content: "\e6b7"; }

.icon-music:before { content: "\e612"; }

.icon-collect:before { content: "\e603"; }

.icon-home:before { content: "\e604"; }

.icon-https:before { content: "\e6cb"; }

.icon-liuyan:before { content: "\e693"; }

.icon-sousuo:before { content: "\e605"; }

.icon-links:before { content: "\e606"; }

.icon-github:before { content: "\ee80"; }

.icon-qq:before { content: "\e6f6"; }

.left-col {
    position: fixed;
    width: 270px;
    height: 100%;
    background-color: #1fa4b5;
    background-size: cover;
    background-image: url(images/left-bg.jpg);
    text-align: center
}

.mid-col {
    position: absolute;
    right: 0;
    left: 0;
    margin-left: 270px;
    min-height: 100%;
    background: #fff
}

#header {
    padding: 30px 0;
    width: 100%;
    height: auto;
    border-bottom: none;
    color: #eee;
    line-height: 30px
}

#header a {
    color: #efefef;
    text-shadow: 0 1px #666;
    transition: color .3s
}

#header h1 {
    float: none;
    font-weight: 300;
    font-size: 30px
}

#header .subtitle {
    margin: 5px 0;
    color: #ccc
}

#header a:hover {
    color: #2479cc;
    text-decoration: none
}

#header .profilepic a {
    display: block;
    margin: 10px auto 30px;
    width: 9pc;
    height: 9pc;
    border-radius: 50%;
    background-size: 100% 100%
}

#search {
    position: relative;
    top: 10px;
    z-index: 9999;
    margin-left: 10px;
    width: 88%;
    height: 0;
    -webkit-transform: translate3d(-999px, 0, 0);
    transform: translate3d(-999px, 0, 0)
}

#search,
#search input {
    transition: all .3s ease-out
}

#search input {
    padding: 0 2%;
    width: 100%;
    outline-style: none;
    border: 0;
    border-radius: 0;
    background: #fff;
    font-size: 20px
}

.search-show #search {
    height: 30px;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.search-show #search input {
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-align: left
}

#wechat {
    position: relative;
    top: 10px;
    z-index: 9999;
    margin-left: 4%;
    width: 90%;
    height: 0;
    -webkit-transform: translate3d(-999px, 0, 0);
    transform: translate3d(-999px, 0, 0)
}

#wechat,
#wechat img {
    transition: all .3s ease-out
}
#wechat img {
    width: 100%;
}
.wechat-show #wechat {
    height: 30px;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}


#main-nav {
    margin-left: 0
}

#main-nav i {
    margin-right: .6rem
}

#main-nav,
#sub-nav {
    float: none;
    margin-top: 15px
}

#sub-nav .iconfont {
    font-size: 30px
}

#sub-nav i {
    margin-right: .2rem
}

#main-nav ul li {
    position: relative;
    display: block;
    width: 100%;
    height: 40px;
    font-size: 1pc;
    line-height: 40px
}

#header .subtitle {
    color: #ccc
}

.container {
    position: relative;
    max-width: 100pc;
    min-height: 100%
}

.mid-col .mid-col-container {
    padding: 0 70px 0 40px
}


.icon-https {
    padding-right: 3px;
    color: #46ce4b;
    vertical-align: bottom;
    font-size: 17px;
}

article {
    position: relative;
    padding: 30px 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #ddd
}

article .meta {
    position: relative;
    float: right;
    width: auto;
    color: #555;
    text-align: right;
    font-size: .9em;
    line-height: 2
}

article .meta a {
    color: #999
}

article h1.title {
    margin-bottom: 25px;
    color: #333;
    font-weight: 300;
    font-size: 2em;
    line-height: 35px
}

article h1.title a {
    color: #505050;
    transition: color .3s
}

article h1.title a:hover {
    color: #2479cc;
    text-decoration: none
}

article button,
article input.runcode {
    margin-top: 10px;
    padding: .625em .5em;
    border: none;
    border-radius: 0;
    background: #12b0e6;
    box-shadow: inset 0 -5px 20px rgba(0, 0, 0, .1);
    color: #fff;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    -webkit-appearance: none
}

article button {
    margin-top: 0
}

article button:active,
article button:focus,
article button:hover,
article input.runcode:active,
article input.runcode:focus,
article input.runcode:hover {
    background: #f6ad08
}

article strong {
    font-weight: 700
}

article em {
    font-style: italic
}

article blockquote {
    overflow: hidden;
    margin-top: 10px;
    padding: 15px 20px;
    border: 2px solid #ddd;
    background-color: #f8f8f8
}

article code {
    margin: 0 2px;
    padding: 4px 5px;
    border-radius: 5px;
    background-color: #eee;
    vertical-align: middle;
    font-size: 80%;
    font-family: Consolas, Monaco, Andale Mono, monospace
}

article pre {
    position: relative;
    overflow: hidden;
    padding: .6em;
    border-left: 5px solid #ccc;
    background-color: #f8f8f8;
    color: #5d6a6a;
    white-space: pre-wrap;
    word-wrap: break-word;
    font-size: 14px;
    line-height: 1.6;
    word-break: break-word
}

article img {
    display: block;
    margin: 10px 0 5px;
    padding: 0;
    max-width: 100%;
    border: 1px solid #ccc
}

article table {
    border: 0;
    border-collapse: collapse;
    border-spacing: 0
}

article pre code {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    font-size: 100%
}

article table td,
article table th {
    border: 0
}

article table th {
    padding: 6px 20px;
    border-bottom: 2px solid #848484;
    text-align: left
}

article table td {
    padding: 6px 20px;
    border-bottom: 1px solid #d0d0d0
}

article .copyright-info {
    font-size: 14px
}

article .expire-tips {
    padding: 5px 10px;
    border: 1px solid #e2e2e2;
    border-left: 5px solid #fff000;
    background-color: #ffffc0;
    color: #333;
    font-size: 15px
}

article .post-info {
    padding-top: 15px;
    font-size: 14px;
    border-top: 1px dotted #eee
}

article .entry-content {
    color: #5d686f;
    word-wrap: break-word;
    font-size: 1pc;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased
}

article .entry-content h3 {
    padding: 3px 0 3px 8px;
    border-left: 5px solid #3c8cdd;
    background-color: #f9f9f9;
    font-size: 1.1em
}

article img.loaded {
    height: auto!important
}

article .entry-content blockquote,
article .entry-content dl,
article .entry-content h1,
article .entry-content h2,
article .entry-content h3,
article .entry-content h4,
article .entry-content h5,
article .entry-content h6,
article .entry-content iframe,
article .entry-content ol,
article .entry-content p,
article .entry-content pre,
article .entry-content table,
article .entry-content ul {
    margin-top: 15px
}

article pre b.name {
    position: absolute;
    top: 10px;
    right: 10px;
    color: #eee;
    font-size: 60px;
    font-family: Consolas, Liberation Mono, Courier, monospace;
    line-height: 1;
    pointer-events: none
}

article .entry-content .date {
    color: #999;
    font-size: 14px
}

article .entry-content a:hover {
    text-decoration: underline
}

article .entry-content blockquote>p:first-of-type,
article .entry-content dl dl,
article .entry-content dl ol,
article .entry-content dl ul,
article .entry-content ol dl,
article .entry-content ol ol,
article .entry-content ol ul,
article .entry-content ul dl,
article .entry-content ul ol,
article .entry-content ul ul {
    margin-top: 0
}

article.post-search {
    padding-bottom: 0
}

article .entry-content dl,
article .entry-content ol,
article .entry-content ul {
    margin-left: 25px
}

article .entry-content video {
    width: 100%;
    height: 100%;
    object-fit: fill
}

.page-navi {
    position: relative;
    overflow: hidden;
    padding: 20px 0;
    width: 100%;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #ddd;
    line-height: 20px
}

.page-navi .prev {
    float: left
}

.page-navi .next {
    float: right
}

.page-navi .center {
    margin: auto;
    width: 5pc;
    text-align: center
}

.icon-https {
    padding-right: 3px;
    color: #46ce4b;
    vertical-align: bottom;
    font-size: 17px
}

#comments {
    margin-top: 15px
}

#comments .page-navigator {
    float: inherit;
    margin: 1rem 0 0;
    text-align: center
}

.page-navigator li {
    float: none;
    display: inline-block;
    margin: .4rem
}

.page-navigator a {
    display: block;
    padding: .4rem .6rem
}

.page-navigator .current {
    border: 1px solid #ccc;
    border-radius: 50%;
    background: #fff;
    background-color: #fff
}

.page-navigator .current:hover {
    border: 1px solid #2479cc
}

#comments a {
    color: #aaa
}

#comments a:hover {
    color: #2479cc;
    text-decoration: none
}

.comment-list {
    margin: 0;
    padding-left: 0;
    list-style-type: none
}

.comment-at {
    padding: 0 0 10px 0
}

.comment-close {
    margin: 0 auto;
    margin-top: 10px;
    width: 90%;
    text-align: center;
    padding: 30px;
    border: 1px dashed #eee;
    border-radius: 5px;
    color: #999
}

.avatar {
    float: left;
    display: block;
    margin: 1.4rem 1rem 0 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #ddd
}

.response {
    font-size: .9rem
}

.comment-num,
.response {
    color: #999;
    font-weight: 400
}

.comment-num {
    font-size: 1.3em
}

.comment-main {
    overflow: hidden;
    padding: 1rem 0;
    border-bottom: 1px dotted #e0e0e0
}

.comment-main p {
    margin: 0
}

.cancel-comment-reply,
.comment-meta {
    margin-top: 1rem;
    color: #aaa;
    font-size: .8rem
}

.comment-meta .comment-reply,
.comment-reply {
    float: right
}

.comment-main:hover .comment-reply {
    display: block
}

.cancel-reply {
    margin-left: 10px
}

.comment-author {
    padding: .1rem .25rem;
    border-radius: .25rem;
    background: #eee;
    font-size: .7rem
}

.comment-reply a:before,
.comment-time:before {
    margin: 0 .5rem
}

.comment-parent>.comment-children {
    margin-left: 1rem;
    padding-left: 40px;
    border-left: 1px dotted #e0e0e0
}

.form-control {
    margin: 15px 0;
    padding: 6px 9pt;
    width: 100%;
    height: 34px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff
}

.form-control,
output {
    display: block;
    color: #555;
    font-size: 14px;
    line-height: 1.42857
}

.form-control:focus {
    outline: 0;
    border-color: #2479cc
}

textarea.form-control {
    height: 10rem;
    resize: none
}

.submit {
    display: block;
    margin: 0 auto;
    padding: 0 25px;
    height: 36px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    color: #999;
    text-align: center;
    line-height: 36px;
    cursor: pointer;
    -webkit-transition-duration: .4s;
    transition-duration: .4s
}

.submit:active,
.submit:active:focus,
.submit:focus,
.submit:hover {
    outline-style: none;
    border-color: #2479cc;
    color: #2479cc
}

#footer {
    padding: 15px 70px 15px 40px;
    width: auto;
    border-top: 1px solid #fff;
    text-align: center;
    font-size: .9em;
    line-height: 2.2
}

@media screen and (max-width:1024px) {
    article {
        padding-bottom: 15px
    }
    .form-control {
        width: 95%
    }
    .left-col {
        width: 210px
    }
    .mid-col {
        margin-left: 210px
    }
    .mid-col .mid-col-container {
        padding: 0 20px
    }
    #footer {
        padding: 15px 20px
    }
    article .entry-content,
    article h1.title {
        margin-left: 0
    }
}

@media screen and (max-width:640px) {
    #header {
        margin-left: 0;
        padding: 20px 0;
        text-align: center
    }
    #header h1 {
        margin-top: 0
    }
    .form-control {
        width: 93%
    }
    #main-nav {
        margin-top: 10px
    }
    #main-nav ul li {
        display: inline;
        margin: 0 10px;
        text-align: center
    }
    #header .profilepic a,
    #main-nav ul li a i {
        display: none
    }
    #sub-nav .social,
    #sub-nav .social a {
        margin-bottom: 0
    }
    article {
        padding: 20px 0
    }
    .left-col {
        position: relative;
        width: 100%;
        height: 100%;
        background-color: #1fa4b5;
        background-size: cover;
        background-position: center -55%
    }
    #header .subtitle {
        margin: 5px 0;
        color: #fff
    }
    .mid-col {
        float: none;
        margin-left: 0;
        width: 100%
    }
    article .meta {
        position: static;
        margin-bottom: 10px;
        width: auto
    }
    .mid-col .mid-col-container {
        padding: 0 10px
    }
    .mid-col article .meta {
        float: none;
        overflow: hidden
    }
    article .meta .comment,
    article .meta .date,
    article .meta .tags {
        display: inline;
        margin-right: 5px;
        padding-left: 0
    }
    article .meta .date {
        margin-right: 30px
    }
    #footer {
        padding: 15px 10px
    }
    #sub-nav .social a {
        opacity: 1
    }
}

code[class*=language-],
pre[class*=language-] {
    background: 0;
    color: #000;
    text-align: left;
    text-shadow: 0 1px #fff;
    word-spacing: normal;
    word-wrap: break-word;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    font-family: Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace;
    line-height: 1.5;
    direction: ltr;
    word-break: break-word;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}

code[class*=language-]::-moz-selection,
pre[class*=language-]::-moz-selection {
    background: #b3d4fc;
    text-shadow: none
}

code[class*=language-]::selection,
pre[class*=language-]::selection {
    background: #b3d4fc;
    text-shadow: none
}

@media print {
    code[class*=language-],
    pre[class*=language-] {
        text-shadow: none
    }
}

pre[class*=language-] {
    overflow: auto;
    margin: .95em 0;
    padding: 1em
}

:not(pre)>code[class*=language-],
pre[class*=language-] {
    background: #f8f8f8
}

:not(pre)>code[class*=language-] {
    padding: .1em;
    border-radius: .3em;
    white-space: normal
}

.token.cdata,
.token.comment,
.token.doctype,
.token.prolog {
    color: #708090
}

.token.punctuation {
    color: #999
}

.namespace {
    opacity: .7
}

.token.boolean,
.token.constant,
.token.deleted,
.token.number,
.token.property,
.token.symbol,
.token.tag {
    color: #905
}

.token.attr-name,
.token.builtin,
.token.char,
.token.inserted,
.token.selector,
.token.string {
    color: #690
}

.language-css .token.string,
.style .token.string,
.token.entity,
.token.operator,
.token.url {
    color: #a67f59
}

.token.atrule,
.token.attr-value,
.token.keyword {
    color: #07a
}

.token.function {
    color: #dd4a68
}

.token.important,
.token.regex,
.token.variable {
    color: #e90
}

.token.bold,
.token.important {
    font-weight: 700
}

.token.italic {
    font-style: italic
}

.token.entity {
    cursor: help
}