@use "_fonts";
@use "_consts" as c;

h1 {
	margin: 16px 0 0 0;
	text-align: center;
	//width: fit-content;
	//padding: 0 1em;
	//line-height: 1.6em;
	/*background:
		url("/img/line.png") center/8px repeat-x padding-box,
		url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQIW2NgYPj/HwADAgH/eL9GtQAAAABJRU5ErkJggg==") content-box;*/
	/*background-repeat: repeat-x, repeat;
	background-position: 50% 50%, initial;
	background-size: 8px 8px, initial;
	background-clip: padding-box, content-box;*/
	display: grid;
	grid-template-columns: 1fr max-content 1fr;
	grid-template-rows: 1ch 0;
	grid-gap: 20px;
	align-items: center;
}

h1:before, h1:after {
	content: " ";
	display: block;
	background-color: c.$main_color;
	height: 4px;
}

h2 {
	border-bottom: 2px solid c.$main_color;
}

h3 {
	border-bottom: 1px solid c.$main_color;
}

h4 {
	border-bottom: 1px dotted c.$main_color;
}

code, pre {
	font-family: "Fira Code", monospace, monospace;
	font-variant-ligatures: none;
	font-size: 14px;
}

pre {
	padding: 4px;
	border-left: 2px solid c.$second_color;
}

blockquote {
	border-left: 2px solid c.$main_color;
	border-radius: 4px 0 0 4px;
	margin: 16px;
	padding: 0 16px;
}

main p {
	line-height: 130%;
}

main a {
	text-decoration-color: c.$main_color;
}

main a:hover, main a:focus, main a:visited:hover, main a:visited:focus {
	color: c.$main_color;
}

.sidenav {
	position: sticky;
	top: 16px;
	float: left;
	max-width: calc(50vw - 444px);
	background-color: #dddc;
	padding: 16px;
}

.sidenav:hover, .sidenav:focus {
	background-color: #dddd;
}

.sidenav ul {
	margin: 0;
	padding-left: 0;
}

.sidenav li {
	list-style-type: none;
}

.sidenav li ul {
	margin-left: 16px;
}

.sidenav a, .sidenav a:visited {
	text-decoration: none;
	color: c.$second_color;
}

.anchor, .anchor:visited {
	display: inline-block;
	text-align: center;
	width: 24px;
	margin-right: 8px;
	color: c.$second_color !important;
	text-decoration: none;
	font-size: 2rem;
	background-color: c.$main_color;
}

.anchor:hover, .anchor:visited:hover, .anchor:focus, .anchor:visited:focus {
	color: #ddd !important;
	background-color: c.$second_color;
}

h2 > .anchor, h3 > .anchor {
	margin-left: -32px;
}

.article-list_title {
	margin-bottom: 0;
	border: none;
}

.article-list_title a, .article-list_title a:visited {
	text-decoration: none;
	color: c.$second_color;
}

article p {
	margin-top: 0;
}

.service_boxes {
	text-align: center;
}

.service_box {
	display: inline-block;
	width: 144px;
	padding-top: 4px;
	border: 2px solid transparent;
	vertical-align: top;
}

.service_box-img {
	max-width: 128px;
	max-height: 128px;
}

.service_box-img_wrap {
	width: 128px;
	height: 128px;
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

.service_box-link, .service_box-link:visited {
	color: #000;
	font-size: 120%;
	text-decoration: none;
}

.service_box-title {
	position: relative;
	top: 14px;
	display: inline-block;
	padding-bottom: 14px;
}

.service_box:hover, .service_box:focus {
	border-top-color: #000;
	border-left-color: #000;
	border-bottom-color: #f00;
	border-right-color: #f00;
}

.page img {
	max-width: 100%;
}

.page table {
	border-collapse: collapse;
}

.page td, .page th {
	padding: 4px;
	border: 1px solid c.$main_color_shade;
}

@media screen and (min-width: 1301px) {
	.pagetoc {
		display: none;
	}
}

@media screen and (max-width: 1300px) {
	.sidenav {
		display: none;
	}
}

@media (prefers-color-scheme: dark) {
	h2 {
		border-bottom: 2px solid c.$main_color_shade;
	}

	h3 {
		border-bottom: 1px solid c.$main_color_shade;
	}

	h4 {
		border-bottom: 1px dotted c.$main_color_shade;
	}

	.sidenav {
		background-color: #111a;
	}
	
	.sidenav:hover, .sidenav:focus {
		background-color: #111d;
	}

	.sidenav a, .sidenav a:visited {
		color: c.$main_color;
	}

	.sidenav a:hover, .sidenav a:visited:hover, .sidenav a:focus, .sidenav a:visited:focus {
		color: #ddd;
	}

	.article-list_title a, .article-list_title a:visited {
		color: c.$main_color;
	}

	.article-list_title a:hover, .article-list_title a:visited:hover, .article-list_title a:focus, .article-list_title a:visited:focus {
		color: #ddd;
	}
}
