.amap_shadow {
  -webkit-filter: drop-shadow( 3px 3px 2px rgba(0, 0, 0, .7));
  filter: drop-shadow( 3px 3px 2px rgba(0, 0, 0, .7));
}

.amap_shadow2 {
	
}

.amap_label_size_small
{
	font-size: 15px;
}

.amap_label_size_normal
{
	font-size: 17px;
}

.amap_region {
	/*fill: #D3D3D3;*/
	stroke-width: 0.3;
	stroke: #FFFFFF;
	cursor: pointer;
} /* orig stroke width: 1.0 */

.amap_region_box {
	fill: #D3D3D3;
	stroke-width: 1.2;
	stroke: #FFFFFF;
	cursor: pointer;
} /* orig stroke width: 1.8 */

.amap_region_thick_border {
	stroke-width: 1.0;
}

.amap_region_no_border {
	stroke-width: 0;
}

.amap_region_label
{
	font-weight: bold;
	font-family: Verdana, Arial;
	color: white;
	cursor: pointer;
	/*
		Note: text-align needed otherwise text alignment is screwed up if map is placed in differently-aligned elements. The
			  proper way to do it would be to use <text> instead of <foreignObject>, but that would require
			  re-positioning the text and thus all new coordinates. At some point, may be better to do this!
	*/
	text-align: left;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.amap_region_label_black {
	color: rgb(55, 55, 55);
}

.amap_region_box_side_label {
	color: rgb(206, 206, 206);
	font-size: 16px;
	font-family: Verdana;
}

.amap_region_hidden {
	display: none;
}

.amap_cong_district { }

.amap_container {
	padding: 1px;
	padding-top: 4px;
	padding-bottom: 4px;
}

.amap_legend {
	font-size: 11px;
	font-family: verdana, arial, helvetica, serif;
	text-align: center;
	width: 515px;
	padding: 4px;
	margin-left: 4px;
	background-color: rgb(249, 249, 249);
	border: 1px solid darkgrey;
}

.amap_legend_label {
	padding-right: 9px;
}

.amap_info_bar {
	font-size: 11px;
	font-family: verdana, arial, helvetica, serif;
	padding-bottom: 4px;
	padding-top: 6px;
	border: 0;
	width: 525px;
	margin-left: 4px;
	height: 20px;
}

.amap_info_bar > span {
	cursor: default;
}

a.amap_edit_link {
	color: darkgrey;
}

a.amap_edit_link:hover {
	color: black;
	cursor: pointer;
}

.amap_evbar_table {
	cursor: default;
}

.amap_legend_shadow {
	box-shadow: 1px 1px 0.5px rgba(0, 0, 0, .7);
}

.amap_territory {
	cursor: cross;
}

.flatTextArea {
	border-style: solid;
	border-width: 1px;
	border-color: darkgrey;
	padding: 5px;
}

/* Light scheme */
/*
.ob_color_blue_30 { fill: rgb(191, 213, 255); color: rgb(191, 213, 255); }
.ob_color_blue_40 { fill: rgb(166, 194, 255); color: rgb(166, 194, 255); }
.ob_color_blue_50 { fill: rgb(130, 158, 217); color: rgb(130, 158, 217); }
.ob_color_blue_60 { fill: rgb(75, 116, 201); color: rgb(75, 116, 201); }
.ob_color_blue_70 { fill: rgb(37, 80, 167); color: rgb(37, 80, 167); }
.ob_color_blue_80 { fill: rgb(32, 68, 145); color: rgb(32, 68, 145); }
.ob_color_blue_90 { fill: rgb(27, 56, 118); color: rgb(27, 56, 118); }

.ob_color_red_30 { fill: rgb(255, 198, 203); color: rgb(255, 198, 203); }
.ob_color_red_40 { fill: rgb(255, 174, 183); color: rgb(255, 174, 183); }
.ob_color_red_50 { fill: rgb(255, 113, 126); color: rgb(255, 113, 126); }
.ob_color_red_60 { fill: rgb(255, 60, 79); color: rgb(255, 60, 79); }
.ob_color_red_70 { fill: rgb(234, 0, 23); color: rgb(234, 0, 23); }
.ob_color_red_80 { fill: rgb(198, 0, 20); color: rgb(198, 0, 20); }
.ob_color_red_90 { fill: rgb(168, 0, 17); color: rgb(168, 0, 17); }

.ob_color_yellow_30 { fill: rgb(255, 237, 183); color: rgb(255, 237, 183); }
.ob_color_yellow_40 { fill: rgb(255, 234, 170); color: rgb(255, 234, 170); }
.ob_color_yellow_50 { fill: rgb(255, 225, 136); color: rgb(255, 225, 136); }
.ob_color_yellow_60 { fill: rgb(253, 190, 0); color: rgb(253, 190, 0); }
.ob_color_yellow_70 { fill: rgb(213, 159, 0); color: rgb(213, 159, 0); }
.ob_color_yellow_80 { fill: rgb(198, 149, 0); color: rgb(198, 149, 0); }
.ob_color_yellow_90 { fill: rgb(176, 133, 0); color: rgb(176, 133, 0); }

.ob_color_green_30 { fill: rgb(197, 235, 197); color: rgb(197, 235, 197); }
.ob_color_green_40 { fill: rgb(183, 230, 183); color: rgb(183, 230, 183); }
.ob_color_green_50 { fill: rgb(138, 215, 138); color: rgb(138, 215, 138); }
.ob_color_green_60 { fill: rgb(71, 192, 71); color: rgb(71, 192, 71); }
.ob_color_green_70 { fill: rgb(50, 146, 50); color: rgb(50, 146, 50); }
.ob_color_green_80 { fill: rgb(47, 136, 47); color: rgb(47, 136, 47); }
.ob_color_green_90 { fill: rgb(40, 117, 40); color: rgb(40, 117, 40); }

.ob_color_purple_30 { fill: rgb(240, 210, 255); color: rgb(240, 210, 255); }
.ob_color_purple_40 { fill: rgb(235, 191, 255); color: rgb(235, 191, 255); }
.ob_color_purple_50 { fill: rgb(222, 155, 255); color: rgb(222, 155, 255); }
.ob_color_purple_60 { fill: rgb(199, 83, 255); color: rgb(199, 83, 255); }
.ob_color_purple_70 { fill: rgb(149, 0, 221); color: rgb(149, 0, 221); }
.ob_color_purple_80 { fill: rgb(130, 0, 191); color: rgb(130, 0, 191); }
.ob_color_purple_90 { fill: rgb(102, 0, 151); color: rgb(102, 0, 151); }
*/

.ob_color_blue_0  { fill: rgb(210, 226, 255); color: rgb(210, 226, 255); }
.ob_color_blue_30 { fill: rgb(166, 194, 255); color: rgb(166, 194, 255); }
.ob_color_blue_40 { fill: rgb(130, 158, 217); color: rgb(130, 158, 217); }
.ob_color_blue_50 { fill: rgb(75, 116, 201); color: rgb(75, 116, 201); }
.ob_color_blue_60 { fill: rgb(37, 80, 167); color: rgb(37, 80, 167); }
.ob_color_blue_70 { fill: rgb(32, 68, 145); color: rgb(32, 68, 145); }
.ob_color_blue_80 { fill: rgb(27, 56, 118); color: rgb(27, 56, 118); }
.ob_color_blue_90 { fill: rgb(20, 43, 90); color: rgb(20, 43, 90); }

.ob_color_red_0  { fill: rgb(255, 223, 225); color: rgb(255, 223, 225); }
.ob_color_red_30 { fill: rgb(255, 174, 183); color: rgb(255, 174, 183); }
.ob_color_red_40 { fill: rgb(255, 113, 126); color: rgb(255, 113, 126); }
.ob_color_red_50 { fill: rgb(255, 60, 79); color: rgb(255, 60, 79); }
.ob_color_red_60 { fill: rgb(234, 0, 23); color: rgb(234, 0, 23); }
.ob_color_red_70 { fill: rgb(198, 0, 20); color: rgb(198, 0, 20); }
.ob_color_red_80 { fill: rgb(168, 0, 17); color: rgb(168, 0, 17); }
.ob_color_red_90 { fill: rgb(138, 0, 14); color: rgb(138, 0, 14); }

.ob_color_yellow_0  { fill: rgb(255, 243, 206); color: rgb(255, 243, 206); }
.ob_color_yellow_30 { fill: rgb(255, 234, 170); color: rgb(255, 234, 170); }
.ob_color_yellow_40 { fill: rgb(255, 225, 136); color: rgb(255, 225, 136); }
.ob_color_yellow_50 { fill: rgb(253, 190, 0); color: rgb(253, 190, 0); }
.ob_color_yellow_60 { fill: rgb(213, 159, 0); color: rgb(213, 159, 0); }
.ob_color_yellow_70 { fill: rgb(198, 149, 0); color: rgb(198, 149, 0); }
.ob_color_yellow_80 { fill: rgb(176, 133, 0); color: rgb(176, 133, 0); }
.ob_color_yellow_90 { fill: rgb(149, 112, 0); color: rgb(149, 112, 0); }

.ob_color_green_0  { fill: rgb(213, 240, 213); color: rgb(213, 240, 213); }
.ob_color_green_30 { fill: rgb(183, 230, 183); color: rgb(183, 230, 183); }
.ob_color_green_40 { fill: rgb(138, 215, 138); color: rgb(138, 215, 138); }
.ob_color_green_50 { fill: rgb(71, 192, 71); color: rgb(71, 192, 71); }
.ob_color_green_60 { fill: rgb(50, 146, 50); color: rgb(50, 146, 50); }
.ob_color_green_70 { fill: rgb(47, 136, 47); color: rgb(47, 136, 47); }
.ob_color_green_80 { fill: rgb(40, 117, 40); color: rgb(40, 117, 40); }
.ob_color_green_90 { fill: rgb(32, 96, 32); color: rgb(32, 96, 32); }

.ob_color_purple_0  { fill: rgb(244, 223, 255); color: rgb(244, 223, 255); }
.ob_color_purple_30 { fill: rgb(235, 191, 255); color: rgb(235, 191, 255); }
.ob_color_purple_40 { fill: rgb(222, 155, 255); color: rgb(222, 155, 255); }
.ob_color_purple_50 { fill: rgb(199, 83, 255); color: rgb(199, 83, 255); }
.ob_color_purple_60 { fill: rgb(149, 0, 221); color: rgb(149, 0, 221); }
.ob_color_purple_70 { fill: rgb(130, 0, 191); color: rgb(130, 0, 191); }
.ob_color_purple_80 { fill: rgb(102, 0, 151); color: rgb(102, 0, 151); }
.ob_color_purple_90 { fill: rgb(85, 0, 125); color: rgb(85, 0, 125); }

.ob_color_blue      { fill: rgb(37, 80, 167); color: rgb(37, 80, 167); }
.ob_color_red       { fill: rgb(234, 0, 23); color: rgb(234, 0, 23); }
.ob_color_yellow    { fill: rgb(253, 190, 0); color: rgb(253, 190, 0); }
.ob_color_green     { fill: rgb(50, 146, 50); color: rgb(50, 146, 50); }
.ob_color_purple    { fill: rgb(149, 0, 221); color: rgb(149, 0, 221); }
.ob_color_gray      { fill: rgb(177, 177, 177); color: rgb(177, 177, 177); }
.ob_color_gray_none { fill: rgb(211, 211, 211); color: rgb(211, 211, 211); }

.ob_color_blue_label    { fill: rgb(130, 158, 217); background-color: rgb(130, 158, 217); } /* equivalent: ob_color_blue_60 */
.ob_color_red_label     { fill: rgb(255, 113, 126); background-color: rgb(255, 113, 126); } /* equivalent: ob_color_red_40 */
.ob_color_yellow_label  { fill: rgb(255, 225, 136); background-color: rgb(255, 225, 136); } /* equivalent: ob_color_yellow_40 */
.ob_color_green_label   { fill: rgb(138, 215, 138); background-color: rgb(138, 215, 138); } /* equivalent: ob_color_green_40 */
.ob_color_purple_label  { fill: rgb(222, 155, 255); background-color: rgb(222, 155, 255); } /* equivalent: ob_color_purple_40 */
.ob_color_gray_label    { fill: rgb(177, 177, 177); background-color: rgb(177, 177, 177); }

.ob_color_blue_progress    { fill: rgb(75, 116, 201); background-color: rgb(75, 116, 201); }
.ob_color_red_progress     { fill: rgb(255, 60, 79); background-color: rgb(255, 60, 79); }
.ob_color_yellow_progress  { fill: rgb(253, 190, 0); background-color: rgb(253, 190, 0); }
.ob_color_green_progress   { fill: rgb(138, 215, 138); background-color: rgb(138, 215, 138); }
.ob_color_purple_progress  { fill: rgb(222, 155, 255); background-color: rgb(222, 155, 255); }
.ob_color_gray_progress    { fill: rgb(177, 177, 177); background-color: rgb(177, 177, 177); }

/* Actual fills depend on dynamical IDs, so these just exist for internal use */
.ob_color_flip_red {}
.ob_color_flip_blue {}
.ob_color_flip_yellow {}
.ob_color_flip_green {}
.ob_color_flip_purple {}

/* gray bg needs even thicker borders when drop shadow is used */
.amap_shadow > .ob_color_gray_none.amap_region_thick_border {
	stroke-width: 1.3px;
}

/* calculator styles */
.evcalc-tdwin-sel {
	font-size: 15.5px;
}

.evcalc-mode-mode-btn .link-btn { background-color: #fbfbfb; }

div.evcalc-mode-mode-btn {
	padding: 6px;
	text-align: center;
	width: 180px;
}

.evcalc-mode-mode-btn > a {
	width: 75px;
}

.link-btn-group {
	flex-wrap: wrap;
	display: flex;
	margin-bottom: 1px;
}

.link-btn {
	position: relative;
	display: inline-block;
	padding: .4em;
	border: 1px solid transparent;
		border-top-color: transparent;
		border-right-color: transparent;
		border-bottom-color: transparent;
		border-left-color: transparent;
	border-radius: 3px;
	border-color: rgb(159, 166, 173);
	outline: none;
	font-family: inherit;
	font-size: 13px;
	font-weight: normal;
	line-height: 1.15384615;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	user-select: none;
}

a.link-btn {
	color: rgb(58, 58, 58);
}

a.link-btn:hover:not(.link-btn-sel) {
	background-color: rgb(247, 247, 247);
}

.link-btn.link-btn-sel {
	color: black;
	border-color: rgb(103, 112, 120);
	background-color: rgb(245, 245, 245);
}

.link-btn-group .link-btn {
	margin-bottom: -1px;
	white-space: nowrap;
}

.link-btn-group .link-btn:not(:last-child) {
	margin-right: -1px;
}

.link-btn-group .link-btn:not(:first-child):not(:last-child) {
	border-radius: 0;
}

.link-btn-group .link-btn:first-child:not(:only-child) {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.link-btn-group .link-btn:last-child:not(:only-child) {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.link-btn-group .link-btn-sel {
	z-index: 25;
}

.link-btn-group .link-btn:active {
	z-index: 30;
}

.state-label {
	color: rgb(32, 32, 32);
	font-weight: bold;
	padding: 3px;
}

.state-label-ev {
	text-align: center;
}

.state-name-label {
	user-select: none;
	cursor: pointer;
}

.core-map-selection-options { /* unused at the moment */
	border: 1px solid black;
	margin: auto;
	width: 0; /*change */
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	text-align: left;
}

.core-map-select-attribs {
	padding: 10px;
}

.core-map-vote-by-cd {
	border: 1px solid black;
	width: 85%; /* default width - could change */
	padding: 10px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	text-align: left;
}

.map-evbar-container { }

.map-evbar-party {
	height: 21px;
	display: flex;
	/*flex-direction: column;*/
	justify-content: center;
	overflow: hidden;
	text-align: center;
	white-space: nowrap;
}

div.map-evbar-party > span {
	padding-top: 3px;
}

.map-evbar-majority-divider {
	height: 20.5px;
	border-left: 1px solid rgb(55, 55, 55);
	position: absolute;
	left: 50%;
	margin: 0px 0 0 -0px;/*17px 0 0 -0px;*/
}

.map-evbar-majority-divider-arrow {
	font-size: 14px;
	position: absolute;
	left: 50%;
	margin: 16px 0 0 -6.5px;/*35px 0 0 -6.5px;*/
}

.map-evbar-majority-divider-arrow:before {
	color: rgb(55, 55, 55);
	content: "\25B2";
}

.map-evbar-party > span {
	color: rgb(42, 42, 42);
	font-weight: bold;
	font-size: 11px;
}

.map-evbar {
	display: flex;
	height: 100%;
}

.map-candidate-is-incumbent {
	color: rgb(44, 44, 44);
	font-weight: bold;
	font-size: 11px;
}

.table-center-page {
	margin: auto;
}

/* tooltips */

.tetip-container {
	max-width: 350px;
	max-height: 260px;
	font-family: verdana, arial, helvetica, serif;
	font-size: 11px;
	text-align: left;
}

.tetip-body {
	width: 100%;
	height: 100%;
}

.tetip-state-label {
	padding-left: 10px;
	font-weight: bold;
}

.tetip-district-label {
	padding-right: 10px;
}

.tetip-candidate-label {
	font-weight: bold;
	max-width: 150px;
	padding-right: 15px;
}

.tetip-candidate-name-tip {
	font-weight: bold;
	padding-bottom: 3px;
}

.tetip-region-won-label {
	display: inline-block;
	width: 95px;
}

.tetip-region-won-data-label {
	display: inline-block;
	padding-left: 10px;
	font-weight: bold;
	width: 22px;
}

.tetip-region-won-data-pct-label {
	display: inline-block;
	padding-left: 5px;
	width: 30px;
}

.tetip-divider {
	height: 1px;
	border: 0;
	color: #333;
	background-color: rgb(232, 232, 232);
	width: 100%;
}

.tetip-body-bottom {
	display: block;
	text-align: right;
}

.tetip-light-text {
	font-weight: default;
	color: darkgrey;
}

.tetip-progress-container {
	display: inline-block;
	width: 130px;
}

.tetip-progress-bar {
	position: relative;
	top: 3px;
	display: inline-block;
	height: 13px;
	line-height: 12px;
	text-align: center;
	font-weight: bold;
	font-size: 10px;
}


.bg-flag-AK, .bg-flag-AL, .bg-flag-AR, .bg-flag-AZ, .bg-flag-CA, .bg-flag-CO, .bg-flag-CT, .bg-flag-DC, .bg-flag-DE, .bg-flag-FL, .bg-flag-GA, .bg-flag-HI, .bg-flag-IA, .bg-flag-ID, .bg-flag-IL, .bg-flag-IN, .bg-flag-KS, .bg-flag-KY, .bg-flag-LA, .bg-flag-MA, .bg-flag-MD, .bg-flag-ME, .bg-flag-ME1, .bg-flag-ME2, .bg-flag-MI, .bg-flag-MN, .bg-flag-MO, .bg-flag-MS, .bg-flag-MT, .bg-flag-NC, .bg-flag-ND, .bg-flag-NE, .bg-flag-NE1, .bg-flag-NE2, .bg-flag-NE3, .bg-flag-NH, .bg-flag-NJ, .bg-flag-NM, .bg-flag-NV, .bg-flag-NY, .bg-flag-OH, .bg-flag-OK, .bg-flag-OR, .bg-flag-PA, .bg-flag-PR, .bg-flag-RI, .bg-flag-SC, .bg-flag-SD, .bg-flag-TN, .bg-flag-TX, .bg-flag-UT, .bg-flag-VA, .bg-flag-VI, .bg-flag-VT, .bg-flag-WA, .bg-flag-WI, .bg-flag-WV, .bg-flag-WY {
	background: url('../../IMG/state_flag_sprites.png') no-repeat;
}

.bg-flag-AK {
    width: 26px; height: 16px;
    background-position: -0 -0;
}

.bg-flag-AL {
    width: 26px; height: 16px;
    background-position: -0 -16px;
}

.bg-flag-AR {
    width: 26px; height: 16px;
    background-position: -0 -32px;
}

.bg-flag-AZ {
    width: 26px; height: 16px;
    background-position: -0 -48px;
}

.bg-flag-CA {
    width: 26px; height: 16px;
    background-position: -0 -64px;
}

.bg-flag-CO {
    width: 26px; height: 16px;
    background-position: -0 -80px;
}

.bg-flag-CT {
    width: 26px; height: 16px;
    background-position: -0 -96px;
}

.bg-flag-DC {
    width: 26px; height: 16px;
    background-position: -0 -112px;
}

.bg-flag-DE {
    width: 26px; height: 16px;
    background-position: -0 -128px;
}

.bg-flag-FL {
    width: 26px; height: 16px;
    background-position: -0 -144px;
}

.bg-flag-GA {
    width: 26px; height: 16px;
    background-position: -0 -160px;
}

.bg-flag-HI {
    width: 26px; height: 16px;
    background-position: -0 -176px;
}

.bg-flag-IA {
    width: 26px; height: 16px;
    background-position: -0 -192px;
}

.bg-flag-ID {
    width: 26px; height: 16px;
    background-position: -0 -208px;
}

.bg-flag-IL {
    width: 26px; height: 16px;
    background-position: -0 -224px;
}

.bg-flag-IN {
    width: 26px; height: 16px;
    background-position: -0 -240px;
}

.bg-flag-KS {
    width: 26px; height: 16px;
    background-position: -0 -256px;
}

.bg-flag-KY {
    width: 26px; height: 16px;
    background-position: -0 -272px;
}

.bg-flag-LA {
    width: 26px; height: 16px;
    background-position: -0 -288px;
}

.bg-flag-MA {
    width: 26px; height: 16px;
    background-position: -0 -304px;
}

.bg-flag-MD {
    width: 26px; height: 16px;
    background-position: -0 -320px;
}

.bg-flag-ME {
    width: 26px; height: 16px;
    background-position: -0 -336px;
}

.bg-flag-ME1 {
    width: 26px; height: 16px;
    background-position: -0 -336px;
}

.bg-flag-ME2 {
    width: 26px; height: 16px;
    background-position: -0 -336px;
}

.bg-flag-MI {
    width: 26px; height: 16px;
    background-position: -0 -352px;
}

.bg-flag-MN {
    width: 26px; height: 16px;
    background-position: -0 -368px;
}

.bg-flag-MO {
    width: 26px; height: 16px;
    background-position: -0 -384px;
}

.bg-flag-MS {
    width: 26px; height: 16px;
    background-position: -0 -400px;
}

.bg-flag-MT {
    width: 26px; height: 16px;
    background-position: -0 -416px;
}

.bg-flag-NC {
    width: 26px; height: 16px;
    background-position: -0 -432px;
}

.bg-flag-ND {
    width: 26px; height: 16px;
    background-position: -0 -448px;
}

.bg-flag-NE {
    width: 26px; height: 16px;
    background-position: -0 -464px;
}

.bg-flag-NE1 {
    width: 26px; height: 16px;
    background-position: -0 -464px;
}

.bg-flag-NE2 {
    width: 26px; height: 16px;
    background-position: -0 -464px;
}

.bg-flag-NE3 {
    width: 26px; height: 16px;
    background-position: -0 -464px;
}

.bg-flag-NH {
    width: 26px; height: 16px;
    background-position: -0 -480px;
}

.bg-flag-NJ {
    width: 26px; height: 16px;
    background-position: -0 -496px;
}

.bg-flag-NM {
    width: 26px; height: 16px;
    background-position: -0 -512px;
}

.bg-flag-NV {
    width: 26px; height: 16px;
    background-position: -0 -528px;
}

.bg-flag-NY {
    width: 26px; height: 16px;
    background-position: -0 -544px;
}

.bg-flag-OH {
    width: 26px; height: 16px;
    background-position: -0 -560px;
}

.bg-flag-OK {
    width: 26px; height: 16px;
    background-position: -0 -576px;
}

.bg-flag-OR {
    width: 26px; height: 16px;
    background-position: -0 -592px;
}

.bg-flag-PA {
    width: 26px; height: 16px;
    background-position: -0 -608px;
}

.bg-flag-PR {
    width: 26px; height: 16px;
    background-position: -0 -624px;
}

.bg-flag-RI {
    width: 26px; height: 16px;
    background-position: -0 -640px;
}

.bg-flag-SC {
    width: 26px; height: 16px;
    background-position: -0 -656px;
}

.bg-flag-SD {
    width: 26px; height: 16px;
    background-position: -0 -672px;
}

.bg-flag-TN {
    width: 26px; height: 16px;
    background-position: -0 -688px;
}

.bg-flag-TX {
    width: 26px; height: 16px;
    background-position: -0 -704px;
}

.bg-flag-UT {
    width: 26px; height: 16px;
    background-position: -0 -720px;
}

.bg-flag-VA {
    width: 26px; height: 16px;
    background-position: -0 -736px;
}

.bg-flag-VI {
    width: 26px; height: 16px;
    background-position: -0 -752px;
}

.bg-flag-VT {
    width: 26px; height: 16px;
    background-position: -0 -768px;
}

.bg-flag-WA {
    width: 26px; height: 16px;
    background-position: -0 -784px;
}

.bg-flag-WI {
    width: 26px; height: 16px;
    background-position: -0 -800px;
}

.bg-flag-WV {
    width: 26px; height: 16px;
    background-position: -0 -816px;
}

.bg-flag-WY {
    width: 26px; height: 16px;
    background-position: -0 -832px;
}