/*
 * general settings
 ***************************************************
 */
 
p {
	text-align: justify;
}

.clear {
	clear: both;
	padding-bottom: 1px;	/* for Gecko-based browsers */
	margin-bottom: -1px;	/* for Gecko-based browsers */
}

.hide {
	display: none !important;
}

.inside {
	/* glitch in IE caused by vertical padding in this class, so 0 padding is
	 * set here and those blocks that need the vertical padding must be 
	 * applied to the parent element. the purpose of this class is to provide
	 * horizontal padding without using hacks to get around IE's broken box 
	 * model. so it's okay to apply vertical padding to the parent element, 
	 * just not horizontal padding.
	 */
	padding: 0 1em;
}

ul, ol, dl, p, h1, h2, h3, h4, h5, h6 {
	margin-top: 14px;
	margin-bottom: 14px;
	padding-top: 0;
	padding-bottom: 0;
}

h1 {
	font-size: 220%;
}

h2 {
	font-size: 190%;
}

h3 {
	font-size: 130%;
}

h4 {
	font-size: 110%;
}

/* alter some HTML elements' default style
 */
a:link, a:active {
	text-decoration: underline;
	color: #2f8dae;
}

a:visited {
	color: #a39a4a;	
}

a:hover {
	text-decoration: none;
}

label {
	cursor: pointer;
}

table {
	font-size: 100%;
	border: 1px solid;
	border-spacing: 0px;
	width: 95%;
	margin-bottom: 1em;
}

td, th {
	vertical-align: top;
	padding: .5em;
	width: auto;
	border: 1px solid;
	border-spacing: 0px;
}

td p {
	margin: 0;
}

th {
	text-align: left;
}

fieldset {
	margin: 0 0 1em 0;
	padding: 1em;
}

option {
	padding-right: 1em;
}

optgroup option {
	text-indent: 1.5em;
}

legend {
	font-size: medium;
	font-weight: bold;
	margin:  0 1em 0 1em;
	padding: 0 .5em 0 .5em;
}

strong {
	font-weight: bold;
}

em {
	font-weight: bold;
	color: #2f8dae;
}

form table, form td, form th {
	border: 0;
	margin: 0;
}

form th {
	width: 10em;
}


/*
 * Basic layout
 *************************************************
 */

body {
	margin: 0;	/* margin instead of padding for the gutterspace around 
	 			   the layout because IE breaks the layout when 
	 			   horizontal padding is applied to the body element.
	 			   % over pixels for that horizontal gutterspace so that
	 			   it automatically goes below 20px on low-res browsers
	 			   to create more space for the content. */
	font-size: 100.1%;	/* resolve some font size issues in some layouts for
				   some browsers. (in other words, i got no clue.) */
}

#pageWrapper {
	border-width: 0;
	min-width: 40em;	/* IE doens't understand this property. EMs are used
				   so that as the font size increases, the proportional
				   limitations (min-width) increase with it, rather
				   than creating a middle column that can only fit
				   3 or 4 characters in it. */
	width: auto;
}

* html #pageWrapper {
	/* \*/
		word-wrap: break-word;
	/* invalid CSS but keeps IE from breaking horribly under narrow viewports */
}

#masthead {
	padding: 0;
}

#masthead h1 {
	padding: 0;
	margin: 0;
}

#masthead h1 a {
	height: 150px;
	display: block;
	text-decoration: none;
	width: 100%;
}

#outerColumnContainer {
	/* reserves space for the left and right columns. you can use either
	 * padding, margins, or borders, depending on your needs. however you
	 * can use the border method to create a background color for both left
	 * and right columns
	 */
	border-left: 138px solid;
	border-right: 14em solid;
}

#innerColumnContainer {
	width: 100%;
	z-index: 1;
}

#leftColumn, #middleColumn, #rightColumn, * html #SOWrap {
	overflow: visible;	/* fix for IE italics bug */
	position: relative;	/* fix some rendering issues */
}

#SOWrap {
	float: left;
	margin: 0 -1px 0 0;
	width: 100%;
	z-index: 3;
}

