@charset "utf-8";
html {
	display: table;
	width:  100%;
	height: 100%;
}

body {
	display: table-cell;
	margin:  0;
	padding: 0 10px;

	background: #fff;
	color: #000;

	font-family: 'segoe ui', 'trebuchet ms', 'trebuchet', 'tahoma', 'verdana', sans-serif;
	font-size:   14px;
	font-weight: normal;
	font-style:  normal;

	vertical-align: middle;
}

*::-moz-selection {
	color: #fff;
	background: #039;
}
*::selection {
	color: #eee;
	background: #000;
}

a:link {
	color: #448;
	background: transparent;
	text-decoration: underline;
}
a:visited {
	color: #558;
	background: #eef;
	text-decoration: underline;
}
	a:link::selection, a:visited::selection,
	a:link *::selection, a:visited *::selection { background: #222; }

a:hover, a:active {
	margin:  -1px;
	padding: 1px;

	color: #eee;
	background: #000;
	text-decoration: none;
}
	a img {
		border: none !important; /* never border around image in link. NEVER. */
		vertical-align: text-bottom;
	}
	a:hover::selection, a:active::selection,
	a:hover *::selection, a:active *::selection {
		color: #333;
		background: #ccc;
	}

a[rel="cendict"] {
	color: #171;
	background: transparent;
	text-decoration: none;
}
	a[rel="cendict"]:hover, a[rel="cendict"]:active {
		position: relative;
		z-index: 10;

		background: #090;
		color: #fff;

		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
	}

/* hidden! */
.h { display: none; }

/** node styling **/
.node {
	margin:  0;
	padding: 0;
	position: absolute;

	/* Always default settings */
	font-size:   14px;
	font-weight: normal;
	font-style:  normal;
	text-align:  left; /* Always */
	text-align:  left !important; /* Declare twice because some browsers fail around !important */
}

	.node a {
		display: block;

		margin:  0;
		padding: 0;

		color: #666;
		background: none;
		text-decoration: none;
		white-space: nowrap;
	}
		.node a:hover, .node a:active { color: #000; }

		.node .labelshown {
			display: none;
			margin:  0;
			padding: 0;

			vertical-align: baseline;

			background-image:    url('../img/nodelabel_bg.png');
			background-position: top left;
			background-repeat:   repeat;
		}
			.node a:hover .labelshown,
			.node a:active .labelshown { margin-left: 12px; }

		.node .label {
			display: inline;
			margin:  0 0 0 12px;
			padding: 0;

			vertical-align: baseline;

			background-image:    url('../img/nodelabel_bg.png');
			background-position: top left;
			background-repeat:   repeat;
		}
			.node.small .label { margin-left: 5px; }

			.node.unlabeled .label {
				display: none;
				padding: 0;
			}

		.node .image {
			display: inline-block;
			margin:  0;
			padding: 0;

			vertical-align: top;

			background-image:    url('../img/nodes.png');
			background-position: top left;
			background-repeat:   no-repeat;

			cursor: pointer; /* to keep IE users happy */
		}

		.node.big a {
			font-size: 130%;
			text-transform: uppercase;
		}
			.node.big .image {
				width:  28px;
				height: 28px;
			}
				.node.big a:link .image,
				.node.big a:visited .image { background-position: 0 0; }

				.node.big a:hover .image,
				.node.big a:active .image { background-position: 0 -28px; }

		.node.medium a {
			font-size:    115%;
			font-variant: small-caps;
		}
			.node.medium .image {
				width:  25px;
				height: 25px;
			}
				.node.medium a:link .image,
				.node.medium a:visited .image { background-position: -103px 0; }

				.node.medium a:hover .image,
				.node.medium a:active .image { background-position: -103px -25px; }

				.node.medium .label,
				.node.medium .labelshown { padding-bottom: 2px; }

		.node.small .image {
			width:  20px;
			height: 20px;
		}
			.node.small a:link .image,
			.node.small a:visited .image { background-position: -188px -60px; }

			.node.small a:hover .image,
			.node.small a:active .image { background-position: -268px -60px; }

			.node.small a:hover .labelshown,
			.node.small a:active .labelshown { margin-left: 5px; }

			.node.medium .label,
			.node.medium .labelshown { padding-bottom: 2px; }
/** end node styling **/


#frame {
	margin:  0 auto;
	padding: 0 0 1px;

	min-width: 750px;
	max-width: 1000px;
	/* width: 820px; */

	position: relative;
}

	#nav {
		margin:  0;
		padding: 0;

		position: absolute;
		top:  80px;
		left: 0;
	}

		#nav ul {
			margin:  0;
			padding: 0;

			width:  180px;
			height: 404px;

			list-style-type:  none;
			list-style-image: none;

			background-color:    transparent;
			background-image:    url('../img/nav_bg.png');
			background-position: top left;
			background-repeat:   no-repeat;
		}

			#nav ul li.node a.selected:link .label,
			#nav ul li.node a.selected:visited .label {
				border-top:    1px solid #666;
				border-bottom: 1px solid #666;
			}

			#nav ul li.node a.selected:hover .label,
			#nav ul li.node a.selected:active .label { border-color: #000; }

				#nav ul li.node.medium a.selected .label,
				#nav ul li.node.small a.selected .label { padding-bottom: 2px; }

	#top {
		margin:  0 70px -90px 165px;
		padding: 20px 0 126px 45px;

		/* min-width:  230px; /* 272px - padding-left */
		min-height: 23px;  /* 151px - padding-bottom */

		position: relative;
	}

		#topdecor {
			margin:  0;
			padding: 0;

			width:  272px;
			height: 151px;

			position: absolute;
			bottom: 0;
			left:   0;

			background-image:    url('../img/top_decor.png');
			background-position: bottom left;
			background-repeat:   no-repeat;
		}

			#topdecor .node {
				top:   1px;
				right: 233px;
			}
				#topdecor .node a .image { background-position: -148px -60px; }
				#topdecor .node a:hover .image,
				#topdecor .node a:active .image { background-position: -228px -60px; }

				#topdecor .node a .label {
					margin-left:  0;
					margin-right: 12px;
				}
		
		#versions {
			margin:  0;
			padding: 0;

			position: absolute;
			top:   15px;
			right: -45px;
		}

			#versions .version {
				display: block;
				display: inline-block;
				margin:  0 0 0 2px;
				padding: 2px;

				min-height: 11px;
				max-height: 16px;

				background: #fff;
				text-decoration: none;
				vertical-align: middle;
			}
				#versions .version.selected { background: #ccc; }
				#versions .version:hover,
				#versions .version:active { background: #aaa; }
				#versions .version img { display: block; }
		
		#top h1 {
			margin:  0;
			padding: 0;

			font-size:   22px;
			font-weight: bold;
			font-style:  normal;
		}

	#content {
		margin:  0 80px 0 195px;
		padding: 5px 40px 30px 10px;

		min-height: 410px;

		position: relative;

		background-image:    url('../img/bottom_decor.png');
		background-position: bottom right;
		background-repeat:   no-repeat;
	}

		#xnav {
			/* Extra/extended nav - 'topics' */
			margin:  15px 0 0;
			padding: 0;
		}

			#xntopdecor, #xnsidedecor { display: none; }

			#xnscrollarea {
				margin:  0;
				padding: 0 5px;
				border-top: 2px solid #333;
				text-align: center;
			}
				#xnwrapper {
					display: inline-block;
					margin:  0;
					padding: 0;

					text-align: left;
					vertical-align: top;
				}
					#xncontent {
						margin:  0;
						padding: 0;
					}
						#xnav #xncontent > ul {
							margin:  0;
							padding: 5px 10px;
							border-top: 2px solid #ccc;
						}
							#xnav #xncontent > ul:first-child {
								margin-top: 0;
								border-top: none;
							}
							#xnav #xncontent ul li {
								margin:  0;
								padding: 1px 0;
								background: transparent;
							}
								#xnav #xncontent > ul > li { border-top: 1px solid #eee; }
									#xnav #xncontent > ul > li:first-child { border-top: none; }
								#xnav #xncontent > ul > li:hover { background: #f2f2f2; }
								#xnav #xncontent ul li a {
									display: inline-block;
									margin:  0;
									padding: 1px 5px;

									min-width: 80px;
									vertical-align: top;

									background: transparent;
									text-decoration: none;
								}
									#xnav #xncontent ul li a.selected {
										background: #f2f2f2;
										color: #000;
									}
									#xnav #xncontent ul li a:hover,
									#xnav #xncontent ul li a:active {
										background: #ddd;
										color: #000;
									}
								#xnav #xncontent ul li ul {
									display: inline-block;
									margin:  0;
									padding: 0 0 0 20px;

									vertical-align: top;

									background-image:    url('../img/xnav_noscriptarrow.png');
									background-position: 6px 0.38em;
									background-repeat:   no-repeat;
								}
									#xnav #xncontent ul li ul li {
										margin:  0;
										padding: 0;
									}
										#xnav #xncontent ul li ul li a {
											display: block;
											margin: 0 0 0 auto;
											min-width: 0;
											font-size: 85%;
										}

		#content h2 {
			margin:  14px 0 7px;
			padding: 21px 0 0 33px;

			clear: both;

			min-width:  106px; /* 139px - padding-left */
			min-height: 19px;  /* 42px - padding-top */

			position: relative;

			background-image:    url('../img/h2_decor.png');
			background-position: top left;
			background-repeat:   no-repeat;

			font-size:   18px;
			font-weight: bold;
			font-style:  normal;
		}

			#content h2 .node {
				top:  21px;
				left: 10px;
			}

				#content h2 .node a .image { background-position: -128px -60px; }
				#content h2 .node a:hover .image,
				#content h2 .node a:active .image { background-position: -208px -60px; }
			
			#content h2#topic {
				margin-bottom: 16px;
				margin-left:   20px;
				padding: 0;

				min-width: 0;
				min-height: 0;

				background: transparent;

				font-size: 20px;
				font-style: italic;
			}

		#content h3 {
			margin:  13px 0 3px;
			padding: 0;

			position: relative;

			font-size:   16px;
			font-weight: bold;
			font-style:  italic;
		}

			#content h3[id]:hover:after {
				content: '#' attr(id);

				padding-left: 10px;

				color: #999;

				font-size:   14px;
				font-weight: normal;
				font-style:  normal;
			}

		#content p {
			margin:  3px 0 9px 0;
			padding: 0;
			text-align: justify;
			line-height: 140%;
		}
			#content a.seeother {
				padding-left: 13px;
				background-image:    url('../img/xnav_noscriptarrow.png'); /* I should probably change the filename */
				background-position: 1px 0.35em;
				background-repeat:   no-repeat;
			}
			#content del { color: #666; color: rgba(0, 0, 0, 0.4); }

			#content sup,
			#content sub {
				margin: 0 1px;
				position: relative;
				top: -4px;
				vertical-align: baseline;
				font-size: 85%;
			}
			#content sub { top: 4px; }

			#content em.altu {
				/* alternative <em> with underline */
				font-style: normal;
				text-decoration: underline;
			}
			#content em.altsc {
				/* alternative <em> with small-caps */
				font-variant: small-caps;
			}

		#content ul {
			margin:  3px 0 9px 0;
			padding: 0 0 0 5px;
			line-height: 140%;
			list-style-type: none;
		}

			#content ul li {
				margin:  2px 0;
				padding: 0 0 0 18px;

				text-align: justify;

				background-image:    url('../img/content_li_bg.png');
				background-position: 2px 0.45em;
				background-repeat:   no-repeat;
			}

			#content ul li ul { margin: 1px 0; }

				#content ul li ul li { margin: 1px 0; }
		
		#content ol {
			margin:  3px 0 9px 0;
			padding: 0 0 0 2.4em;
			line-height: 140%;
			list-style-position: outside;
		}

			#content ol li {
				margin:  2px 0;
				padding: 0;

				text-align: justify;
			}
		
		#content dl {
			margin:  3px 0 9px 0;
			padding: 0 0 0 7px;

			line-height: 140%;
			
			text-align: justify;
		}

			#content dl dt {
				margin:  0 8px 0 0;
				padding: 0;
				float: left;
				font-weight: bold;
				font-style:  normal;
			}
			#content dl dd { margin:  0 0 2px 30px; }

		#content table {
			margin:  10px 0 12px 0;
			padding: 0;

			background: none;
			border: none;
			border-collapse: collapse;

			line-height: 100%;
		}

			#content table caption {
				margin:  0 0 4px 0;
				padding: 0;

				color: #252525;

				font-weight: normal;
				font-style:  italic;
			}

			#content table th,
			#content table td { padding: 4px 7px; }

			#content table th {
				font-weight: bold;
				font-style:  normal;
				text-align:  center;

				color: #eee;
				background: #000;
				border: 1px solid #fff;
			}

				#content table.altlayout th {
					padding: 3px 5px;
					font-size: 80%;
				}

				#content table th::selection,
				#content table th *::selection {
					background: #fff;
					color: #333;
				}

				#content table tr:first-child th { border-top-color:    #000; }
				#content table tr th:first-child { border-left-color:   #000; }
				#content table tr th:last-child  { border-right-color:  #000; }
				#content table tr:last-child th  { border-bottom-color: #000; }
			
			#content table td {
				font-weight: normal;
				font-style:  normal;

				color: #000;
				background: #fff;
				border: 1px solid #000;
			}

				#content table.altlayout td {
					padding: 3px 5px;
					text-align: center;
					font-size:  90%;
				}

				#content table td.n_a { background: #ccc;}

		#content .pbox {
			/* picture box */
			margin:  7px 0 9px;
			padding: 0;
		}

			#content .pbox .picture {
				margin:  0;
				padding: 0;
			}

				#content .pbox .picture a {
					display: block;
					margin:  0;
					padding: 5px 7px 3px;

					text-align: center;
					border-bottom: 7px solid #000;

					background: transparent;
				}
					#content .pbox .picture a:hover,
					#content .pbox .picutre a:active { background: #ccc; }
			
			#content .pbox .caption {
				margin:  3px 7px 0;
				padding: 0;
				font-size: 80%;
			}

		#content .fleft {
			margin-top:   -5px;
			margin-right: 10px;
			float: left;
		}

		#content .fright {
			margin-top:  -5px;
			margin-left: 10px;
			float: right;
		}

		#content .nofloat { clear: both; }

		#content .tablelist {
			/* a "list" of tables, which are rendered side by side */
			margin:  0;
			padding: 0;
			overflow: visible;
		}

			#content .tablelist table {
				margin-right: 10px;
				float: left;
			}

			#content .tablelist + * { clear: both; }

		#content .f {
			/* Any text in a foreign language that needs 'highlighting' */
			font-family: 'georgia', 'times new roman', serif;
			font-style:  italic;
		}
			#content .f em { font-style: normal; }
			#content .f em.altu { font-style: italic; text-decoration: underline; }

		/* Segoe UI has sufficient IPA support! */
		#content .phon { font-family: 'segoe ui', 'lucida sans unicode', 'arial unicode ms', 'gentium', sans-serif; }

		#content .note,
		#content .warning {
			margin: 3px 25px;
			font-size: 80%;
			text-align: center;
		}
			#content .note .content,
			#content .warning .content {
				display: inline-block;
				margin:  0;
				padding: 1px 7px;

				background: #ddf;
				border: 1px solid #779;
			}
				#content .note a:link { color: #336; }
				#content .note a:visited {
					color: #336;
					background: #ccf;
				}
				#content .note a:hover,
				#content .note a:active {
					color: #eef;
					background: #114;
				}

			#content .warning .content {
				background: #feb;
				border-color: #975;
			}
				#content .warning a:link { color: #642; }
				#content .warning a:visited {
					color: #642;
					background: #ec9;
				}
				#content .warning a:hover,
				#content .warning a:active {
					color: #ffd;
					background: #430;
				}

		#topicnav {
			/* 'next' and 'previous' links on the bottom of the page */
			margin:  15px 0 10px;
			padding: 0;
			text-align: center;
			clear: both;
		}

			#tnlinkwrapper {
				margin:  0 auto;
				padding: 0;

				position: relative;

				width:  124px;
				height: 30px;

				background-image:    url('../img/topicnav_bg.png');
				background-position: top left;
				background-repeat:   no-repeat;
			}
				#tnnext {
					top:  5px;
					left: 103px;
				}
					#tnnext a .image { background-position: -148px 0; }
					#tnnext a:hover .image,
					#tnnext a:active .image { background-position: -228px 0; }

				#tnprev {
					top:   5px;
					right: 102px;
				}
					#tnprev a .label {
						margin-right: 6px;
						margin-left:  0;
					}
					#tnprev a .image { background-position: -128px 0; }
					#tnprev a:hover .image,
					#tnprev a:active .image { background-position: -208px 0; }
				
				#tnlinkwrapper .separator { display: none; }

		#toplinkwrapper {
			width:  34px;
			height: 21px;
			position: absolute;
			bottom: 0;
			right:  0;
		}

		#toplink {
			top:  0;
			left: 0;
		}
			#toplink a .label { margin-left: 12px; }

			#toplink a .image { background-position: -168px 0; }
			#toplink a:hover .image,
			#toplink a:active .image { background-position: -248px 0; }

	#footnotes {
		color: #444;
		text-align: center;
		font-size: 80%;
	}
		#footnotes hr { display: none; }

		#moddate { margin-bottom: -5px; }

		#footnotes a:link,
		#footnotes a:visited {
			color: #444;
			text-decoration: none;
		}
		#footnotes a:hover,
		#footnotes a:active {
			color: #fff;
			background: #000;
		}

/** feedback styling **/
#feedback {
	margin:  0;
	padding: 0;

	position: fixed;
	bottom: 0;
	right:  0;
	z-index: 55;

	min-width:  23px;
	min-height: 100px;

	font-size: 90%;

	background-image:    url('../img/feedback_text.png');
	background-position: 100% 0;
	background-repeat:   no-repeat;
}
	#togglefeedbacklink {
		display: block;
		margin:  0;
		padding: 0;

		position: absolute;
		bottom: 0;
		right:  0;

		width:  23px;
		height: 23px;

		background-color:    transparent;
		background-image:    url('../img/feedbacklink.png');
		background-position: 0 0;
		background-repeat:   no-repeat;
	}
		#togglefeedbacklink:hover { background-position: 0 -23px; }
	#feedbacklist { display: none; }
/** end feedback styling **/

#mediadeterminer {
	visibility: hidden;
	z-index: 1;
	position: absolute;
	bottom: 0;
	right:  0;
	width:  1px;
	height: 1px;
}