* {
  margin: 0;
  padding: 0;
}
body {
  background: #eee;
  font-size: 13px;
  font-weight: 300;
}
@media screen and (max-width: 1040px) {
  body {
    margin: 0 20px;
  }
}
@media screen and (max-width: 600px) {
  body {
    font-size: 13px;
  }
}
h1 {
  font-size: 2em;
  color: #111;
}
h2 {
  font-size: 1.5em;
  color: #4183c5;
}
h3 {
  font-size: 1.3em;
  color: #333;
}
a {
  text-decoration: none;
  outline-width: 0;
  color: #258fb8;
}
h1,
h2,
h3,
h4,
h5 {
  font-weight: 400;
}
.basic-alignment.left,
article .entry-content img.left,
article .entry-content video.left {
  float: left;
  margin-right: 1.5em;
}
.basic-alignment.right,
article .entry-content img.right,
article .entry-content video.right {
  float: right;
  margin-left: 1.5em;
}
.basic-alignment.center,
article .entry-content img.center,
article .entry-content video.center {
  display: block;
  margin: 0 auto 1.5em;
}
.basic-alignment.left,
article .entry-content img.left,
article .entry-content video.left,
.basic-alignment.right,
article .entry-content img.right,
article .entry-content video.right {
  margin-bottom: 0.8em;
}
.alignleft {
  float: left;
}
.alignright {
  float: right;
}
.clearfix {
  zoom: 1;
}
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.inner {
  width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1040px) {
  .inner {
    width: 100%;
  }
}
#header {
  height: 30px;
  padding: 30px 0;
  border-bottom: 1px solid #ddd;
  line-height: 30px;
}
@media screen and (max-width: 1040px) {
  #header {
    height: auto;
    position: relative;
    padding-bottom: 10px;
  }
}
#header a {
  color: #eee;
}
#header a:hover {
  color: #258fb8;
}
#header h1 {
  float: left;
  font-weight: 300;
  font-size: 30px;
}
@media screen and (max-width: 1040px) {
  #header h1 {
    float: none;
  }
}
#main-nav {
  float: left;
  margin-left: 30px;
}
@media screen and (max-width: 1040px) {
  #main-nav {
    float: none;
    margin-left: 0;
    margin-top: 15px;
  }
}
@media screen and (max-width: 640px) {
  #main-nav {
    margin-top: 0 !important;
  }
}
@media screen and (max-width: 600px) {
  #main-nav >ul {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -o-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
  }
  #main-nav >ul >li {
    padding: 0 8px;
  }
}
#main-nav >ul >li {
  margin-left: 50px;
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
  font-weight: bold;
}
@media screen and (max-width: 1040px) {
  #main-nav >ul >li {
    margin-left: 0;
  }
  #main-nav >ul >li:last-of-type {
    margin-right: 0;
  }
}
#main-nav >ul >li:hover >a {
  color: #f44;
}
#main-nav >ul >li >a {
  padding: 38px 0;
  margin-top: -38px;
}
@media screen and (max-width: 1040px) {
  #main-nav >ul >li >a {
    padding: 18px 0;
  }
}
#main-nav >ul ul {
  position: absolute;
  top: 60px;
  left: -15px;
  z-index: 10;
  white-space: nowrap;
  background: #ddd;
  border: 1px solid #ccc;
  list-style: none;
  display: none;
  -webkit-box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  border-radius: 0 0 5px 5px;
}
@media screen and (max-width: 1040px) {
  #main-nav >ul ul {
    top: 40px;
  }
}
#main-nav >ul ul ul {
  border-radius: 0 5px 5px 5px;
}
#main-nav >ul ul li {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #ccc;
}
#main-nav >ul ul li:hover {
  background: #d5d5d5;
}
#main-nav >ul ul li:first-of-type {
  border-top: none;
}
#main-nav >ul ul li:first-of-type ul {
  border-radius: 0 0 5px 5px;
}
#main-nav >ul ul li:last-of-type {
  border-bottom: none;
}
#main-nav >ul ul li >a {
  display: block;
  padding: 5px 15px;
}
#main-nav >ul ul li >a:after {
  content: '\f054';
  color: #999;
  font: 12px font-icon;
  padding-left: 10px;
}
#main-nav >ul ul li >a:hover {
  color: #666;
}
#main-nav >ul ul li >a:only-child:after {
  content: '';
}
#main-nav >ul ul ul {
  top: 0;
  left: 100%;
}
#main-nav >ul li {
  position: relative;
}
#main-nav >ul li:hover >ul {
  display: block;
}
#main-nav select {
  display: none;
  margin-bottom: 10px;
}
@media screen and (max-width: 600px) {
  #main-nav select {
    display: block;
  }
}
#mobile-nav {
  display: none;
  height: 37px;
  position: relative;
}
@media screen and (max-width: 600px) {
  #mobile-nav {
    display: block;
  }
}
#mobile-nav a {
  display: block;
}
#mobile-nav .button {
  cursor: pointer;
}
#mobile-nav .container {
  display: none;
}
#mobile-nav .menu {
  position: relative;
  width: 100%;
}
#mobile-nav .menu .button {
  background: #f2f2f2;
  border: 1px solid #ddd;
  color: #999;
  padding: 0 60px 0 10px;
  position: relative;
  border-radius: 5px;
}
#mobile-nav .menu .button:hover {
  color: #999;
}
#mobile-nav .menu .button.on {
  color: #666;
  border-radius: 5px 5px 5px 0;
}
#mobile-nav .menu .button.on:before {
  content: '\f077';
}
#mobile-nav .menu .button:before {
  content: '\f078';
  color: #ddd;
  font: 16px font-icon;
  line-height: 30px;
  position: absolute;
  top: 0;
  right: 40px;
}
#mobile-nav .menu .container {
  background: #f2f2f2;
  border: 1px solid #ddd;
  border-top: none;
  position: absolute;
  top: 31px;
  z-index: 1;
  border-radius: 0 0 5px 5px;
}
#mobile-nav .menu .container ul {
  list-style: none;
}
#mobile-nav .menu .container ul ul {
  margin-left: 20px;
}
#mobile-nav .menu .container a {
  padding: 0 10px;
}
#mobile-nav .search {
  position: absolute;
  top: 0;
  right: 0;
}
#mobile-nav .search .button {
  background: #ddd;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 1px;
  right: -1px;
  border-radius: 0 5px 5px 0;
}
#mobile-nav .search .button:before {
  content: '\f002';
  color: #f2f2f2;
  font: 20px font-icon;
  line-height: 30px;
  position: absolute;
  top: 0;
  left: 7px;
}
#mobile-nav .search .button.on {
  background: #ccc;
}
#mobile-nav .search .button.on:before {
  content: '\f00d';
}
#mobile-nav .search .container {
  position: absolute;
  right: 51px;
  z-index: 1;
}
#mobile-nav .search input[type='text'] {
  background: #fff;
  border: 1px solid #ddd;
  border-right: none;
  color: #999;
  font: 13px font-default;
  height: 30px;
  width: 100%;
  padding: 0 10px;
  border-radius: 5px 0 0 5px;
}
#sub-nav .search {
  float: left;
  margin-top: 1px;
  position: relative;
}
@media screen and (max-width: 1040px) {
  #sub-nav .search {
    float: none;
    margin-top: 15px;
  }
}
#sub-nav .search:before {
  color: #ccc;
  font: 18px font-icon;
  line-height: 30px;
  position: absolute;
  top: 0;
  right: 125px;
}
#sub-nav .search input[type='text'] {
  background: #f2f2f2;
  color: #999;
  border: 1px solid #ddd;
  font: 13px font-default;
  padding: 6px 15px 6px 35px;
  width: 100px;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
  border-radius: 15px;
}
#sub-nav .search input[type='text']:focus,
#sub-nav .search input[type='text']:active {
  background: #fff;
  border-top: 1px solid #ccc;
  color: #666;
  outline: none;
}
#sub-nav .social a {
  border-radius: 50%;
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
  text-indent: -9999px;
  margin: 0 5px;
  margin-bottom: 5px;
  width: 25px;
  height: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 28px;
  background-color: #fff;
  border: 1px solid #ccc;
}
#sub-nav .social a.twitter {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAAbFBMVEUAAABVre5VrO9UrO5VrO5WrO5UrO5VrO5Uq+1VrO5VrO5VrO5VrO9VrO9VrO9UrO5VrO5Vre5VrfBVrO5VrO5VrO5Vqu5Tre9Vre5VrO9VrO5VrO5VrO5Vre5VrO9VrO9VrO5arelUrfNVrO5rMQvfAAAAI3RSTlMAl6w1wQ18bD/0yuXco+tLX1Yr07iHIBmNhEWdcyazZE8FFWsZZVUAAAKqSURBVGje7dbZlpswEATQktj31RivY6f+/x+TEztmAgxIWHrzfef0aXVJND4+Puzb34JetsIvQ1hyObt8yUXlYeryZhM9R9IvjDjZL7zjnHBK1vjmeKX4VvAGTZ7krHxopriSdPCyowMtXcqf9I8mdjH/kP99EnnQEHKB9Kos50OBl4BkopMqKjrj5d7wjxiqvJRqMgyOpFYVSUV3DEo+pGqZrqjIecxPPBLPp0QpYy6VpPe/FZLGewb4n6jCqpJKhOcEIib5vJ4ZBz7WxFTRt88UH/HQ8puTh0V7agnm0+IuD6bgQCfEYvL8LOipocWLz5H2+M5IBhKDL06cavwgoTKxdsyRv8ecO5VMg+pxTjJb5kJV48kKKpdxqMhV/jLpxxHoNhfBlT9qdiG+216k5JJYBOEdT5HyFdFoZah0rhwPSHXvyMCJqCZxqeaEKZ+GCcxwadYOMzrDVYLxm7dzAHgZTSrwv5xM/apGT4PG23zDh6SlOfZmPkgxcqB51+n6bN4BI/eExlUYO9G4GvbPK8KUpGHxysZmbu62U+xgTkuTGsyqU3unNbjk9k5r4NEYFwNrQQ6wYEcj8l9YUlxpgMCKIkv4rhBrurD0G75DLk4kSuM4ot1GanNbne0IR/XK0C2+KIOMb2s8rHDM/9tt7PYZBrZmn1+g4mThZZz64nYnqLo13Cj2oGx/4iaRAx2hiKivhKYucKnJxwb7YxVIKjtjmzLSDK++X5LW+why2/NAl5GWzyoUOdVF5YZZaKY3PdpqYiA76Kirg0ytXMFDKzPR7w7CjaivKaDkIriZ2KuPQXKTzIGOyqU2qR+q8kod0anAFrX6mu0Ge2x2yyKuivsQ7+lKEXNBG9Qwwgt9mXAscUVQeDDK65zbly+kK8XuXN4cDx8fH1b9BgGSonmK9xNSAAAAAElFTkSuQmCC");
  background-size: 20px;
}
#sub-nav .social a.github {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAARVBMVEUAAAAjKS4gKCwjKS0gICwkKi4jKC4kKi4lKS4kKC0lJiwgMDAkKS0jKS4kKS4kKS4kKi0kKS0kKC4jJy0jKi0lKjAkKS4vi0/iAAAAFnRSTlMA3yCgEO9fz29AMBC/kO/Pj6+AUE8wNJfsHgAAAQdJREFUOMt1U1GWwyAIREGjiTZNu+v9j7oGWW3lOT8mzBAgjDBAHk9XijvRE2hYdGUA7UTTs0x40le6KQrGDn5nXil2lb/4Bt28ub5UDs872Prg/jyAN3XElJIrrr5F7pQLcMpd77BSknr4jmB/GugCrGmF4WdB5PCDwM9DCw4jiSinQpQaG58EGrybrR0GNFrqA8pSkJhaC6Q4uGUPbU7R/aym2GTMpHghEHxhhJkP/3/4ECu+NC/NYSXfpk4SYndY2ITHtjbzPjhyNf5ibiw512Es2y72/gW57y2Dzdgb7aakYdodPjAbn22PwU9fML/q4gyB9tBrFmRSl3cInEMLGmS7+CP7D3/pIlRZm8BAAAAAAElFTkSuQmCC");
}
#sub-nav .social a.yuque {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAABNVBMVEUAAAAZpD6ZwjadxDIFoD+ZwjaZwjYspz04qTyZwTa6xTcToz6ZwjWZwzaYwjWZwzaXwDSXwjYdpT2ZwjXLwjSZwzWZwjWZwjWaxDaBtDgCnz8Cn0DKwjOZwjYJoT9zuTjKwTPKwTQhpD7KwjSZwzbKwTOZwzaYwDSlwzXKwTSZwjaIvjeZwzXKwjOBvTjKwTQ3qzwnpT1QrjuawjWZwjaZwjbKwjSZwjYCn0DKwTOZwjYDoD/KwjSZwza9vzWEvjdvuDmluzZ1ujhruDmLtjhitTptsjoDnz9MsDvKwjQ/rDyawTUBoEDLwTQCn0CZwjbLwTMAnT/LwTSbwTbKwjUAnEGRwDewvTVIrDxTsjsYpD/JwTN1tjkCn0ECn0HKwTNcrzrNwzYAoEIAn0ACn0CZwjbKwTQ86zKBAAAAZHRSTlMAyLIU4ODOwcCqDM2ckH9nP/nCpo9fVEU5BPjw6NrW1tDKx6OJUUoqG/Lv5+fg3NrGxMHBloR/dnJwY1Q/9fDi397W0tDLxsXDv766sJuSblw0MzEhH+7n0NC/uLOliodTTD4Qi/THJgAAAoFJREFUaN7t1wlT2kAUwPENRBJDMNw3yi1oueSwWKytrW3VWq3a+2538/0/QseZzmDZkDzyVmacye8L/Cd5ectCPB6Px3MPGcNqaKDHVn2nfV9MD63V/eIba4wT0JOCI31mJbAr9HmqzFphT2Dkis2zKrCiL6OSZkuoZCI2FWHjD7D5AmlBkRizsb8r6iO21a9r4neet5JaQoQJ2MuCUyOAf191p4Qh6uO644UMYRv4qT8Q0Thn9nwEL8EcCNj3FHMSRjcaW0uIrDBQBH/Etzfa25G7i5yyQyWYozdkZefAOhJCLuFhlN6SjR6J3xOjS2epVpUEohHuUl50X+g2+j9TK7LF97bpOvKazsFvztBt4w2dR+Gvqxl3jYd0vk+CRv+I2giKGf1bamuDu6u4aPyh9rpslourKnWwzkUWv6nK1EkEPfmX1NH2bGQNsYTgyZ8jlhAc2UMsIfh1JRFLCB58ncD9hjVkzDn8jsJIiI3PUCAF8TOfhUaecXNHLDr0FI74sYvOe+X6pP9GOeDjMQVsfKfuH0RHLDr0QQoN7KLzjrhPC/1r63yHHCIWHbrsA1ijQeHW3880DFjjZ47CtWfOrDDwyhulHOh5okMPXxP+INkn/+95igBVTAnakG83tgbwW9AP0/wArEQPpv+tYkaDgI3NG4+fPn+xo5aDcs7mVZ38G7Wvmrgii6iZU9PciaoqvV5ZkoJBSSqXe4qiqh+/GslUetOfIYuaNE2Y4gVx67oDS7TGxDXtGJTIjzTiXgXUiF8ThDhkFqNLgpJ3KnTiE4JVK9lO4qyWISL8OrPuFCujmkbE0SbjeOVLqdU0m/lWp1g6jl9casTj8Xg8Hnt/AbNheAkQa8cCAAAAAElFTkSuQmCC");
}
#sub-nav .social a.juejin {
  background-image: url("data:image/png;base64,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");
}
#sub-nav .social a.rss {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAA1VBMVEUAAAD+nAD+nAD+mwD+mwD+nAD+mwD9mwD9mwD9mwD/mgD9mwD9mwD9mwD+nAD+mwD9mwD9nAD9mwD9nAD9mwD9mwD+mwD9mwD8mwD9mwD/lgD9mwD9mwD9mwD9mwD+mwD+mwD9mgD+mwD/mwD9mwD9mwD////+zYD+tED+uk7/7tP+w2b9phv+t0b9rzL+0439rCv/+e7/8t7/58D+4rT+1ZP9qSL9ngj//fr/+vP/9uf+36z+3KP+zHz+yHP+v1z+2Jn+xm39ohH/7M7/6cf/8Nj+0IbJk23dAAAAJXRSTlMA2rqtzi/jgUM8GMqUcWJc7KicVb2MeEwpEAfywrOhNtJqUCL2LebYlwAAA4JJREFUaN7tmNdW4zAQhuWE9N6AVCAwhMTpkE4qLO//SLuLsWXFllXP4SbfnXyR71gz81sRunDh17nLxlqhlOGQCrViuYhGQbzSAH+eGrGEFkMxD4FE06qezD1wkMoqKK7rwEk+I6nIRkEAIyehiJRBkOat8E6BBA9CimoYpGjVBCbPAEmuuLesDfLk43yOHChxI+fQb2mDMnFmzUGdPKP6VQM0kAqWhEELRcac6yEbkFegi3qSKgmBNgrUbAeNtCmSKLBQ77AMMFGvfR48dMzBsA9yGH6OB/CRPP9n1Xs1JVQl5OWKJrF4PY5BjJDXkQCaBHu2QxDBG2FpugSzHM2Bnxirf7GEZNLhr849e7ewhGS6W8juV4wpwfT2kkekMvgxMDuHt97Ko+nIBdgTBDA3NxPS8g48REnHLTBYDL4+3JYP4IEM/BKwWWzd+7biaea4xCdx/P7sYigakmngo/vpspwExzEMvnQ2o91+AG4OrokRPFCUIWBOlge3ZyvQY2FGBJPDOJ3hCgyW3PPSFJKQ2fjHeWoy0p5Tgpl8OdnYcx52NUkwU+cnJ843RrsEF2GMN0y7BDdU14nkharkNO6asx5heQOLnf1gqyLBjI9uzxEs7Nlfz5UkmMVu+nzeUHt7PVOUYPobTzK+2us55zCWgQm2fCzI2pucn8YwsBk5lp314I0ZYWnhqMcNve4Tr7IGGtfiJ3r8LiNrbXfDACjkCMkN0BgeN6P9CcgNWlq1PzhOCglC8ggUjsvvUr+czfmWWPaAQpXy54RkYCfw3H4VIhfXP8s+31+Upv+sr/DEka/SJ/arS/36MiuPpxp3UI+YjRfc035kuf7Cbz1jPvtZbojEn1HPdiQG+GAS5x9vrfs4mn1ooHNitLpbfNqP7E6wgjOwvTLsKw8yBPfnhwjiM7xi7BbjzmOK44ls4hOhZKQj68z9tf63G1YvEZUfE1+uPu8FHu3un7wueLHxrkjKWm445e47U6CREPLnBjRyhyi0QBsVRCOZB00YNR232yq33GnQQgwFUgYNhFEwSQOUSdUQg0gdFIk+IiaJuqIjgpCKRd2BiRgK9XhEnCRD0n1VQ/xUZOdDiFIUhDHiSJBqWjwTJUgIVaZ5h+RoN4CTUBzJEy8AB60EUiOZaTBe4qGKNJDMFSknmat0CRvUqUVK15ViIfxDoVjJlCI1dOHCb/MXmRGQEzIoLNYAAAAASUVORK5CYII=");
  background-size: 32px;
}
#sub-nav .social a.weibo {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAAA51BMVEUAAADnFSzmFizmFi3mFi3mFS3nFSzmFi3nFSznFS3nFS3lFSvmFi3mFS3nFi3mFS3nFi3mFi3mFSznFi3nFS3mFy3mFi3nFS3mFizkGSrmFSzmFi3mFS7mFS3wHybnFi3mFSznFy3nFi3mFi3////5xcv3srrzipbtUWLrPVD96+3oIzn85unsSFr4uL/wdoP1oqvyg4/uWmrqN0rpL0P+9PX6z9T2rLT0m6X0lqHvaXjuYHDrRFbxeYbwbn371Nn4vcTnHTP/+vv+8PL84OP5ys/2pq/zkZzxfYroKT71nqfvZXX72d2yP+FSAAAAI3RSTlMAzNu5rTow1YGodRjsvJ9K9OO0mFVCkl9cEcGLKiQIb2pkUHLXIpYAAAR5SURBVGje7djXVupAFAbgINIEASnWYzn+gyRA6EovCojt/Z/nxCROQsoMKWudG78bikt+ZnZmzwTh16//Ln6WzEYjB1SkkE2ex0MMKF9F4Cx/mYyFklDMgClzGjTnNoE9RP4GiDjKY0+ZW58Rf0/gQeLcz+V0DI8KfzzPFHy48xRxcQhfsjf7Z8QO4FNk7ym7h3+Z8n4Z5wgk5y8j/JR7BFbm1hzBZa45124CIYiwQw4RiiJ7nYeE0ZbjCEs+7RoSRWhSbhln8KY6HDSbnW4PTu5dQjx2rAHRLT8ZV1jAqjcI9eQQc+YYkoE3D8SkBasDp4w7eNTbVgajj82jltKBVckhJAJ/3lsVNWUOi6ivplXvVvtw0vkOaUiwsG9gp2CTRhuieBjD8CyKUh2KsfonWCRtIezzT3/7SHRjI+OJKNrS95JxmrCEt9l6M12uA6PyRNXoAviuSxMW1pafZETIT8RkaR6JajXVJ+ydc0RiHOXEFTH7gJEij9V5aupLs8VpYHm4+SS73vQAqacNs6a8V9eqMsKuk92MP3DTIRYTAPPK9xd/3MgARsqzLtBSHl5hsdvwS7zeYRDFV/p8pSSKyuMMmDhVvrxXc6wQtooWMge66ivmBlmEoybh6ashklaToX058g8QbcLVQ29Jhvr3mbMPFJdwUOVn1HYmdgqLFLcFyy+WD6woFg367m6/GhgvDIXdEE5BFlu5Tlvl7IE2sqpp3BPYRHkhLSOiLVv7ZWehX12td1DeQ95pT3ydwq4/+JnEj7rfEGMgmy6vFdSmvkMqlsrK1aeXxqIpgpqTH3WfIaIlY0gnT7Ivo1efIVttJnpQTVemMxYt9ZS+N/YXotV1BpVEzJr2ztb2F6Jueo/aZNfXZEeL7spEt4azAntjrJm28xFdepP1TqEm1u7Cbispx5CqMarmrPtAJFFd6ivbSJZwVmSfuipGSF+bdKMEC1vjGcFZkr1ptY3/7f8Up2o5StRpC6PLkXmyz8FgrLSNPl36lvdBNJ/QzHgXF2I7IdfOK36qFV4bifS1+5G9mp6xluDignNzMjE+T1kmlZk40zvmi+2MIYJin1MLsBoaS3lLTKbWjE+4yfLv5ZbGvU3HthWKFfNhj1l3QxwuKYO+ursMv5Rt92vb1ctRpctwDHdpwSIBu5m6Kjp9/ZMlaOThig5MYmRcChTrWD9Wi/340JGhq8sd44zfaIHlVqCYp+F6a6NfU41FRVEjhvWwB4o5W/ybh+5w7XTgep08gy0l2JXgqjtamofw1W7JdXCVBQcJsPTFyfyt2urK/Wfs5Zj/+01wOcFRBCEqCM5yCFFMcJFFaE4FN+kMQnJwE/qv2x5/5T5FKJIC0zFCcCiwpQ8QWORG4IjnEdDJtcAVywfMiHMCaErQDL54IkA9roU9paO+r6sbYX9XIawPvtIJPEvkBI8uivDoSvAh5mn1F+KCP/eX2FM0J/hXTmEP2ZgQTPqWM5zjuwshBOnzYsJl6Z2WjITgbuKlo6ts6lCXyl4dleLCr1//3T/unG2NmC19kAAAAABJRU5ErkJggg==");
  background-size: 32px;
}
.aboutme {
  text-align: center;
  color: #ccc;
  font-size: 15px;
  text-shadow: 1px 0 #000;
}
#pagenavi {
  padding: 20px 0;
  height: 20px;
  line-height: 20px;
  position: relative;
  font-weight: bold;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #ddd;
}
#pagenavi .prev,
#pagenavi .next {
  position: absolute;
  max-width: 50%;
  display: -webkit-box;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-height: inherit;
}
#pagenavi .prev {
  left: 0;
}
#pagenavi .next {
  right: 0;
}
article {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #fff;
  padding: 20px 0;
  position: relative;
}
@media screen and (max-width: 800px) {
  article {
    padding-bottom: 15px;
  }
}
@media screen and (max-width: 600px) {
  article {
    padding: 15px 0;
  }
}
article h1.title {
  font-weight: 300;
  line-height: 35px;
  margin-bottom: 20px;
}
article h1.title a {
  color: #666;
}
article .entry-content {
  line-height: 2;
  text-align: justify;
}
article .entry-content .more-link {
  display: block;
  margin-top: 16px;
  position: relative;
}
article .entry-content p,
article .entry-content blockquote,
article .entry-content ul,
article .entry-content ol,
article .entry-content dl,
article .entry-content table,
article .entry-content iframe,
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 .video-container {
  margin-top: 14px;
}
article .entry-content ul,
article .entry-content ol,
article .entry-content dl {
  margin-left: 20px;
}
article .entry-content ul ul,
article .entry-content ol ul,
article .entry-content dl ul,
article .entry-content ul ol,
article .entry-content ol ol,
article .entry-content dl ol,
article .entry-content ul dl,
article .entry-content ol dl,
article .entry-content dl dl {
  margin-top: 0;
}
article .entry-content strong {
  font-weight: bold;
}
article .entry-content em {
  font-style: italic;
}
article .entry-content p {
  margin-top: 15px;
}
article .entry-content center {
  text-align: left;
  color: #999;
  font-style: italic;
}
article .entry-content img,
article .entry-content video {
  max-width: 100%;
  height: auto;
}
article .entry-content img {
  min-width: 200px;
  min-height: 200px;
  background-color: #f1f1f1;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAMAAACahl6sAAAAeFBMVEUAAADl5eXn5+fn5+fm5ubn5+fn5+fm5ubn5+fn5+fm5ubm5ubn5+fm5ubm5ubn5+fm5ubm5ubm5ubm5ubn5+fn5+fm5ubm5ubo6Ojm5ubn5+fn5+fm5ubm5ubm5ubn5+fn5+fn5+fm5ubn5+fm5ubm5ubm5ubm5ubqjGrdAAAAJ3RSTlMAgJnU48xPPR1XNKbDB3egZl7wKWtEqxUQ2ojpuo8k9baDsZNyYi+x8rqpAAAGwElEQVR42uzaCXLiMBCF4cb7ghfMvgQSILz733BSsxSWwEIaqpM25e8C8CPaEtj0pa589Jhf1fRbiN4L6csCL2BBNMFLmFCOl5DTGi9hTXgRQ4g0Q4g0rxky6pnuEOqVIUSaIUSaIUSaIUSaIUSaIUSaIUSaIUSaIUSaIYTTchpPlz0Pmed+gD+2/rhO+hkSbwJojrN970LSEHd5Wa9CphU6eVl/QsoGJt6qHyGrdzwQXvoQkvh4LJIfksHKWXpIBksT2SEFrGWiQ46wdkgEh5RwsCvEhqRw4okNCXGj2eWn0Snf4Z5MaEgNzWEU019FVOGGJzQkhCq/UFu8gC4TGVJDVZIuaqDyRIaEjz/tfQDVXmDIHIrEqvYsMOTD6gRSBGgbCwwZoyW3XjhxIUu0HC7U6Q1tM3EhE9uX2zdoGYsL2aBlbn1G98WFVLhqyCRGy1ZcyA5XOzLy0SIuxDdcs0xvcyktZIurExnN0DKVFuLwailaYmkhDisyF70iDjMSiZ4Rh6vWp+irVqVtDgblN+0jSXT+nD+3s2dksvienX3T4EsYk5vI+g/RJfNZS/+KOJYUB1z5he02kjKE6Ifs1f8PCUrDgqxx1RRMIanp6OewzQWJ3TC9EU9IskZLRS5WDVpyq1lCzBRSQZGSC8/ipx/FSm5IPCGf0DiNSWZxAyReo23CEzINoNk6L4l54EsodsQTsoDGcUwy81+mND9CFfGEnHFH+sSS4DBqbfFxBT2UWEKyBhrnMbkE0IVlHcVRXR63uJHxhOxw15btTs+ZWEJGuOU+Jh+wVhFLyBydUnJQwVJIPCFjdFuSgx2sNMQTsoFBQC4+7NaDJySCkUcuajy0IZ6QwoeiDm92LhcTPDAjphAPinfaPzUmFC9gEKbEFDKBqrjdEAJyk4adGTURU8gygCK9N7IeuSnKwJDBE5LfPQHdHvAcFfUYqsCLiPhCZlActLuW2pg4ubyFwb+I0JvzPsC8bzo++dgwJi5W03i6Ig1DyLFzFmaGMXHFH1IaPnbPekx+PiSDKjY+JZNQh58PGRuPDontmPx4yAcUPmkihjHhCImhmpJuxDAmDCEhFCXdOj4/JvwhJ1g8qRM8Oyb8IRFUe6vr2okc8Yesoajpvvq5MeEPqfQfIV28Z8aEPyS1f3tjKNZkjz9k9at9e1tOFAgCMNycQQFFAVGDYqL2+7/hVu1e0cLQc6BqwvJd7s36JzbMkOHKf+bT3JXHZP6Qmm5CRELkVs8fIp7gewNCuaExiS51fYkMhsR3yStRrTMm9LLhmgv5kl1C0Wt1q3UONTUV8sQeP4NJN/0x+SYjqR9yxL4KGF5aY0JvRw/lEOEmhOXnY8mv80i4MBDyUPxEqc6YlEhsFENEu1uug/qYJPjhpBvi0U0IW6Q8JhEO0Axp6SZEQq74pTzikLNWSIV9b5BRKy26YhzW6YT49C8Vcs4KY9LgmFY55PMvIZJOjF0lkV1xVKkaEgoem/Ak0mPioUClFpKRC+gL5LWSY5Ki0FEphL8J4X+yAoS2OCFTCClEry/zHSTGpEXC9+k/yIc0hvZ5b/6Y5EhtNnfsS6VDOlPPcUvumJRIhQAhEq5kSEl+pSdQtuWNSYHUfvDAYS4VEpt8zuZxxiREyhn5wiUSIXqLcCpjjEmFlDt6CYj4IXS9l4GWavJrvkHqW3BRjtkhjDuq0Q3f8Y5EIDoMdciYIR72PEDbl/AOHfuIoovLyaOZrBAqBQOugjHJgqmTmEe6lNyqhERgQCwYkw6pcHLTeJEPycGIZHQFuuWs1xMkStmQDgxxR8bERerBuu+HkiEbMMUbHJMWKZd5+nEjFfIEc4Y+ryO4gRAuEieJkBoM2nyOyROpgP9awZkfcn+DSU86Jnupw7ZZSueXHbIHs777Y5Lgh3jiXag+lxmyBdN8FIsk35FwWCH+DUxrUCiBCSESL05IAeaFKJArHHeupkNcmMNF8yz6E4njVIgXwyxSHNGp/SSuzURIAjPBYYHqSyeBOOQH5nLTfFsj6+haQBQSNDCbFw4AvjhAQhASwox2kjdC6u2zQy4wK19z81ZxQ9IM5qV7x0qYIRXMLCILDWklK8SB2eW6d96HJSHQkbeipbmWhICj+5/VloSA4yGi54CqJrUkBCCOYtBw82wJ0RUdFhIC4VJC4LWUEMiXEgLtUkJgt5SQrFtICMTBQkLAWUMss4bYZg2xzRpimzXENmuIbdYQ26whtllDbLOG2OZ/CPll+iELsYbYZg2xzXJCPFwED3a4CDvY4yLsAQJcgODf2Y5fr4a/iu0Zf7HztgCAP/ekei21RBKZAAAAAElFTkSuQmCC");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50px;
}
article .entry-content iframe {
  border: none;
}
article .entry-content blockquote {
  background: #ddd;
  border-left: 5px solid #ccc;
  font-size: 1em;
  font-style: normal;
  font-family: font-serif;
  padding: 15px 20px;
  margin-top: 10px;
}
article .entry-content blockquote > p:first-of-type {
  margin-top: 0;
}
article .entry-content blockquote footer {
  border-top: none;
  font-size: 0.8em;
  line-height: 1;
  margin: 20px 0 0;
  padding-top: 0;
}
article .entry-content blockquote footer cite:before {
  content: '—';
  color: #ccc;
  padding: 0 0.5em;
}
article .entry-content table {
  border: 1px solid #ccc;
  border-spacing: 0;
  margin-top: 10px;
}
article .entry-content table tr:nth-of-type(2n) {
  background: #d5d5d5;
}
article .entry-content table th {
  background: #ccc;
  padding: 0 15px;
}
article .entry-content table th,
article .entry-content table td {
  padding: 5px;
  text-align: center;
  border-right: 1px solid #ccc;
}
article .entry-content table th:last-child,
article .entry-content table td:last-child {
  border: none;
}
article .entry-content figure table {
  font-size: 1em;
}
article .entry-content figure td {
  padding: 0;
  text-align: left;
}
article .entry-content .video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
article .entry-content .video-container iframe,
article .entry-content .video-container object,
article .entry-content .video-container embed {
  position: absolute;
  top: 0;
  left: 20%;
  width: 60%;
  height: 60%;
  margin-top: 0;
  margin-left: auto;
}
.share {
  padding: 15px 0;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #ddd;
}
.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
}
.flex-1 {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -o-box-flex: 1;
  box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.post h1.title,
.post .entry-content {
  margin-left: 200px;
}
@media screen and (max-width: 800px) {
  .post h1.title,
  .post .entry-content {
    margin-left: 0;
  }
}
.post .expired-tips {
  padding: 5px 10px;
  font-size: 12px;
  border: 1px solid #e2e2e2;
  background-color: #ffffc0;
  border-left: 5px solid #fff000;
  color: #333;
  overflow: hidden;
  margin: 0;
}
.post .meta {
  top: 85px;
  line-height: 2;
  font-size: 0.9em;
  color: #999;
  width: 170px;
  float: right;
  padding-top: 10px;
}
@media screen and (max-width: 800px) {
  .post .meta {
    margin-top: 15px;
    position: static;
    width: auto;
  }
}
.post .meta a {
  color: #999;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
.post .meta a:hover {
  color: #666;
}
.post .meta .date,
.post .meta .tags,
.post .meta .comments,
.post .meta .print {
  padding-left: 30px;
  position: relative;
}
.post .meta .date:before,
.post .meta .tags:before,
.post .meta .comments:before,
.post .meta .print:before {
  color: #ccc;
  font: 1.3em font-icon;
  line-height: 1.6em;
  position: absolute;
  left: 0;
  font-size: 0.9em;
}
@media screen and (max-width: 800px) {
  .post .meta .date,
  .post .meta .tags,
  .post .meta .comments,
  .post .meta .print {
    display: -moz-inline-stack;
    display: inline-block;
    vertical-align: middle;
    *vertical-align: auto;
    zoom: 1;
    *display: inline;
    margin-right: 30px;
  }
}
.post .meta .date:before {
  content: 'posted at';
}
.post .meta .tags:before {
  content: 'tag:';
}
.post .meta .comments:before {
  content: 'comment';
}
.post .meta .print {
  cursor: pointer;
}
.post .meta .print:before {
  content: 'print';
}
.post hr {
  height: 0;
  margin-top: 20px;
  margin-bottom: 20px;
  border-left: 0;
  border-right: 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #fff;
}
.archives {
  position: relative;
}
.archives:last-of-type:before {
  content: '';
  position: absolute;
  bottom: 0;
  width: 200px;
  border-top: 1px solid #ddd;
}
.archives .year {
  line-height: 35px;
  width: 100px;
  position: absolute;
  top: 0;
  padding-top: 15px;
  border-top: 1px solid #fff;
}
.archives .year:before {
  content: '';
  position: absolute;
  top: -2px;
  width: 100%;
  border-top: 1px solid #ddd;
}
@media screen and (max-width: 600px) {
  .archives .year {
    position: relative;
    width: 100%;
  }
}
.archives article {
  margin-left: 100px;
  padding: 15px 0;
}
@media screen and (max-width: 600px) {
  .archives article {
    margin-left: 0;
  }
  .archives article:first-of-type {
    border-top: none;
    padding-top: 30px;
  }
}
.archives article .title {
  margin-bottom: 0;
}
.archives article .meta {
  color: #999;
  font-size: 0.9em;
  line-height: 2;
  margin-top: 15px;
}
@media screen and (max-width: 600px) {
  .archives article .meta {
    display: none;
  }
}
.archives article .meta span {
  margin-right: 30px;
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: middle;
  *vertical-align: auto;
  zoom: 1;
  *display: inline;
}
.archives article .meta span:before {
  color: #ccc;
  font: 1.3em font-icon;
  font-size: 0.9em;
  padding-right: 10px;
}
.archives article .meta a {
  color: #999;
}
.archives article .meta a:hover {
  color: #666;
}
footer {
  padding: 15px 0;
  border-top: 1px solid #fff;
  text-align: center;
  font-size: 0.9em;
}
.entry-content .gist {
  color: #666;
  padding: 15px 15px 5px 0px;
  margin-top: 10px;
  border: 1px solid #ccc;
  position: relative;
  overflow: hidden;
}
.entry-content .gist .gist-file {
  margin: 0;
  border: none;
}
.entry-content .gist .gist-file .gist-data {
  background: none;
  border: none;
}
.entry-content .gist .gist-file .gist-data pre {
  font: 0.9em font-mono;
  line-height: 1.5;
}
.entry-content .gist .gist-file .gist-data table {
  background: #fff;
  border: none;
}
.entry-content .gist .gist-file .gist-data .line-data {
  width: 100%;
}
.entry-content .gist .gist-file .gist-meta {
  font: 300 0.9em font-default;
  line-height: 1.5;
  margin: 0 -16px -6px;
  padding: 5px 15px;
  background: #ececec;
}
.entry-content .gist .gist-file .gist-meta a {
  color: #258fb8;
}
.entry-content .gist .gist-file .gist-meta a:first-of-type {
  position: absolute;
  top: 5px;
  right: 15px;
  z-index: 1;
}
.entry-content .gist .gist-file .gist-meta a:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  padding: 5px 15px;
  width: 100%;
  background: #ececec;
}
figure.highlight {
  background: #eee;
  border: 1px solid #ddd;
  margin-top: 10px;
  text-shadow: 0 0 1px #fff;
  line-height: 1.6;
  overflow: auto;
  position: relative;
  font-size: 0.8em;
}
figure.highlight figcaption {
  color: #258fb8;
  margin-bottom: 10px;
  font-size: 1.1em;
  font-weight: bold;
  text-shadow: 0 0 1px #fff;
}
figure.highlight figcaption a {
  position: absolute;
  right: 15px;
}
figure.highlight table {
  background: #fff;
  border: none;
  margin-top: 0;
  border-spacing: 0;
}
figure.highlight .gutter {
  background: #eee;
  padding-left: 3px;
  padding-right: 3px;
  font-family: font-mono;
  color: #999;
  font-size: 1.1em;
  line-height: 1.6;
  text-align: center !important;
}
figure.highlight .code {
  background: none;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  border-left: 1px solid #fff;
  overflow: auto;
  font-family: font-mono;
  color: #666;
  font-size: 1.1em;
  line-height: 1.6;
}
figure.highlight pre {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
}

pre code {
display: block; padding: 0.5em;
color: #333;
background: #f8f8ff
}

pre .comment,pre .template_comment,pre .diff .header,pre .javadoc {
color: #998;
font-style: italic
}

pre .keyword,pre .css .rule .keyword,pre .winutils,pre .javascript .title,pre .nginx .title,pre .subst,pre .request,pre .status {
color: #333;
font-weight: bold
}

pre .number,pre .hexcolor,pre .ruby .constant {
color: #099;
}

pre .string,pre .tag .value,pre .phpdoc,pre .tex .formula {
color: #d14
}

pre .title,pre .id {
color: #900;
font-weight: bold
}

pre .javascript .title,pre .lisp .title,pre .clojure .title,pre .subst {
font-weight: normal
}

pre .class .title,pre .haskell .type,pre .vhdl .literal,pre .tex .command {
color: #458;
font-weight: bold
}

pre .tag,pre .tag .title,pre .rules .property,pre .django .tag .keyword {
color: #000080;
font-weight: normal
}

pre .attribute,pre .variable,pre .lisp .body {
color: #008080
}

pre .regexp {
color: #009926
}

pre .class {
color: #458;
font-weight: bold
}

pre .symbol,pre .ruby .symbol .string,pre .lisp .keyword,pre .tex .special,pre .prompt {
color: #990073
}

pre .built_in,pre .lisp .title,pre .clojure .built_in {
color: #0086b3
}

pre .preprocessor,pre .pi,pre .doctype,pre .shebang,pre .cdata {
color: #999;
font-weight: bold
}

pre .deletion {
background: #fdd
}

pre .addition {
background: #dfd
}

pre .diff .change {
background: #0086b3
}

pre .chunk {
color: #aaa
}
html {
  height: 100%;
  overflow-x: hidden;
}
body {
  background: #fff;
  font-family: '-apple-system', 'Open Sans', 'HelveticaNeue-Light', 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 13px;
  height: 100%;
  color: #333;
}
::selection,
::-moz-selection,
::-webkit-selection {
  background: #b2cce6;
  color: #eee;
}
a {
  text-decoration: none;
}
#header {
  height: auto;
  border-bottom: none;
}
#header .subtitle {
  color: #999;
  font-style: italic;
}
#header #main-nav .aboutme {
  line-height: 1.2em;
  color: #999;
  margin-top: 10px;
}
#header #main-nav ul li {
  font-size: 15px;
}
#header #sub-nav {
  float: none;
  position: relative;
}
#header #sub-nav .search {
  float: none;
}
#header #sub-nav .search .alignright {
  float: none;
}
#header #sub-nav2 {
  float: none;
  position: relative;
}
#header #sub-nav2 .search {
  float: none;
}
#header #sub-nav2 .search .alignright {
  float: none;
}
#header h1 {
  float: none;
}
#header #main-nav {
  float: none;
  margin-left: 0px;
}
#header #main-nav ul li {
  margin-left: 0px;
  display: block;
}
#header #main-nav ul li a {
  padding: 0px 0px;
  text-shadow: 1px 0 #000;
}
.container {
  position: relative;
  min-height: 100%;
}
.container .credit-box {
  color: #aaa;
  font-size: 0.8em;
  position: fixed;
  bottom: 20px;
  left: 40px;
}
.container .credit-box a {
  color: inherit;
}
.container .mid-col {
  position: absolute;
  right: 0;
  left: 0;
  min-height: 100%;
  margin-left: 250px;
  background: #fff;
}
.container .mid-col #banner {
  width: 100%;
}
.container .mid-col #banner small {
  margin-right: 70px;
}
.container .mid-col footer.inner {
  text-align: center;
  margin: 0px 70px 0px 40px;
  width: auto;
}
.container .mid-col .mid-col-container {
  padding: 0px 70px 0px 40px;
}
.container .mid-col .mid-col-container #content {
  width: 100%;
}
.container .mid-col .mid-col-container #content article {
  border-top: none;
}
.container .mid-col .mid-col-container #content article .title {
  margin-left: 0px;
}
.container .mid-col .mid-col-container #content article .entry-content {
  margin-left: 0px;
  font-size: 16px;
  line-height: 1.8;
  word-wrap: break-word;
  font-family: Arial, 'Hiragino Sans GB', 'Microsoft YaHei', SimSun, Helvetica, Tahoma, 'Arial sans-serif';
  -webkit-font-smoothing: antialiased;
}
.container .mid-col .mid-col-container #content article .entry-content .gist .gist-file .gist-data .line_numbers {
  line-height: inherit;
}
.container .mid-col .mid-col-container #content article .entry-content .gist .gist-file .gist-data pre {
  line-height: inherit;
}
.container .mid-col .mid-col-container #content article .entry-content h2 {
  border-bottom: none;
}
.container .mid-col .mid-col-container #content article .entry-content h2::before {
  border-bottom: none;
}
.container .mid-col .mid-col-container #content article .entry-content blockquote {
  border-left: 5px solid #4183c5;
  background: #fcfcfc;
}
.container .mid-col .mid-col-container #content article .entry-content table {
  min-width: 100%;
  line-height: 1.2em;
}
.container .mid-col .mid-col-container #content article .meta {
  color: #555;
  text-align: right;
  width: auto;
}
.container .mid-col .mid-col-container #content article .meta.meta-art {
  position: absolute;
  right: 0;
  top: 0px;
  font-size: 14px;
  line-height: inherit;
  margin-top: 0;
}
.container .mid-col .mid-col-container #content article .meta .date::before {
  color: #555;
  position: relative;
}
.container .mid-col .mid-col-container #content article .meta .tags::before {
  color: #999;
  position: relative;
  margin-right: 10px;
}
.container .mid-col .mid-col-container #content article .meta .print::before {
  color: #555;
  position: relative;
  margin-right: 10px;
}
.container .mid-col .mid-col-container #content article .meta-index-post-entry {
  height: inherit;
  float: none;
  position: absolute;
  right: 0;
  bottom: -2px;
  top: auto;
}
.container .mid-col .mid-col-container #content article .meta-index-post-entry .date {
  margin-right: 0;
}
.container .mid-col .mid-col-container #content article h1.title {
  position: relative;
}
.container .mid-col .mid-col-container #content article h1.title a {
  color: #333;
}
.container .mid-col .mid-col-container #content article h1.title a:hover {
  color: #4183c5;
  -webkit-transition: color 0.3s;
  -moz-transition: color 0.3s;
  -o-transition: color 0.3s;
  -webkit-transition: color 0.3s;
  -moz-transition: color 0.3s;
  -o-transition: color 0.3s;
  -ms-transition: color 0.3s;
  transition: color 0.3s;
}
.container .mid-col footer {
  width: 100%;
}
.container .left-col {
  width: 250px;
  position: fixed;
  height: 100%;
  overflow: hidden;
  background-color: #000;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
.container .left-col .intrude-less {
  width: 100%;
}
.container .left-col #header {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.container .left-col #header #main-nav {
  margin-top: 10px;
}
.container .left-col #header #main-nav li {
  text-align: center;
}
.container .left-col #header .profilepic {
  width: 160px;
  height: 160px;
  margin: 0 auto;
  margin-bottom: 20px;
}
.container .left-col #header .profilepic img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -webkit-box-shadow: 0 0 10px 0px #666;
  box-shadow: 0 0 10px 0px #666;
}
.container .left-col #header .author-name {
  text-align: center;
  font-size: 2em;
}
.container .left-col #header .author-name a {
  color: #fff;
  text-shadow: 0 1px #333;
}
.container .left-col #header .author-name a:hover {
  color: #4183c5;
}
.container .left-col #header #sub-nav {
  margin-top: 10px;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: distribute;
  -moz-box-pack: distribute;
  -o-box-pack: distribute;
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
.container .left-col #header #sub-nav .search::before {
  left: 10px;
}
.archives .title {
  font-size: 1.2em;
}
.archives article .meta {
  line-height: 1.5em;
  margin-top: 0;
}
.archives article .meta span::before {
  padding-right: 0;
}
a {
  color: #4183c5;
}
a:hover {
  color: #4183c5;
}
@media screen and (max-width: 1040px) {
  body {
    margin: 0 0;
  }
}
@media screen and (max-width: 1024px) {
  body .post-toc {
    display: none;
  }
}
@media screen and (max-width: 640px) {
  body .container .left-col {
    position: relative;
    width: 100%;
  }
  body .container .left-col #header {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  body .container .left-col .profilepic {
    width: 80px !important;
    height: 80px !important;
    display: none;
  }
  body .container .left-col .aboutme {
    display: none;
  }
  body .container .mid-col {
    float: none;
    width: 100%;
    margin-left: 0;
  }
  body .container .mid-col .mid-col-container {
    padding: 0 12px;
  }
  body .container .mid-col .mid-col-container #content article .meta {
    float: none;
  }
  body .container .mid-col .mid-col-container .post-toc {
    float: none;
    margin: 0;
    max-width: 100%;
    position: static;
    right: auto;
  }
}
.post-toc {
  margin: 0 0 0 20px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.post-toc .post-toc-content {
  background-color: #fff;
  font-size: 14px;
  min-width: 120px;
  max-width: 260px;
  border: 1px solid #e2e2e2;
  padding: 8px;
  position: sticky;
  top: 75px;
  right: 0;
  z-index: 100;
}
.post-toc .post-toc-content .toc-title {
  font-weight: bold;
  border-bottom: 1px solid #e2e2e2;
}
.post-toc .post-toc-content >ol,
.post-toc .post-toc-content >ul {
  margin-left: 0px !important;
}
.post-toc .post-toc-content ol,
.post-toc .post-toc-content ul {
  list-style: none;
  margin-top: 5px !important;
}
.post-comments {
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
}
.post-comments .post-comments-title {
  font-size: 25px;
  font-weight: 300;
  line-height: 35px;
  margin-bottom: 10px;
  padding-top: 15px;
}
.post-comments .vpower.txt-right {
  display: none;
}
.post-comments .v[data-class=v] .vcards .vcard .vh {
  border-bottom: 1px solid #f1f1f1;
}
.post-comments .v[data-class=v] .vcards .vcard .vquote {
  border-left: 0;
}
.post-comments .vempty {
  display: none !important;
}
#Jcomment:empty {
  min-height: 50px;
  text-align: center;
}
#Jcomment:empty:before {
  content: 'loading...';
}
code {
  font-family: Consolas, Monaco, 'Andale Mono', monospace;
  font-size: 80%;
  margin: 0 2px;
  padding: 4px 5px;
  background-color: #eee;
  vertical-align: middle;
  border-radius: 5px;
}
.content-wrap {
  width: 100%;
}
.wrapper .info {
  color: #676767;
  font-size: 13px;
  padding: 15px 0;
}
.wrapper input {
  -webkit-appearance: none;
  border: 1px solid #bbb;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  font-size: 16px;
  height: 40px;
  outline: 0;
  padding: 4px 6px;
  width: 100%;
}
#JresList .search-keyword {
  color: #c00;
  font-weight: normal;
}
#JresList ul {
  padding: 0;
  margin: 0;
}
#JresList .item {
  list-style: none;
  padding: 10px 0 20px;
  border-top: 1px solid #ddd;
}
#JresList .item .search-result-link {
  font-size: 95%;
  color: #333;
}
#JresList .item .search-result {
  margin-top: 10px;
}
#sidebarfooter {
  position: fixed;
  bottom: 0;
  text-align: center;
  color: #b0c4de;
}
.mid-col-container {
  min-height: 92vh;
}