#middleColumn {
	float: right;
	margin: 0 0 0 -1px;
	width: 100%;
	z-index: 5;
}

#leftColumn {
	float: left;
	margin: 0 1px 0 -138px;
	width: 138px;
	z-index: 4;
}

#leftColumn .inside {
	padding: 1.5em 1.5em 1.5em 0;
}

#rightColumn {
	float: right;
	width: 14em;
	margin: 0 -14em 0 1px;
	z-index: 2;
}

#footer {
	text-align: center;
	padding: 0.5em;
}

p.fontsize-set {
	text-align: center;
}

p.fontsize-set img {
	border-width: 0;
}

/* vertical navigation stuff. mostly exactly as seen in the vnav.css styleheet
 * in the original skidoo layout.
 */
.vnav {
	margin: 160px 0 0 0;
}

.vnav ul, .vnav ul li, .rnav ul, .rnav ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: block;
}

.vnav ul, .rnav ul {
	border-bottom-width: 0;
}

.vnav ul li, .rnav ul li {
	border-bottom: solid 1px;
	padding: 0.5em 0 0 .7em;
	line-height: normal;
}

.vnav ul li, .vnav ul li a, .rnav ul li, .rnav ul li a {
	margin: 0;
	display: block;
	line-height: normal;
}

.vnav ul li a, .rnav ul li a {
	display: block;
	padding: 2px 5px 3px 5px;
}

.vnav ul li a, .vnav ul li a:link, .vnav ul li a:visited, .vnav ul li a:active, .vnav ul li a:hover, .rnav ul li a, .rnav ul li a:link, .rnav ul li a:visited, .rnav ul li a:active, .rnav ul li a:hover {
	text-decoration: none;
	cursor: pointer;
}

.vnav h3 {
	margin-bottom: 0;
	padding-bottom: 0;
	font-size: 126%;
}

* html .vnav ul li a, * html .rnav ul li a/* hide from IE5.0/Win & IE5/Mac */ {
	height: 0.01%;
}

* html .vnav ul, * html .rnav ul {
	position: relative;	/* IE needs this to fix a rendering problem */
}

/*
*	Color and images definition
*/

html, body {
	/* note that both html and body elements are in the selector.
	 * this is because we have margins applied to the body element
	 * and the HTML's background property will show through if
	 * it is ever set. _DO_NOT_ apply a font-size value to the
	 * html or body elements, set it in #pageWrapper.
	 */
	background-color: #eef2c2;
	background-image: url(../images/black_bg.gif);
	background-repeat: repeat-y;
	color: black;
	font-family: verdana, arial, helvetica, sans-serif;
}

#pageWrapper {
	font-size: 75%;	/* set your default font size here. */
}

#masthead {
	background-color: #d2232a;
	background-image: url(../images/common_top_left.jpg);
	background-position: top left;
	background-repeat: no-repeat;
}

#homepage #masthead {
	background-image: url(../images/main_top_left.jpg);
	background-position: top left;
	background-repeat: no-repeat;
}

#masthead h1.cz {
	background-image: url(../images/common_topr_cz.jpg);
	background-position: top right;
	background-repeat: no-repeat;
}

#masthead h1.en {
	background-image: url(../images/common_topr_en.jpg);
	background-position: top right;
	background-repeat: no-repeat;
}

#homepage #masthead h1.cz {
	background-image: url(../images/main_topr_cz.gif);
	background-position: top right;
	background-repeat: no-repeat;
}

#homepage #masthead h1.en {
	background-image: url(../images/main_topr_en.gif);
	background-position: top right;
	background-repeat: no-repeat;
}

#outerColumnContainer {
	border-left-color: black;	/* left column background color */
	border-right-color: #eef2c2;	/* right column background color */
	background-color: #eef2c2;		/* set the background color for the middle column here */
}

.vnav ul li, .rnav ul li {
	border-bottom: 2px solid #d2232a;
}

.vnav ul li a:link, .vnav ul li a:visited, .vnav ul li a:active {
	text-decoration: none;
	color: white;
}

