body { font-family: "OpenSans","Open Sans", Helvetica, Arial, sans-serif; }

h2 { margin-top: 2em; }

p a, p a:visited { color: #183551!important; }
p a:hover, p a:focus { color: #999999!important; }

#main h1, #main h2 { font-family: "Rambla"; }
#main header { text-align: center; }
#main header img { height: 4em; }
#main header h1 { margin-top: 0; line-height: 1.5em; }
#main .chooser { text-align: center; }
#main .chooser .vs { font-size: 2em; margin: 0 0.5em; font-family: serif; font-style: italic; color: #666666; }
#main .chooser select { margin: 0px; }
.barchart .balloon::after { left: 0.5em; }
.a, .b { width: 50%; display: inline-block; vertical-align: top; }
.a { padding-right: 2em; text-align: left; }
.b { padding-left: 2em; text-align: right; }
#main .graph { height: 300px; }
#main .row { margin-top: 3em; }
#main .row:first-child { margin-top: 0; }
#main .fieldofstudy input {
	line-height: 2em;
	font-size: inherit;
	padding: 0 0.5em;
	width: 100%;
	margin-top: 1em;
}
#main .fieldofstudy {
	width: 600px;
	max-width: 100%;
	position: relative;
	margin: auto;
}
#main .ranking { position: relative; min-height: 50px; }
#main .yearly .link { text-align: center; }
#main .a h2 { text-align: left; }
#main .b h2 { text-align: right; }
#main .graph { position: relative; }
#main .spinner { margin: auto; }
#main tr .papers { color: #bbb; }
#main tr:hover .papers { color: inherit; }
#main tr td:last-child, #main tr th:last-child { text-align: center; }

#searchresults { position: absolute; z-index: 100; left: 0px; width: 100%; text-align: left; }
#searchresults ol { list-style: none; margin: 0px; }
#searchresults ol li { line-height: 2em; border: 1px solid #999; border-top: 0px; }
#searchresults ol li a { padding: 0 0.5em; background: #efefef; display: block; color: inherit; text-decoration: none; }
#searchresults ol li.selected a, #searchresults ol li a:hover, #searchresults ol li a:focus { background-color: #ff6600; }

