@import url(http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,700italic,300,400,700);
@media screen {

/*
//Major elements
*/

	* {
		text-align:center;
		margin:0 auto;
		padding:0;
		box-sizing: border-box;
	}
	html {
		height: 100%;
		color:#666;
		font-size:1em;
		font-family:'Open Sans', sans-serif;
		line-height:1.6em;
	}
	body {
		border:10px solid #DDF;
		border-width: 7px 0 10px;
		min-height: 100%;
		display: flex;
  		flex-direction: column;
	}
	ul {
		list-style-type: none;
	}
	li {
		display:inline; margin-bottom: 0; padding: 0 1em; border-right: 2px solid #AAC;
	}
	li:last-child {
		border:0;
	}
	a {
		color: #444;
	}
	#title {
		text-decoration: underline;
		text-decoration-style: dashed;
		text-align: center;
		width: 80%;
		margin: 0.5em auto;
	}
	main {
		margin: 0 auto;
		padding-bottom: 20px;
		width: 80%;
		flex: 1;
	}
	#about {
		width: 80%;
		text-align:left;
		border-left: 5px solid #66C;
		padding-left: 5px;
		margin: 0.5em auto;
		}
	footer {
		text-align: center;
		font-size: 75%;
		width: 100%;
		margin-bottom: 0.5em;
	}
	.semantic {
		display:none;
	}
	#result h2 {
		font-size: 100%;
	}

/*
//Level colours
*/

	.level0 {
		background: #CFC;
		border: 3px solid #AEA;
	}
	.level1 {
		background: #000; 
		border: 3px solid #333;
	}
	.level2 {
		background: #C28; 
		border: 3px solid #A06;
	}
	.level3 {
		background: #FE8; 
		border: 3px solid #CB5;
	}
	.nouser, .leveln {
		background: #BEF;
		border: 3px solid #9CD;
		}
	.baduser {
		background: #743;
		border: 3px solid #410;
		}
	.level1, .level2, .level1 a, .level2 a, .baduser, .baduser a, #error, #error a, #fallback, #fallback a {
		color: white;
	}

/*
// Form elements
*/

	form {
		margin-top: 0.5em;
		border-top: 1px solid #444;
		padding-bottom: 0.6em;
		}
	fieldset {
		border: 0;
	}
	label {
		font-style: italic;
		font-size: 90%;
		display: block;
	}
	input {
		font-size:1.75em;
		border: 3px solid #66C; 
		color: #008;
	}
	input[type="submit"] {
		background: #DDF;
	}
	#result {
		width: 95%;
		padding: 0 0.5em;
		display: block;
	}
	#result::first-line {
		font-size:120%;
		}
	#error {
		background: #C22;
		border: 3px solid #A00; 
		font-weight: bold;
	}
	#fallback {
		background: #C82;
		border: 3px solid #A60;
	}
	.wait {
		background: #28F;
		color: white;
		border: 3px solid #06D;
		font-weight: bold;
	}
	.twiterror {
		background: #FCC;
		border: 1px solid #C99;
		color: black; 
		padding: 0 1em;
		font-weight: bold;
	}
	#links {
		font-size: 90%; 
	}
}
@media (orientation:portrait) {
	section, fieldset, label {
		font-size: 180%;
		line-height: 1.8em;
	}
	h1 {
		font-size: 64px;
		line-height: 72px;
	}
	input {
		font-size: 50px;
	}
	#about, main, input, #result {
		width: 100%;
	}
	main {
		padding-bottom: 3em;
		font-size: 100%;
	}
	footer {
		height: 3em;
		font-size: 100%;
	}
}