.main-content a:hover { text-decoration: underline !important; }
.main-content {
width: 100% !important;
box-sizing: border-box !important;
padding: 2rem 4rem;
margin: 0 auto;
word-wrap: break-word;
line-height: 1.5;
color: #333;
}

.post-header {
text-align: center;
}

.post-title {
margin-top: 2.9rem !important;
margin-bottom: 1.1rem !important;
color: #000000cc !important;
font-size: clamp(1.65rem, 5.4vw, 1.9rem) !important;
line-height: 1.18;
}

.post-author-avatar-wrap {
display: flex;
align-items: center;
justify-content: center;
}

.post-author-avatar {
width: 35px;
height: 35px;
border-radius: 50%;
}

.post-author-name {
color: #4c4c4c;
font-size: 1rem;
font-weight: 300;
}

.post-header .post-date {
margin-top: 0;
margin-bottom: 2rem;
color: #666;
font-size: 0.8rem;
font-weight: lighter;
}

.post-body h1, 
.post-body h2, 
.post-body h3, 
.post-body h4, 
.post-body h5, 
.post-body h6 {
color: #333 !important; 
font-weight: bold;
margin-top: 2.5rem;
margin-bottom: 0 rem;
}
.post-body { 
  max-width: none !important ;
  font-weight: 350;
}

.post-body h1:first-child, 
.post-body h2:first-child, 
.post-body h3:first-child { 
margin-top: 0 !important;
}

.post-body h2 + h3,
.post-body h3 + h4,
.post-body h2 + h4 {
margin-top: 0 !important;
}

.post-body hr + h2 {
margin-top: 1.5rem !important;
}

.post-body hr {
margin-top: 3.5rem !important;
}

.post-body ul {
list-style-type: disc !important; 
padding-left: 2rem;
margin-top: -0.5rem !important;
}

.post-body ul li::marker {
color: #0000004b; 
font-size: 0.85em;
}

.post-body ul li p {
margin-top: 0 !important;
margin-bottom: 0 !important;
display: inline; 
}


.post-body ul li {
line-height: 1.6;
}

.post-body ul ul, 
.post-body ul ol {
margin-top: 0 !important;
margin-bottom: 0 !important;
}

.post-body img, .post-body canvas, .post-body svg {
max-width: 100%;
}

hr { 
border-top: 0.4px solid #b7b7b7ca !important;
background-color: #ffffff00 !important;
}

ol {
list-style: none;
margin-top: -0.5rem !important;
counter-reset: line-counter;
padding-left: 2rem;
}

ol > li {
counter-increment: line-counter;
position: relative;
}

ol > li::before {
content: counter(line-counter) ".";
position: absolute;
font-weight: normal;
color: #0000004b; 
right: 100%;         
margin-right: 0.2rem; 
}

ol ul {
list-style: disc; 
padding-left: 0rem;
margin-bottom: 0px !important;
}

ol > li > ul:first-child { 
margin-top: 0px !important;
}

ol ul li {
position: static; 
}

ol ul li::before {
content: none; 
}

main.main-content > article.main-content {
max-width: none !important;
}

main.main-content {
max-width: 57.5rem !important;
width: 100% !important;
box-sizing: border-box !important;
margin-left: auto !important;
margin-right: auto !important;
}

main.main-content > article.main-content {
max-width: none !important;
width: 100% !important;
box-sizing: border-box !important;
margin: 0 !important;
padding: 0 !important;
}

.post-body {
max-width: none !important;
width: 100% !important;
box-sizing: border-box !important;
}

html.mathjax-loading .post-body {
visibility: hidden;
}

.post-body p {
text-align: justify;
text-align-last: left;
text-justify: inter-word;
hyphens: auto;
-webkit-hyphens: auto;
overflow-wrap: break-word;
word-break: normal;
}

.post-body .qed {
float: right;
margin-left: 1rem;
}

.math-scroll {
max-width: 100%;
}

.math-scroll mjx-container[display="true"],
.math-scroll .MathJax_Display {
display: block;
max-width: 100%;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
padding: 0.25rem 0;
box-sizing: border-box;
}

.math-scroll mjx-container[display="true"] > *,
.math-scroll .MathJax_Display > * {
max-width: 100%;
}

figure {
  text-align: center;
  margin: 1.5rem auto;
}

figure img {
  max-width: 100%;
  height: auto;
}

figcaption {
  margin-top: 0.4rem;
  font-size: 0.9rem;
  font-weight: bold;
}
