.cf:after {
visibility: hidden; 
display: block; 
font-size: 0; 
content: " "; 
clear: both; 
height: 0;
}

* html .cf {
zoom: 1; 
}
*:first-child+html .cf {
zoom: 1;
}

.rt {
width: 100%; 
font-size: 1em; 
line-height: 1.25em; 
border-collapse: collapse; 
border-spacing: 0; 
margin-bottom:2em;
}

.rt thead {
border-bottom: 2px solid #bbb;
}

tr:hover {
background-color: #eee;
}

.rt th,.rt td { 
margin: 0; 
padding: 0.4166em; 
vertical-align: top; 
border: 1px solid #eee; 
}

.rt th { 
text-align: left; 
background: #ddd; 
border: 1px solid #bbb;
font-size:.9em;  
}

th.contrast {
padding-top:40px;
background: #fff !important; 
border: 1px solid #fff;
border-bottom: 1px solid #bbb;
}

th a{cursor:ns-resize;}
th a:visited {color: #C46515;}

.shiftSignedIn {
background: #ffc;
}

.shiftNotSignedIn {
background: #eee;
}

@media only screen and (max-width: 40em) { 
		#rt1 { display: block; position: relative; width: 100%; }
		#rt1 thead { display: block; float: left;}
		#rt1 tbody { display: block; width: auto; position: relative; overflow-x: auto; white-space: nowrap; }
		#rt1 thead tr { display: block; }
		#rt1 th { display: block; }
		#rt1 tbody tr { display: inline-block; vertical-align: top; }
		#rt1 td { display: block; min-height: 1.25em; }
		.rt {font-size: .8em;}
		.rt th { border-bottom: 0; }
		.rt td { border-left: 0; border-right: 0; border-bottom: 0; }
		.rt tbody tr { border-right: 1px solid #eee; }
		.rt th:last-child,
		.rt td:last-child { border-bottom: 1px solid #eee; }
		}
		