/* BASIC */
:root {
	--full-screen-margin: 0em;
	--text-glow: 0 0 .1em white;
}
* {
	line-height: 1.333;
	color: inherit;
	font-family: Arial, Helvetica, sans-serif;
	padding: 0;
	margin: 0;
}




/* GENERAL */
body {
	font-size: 1.1em;
}
h1, h2, h3, h4, h5, h6, ul {
	margin: 0;
}
header h1 {
	font-size: min(17.5vw, 3em);
	text-shadow: var(--text-glow);
}
#CSS #HeaderCSS,
#Notes #HeaderNotes,
#Library #HeaderLibrary {
	/* text-decoration: none; */
}
main p {
	font-size: 1.5em;
	max-width: 30em;
	margin-bottom: max(5.4vw, 5.4vmax);
	text-shadow: var(--text-glow);
}




/* CONTAINERS */
#PageWrapper {
	position: relative;
	box-sizing: border-box;
	padding: 1.5em;
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	align-items: center;
	min-height: 100vh;
	width: 100%;
	overflow: hidden;
}
#PageBackground {
	display: flex;
	position: absolute;
	top: calc(50vh - 55vmax);
	left: 0;
	width: 100vmax;
	height: 125vmax;
	background: url('img/css.jpg');
	background-position: center center;
}
#ContentWrapper {
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	max-width: 50em;
	flex-grow: 1;
	gap: 1em;
}
#ContentWrapper > h1,
#ContentWrapper > * > *:not(#CryptPad) {
	mix-blend-mode: overlay;
	color: white;
}




/* CRYPTPAD EMBED */
#CryptPadWrapper {
	position: relative;
	height: calc(100vh - 3em);
}
#CryptPadWrapper.full-screen {
	position: fixed;
	top: calc(var(--full-screen-margin) - 2px);
	left: calc(var(--full-screen-margin) - 2px);
	width: calc(100vw - 2 * var(--full-screen-margin) + 4px);
	height: calc(100vh - 2 * var(--full-screen-margin) + 4px);
}
#CryptPadWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	box-sizing: border-box;
	border: 2px inset;
	border-radius: 1px;
}
#CryptPadWrapper #CryptPadControls {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-end;
	position: absolute;
	top: 1.5px;
	right: 2px;
	margin: 0;
	font-size: 1em;
	cursor: pointer;
}
#CryptPadWrapper .cryptpad-button {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	border: 6px outset;
	border-radius: 1px;
	background-color: grey;
	cursor: pointer;
}
#CryptPadWrapper .cryptpad-button-inner {
	box-sizing: border-box;
	padding: 2px 6px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	color: hsl(0, 0%, 22.5%);
	cursor: pointer;
}
#CryptPadWrapper .cryptpad-button:hover {
	background-color: hsl(0, 0%, 52.5%);
}
#CryptPadWrapper.full-screen .cryptpad-button-close .cryptpad-button-inner-expand,
#CryptPadWrapper.inline .cryptpad-button-close .cryptpad-button-inner-contract {
	display: none;
}
#CryptPadWrapper .cryptpad-button-edit {
	display: none;
}




/* @MEDIA SWITCHES */
@media screen and (orientation: portrait) {
	#PageBackground {
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
	}
	#CryptPadWrapper {
		position: relative;
		height: calc(100vh - 1em);
		left: -1em;
		bottom: -1em;
		width: calc(100% + 2em);
	}	
}
@media screen and (orientation: landscape) {
	header h1 a:first-child {
		display: inline-block;
		width: 100%;
	}
}




/* DEBUG */
* {
	/* background: rgba(255,0,0,0.1); */
}