footer a { color: inherit; }
.center-block {
    top: 50%;
    left: 50%;
    transform: translate3d(-50%,-50%, 0);
    position: absolute;
    text-align: center;
    margin-right: -50%;
}
#main {
	background-color: #ffffff;
	color: #5b5b5b;
}
#main ul.grid {
	margin-bottom: 0em;
}
.centre {
	text-align: center;
}
.barchart table .bar { background-color: #183551; }
.barchart table td:hover .bar, .barchart table td .bar:focus { background-color: #ff6600; }
.barchart table td:hover .antibar { background-color: rgba(255, 102, 0,0.1); }
.barchart table td.negative .bar {
        background-color: #183551;
        background-image: repeating-linear-gradient(45deg, transparent, transparent 35px, rgba(255,255,255,.5) 35px, rgba(255,255,255,.5) 70px);
}
.barchart table td.negative:hover .bar { background-color: #ff6600; }
.barchart table .label {
	text-align: left;
}

.deselected a, .graph table .bar.deselected, .infobubble_inner.deselected { background-color: #cccccc!important; color: black!important; }
.deselected a:hover, .deselected a:focus, .barchart table td:hover .bar.deselected, .barchart table td .bar.deselected:focus { background-color: #dfdfdf!important; color: black!important; }

.fieldofstudycell {
    cursor: pointer;
}

.spinner {
	width: 50px;
	height: 50px;
	text-align: center;
	font-size: 10px;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-50%, 0);
	position: absolute;
	text-align: center;
	margin-right: -50%;
}
.spinner > div {
	height: 100%;
	width: 6px;
	margin-right: 1px;
	display: inline-block;
	-webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
	animation: sk-stretchdelay 1.2s infinite ease-in-out;
	background: #ff6600;
}
.spinner .rect2 {
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s;
}

.spinner .rect3 {
	-webkit-animation-delay: -1.0s;
	animation-delay: -1.0s;
}

.spinner .rect4 {
	-webkit-animation-delay: -0.9s;
	animation-delay: -0.9s;
}

.spinner .rect5 {
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}

@-webkit-keyframes sk-stretchdelay {
	0%, 40%, 100% { -webkit-transform: scaleY(0.4) }  
	20% { -webkit-transform: scaleY(1.0) }
}

@keyframes sk-stretchdelay {
	0%, 40%, 100% { 
		transform: scaleY(0.4);
		-webkit-transform: scaleY(0.4);
	}  20% { 
		transform: scaleY(1.0);
		-webkit-transform: scaleY(1.0);
	}
}

button, select {
	font-size: 1em;
	cursor: pointer;
	color: #5b5b5b;
	margin-right: 0.5em;
	margin-bottom: 0.5em;
	padding: 0.5em 0.5em;
}
button:hover, button:focus, button.selected {
	background-color: #183551!important;
	color: white!important;
}

.barchart {
	height: 300px;
	margin-bottom: 1em!important;
}
ul.grid li > a, ul.grid li > div, .block, .barchart table .bar, .barchart table .antibar {
	transition: height 0.2s ease-in, background-color 0.2s ease-in;
}
.barchart table td:hover .bar, .barchart table td:hover .antibar {
	transition: background-color 0s ease-in;
}

.balloon {
	position: absolute;
	color: #5b5b5b!important;
	background-color: white;
	padding: 0.25em 0.5em;
	left: 50%;
	top: 0;
	transform: translate3d(-50%,-120%, 0);
	white-space: nowrap;
	margin-right: -50%;
	text-align: center;
	z-index: 100;
	box-shadow: 1px 1px 10px rgba(0,0,0,0.2);
}
.balloon::after {
	content: '';
	position: absolute;
	bottom: auto;
	width: 0;
	height: 0;
	border: 0.5em solid transparent;
	transform: translate3d(-50%,0%, 0);
	left: 50%;
	border-top-color: white;
	bottom: -1em;
}

#copyright {
}

#copyright p {
	padding-top: 1em;
	border-top: 1px solid #333333;
}


#citationsHolder {
    text-align: right;
    margin: 1em 0;
}

@media only screen and (max-width: 1178px) {
	.border { padding: 0em; border-left: 0px; border-right: 0px; border-bottom: 0px; }
	h2 {
		padding-top: 0.588235em;
	}
}
@media only screen and (max-width: 950px) {
	ul.grid li .number {
		font-size: 3em;
	}
	/* Re-orientate labels */
	.barchart {
		margin-bottom: 9em !important;
	}
	.barchart table .label {
		border-left: 0px;
		border-top: 1px solid #5b5b5b;
		text-align: right;
		padding: 0.25em 0.25em 0 0;
		transform: rotate(-90deg) translate(-100%,0%);
		transform-origin: 0% 0%;
		white-space: nowrap;
		max-width: 9em;
		overflow: hidden;
		text-overflow: ellipsis;
		display: inline-block;
	}
}
@media only screen and (max-width: 700px) {
	.glory img {
		height: auto;
		width: 30%;
	}
	ul.grid li { width: 50%; }
	ul.grid.tabs li { width:25%; }	
	ul.grid.dashboard li:nth-child(2n) { border-right: 0px; }
	#main ul.grid li { border-right: 1px solid white; }
	ul.grid.dashboard li:nth-child(4n) {
		border-right-width: auto;
	}
	ul.grid.dashboard li:nth-child(4n+1):nth-last-child(-n+4), ul.grid li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
		border-bottom-width: auto;
	}
	ul.grid.dashboard li:nth-child(2n) {
		border-right-width: 0px;
	}
	ul.grid.dashboard li:nth-child(2n+1):nth-last-child(-n+2), ul.grid.dashboard li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		border-bottom-width: 0px!important;
	}

	ul.grid li .number {
		font-size: 3em;
		margin-bottom: 0.25em;
	}
	ul.grid.tabs li .number {
		font-size: 2em;
	}
	ul.grid li > a, ul.grid li > iframe, ul.grid li > div {
	    padding: 1.5em 0.5em;
		min-height: 160px;
    }
	ul.grid.tabs li > a, ul.grid.tabs li > iframe, ul.grid.tabs li > div {
	    min-height: 112px;
    }
	ul.grid.dashboard li > a, ul.grid.dashboard li > iframe, ul.grid.dashboard li > div {
	    min-height: 136px;
	    max-height: 136px;
	    overflow: hidden;
    }
    #left ul.grid li, ul.grid li {
    	float: left;
    }
}

@media only screen and (max-width: 500px) {
	#main .holder, footer .holder {
		padding: 1em 1.5em;
	}
	ul.grid.tabs li {
		font-size: 0.8em;
	}
	ul.grid.tabs li > a, ul.grid.tabs li > iframe, ul.grid.tabs li > div {
	    min-height: 96px;
    }
    #location .switcher {
		padding: 0em;
	}
	#location .switcher button {
		display: inline-block;
	}
	#location {
		height: 560px;
	}
	
}
