@charset "UTF-8";

p {
	text-align: justify;
	text-indent: 4em;
}

ol, ul {
	text-align: justify;
}

blockquote p:before {
	content: open-quote;
}

blockquote p:after {
	content: no-close-quote;
}

blockquote p.last:after {
	content: close-quote;
}

blockquote .author {
	margin-left: 1em;
	font-style: italic;
}

blockquote .author:before {
	content: "— ";
}

blockquote .author {
	margin-left: 1em;
	margin-right: 1em;
	display: block;
	text-indent: 4em;
}

th, td {
	padding-left: 0.5em;
	padding-right: 0.5em;
}

th label, td label {
	text-align: right;
}

th label, th input, th select, th button, th textarea,
td label, td input, td select, td button, td textarea {
	display: inline-block;
	width: 100%;
	height: 100%;
}

fieldset {
	display: inline-block;
}

body {
	counter-reset: section1;
}

.section1 {
	counter-increment: section1;
	counter-reset: section2;
}

.section2 {
	counter-increment: section2;
	counter-reset: section3;
}

.section3 {
	counter-increment: section3;
}

.section1:before {
	content: counter(section1) ".   ";
}

.section2:before {
	content: counter(section1) "."
		counter(section2) ".   ";
}

.section3:before {
	content: counter(section1) "."
		counter(section2) "."
		counter(section3) ".   ";
}

.left { text-align: left; }
.left table { margin-right: auto; }
.left th { text-align: center; }
.left td { text-align: left; }
th.left, td.left { text-align: left; }
p.left, .author.left { text-indent: 0; }

.center { text-align: center; }
.center table { margin-left: auto; margin-right: auto; }
.center th { text-align: center; }
.center td { text-align: left; }
th.center, td.center { text-align: center; }
p.center, .author.center { text-indent: 0; }

.right { text-align: right; }
.right table { margin-left: auto; }
.right th { text-align: center; }
.right td { text-align: left; }
th.right, td.right { text-align: right; }
p.right, .author.right { text-indent: 0; }

.top-outer { display: table; width: 100%; height: 100%; }
.top-inner { display: table-cell; vertical-align: top; }

.middle-outer { display: table; width: 100%; height: 100%; }
.middle-inner { display: table-cell; vertical-align: middle; }

.bottom-outer { display: table; width: 100%; height: 100%; }
.bottom-inner { display: table-cell; vertical-align: bottom; }
