.SpecFilter .centerTitle {
	border-bottom: 1px solid #fff;
	margin-bottom: 1em;
}

.SpecFilter .addable {
	border-top: 1px solid #fff;
	padding-top: 5px;
}


.SpecFilter .TheButton {
	display: inline-block;
	padding: 0 10px;
	border-radius: 1px;
	cursor: pointer;
	margin-bottom: 3px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.5), 0 0 5px rgba(255,255,255,0.7) inset;
	transition: all 200ms;
}
.SpecFilter .TheButton:hover {
	box-shadow: 0px 0px 3px rgba(0,0,0,0.5), 0 0 5px rgba(255,255,255,0.7) inset;
}

.SpecFilter .TheButton.ThatAdds,
.SpecFilter .TheButton.ThatRemoves {
	background: var(--CD-ColorA);
	color: #fff;
	padding-right: 2px;
}

.SpecFilter .TheButton.ThatAdds:after,
.SpecFilter .TheButton.ThatRemoves:after {
	color: #000;
	font-weight: bold;
	text-shadow: 0 0 2px rgba(255,255,255,1);
	margin-left: 2px;
	display: inline-block;
	transition: all 200ms;
}
.SpecFilter .TheButton.ThatAdds:hover:after,
.SpecFilter .TheButton.ThatRemoves:hover:after {
	color: #fff;
	text-shadow: 0 0 2px rgba(0,0,0,0.5);
}

.SpecFilter .TheButton.ThatAdds:after {
	content: '+';
	top: 1px;
	position: relative;
}
.SpecFilter .TheButton.ThatRemoves:after {
	content: '×';
}

.SpecFilter .TheButton.ThatExpands {
	background: rgb(246,248,249);
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y2ZjhmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2U1ZWJlZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUxJSIgc3RvcC1jb2xvcj0iI2Q3ZGVlMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNWY3ZjkiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(top, rgba(246,248,249,1) 0%, rgba(229,235,238,1) 50%, rgba(215,222,227,1) 51%, rgba(245,247,249,1) 100%);
	background: -webkit-linear-gradient(top, rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
	background: linear-gradient(to bottom, rgba(246,248,249,1) 0%,rgba(229,235,238,1) 50%,rgba(215,222,227,1) 51%,rgba(245,247,249,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f8f9', endColorstr='#f5f7f9',GradientType=0 );
	
	color: #000;
}

/* Maps */
.map1 {
	background-image: url('https://www.kobold.com/area/ajax/modules/SpecFilter/SpecFilter.png');
	display: inline-block;
	line-height: 100%;
}
a.map1:hover {
	text-decoration: none;
}

.map1ic.available { cursor: pointer; }
.map1ic:hover { text-shadow: -1px -1px 1px #fff, 1px 1px 3px #f7e0a8; }

.map1.checkIcon {
	background-position: -150px -10px;
	width: 16px;
	height: 16px;
}
.map1ic:hover .checkIcon,
.map1.checkIcon:hover { background-position: -166px -10px; }

.map1ic.selected .map1.checkIcon,
.map1.checkIcon.selected { background-position: -150px -26px; }

.map1ic.selected:hover .checkIcon,
.map1.checkIcon.selected:hover { background-position: -166px -26px; }

.map1ic.disabled .map1.checkIcon,
.map1.checkIcon.disabled { background-position: -150px -42px; }

.map1ic.disabled:hover .checkIcon,
.map1.checkIcon.disabled:hover { background-position: -166px -42px; }

.map1.selectIcon {
	background-position: -182px -10px;
	width: 18px;
	height: 17px;
}
.map1ic:hover .selectIcon,
.map1.selectIcon:hover { background-position: -198px -10px; }

.map1ic.selected .map1.selectIcon,
.map1.selectIcon.selected { background-position: -182px -26px; }

.map1ic.selected:hover .selectIcon,
.map1.selectIcon.selected:hover { background-position: -198px -26px; }

.map1ic.disabled .map1.selectIcon,
.map1.selectIcon.disabled { background-position: -182px -42px; }

.map1ic.disabled:hover .selectIcon,
.map1.selectIcon.disabled:hover { background-position: -198px -42px; }

.map1.iEqual { cursor: pointer; background-position: -220px -10px; width: 20px; height: 20px; }
.map1.iEqual:hover { background-position: -220px -30px; }

.map1.gEqual { cursor: pointer; background-position: -240px -10px; width: 20px; height: 20px; }
.map1.gEqual:hover { background-position: -240px -30px; }

.map1.lEqual { cursor: pointer; background-position: -260px -10px; width: 20px; height: 20px; }
.map1.lEqual:hover { background-position: -260px -30px; }

.map1.staticIEqual { background-position: -220px -50px; width: 20px; height: 20px; }
.map1.staticGEqual { background-position: -240px -50px; width: 20px; height: 20px; }
.map1.staticLEqual { background-position: -260px -50px; width: 20px; height: 20px; }