@import url('https://fonts.googleapis.com/css2?family=Glegoo&family=Noto+Sans+TC&family=Noto+Serif+TC&family=Roboto&display=swap');

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	height: 100%;
	width: 100%;
	box-sizing: border-box;
}

body {
	width: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	background-color: #ffffff;
	color: #3a3a3a;
	font-size: 1.6vh;
	line-height: 2.4vh;
	font-family: "Roboto", sans-serif;
}

header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 10%;
}

header > h1 {
	height: 100%;
	line-height: 9.5vh;
}

header > h1:first-of-type {
	float: left;
}

header > h1:last-of-type {
	float: right;
}

header > h1 > span {
	font-size: 4.8vw;
}

header > h1:first-of-type > span {
	font-size: 6vw;
}

header > h1:focus > span {
	transform: rotate(45deg);
	transition: transform 0.5s ease-out;
}

header > h1:first-of-type {
	width: 15%;
	background-color: #7d0084;
	color: #ffffff;
	text-align: center;
}

header > h1:first-of-type:hover {
	user-select: none;
	cursor: pointer;
}

header > h1:last-of-type {
	width: 85%;
	padding-left: 2vw;
	background-color: #ffffff;
	text-shadow: 0.2vh 0.2vh #d1d1d1;
	border-bottom: 0.5vh solid #7d0084;
}

nav {
	display: none;
	position: fixed;
	top: 10.1%;
	left: 0;
	z-index: 2;
	width: 100%;
}

nav > a {
	display: inline-block;
	width: 100%;
	padding: 2vh 0;
	background-color: #ffffff;
	color: #3a3a3a;
	font-size: 150%;
	text-align: center;
	text-decoration: none;
	border-bottom: 0.1vh solid #7d0084;
	transition: all 0.3s ease-in;
}

nav > a:first-of-type {
	border-top: 0.1vh solid #7d0084;
}

nav > a:hover {
	transition: all 0.5s ease-out;
}

nav > a.selected, nav > a:hover {
	background-color: #7d0084;
	color: #ffffff;
	font-weight: bold;
}

nav > a.selected::before {
	content: ">> ";
}

h1, h2 {
	font-family: "Glegoo", sans-serif;
}

h2 {
	margin: 1.5vh 0;
	text-shadow: 0.15vh 0.15vh #d1d1d1;
}

div#container {
	width: 100%;
	margin-top: 10.1vh;
	padding: 0.5vh 2vw;
}

article:not(:first-of-type) {
	display: none;
}

section {
	margin: 1.5vh 0;
}

section a, figure a {
  	color: #7c7c7c;
  	background: url(../img/link-icon.png) 100% 50% no-repeat;
  	background-size: 1em 1em;
  	padding-right: 1em;
  	word-break: break-all;
  	text-decoration: none;
}

ul {
	padding-left: 2vh;
 	list-style-type: square;
}

ul > li:first-line {
  font-weight: bold;
}

p, li {
	margin: 0.5vh 0;
}

figure {
	text-align: center;
}

span[lang^="zh"] {
  font-family: "Noto Serif TC", serif;
}

@media only screen and (min-width: 1024px) {
	body {

	}

	header > h1:first-of-type {
		display: none;
	}

	header > h1:last-of-type {
		float: unset;
		width: 100%;
		padding-left: 36%;
		border-bottom: 0;
		line-height: 10vh;
	}

	header > h1 > span {
		font-size: 2.4vw;
	}

	nav {
		display: block;
		position: fixed;
		left: 25%;
		width: 10%;
	}

	div#container {
		width: 65%;
		margin-left: 35%;
		padding: 0 1vw 0.5vh;
	}

	figure {
		text-align: left;
	}

	ul {
		padding-left: 2vw;
 		list-style-type: square;
	}
}