/*
	Tables

	Requires:
		base.css
		type.css
*/

table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

th,
caption {
	text-align: left;
}

caption {
	margin-bottom: 3.2rem;
	border-bottom: 1px solid hsla(0, 0%, 0%, .1);
	padding-bottom: 1rem;
}

th, td {
	padding: 1.6rem;
	vertical-align: top;
	
	color: hsla(0, 0%, 0%, .6)
}

thead th {
	padding: 0 1.6rem 1rem 1.6rem;
	vertical-align: bottom;
}

td:first-child {
	 color: inherit; /* back to black (or base colour) */
}

tbody tr:nth-child(odd) {
  background-color: hsla(0, 0%, 0%, .05);
}

/* Lists */

ul, ol {
  margin-left: 1.25em;
}

li {
	margin-top: 1.2rem;
}

li:first-child {
	margin-top: 0;
}

/* Special Lists */
.list--links,
.list--icons,
.list--bios,
.list--avatars {
  margin-left: 0;
  list-style: none;
}

.item-description {
	margin-top: .8rem;
}

.list--icons > li {
	padding-left: 3.6rem;
	min-height: 24px;
}

.list--icons > li,
.list--bios > li {
	position: relative;
	margin-top: 2.4rem;
}

.list--icons > li:first-child,
.list--bios > li:first-child {
	margin-top: 0;
}

.list--icons .icon--link::before {
	position: absolute;
	top: .1em;
	left: -1px;
	width: 26px;
	height: 26px;
	color: inherit;
	text-align: center;
	font-size: 24px;
	line-height: 1;
}

.list--site-section-links > li,
.list--bios > li {
	padding-left: 5.2rem;
	min-height: 32px;
}

.list--site-section-links .icon--link::before {
	width: 34px;
	height: 34px;
	text-align: center;
	font-size: 32px;
}

.avatar {
	display: inline-block;
	border-radius: 50%;
	width: 32px;
	height: 32px;
	overflow: hidden;
}

.list--bios .avatar {
	position: absolute;
	top: 0;
	left: 0;
}

.list--avatars {
	margin-left: -1.2rem;
}
.list--avatars > li {
	display: inline-block;
	margin: 0 0 1.2rem 1.2rem;
}

@media (min-width: 33.75em) {

	.list--icons > li,
	.list--bios > li {
		margin-top: 3.2rem;
	}

	.list--site-section-links > li,
	.list--bios > li {
		padding-left: 6.8rem;
		min-height: 48px;
	}
	
	.list--site-section-links .icon--link::before {
		width: 50px;
		height: 50px;
		font-size: 48px;
	}
	
	.avatar {
		width: 48px;
		height: 48px;
	}

}

/* When special list items are floated modules */

@media (min-width: 20em) {

	.list--site-section-links > .module,
	.list--bios > .module {
		padding-left: 6.4rem;
	}

	.list--site-section-links > .module .icon--link::before,
	.list--bios > .module .avatar {
		left: 1.2rem;
	}
	
}

@media (min-width: 33.75em) {

	.list--site-section-links > .module,
	.list--bios > .module {
		padding-left: 8rem;
	}

}

@media (min-width: 33.75em) {

	.list--site-section-links > .module,
	.list--bios > .module {
		padding-left: 8.4rem;
	}
	
	.list--site-section-links > .module .icon--link::before,
	.list--bios > .module .avatar {
		left: 1.6rem;
	}

}