/**
 * This file shall apply to every site.
 */

* { margin: 0; padding: 0; }

/**
 * Put footer at the bottom of the page.
 *
 * Divide the whole page into 3 parts: header, main, footer.
 * @see http://cssreset.com/how-to-keep-footer-at-bottom-of-page-with-css/
 * @see http://www.chming.tw/blog/2014/09/03/collapsing-margins/
 */
html { height: 100%; }
body {
	min-height: 100%;
	position: relative;
}
body > header { overflow: hidden; }
body > header:after,
body > section:after,
body > footer:after {
	content: "";
	display: block;
	clear: both;
}
body > section:after { padding-bottom: 2em; }
body > footer {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
}


/**
 * General classes.
 */
.clickable { cursor: pointer; }
.clear { clear: both; }
.inlineBlock { display: inline-block; }
.inlineList { list-style-type: none; }
.inlineList > li { display: inline-block; }
.rawdata {
	font-family: monospace;
	white-space: pre-wrap;
	word-wrap: break-word;
	word-break: break-word;
}
.clearAfter {
	content: "";
	display: block;
	clear: both;
}

.table,
.dlTable {
	display: table;
}
.table > header,
.table > footer,
.dlTable > header,
.dlTable > footer {
	display: table-caption;
}
.tableRow,
.dlTable > dl {
	display: table-row;
}
.tableCell,
.dlTable > dl > dt,
.dlTable > dl > dd {
	display: table-cell;
	vertical-align: top;
}
