html, body {
  background-color: #dfddda;
  color: black;
  font-family: 'Libre Franklin', sans-serif;
  font-size: 1rem;
}

/*
 * Sidebar
 */

.container-fluid, .container {
   max-width: 700px;
   margin: auto;
}

#sidebar_title {
  font-family: 'Libre Baskerville', serif;
  font-size: 2rem;
  padding-left: 1.2rem;
  padding-right: 1.2rem;
  padding-bottom: 0.3rem;
  padding-top: 1.2rem;
}

#sidebar_title_small {
  font-size: 0.8rem;
  color: #888;
}

#sidebar_title a {
  line-height: 1.7rem;
  display: inline-block;
  color: #746a3d;
  text-decoration: none;
}

#sidebar_subtitle {
  font-family: 'Libre Baskerville', serif;
  font-size: 0.8rem;
  padding-top: 0.4rem;
  text-align: right;
  font-style: italic;
}

#sidebar_menu {
  background-color: #efedea;
  font-family: 'Libre Baskerville', serif;
  font-size: 1rem;
  border: 1px solid #d3d1d2;
  border-top: 1px dashed #d3d1d2;
  border-bottom: 1px dashed #d3d1d2;
  margin: 0;
  padding: 0;
  text-align: center;
}

@media (max-width: 768px) {
  #sidebar_menu {
    border-left: 0;
    border-right: 0;
  }
}

#sidebar_menu a {
  display: inline-block;
  width: 18%;
  margin: 0;
  padding-top: 0.5rem;
  padding-bottom: calc(0.5rem - 1px);
  color: black;
  text-decoration: none;
  border: 1px solid #efedea;
  border-top: 0;
  border-bottom: 0;
  text-align: center;
}

@media (max-width: 768px) {
  #sidebar_menu a {
    width: auto;
    margin-left: 0.1rem;
    margin-right: 0.1rem;
    padding-left: 0.1rem;
    padding-right: 0.1em;
  }
}

#sidebar_menu a:hover, #sidebar_menu a:active, #sidebar_menu a.active {
  border: 1px dashed #dfddda;
  border-top: 0;
  border-bottom: 0;
  background-color: #fffbfb;
}

/*
 * Content
 */

#content {
  background-color: #fffbfb;
  border: 1px solid #d3d1d2;
  border-top: 0;
}

@media (max-width: 768px) {
  #content {
    border: 0;
  }
}

#content p, li, ul, dt, dd {
  text-align: justify;
  margin: 1.4rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
}

#content > p {
  margin-bottom: 0;
}

#content > h1 {
  margin-top: 30px;
}

#content ul {
  list-style-type: none;
  margin-left: 1.4rem;
  padding-left: 1.4rem;
  list-style-position: inside;
  text-indent: -1.4rem;
}

#content li {
  margin: 0;
}

#content li:before {
  content: '~';
  margin-right: 0.8rem;
}

#content li ul {
  margin-top: 0;
  padding-left: 0.8rem;
}

#content li li {
  margin-left: 0.8rem;
}

#content dl {
  padding-left: 1.4rem;
}

#content dt {
  margin: 0;
  margin-right: 1.4rem;
  font-weight: normal;
  border-bottom: 1px dashed #d3d1d2;
  padding-bottom: 0.1rem;
}

#content dt:first {
  margin-top: 1.4rem;
}

#content dd {
  margin: 1.4rem;
  margin-left: 1.4rem;
  margin-top: 0;
  margin-bottom: 1rem;
  padding-left: 1rem;
  border-left: 1px dashed #d3d1d2;
}

#content table {
  margin: auto;
  margin-left: 1.4rem;
  margin-right: 1.4rem;
  width: calc(100% - 2.8rem);
  font-size: 0.9rem;
}

#content table th {
  font-weight: 700;
}

#content h1, h2, h3, h4 {
  text-align: left;
  font-family: 'Libre Baskerville', serif;
  margin-left: 1.4rem;
  margin-right: 1.4rem;
  font-weight: 700;
}

