html {
	font: 15px sans-serif;
}
body {
	margin: 0.3em;
}
main#app {
	display: flex;
	flex-direction: row;
	gap: 0.3em;
	width: 100%;
	height: calc(100vh - 0.6em);
	box-sizing: border-box;
	> section {
		display: flex;
		flex-direction: column;
		&:not(#config) {
			gap: 0.3em;
			flex-grow: 1;
			width: 0;
			> :last-child {
				flex-grow: 1;
				height: 0;
			}
		}
		> .header {
			display: flex;
			flex-direction: row;
			align-items: center;
			height: 1.5em;
			gap: 0.3em;
			input[type="number"] {
				width: 3.5em;
			}
		}
	}
}
#pdf-canvas {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #899FC6;
	> canvas {
		max-width: 100%;
		max-height: 100%;
	}
}
#preview-and-images {
	overflow-y: auto;
}
#page-images {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 0.3em;
	.slot {
		display: flex;
		width: 150px;
		height: 150px;
		align-items: center;
		justify-content: center;
		img, canvas {
			max-width: 100%;
			max-height: 100%;
		}
	}
}
#preview hr, #page-images:not(:empty) {
	border: 0;
	border-bottom: 1px dashed currentColor;
}
#page-images:not(:empty) {
	margin-bottom: 1em;
}
#preview {
	> *:first-child {
		margin-top: 0;
	}
	> *:last-child {
		margin-bottom: 0;
	}
	hr {
		margin: 0;
	}
	h2 {
		margin-bottom: 0.3em;
		border-bottom: 1px solid #ccc;
	}
}
section#config {
	width: 120px;
	gap: 0;
	label {
		margin-top: 0.3em;
	}
	input:not([type="checkbox"]), select {
		height: 1.5em;
	}
}
#file-picker-form {
	display: block;
	width: 100%;
	height: 0;
	overflow: hidden;
}