.vnav ul li a:hover, .rnav ul li a:hover {
	text-decoration: none;
	color: #a39a4a;
}

.flag_cz {
	background-image: url(../images/flag_en.gif);
	background-position: right;
	background-repeat: no-repeat;
}

.flag_en {
	background-image: url(../images/flag_cz.gif);
	background-position: right;
	background-repeat: no-repeat;
}

#homepage #leftColumn {
	background-image: url(../images/main_left_bg.gif);
	background-position: top left;
	background-repeat: no-repeat;
}

#homepage #middleColumn .graphics {
	margin: 0 20px 20px 0;
}

#middleColumn .inside {
	padding: 4em 1em 0 4em;
}

#middleColumn .inside h2 {
	padding: 0 0 0 2em;
	border-bottom: 2px solid #d2232a;
	background-image: url(../images/arrow.gif);
	background-position: left top;
	background-repeat: no-repeat;
	color: #d2232a;
}

#middleColumn .inside h3 {
	border-bottom: 2px solid #d2232a;
}

#middleColumn .inside img {
	border: none;
	margin: 15px;
}

#middleColumn .inside ul li {
	list-style-type: disc;
	list-style-image: url(../images/li_small.gif);
	list-style-position: outside;
}

#middleColumn .inside ul li img {
	border: none;
	margin: 1px;
}

#rightColumn .inside {
	/* if you apply a font size to just #rightColumn, then its width,
	 * which is specified in EMs, will also be affected. you don't want
	 * that. so apply font size changes to the .inside element which exists
	 * inside underneath all three columns
	 */
	font-size: 100%;
	padding-right: 0;
}

#rightColumn .inside .vnav {
	font-size: 110%;
}

#rightColumn .inside h3 {
	border-bottom: 2px solid #d2232a;
}

#rightColumn .inside img {
	margin: 0 0 15px 20px;
}

#footer {
	background-image: url(../images/black_bg.gif);
	background-repeat: repeat-y;
	background-color: #eef2c2;
}

#footer p {
	text-align: center;
}

.speaker {
	margin: 5px 0 10px 0;
}

.speaker img {
	float: left;
	margin: 0;
}

.speaker p {
	margin: 0 0 0 160px;
}

.speaker h3 {
	margin: 0 0 10px 160px;
}

.speaker h4 {
	margin: 5px 0 5px 160px;
}

/*
 * Application style
 */

#application table {
	background-color: #ddf1f5;
	padding: .5em;
	width: auto;
	border: 1px solid;
}

#application table.fulltable {
	width: 100%;
	border: 1px solid;
}

#application table thead {
	border: 0;
	border-color: silver;
	background-color: silver;
	font-size: 1em;
}

#application td, #application th {
	padding: .3em;
	text-align: left;
}

#application .label {
	width: 8em;
}

#application .list {
	width: 1.5em;
}

.info1 {
	width: 4em;
}

.info2 {
	width: 10em;
}

.info3 {
	width: 20em;
}

.info4 {
	width: 30em;
}

.info5 {
	width: 15em;
}

#application input[type="text"] {
	border: 1px solid;
	width: 30em;
	padding: 0 .5em;
}

#application input[type="text"]:hover {
	background-color: silver;
}

.even {
	background-color: #bee0e9;
}

#error_msg {
	margin: 1em 0 0 0;
	background-color: red;
	padding: 1em;
	border: solid;
	border-width: 0 10px 0 10px;
}

#error_msg p {
	font-size: medium;
	font-weight: bold;
}

.programme_session {
	background-color: #CCC97C;
	padding: 10px;
	margin-bottom: .5em;
}

.programme_session h3 {
	background-color: #CCC97C;
	font-weight: inherit;
	margin: 0;
	padding-bottom: 3px;
	border-bottom: 1px solid black;
}

.programme_session p {
	margin: .5em 0 0 0;
}

.noborder, .noborder td {
	border: none;
}

.centered {
	text-align: center;
}

.table_full {
	width: 95%;	
}

.table_auto {
	width: auto;
}