#content h1 {
  margin-top: 1.8rem;
  margin-bottom: 0.9rem;
}

#content h2 {
  margin-top: 1.8rem;
  margin-bottom: 0.9rem;
}

#content h3 {
  margin-top: 1rem;
  margin-bottom: 0;
  font-family: 'Libre Franklin', serif;
  font-size: 1.5rem;
}

#content hr {
  border-top: 1px solid #dfddda;
  margin: 1.2rem;
}

#content h1 a, #content h2 a {
  color: black;
  text-decoration: none;
}

#content h1 a:hover, #content h2 a:hover {
  text-decoration: none;
}

#content pre, #content blockquote {
  margin-left: 1.2rem;
  margin-right: 1.2rem;
  font-size: 0.9rem;
}

#content dd {
  text-align: justify;
}

#content .tags {
  padding-left: 0.5rem;
  font-size: 1.1rem;
  text-transform: lowercase;
  font-variant: small-caps;
}

.content_article_subtitle {
  margin-top: 0 !important;
  color: #888;
  text-align: left !important;
}

.content_article_subtitle .icon-tags {
  margin-left: 0.2rem;
}

.content_article_read {
  position: relative;
  height: 20px;
}

.content_article_read a {
  display: block;
  float: right;
  text-align: right !important;
  color: black !important;
  font-family: 'Libre Baskerville', serif;
  font-size: 16px;
}

.content_article_read a:before {
  content: '» ';
}

.content_article_read a:hover {
  color: #746a3d !important;
  text-decoration: underline;
}

#content a {
  color: #746a3d;
  text-decoration: none;
}

#content a:hover {
  text-decoration: underline;
}

#content img {
  width: 100%;
}

.content_social_link {
  display: inline-block;
  float: right;
  margin-top: 7px;
  margin-right: 3px;
  height: 24px;
  font-size: 1rem;
}

.content_social_icon {
  display: inline-block;
  float: right;
  margin-top: 3px;
  margin-right: 3px;
  height: 24px;
  width: 24px;
}

.content_social_icon img {
  width: 24px;
}

.content_sign {
  text-align: right;
  font-style: italic;
  position: relative;
  padding-right: 20px;
  top: 15px;
}

.content_delimiter {
  padding-top: 30px;
  border-bottom: 1px dashed #d3d1d2;
}

#content article {
  padding-bottom: 20px;
}

#content article h1 {
  margin-top: 30px;
}

#content article:not(:last-child) {
  border-bottom: 1px dashed #d3d1d2;
}

#content .edge {
  float: right;
  width: 204px;
  margin: 10px;
  margin-right: 20px;
  margin-top: 0;
  background-color: #efeaea;
  padding: 2px;
  border: 1px solid #dfddda;
}

#content .edge.left {
  float: left;
  margin-left: 20px;
}

#content .edge p, #content .edge dt, #content .edge dd {
  margin: 10px;
}

#content .thumbnail {
  width: 100%;
  background-color: transparent;
  border: 0;
  margin-bottom: 0;
}

.lb-image{
  max-width: inherit;
}

#portrait p {
  text-align: right;
}

/*
 * Footer
 */

footer {
  font-family: 'Libre Baskerville', serif;
  text-align: center;
  color: #888;
  margin-top: 30px;
  margin-bottom: 30px;
  font-size: 0.8rem;
}

footer a {
  color: #888;
  text-decoration: none;
}

footer a:hover {
  color: #555;
  text-decoration: none;
}

/*
 * Admin
 */

#content .breadcrumb {
  background-color: #efedea;
  border-radius: 0;
}

#content input, #content textarea, #content select {
  background-color: #fffbfb;
  border: 1px dashed #d3d1d2;
  transition: none;
  box-shadow: none;
  border-radius: 0;
}

#content textarea {
  resize: vertical;
  height: 915px;
}

#content .admtag {
  display: inline-block;
  margin-left: 15px;
}

#content .admtag label {
  line-height: 22px;
}
