@font-face {
	font-family: 'cern';
	src:url('/fonts/cern-terminal.eot');
	src:url('/fonts/cern-terminal.eot?#iefix') format('embedded-opentype'),
		url('/fonts/cern-terminal.woff') format('woff'),
		url('/fonts/cern-terminal.ttf') format('truetype'),
		url('/fonts/cern-terminal.svg#icomoon') format('svg');
}

* {
	display: inline;
	padding: 0;
	margin: 0;
	font: inherit;
	color: inherit;
	line-height: normal;
}

/*
img, video, audio, svg, canvas, iframe, isindex {
	display: none;
}
*/

html, body, head, title,
h0, h1, h2, h3, h4, h5, h6, p, ul, li, ol, pre, table,
div, section, aside, header, footer, dl {
	display: block;
}

a, b, strong, em, i, span {
	display: inline;
}

html {
	background: black;
	width: 44em; /* .55 * 80 */
	width: 80ch;
	height: 37.5em; /* 25 lines */
	margin: 0 auto;
	padding-bottom: 1.5em;
	overflow: hidden;
	color: hsl(150, 100%, 50%);
	text-shadow: 0 0 10px;
	word-wrap: break-word;
	font-family: cern, monospace;
	line-height: 1.5em;
}

body {
	height: 37.5em; /* 25 lines */
}


html * {
	font: inherit !important;
}

head {
	background: black;
}

h0, title {
	/*padding-bottom: 1em;*/
	/* one line of space after title - using padding, since line
	   must always appear. if h1 next, should show 2 blank lines */
	text-align: right;
}

title + h0 {
	/* yes, h0 was handled by the browser, and it would replace the title! */
	position:absolute;
	top:0;
	background: black;
	width: 44em; /* fallback, temp, change it when we have the actual font */
	width: 80ch;
}

body {
	/*padding-top: 1.5em;*/
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
}

h1 {
	margin: 1.5em 0; /* 1 line of space above and below h1 only */
	text-align: center;
	text-transform: uppercase;  /* only h1, h2 all caps */
}

h2 {
	text-transform: uppercase; /* only h1, h2 all caps */
}

h3 {
	margin: 0 1.1em;
	margin: 0 2ch; /* h3 indents 2 chars */
}

h4 {
	margin: 0 2.2em;
	margin: 0 4ch; /* h4 indents 4 chars */
}

h5 {
	margin: 0 3.3em;
	margin: 0 6ch; /* h5 indents 6 chars */
}

h6 {
	margin: 0 4.4em;
	margin: 0 8ch; /* h6 indents 8 chars */
}

a {
	text-decoration: none;
	color: inherit;
}

p {
	margin-top: 1.5em;
	/* paragraph has one line after... but <P> was used more as a
	   separator than a wrapper... so using margin-top instead    */
}

ol, ul, dl {
	margin: 1.5em 0; /* list style has 1 line of space above and below */
}

/* Definition lists */
dt, dd {
	display: inline-block;
	vertical-align: top;
}

dt:not(:first-of-type),
dd:not(:first-of-type) {
	margin-top: 1.5em;
}

dt {
	width: 20ch;
	margin-left: 7ch;
}

dd {
	width: 27.5em;
	width: 50ch;
}


pre, xmp {
	display: block;
	white-space: pre;
}

address {
	display: block;
	text-align: right;
}

/*should only  work for first character without intervening elements e.g. not <hp1><p>*/
hp1, hp2 {
	text-transform: uppercase;
}


form, input, button, select, textarea {display: none}

#command {
	position: fixed;
	display: block;
	top: 36em; /* 24 lines */
	left: 50%;
	right: 50%;
	margin: 0 -22em;
	margin: 0 -40ch;
	height: 9999px;
	background: black;
	white-space: nowrap;
}

#command input {
	display: inline-block;
	width: 28.05em;
	width: 51ch; /* 80 - 29 */
	background: black;
	border: 0;
}

#blocker {
	position: fixed;
	margin: 0 auto;
	z-index: 9;
	top: 0;
}

#cmd-input {
	min-width: 1px;
	cursor: text;
	overflow: hidden;
	outline: 0;
}

#cmd-input:focus,
#cmd-input:active {
	cursor: none;
}

#cmd-cursor {
	position: absolute;
	left: 19.8em; /* .55 * 36 */
	left: 36ch;
	margin-left: -1px; /* sit over the real cursor in content editable */
	background: hsl(150, 100%, 50%);
	box-shadow: 0 0 5px;
}

/*#cmd-cursor.wait {
  -webkit-animation: blink 2s linear 0s infinite;
  -moz-animation: blink 2s linear 0s infinite;
  -ms-animation: blink 2s linear 0s infinite;
  -o-animation: blink 2s linear 0s infinite;
  animation: blink 2s linear 0s infinite;
}

@-webkit-keyframes blink {
  0%   { background: #0a0 }
  47%  { background: hsl(150, 100%, 50%); }
  50%  { background: #000; box-shadow: none; }
  97%  { background: #000; box-shadow: none; }
  100% { background: hsl(150, 100%, 50%); }
}

@-moz-keyframes blink {
  0%   { background: #0a0 }
  47%  { background: hsl(150, 100%, 50%); }
  50%  { background: #000; box-shadow: none; }
  97%  { background: #000; box-shadow: none; }
  100% { background: hsl(150, 100%, 50%); }
}

@-ms-keyframes blink {
  0%   { background: #0a0 }
  47%  { background: hsl(150, 100%, 50%); }
  50%  { background: #000; box-shadow: none; }
  97%  { background: #000; box-shadow: none; }
  100% { background: hsl(150, 100%, 50%); }
}

@-o-keyframes blink {
  0%   { background: #0a0 }
  47%  { background: hsl(150, 100%, 50%); }
  50%  { background: #000; box-shadow: none; }
  97%  { background: #000; box-shadow: none; }
  100% { background: hsl(150, 100%, 50%); }
}
*/

#command.hide * {
	visibility: hidden;
}
