@import url('https://fonts.loli.net/css2?family=Noto+Sans+SC:wght@100..900&display=swap');
@font-face{
	font-family: 'ChillRoundGothic_Medium';
	src: url('../diy-font/ChillRoundGothic_Medium.ttf');   
}

:root {
	--width:780px;
	--font-scale:1.1rem;
	--background-color:#fff;
	--heading-color:#3B7BCB;
	/* --heading-color:#555555; */
	--title-color:#444444;
	--text-color:#777575;
	/* --link-color:#3B7BCB; */
	--link-color:#444444;
	--strong-color:#444444;
	--visited-color:#222;
	--code-background-color:#F0F0F0;
	--code-color:#222;
	--blockquote-color:#222;
	--gray-color:#666;
}
body {
	flex-direction:column;
	justify-content:flex-start;
	font-size:var(--font-scale);
	margin:auto;
	max-width:var(--width);
	text-align:left;
	background-color:var(--background-color);
	word-wrap:break-word;
	overflow-wrap:break-word;
	line-height:1.7;
	font-weight:400;
	color:var(--text-color);
	/* font-family: "Noto Sans SC",serif; */
	font-family: "ChillRoundGothic_Medium";
	height:100%;
	word-break:break-all;
}
.blog-posts {
	padding:0px;
}
html {
	scroll-behavior:smooth;
	height:100%;
}
time {
	font-family:consolas,monospace;
	font-style:normal;
}
h1,h2,h3,h4,h5,h6 {
	color:var(--heading-color);
	display:inherit;
}
a {
	color:var(--link-color);
	cursor:pointer;
	text-decoration:none;
	border-bottom:1px solid transparent;
}
a:hover,footer-nav .current {
	color:var(--gray-color);
	text-decoration:underline;
}
footer-nav a {
	margin-right:8px;
}
main a {
	text-decoration:underline;
}
strong,b {
	color:var(--strong-color);
}
table {
	width:100%;
}
pre {
	padding:5px 12px;
	overflow:auto;
	max-height:400px;
}
hr {
	border:0;
	border-top:1px dashed;
}
img {
	max-width:100%;
	height:auto;
}
time,.intro {
	color:var(--gray-color);
}
pre,code {
	font-size:0.9em;
	font-family: "Noto Sans SC",monospace,serif;
	background-color:var(--code-background-color);
	color:var(--code-color);
	border-radius:4px;
	white-space:pre-wrap;
}
code {
	padding:2px 3px;
}
pre code {
	padding:3px 0px;
}
blockquote {
	border-left:5px solid var(--heading-color);
	padding:10px 15px;
	margin:10px 0;
	font-weight:bold;
	color:var(--blockquote-color);
	background:#fff;
	border-radius:5px;
	box-shadow:0 2px 10px rgba(0,0,0,0.1);
}
blockquote footer {
	text-align:right;
	font-size:0.9em;
	color:#777;
}
header,footer {
	padding:20px 0;
}
header h1 {
	font-size:3.5em;
}
header h2 {
	font-size:2.5em;
}
.title {
	text-decoration:none;
	color:var(--title-color);
}
main {
	min-height:50vh;
	box-sizing:border-box;
}
footer-nav a {
	font-size:1.2em;
}
ul.posts {
	list-style-type:none;
	padding:unset;
}
ul.posts li {
	display:flex;
	margin:3px 0;
}
ul.posts li span {
	flex:0 0 115px;
}
ul.posts li a:visited {
	color:var(--visited-color);
}
.tags {
	margin-top:30px;
	color:var(--gray-color);
}
.tags a {
	color:#888;
	margin:0 5px 0 2px;
}
.post-item {
	display:flex;
	justify-content:space-between;
	margin-bottom:10px;
}
.post-item a {
	flex:1;
	text-decoration:none;
}
.post-item time {
	margin-left:10px;
	white-space:nowrap;
}
footer,footer a {
	color:#808080;
	text-decoration:none;
	transition:color 0.3s;
	font-size:12px;
	margin-right: 8px;
}
.home {
	display:flex;
	flex-direction:column;
	min-height:100vh;
}
@media (max-width:779px) {
	body {
		padding:0px 20px;
	}
	ul.blog-posts li a {
		margin-left:0px;
		word-break:break-all;
	}
	th,td {
		display:block;
		width:100%;
	}
	th {
		position:static;
	}
	tr {
		display:flex;
		flex-direction:column;
		margin-bottom:10px;
	}
}
@media (min-width:780px) {
	body {
		padding:0;
	}
}
sub {
	font-size:12px;
	color:#777;
}
table {
	width:100%;
	border-collapse:collapse;
	margin:20px 0;
	border-radius:8px;
	overflow:hidden;
	box-shadow:0 2px 15px rgba(0,0,0,0.1);
}
th,td {
	padding:12px;
	text-align:left;
	border:1px solid #ddd;
	color:#333;
	transition:background-color 0.3s,transform 0.3s;
}
th {
	background:linear-gradient(to bottom,#ccc,#bbb);
	position:sticky;
	top:0;
	z-index:10;
}
tr:nth-child(even) {
	background-color:#f9f9f9;
}
tr:hover {
	background-color:#e9e9e9;
}
main p {
	word-break:break-all;
}
.post-navigation {
	list-style:none;
	margin-top:10vh;
	padding:0;
}
.post-navigation .page-numbers,.post-navigation a {
	text-decoration:none;
	width:35px;
	height:35px;
	line-height:35px;
	margin-right:8px;
	display:inline-block;
	text-align:center;
	border-radius:4px;
}
.post-navigation .current,.post-navigation a:hover,.post-navigation a.active {
	background:#333;
	color:#fff;
	text-decoration:none;
}
.post-navigation .page-numbers,.post-navigation a {
	background:#f8f8f8;
	color:#555
}
