/*
Light purple: rgba(102,0,153,0.06)
Purple Uni logo: #660099 / rgb(102,0,153)
Deep purple: rgb(73,0,110)
Grey in logo: #999999 (~black with opacity 35%)
Light brown: rgba(111,78,55,0.1)
*/


.statstable td
{
    border: 1px solid #A0A0A0;
    padding: 3px 5px;
}
.statstable th
{
    font-weight:bold;
    border: 1px solid #A0A0A0;
    padding: 3px 5px;
}

.captchabox
{
    margin:1em;
    padding:0em 1em;
	border: 1px solid #D0D0D0;
    border-radius:5px;
    background-color: #FCFCFC;
}

.captchabox p
{
    color: #404040;
}
#dropContainer:hover
{
    background-color: #F8F8F8;
}



.thumbnail {
  position: relative;
  z-index: 0;
}

.thumbnail:hover {
  background-color: transparent;
  z-index: 50;
}

.thumbnail span {
  /*CSS for enlarged image*/
  position: absolute;
  left: -1000px;
  visibility: hidden;
  text-decoration: none;
  border: 1px solid black;
  background-color:white;
}

.thumbnail span img {
  /*CSS for enlarged image*/
  border-width: 0;
  padding: 0px;
}

.thumbnail:hover span {
  /*CSS for enlarged image on hover*/
  visibility: visible;
  top: 0;
  left: 60px; /*position where enlarged image should offset horizontally */
}







body {
    margin:0px 0px; 
    padding:0px;
    background-color:#F7F7F7;
    font-family:'Open Sans',serif; /* Open Sans loaded through Google Fonts */
	font-size:16px;
	color:rgba(0,0,0,0.9);
}

.bodyFont {
    font-family:'Open Sans',serif; /* Open Sans loaded through Google Fonts */
	font-size:16px !important;
	color:rgba(0,0,0,0.9) !important;
}

.bodyFontSize {
	font-size:16px;
}

.smallerFont {
    font-size:14px;
}

h1 {
/*    color:rgb(117,2,2); */
    font-weight:normal;
    font-size:23px;
    margin-top:-4px;
    padding-top:0px;
/*    text-shadow:1px 1px 1px rgb(150, 150, 150);*/
}

.answerbox
{
	margin-top: 2em;
	margin-bottom: 1em;
}

.checktable > tbody > tr > td {border: 1px solid black; width:25px; height: 25px; text-align:center;}
.checktable > tbody > tr > th {border: 1px solid black; width:25px; height: 25px; text-align:center;}


.checktable > tbody > tr:nth-child(even) td:nth-child(odd),
.checktable > tbody > tr:nth-child(odd) td:nth-child(even),
.checktable > tbody > tr:nth-child(odd) th:nth-child(even)
							  {
								  background-color: #ccc;
							  }

.shadow {
    text-shadow:2px 2px 2px rgb(150, 150, 150);
}

.shadowSmall {
    text-shadow:1px 1px 1px rgb(150, 150, 150);
}

h2 {
    font-weight:normal;
    font-size:inherit;
    border-bottom:1px dotted rgb(73,0,110);
    margin-top:35px;
}

h4 {
    opacity:0.9;
}

blockquote {
	background:white;
	padding:5px;
	font-family:"Courier New", Courier, monospace;
	font-size:16px;
    border: 1px dotted rgba(150, 150, 150, 0.82);
    border-radius: 2px 2px 2px 2px;
}

table {
    border-collapse:collapse;
}

img {
    border:0px;
}

fieldset {
	border:1px dotted #ABABAB; /* fallback */
	border:1px dotted rgba(150,150,150,0.82);
	border-radius: 2px;
}

fieldset > legend {
	font-weight:bold;
}

select {
    font-family:inherit;
	font-size:inherit;
	color:#1C1C1C; /* fallback */
	color:rgba(0,0,0,0.78);
}

ol>li {
    padding:10px;
}

div.relativ {
    position:relative;
}


.regTable th {
	height:20px;
	color:#424242;
	font-weight:bold;
	background-color:#D4D4D4;
	border: 1px solid #D4D4D4;
	text-align:center;
	padding-top:3px;
	padding-bottom:3px;
	padding-left:7px;
	padding-right:7px;
}

.regTable td {
	border: 1px solid #D4D4D4;
	color:#424242;
	text-align:center;
	padding:2px 5px 2px 5px;
}

.regTable.plain td, .regTable.plain th {
    background:inherit;
    font-weight:normal;
    color:inherit;
}

.tableLeftAlign td {
    text-align:left !important;
}

.regTable2 td {
	vertical-align:top;
}

form > table, .formTable {
    border-collapse:separate;
    border-spacing:10px 5px;
    width:100%;
}

input[type=text], input[type=file],input[type=password], input[type=checkbox], input[type=datetime-local],textarea, div[data-is-result-div="1"] {
	font-family:inherit;
	font-size:inherit;
	background-color:rgb(250,250,250);
	border:1px solid #454545; /* fallback */
	border:1px solid rgba(50,50,50,0.8);
	border-radius: 5px;
}

input[type=submit], button {
	font-family:inherit;
	font-size:inherit;
	cursor:pointer;
}

div[data-is-result-div="1"] {
    background-color:rgb(235,235,235);
}

a:link, a:visited {
    color:rgb(73,0,110);
    text-decoration:none;
}

a:hover, a:active {
    color:rgba(73,0,110,0.8); 
    text-decoration:none;
}

.a_tooltip:hover {
    cursor:help;
}

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

a.tooltip {
    outline:none; 
    font-variant:normal; 
    font-size:14px;
    font-weight:normal;
} 
a.tooltip strong {
    line-height:10px;
} 
a.tooltip:hover {
    text-decoration:none;
    cursor:help;
} 
a.tooltip span { 
    z-index:10;
    display:none; 
    padding:10px 10px; 
    /* margin-top:60px; */ 
    margin-top:40px;
    /* margin-left:-160px; */
    margin-left:-275px; 
    width:500px; 
    line-height:20px; 
    border-radius:2px; 
    box-shadow: 0px 0px 8px 4px #666; 
    opacity: 0.9;
} 
a.tooltip:hover span { 
    display:inline; 
    position:absolute; 
    border:2px solid #FFF; 
    color:#EEE; 
    background:#000; 
} 
.callout {
    z-index:20;
    position:absolute;
    border:0;
    top:-14px;
    left:250px;
} 

.link {
    cursor:pointer;
}

.purple, .lastCharacter {
    color:rgb(73,0,110);
}

ul.noMarkup {
    list-style-type:none;
    padding:0; 
    margin:0;
}

ul.noMarkup > li {
    /* seems necessary for IE<=9 */
    list-style-type:none;
    padding:0; 
    margin:0;
}

/*============================================== */
/* Taking care of small capitals behaving insanely on Safari: */
/*============================================== */
.small-caps {
    text-transform:uppercase;
    font-size:80%;
}
.small-caps::first-letter {
    font-size:125%;
}
.small-caps .capital {
    font-size:125%;
}



/*============================================== */
/* Divs showing messages as response to Ajax actions: */
/*============================================== */

.inlineMessageDiv {
    display:inline-block;
    width:80%; /* fallback */
    margin-bottom:10px;
    margin-top:10px;
	border-radius: 2px;
	padding:10px 20px 10px 20px;   
	font-size:14px;
}

.inlineMessageDiv.error {
	color:red;
	border:1px solid red;
}

.inlineMessageDiv.info {
	color:blue;
	border:1px solid blue;
}

.inlineMessageDiv.confirm {
	color:green;
	border:1px solid green;
}

.hidden {
    display:none;
}

tr.errorRow {
    background-color:rgba(255,0,0,0.5);
}

/*============================================== */
/* autocomplete menu as used on registration page: */
/*============================================== */

.autocompleteMenu {
    display:inline-block;
}

.autocompleteMenu > li {
    position:relative;
}

.autocompleteMenu ul:first-of-type {
    position:absolute; 
    left:0; 
    display:none;
    background:white;
    opacity:0.9;
    width:100%;
    z-index:100;
    border:1px solid rgba(50, 50, 50, 0.8);
    font-size:15px;
}

.autocompleteMenu ul:first-of-type li:not(.autocomplete_comment) {
    margin-left:5px;
}

.autocompleteMenu ul:first-of-type li.autocomplete_comment {
    font-size:11px;
    font-style:italic;
    text-align:center;
    padding-top:10px;
    padding-bottom:10px;
}

/*============================================== */
/* Outermost container: */
/*============================================== */

div#outerContainer {
	max-width:1000px;
	margin:0px auto;
	border-left:#f0f0f0 solid 1px;
	border-right:#f0f0f0 solid 1px;
	border-bottom:#f0f0f0 solid 1px;
	background-color:#ffffff;
	padding-left:20px; padding-right:20px;
}

/*============================================== */
/* personal menu: */
/*============================================== */

div#personalMenuContainer {
    position:absolute;
    top:0px;
    right:0px;
    font-size:14px;
    text-align:right;
    margin:0px;
}

div#personalMenuContainer > div:nth-child(1) { /* First child, contains menu */
	border:1px solid #f0f0f0;
	border-radius:1px;
	background-color: #fdfdfd;
	padding:2px 5px 2px 5px;
	margin-top: 3px;
	display:inline-block;
	position:relative;
	right:0px;
}

div#personalMenuContainer > div:nth-child(2) { /* Second child, pointer of message window */
    position:absolute;
    z-index:10;
    border-left:1px solid rgba(150, 150, 150, 0.82);
    border-top:1px solid rgba(150, 150, 150, 0.82);
    width:14px;
    height:14px;
    transform:rotate(45deg);
    right:7px;
    background:white;
    top:26px;
}

div#personalMenuContainer > div:nth-child(3) { /* Third child, message window */
    position:absolute;
    padding:10px 5px 10px 5px;
    border:1px solid rgba(150, 150, 150, 0.82);
    border-radius:2px;
    right:0px;
    top:32px;
    z-index:5;
    top:33px;
    font-size:13px;
    background:white;
    white-space:nowrap;
}



/*============================================== */
/* Header: */
/*============================================== */

div#headerContainer {
    position:relative;
	width:100%;
//	height:210px;
//	background:url("icons/logo_flattened_bomb_in_middle.png") white scroll 50% 0 no-repeat;
//	background:url("icons/logo_flattened_bomb_in_middle.png") no-repeat;
//	background-size: contain;
}

div#headerLogoUni {
    position:absolute;
    top:0px;
    left:0px;
    width:119px;
    height:50px;
    background:url("icons/LogoUni_small.png");
}
div#headerLogoSkyScanner {
    position:absolute;
    top:5px;
    left:140px;
    width:119px;
    height:50px;
}

div#headerText {
    position:relative;
    top:00px;
    left:0px;
	font-size:12px;
	color:black;
	opacity:0.65;
}
div#headerText2 {
    position:absolute;
    top:220px;
    left:30px;
	font-weight:bold;
	font-size:17px;
	color:black;
	opacity:0.8;
}

div#headerTextDame {
    position:absolute;
    top:40px;
    left:125px;
	font-size:14px;
	color:black;
	opacity:0.65;
}


/*============================================== */
/* message at top, immediately below header: */
/*============================================== */

div.messageAtTop {
    width:978px; 
    margin-top:2px; 
    padding-left:10px; 
    padding-right:10px; 
    padding-top:5px; 
    padding-bottom:5px; 
    background-color:rgb(203,242,203); 
    font-size:14px; 
    border:1px solid rgba(150,150,150,0.82); 
    border-radius:5px;
}


/*============================================== */
/* top menu: */
/*============================================== */

.topmenustyle
{
}


div#topMenuContainer {
	max-width:1000px;
	font-size:20px;
	line-height:11.5px;

    border-top:1px dotted rgba(73,0,110,0.5); 
    border-bottom:1px dotted rgba(73,0,110,0.5);

/*	background-color: #fdfdfd;
	border: 1px solid #f0f0f0; */

	margin-top:5px;
	margin-bottom:20px; 
	text-align:center;
}

div#topMenuContainer a {
    margin-left:1px;
    margin-right:1px;
}

div#topMenuContainer .spaceRight {
    margin-right:30px;
    padding-top:10px;
    padding-bottom:12px;
   display:inline-block;
 }

div#topMenuContainer .spaceFinal {
    margin-right:30px;
    padding-top:10px;
    padding-bottom:12px;
   display:inline-block;
 }
div#topMenuContainer div {
    display:inline-block;
    text-align:left;
    margin-top:-3px;
}

div#topMenuContainer span {
    font-size:12px; 
    font-variant:normal;
}



/*============================================== */
/* Middle part: */
/*============================================== */

div#middleContainer { /* outer container of bit below top menu and above footer */
	max-width:1000px;
	margin-top:10px;
}

div#middleLeftContainer { /* child of middleContainer, container for chapters */
    width:162px;
    float:left;

}

div#contentContainer { /* child of middleContainer, container for main text */
    float:left;
    max-width:800px;
	margin-left:20px;
}

/* Chapters & ATCD: */

div#problemContainer, div#ATCDContainer {
    width:150px;
    float:left;
	border: 1px solid #f0f0f0;
	background-color:#fdfdfd;
	border-radius:1px;
    font-size:12px;
    padding-left:5px;
    padding-right:5px;
}

div#problemContainer #chMenuClock {
    text-align:center;
}

div#problemContainer > div:nth-child(1) { /* First immediate child: header */
    width:100%; 
    font-size:22px;
    text-align:center;
    margin-top:6px; 
    margin-bottom:15px;
}

.problemContainerSubheading { /* First immediate child: header */
    width:100%; 
    font-size:14px;
    text-align:center;
    margin-top:5px; 
}
div.problemSetContainer {
/*    height:160px;*/
margin-bottom:20px;
/*    color:rgb(73,0,110);*/
 float:left;
}

div.problemLinkContainer > :nth-child(1) { /* First immediate child: link or div */
    width:73%; 
    display:inline-block;
    font-size:16px;
font-weight:bold;
margin-top:2px;
/*    font-variant:small-caps; */
}

div.problemLinkContainer > div:nth-child(2) { /* Second immediate child: status container */
    display:inline-block;
    width:25%; 
    text-align:right; 
    cursor:default;
    font-size:20px;
}

div.problemLinkContainer > div:nth-child(2) div { /* Div inside second immediate child: contains the symbol representing the status */
    display:inline-block; 
    width:17px; 
    text-align:center;
}

div.problemSetContainer .firstbelow { /* First line below the link and status */
    margin-top:5px;
}

div.problemSetContainer .shiftup { /* Second problem link */
    margin-top:-5px;
}

div#ATCDContainer {
    margin-top:25px;
    padding-top:5px;
    padding-bottom:5px;
}

div#ATCDContainer p:nth-child(1) {
    font-size:17px;
    margin-top:2px;
    text-align:center;
}

/*============================================== */
/* Footer: */
/*============================================== */

div#bottomContainer {
    clear:both;
    padding-top:40px;
	margin-bottom:20px;
}


div#bottomNote {
	font-size:13px;
    max-width:968px;
    padding:12px 0px 12px 15px; 
	border:1px solid #f0f0f0f0;
	background-color: #fdfdfd;
    opacity:0.8;
	border-radius: 2px;
    text-align:left;
}

/*============================================== */
/* Message divs: */
/*============================================== */

div.msgDiv {
	font-size:14px;
    width:500px;
    margin-left:50px; 
    margin-top:25px;
    margin-bottom:25px;
	border-radius: 2px;
	padding:20px 20px 20px 100px;
}

div.errorDiv {
    border:1px solid red;
    background:url("icons/Button-Close-icon.png") no-repeat scroll 34px 50% #FFDEDE; /* fallback */
    background:url("icons/Button-Close-icon.png") no-repeat scroll 34px 50% rgba(255, 0, 0, 0.1);
    color:red;
}

div.confirmDiv {
    border:1px solid green;
    background:url("icons/Button-Check-icon.png") no-repeat scroll 34px 50% #DEFFDE; /* fallback */
    background:url("icons/Button-Check-icon.png") no-repeat scroll 34px 50% rgba(0, 255, 0, 0.1);
    color:green;
}

div.infoDiv {
    border:1px solid blue;
    background:url("icons/Button-Info-icon.png") no-repeat scroll 34px 50% #DEDEFF; /* fallback */
    background:url("icons/Button-Info-icon.png") no-repeat scroll 34px 50% rgba(0, 0, 255, 0.1);
    color:blue;
}

div.pageNote {
    border:1px solid #9C773D;
    color:#9C773D;
    background-color:#FFF0D9;
	font-size:14px;
	border-radius:2px;
	padding:10px;
}

div.pageNote.hasCloseButton {
    padding-right:20px;
    position:relative;
}

/*============================================== */
/* Home page: */
/*============================================== */

div.stress {
    display:inline-block;
    font-size:19px;
    margin-left:15px;
    margin-top:15px;
    margin-bottom:15px;
    opacity:0.9;
}

/*============================================== */
/* Problem page: */
/*============================================== */

fieldset.answerBlock input[type=submit] {
    margin-top:5px !important; 
}

fieldset.answerBlockNotes {
    margin-top:15px;
    border:none;
}

fieldset.answerBlockNotes > legend {
    font-weight:normal;
    font-style:italic;
}

fieldset.answerBlockNotes > ul {
    margin:0px;
}

fieldset.answerHistory {
    margin-top:15px;
    border:none;
}

fieldset.answerHistory > legend {
    font-weight:normal;
    font-style:italic;
}

.regTable.answerHistory th, .regTable.answerHistory td {
    /* override .regTable settings */
    background:inherit;
    font-weight:normal;
    color:inherit;
}


/*============================================== */
/* Profile page: */
/*============================================== */

fieldset.profile_notes {
    margin-top:25px;
    border:none;
    font-style:italic;
}

fieldset.profile_notes > legend {
    font-weight:normal;
    font-style:italic;
}

fieldset.profile_notes > ul {
    margin:0px;
}

.regTable.profile th, .regTable.profile td {
    /* override .regTable settings */
    background:inherit;
    font-weight:normal;
    color:inherit;
}



/*============================================== */
/* Notepad: */
/*============================================== */

#notepad_tdContainer {
	border:1px dotted #ABABAB; /* fallback */
    border:1px dotted rgba(150,150,150,0.82);
    border-top:0px;
	border-radius:2px;
}

.notepad_sidespacer {
    width:10px;
    border-bottom:1px dotted #ABABAB; /* fallback */
    border-bottom:1px dotted rgba(150,150,150,0.82);
}

.notepad_middlespacer {
    width:5px;
    border-bottom:1px dotted #ABABAB; /* fallback */
    border-bottom:1px dotted rgba(150,150,150,0.82);
}

.notepad_tabHead {
	border:1px dotted #ABABAB; /* fallback */
    border:1px dotted rgba(150,150,150,0.82);
	border-radius:2px;
	text-align:center;
	width:105px;
}

.notepad_tabHeaderSelected {
	border:1px dotted #ABABAB; /* fallback */
    border:1px dotted rgba(150,150,150,0.82);
    border-bottom:0px;
	border-radius:2px;
	text-align:center;
	font-weight:bold;
	width:105px;
}

#notepad_tableMsg {
    table-layout:fixed; 
    width:775px;
    margin-top:10px;
}

.notepad_name {
    text-align:right;
    font-weight:bold;
    vertical-align:top;
    width:175px;
    font-size:14px;
}

.notepad_msg {
    padding-left:20px;
    vertical-align:top;
    width:600px;
    word-wrap: break-word;
    display:block;
    font-size:14px;
}

.notepad_date {
    text-align:right;
    font-size:12px;
    color:rgb(150,150,150);
    vertical-align:top;
    font-size:10px;
}

/*============================================== */
/* Leaderboard: */
/*============================================== */

.leaderboardTable td { /* any td child */
    width:20px;
    color:inherit; /* overriding .regTable setting */
    opacity:0.85;
}

.leaderboardTable th { /* Any header cell */
    font-size:13px;
}

.leaderboardTable tr:nth-child(1) > td:nth-child(1) { /* First row, first cell */
    border:none;
}

.leaderboardTable tr:nth-child(1) > td:nth-child(2) { /* First row, second cell */
    font-size:13px;
}

.leaderboardTable tr > td:nth-child(1) { /* First column, containing the rank */
    text-align:right;
    width:88px;
}

.leaderboardTable .lb_left { /* First div in above column, only present when delta rank is shown, contains then rank */
    text-align:right;
    width:40px;
    float:left;
    padding-right:3px;
}

.leaderboardTable .lb_right { /* Second div in above column, only present when delta rank is shown, contains then delta */
    text-align:left;
    width:40px;
    float:right;
    opacity:0.7;
    padding-left:3px;
}

.leaderboardTable tr > td:nth-child(2) { /* Second column, containing the team name etc. */
    width:248px;
    overflow:hidden;
}

.leaderboardTable tr > td:nth-child(2) > div:nth-child(1) { /* First div in second colum cell, contains avatar. */
    width:60px;
    float:left;
    padding-top:1px;
    padding-bottom:1px;
}

.leaderboardTable tr > td:nth-child(2) > div:nth-child(2) { /* Second div in second colum cell, contains team & school name. */
    width:185px;
    float:right;
    font-size:12px;
    text-align:left;
}

.leaderboardTable tr > td:nth-child(2) > div:nth-child(2) span:nth-child(1) { /* First span in Second div in second colum cell, contains team name. */
    font-size:14px;
    font-weight:bold;
}

.leaderboardTable tr > td:nth-child(3), .leaderboardTable tr > td:nth-child(4) { /* Third and fourth column, containing the nr of problems solved and nr of points */
    text-align:right;
    width:65px;
    padding-right:10px;
}

.leaderboardTable tr > td:nth-child(5) { /* Fifth column, the spacer */
    border:none;
    width:5px;
}


/*============================================== */
/* News: */
/*============================================== */

article.news {
    margin-bottom:50px;
}

article.news > div:nth-child(1) { /* First div: title */
    font-size:18px;
    font-weight:bold;
}

article.news > div:nth-child(1) > div:nth-child(1) { /* div in title, when present is to indicate news item is unread  */
    font-size:12px;
    font-weight:normal;
    color:red;
    display:inline-block;
    margin-right:10px;
}

article.news > div:nth-child(2) { /* Second div: poster */
    font-size:13px;
    opacity:0.7;
    margin-top:5px;
    margin-bottom:20px;
}


/*============================================== */
/* Forum: */
/*============================================== */

.forumCategoryContainer { /* graphical representation of a forum category */
    border:1px solid rgba(150,150,150,0.82);
	border-radius:3px;
	text-align:center;
	vertical-align:middle;
    font-size:14px;
    width:40px;
    position:relative;
    cursor:default;
    display:inline-block;
    font-weight:normal;
}

.forumCategoryContainer > img { /* image showing in the top right corner for sticky or closed topics */
    position:absolute;
    top:-3px;
    right:-5px;
}

.forumMenuBox { /* div at the top of the page containing the forum menu */
    border:1px dotted rgba(150,150,150,0.82);
    width:100%;
    border-radius:2px;
    padding-top:10px;
    padding-bottom:10px;
    text-align:center;
    margin-bottom:20px;
}

.forumSmileyBox, .forumTagBox { /* table containing the smileys to be inserted */
    text-align:center;
    border-collapse:separate;
    border-spacing:10px;
    font-size:14px;
}

.forumTagBox {
    border-spacing:30px 0px;
}

.forumReplyInput, .forumTitleInput { /* textarea in which topic replies are typed, input in which topic titles are typed */
    font-size:14px !important; /* important to overrule [input] styling */    
}

.regTable.forumGrid { /* table grid for displaying the categories and topic lists */
    width:100%;
}

.regTable.forumGrid th { 
    font-size:13px;
}

.regTable.forumGrid td { 
    overflow:hidden;
}

.regTable.forumGrid .forumGridDescription {
    font-size:12px; 
    color:rgb(100,100,100);
}

.forumGrid td.categoryCell {
    width:50px;
}

.forumGrid td.titleCell {
    text-align:left;
}

.forumGrid td.authorCell {
    width:100px;
}

.forumGrid td.authorCell > div:nth-child(1) { /* div containing username */
    font-size:13px;
}

.forumGrid td.authorCell > div:nth-child(2) { /* div containing date */
    font-size:11px; 
    color:rgb(100,100,100);
}

.forumGrid td.countCell {
    width:75px;
}

.forumPageNavigationBox {
    text-align: right;
    color: rgb(100, 100, 100);
    font-size: 13px;
}

.forumPageNavigationBox div {
    display:inline-block;
}

.forumPageNavigationBox .pageCounter {
    padding-top:5px;
    padding-bottom:5px;
}

.forumPageNavigationBox .goBack {
    margin-right:15px;
    font-size:17px;
}

.forumPageNavigationBox .goForward {
    margin-left:15px;
    font-size:17px;
}

.forumTopicTitle {
    font-size:17px;
    font-weight:bold;
    margin-top:10px;
    margin-bottom:10px;
}

.forumTopicTitle > div:nth-child(2) { /* div containing `greater than' symbol */
    display:inline-block;
    margin-left:20px;
    margin-right:20px;
}

.forumAdminActionBox {
    width:100%;
    font-size:13px;
    border-radius:2px;
    background-color:rgba(255,0,0,0.1);
    color:#750202;
    border:1px solid rgba(255,0,0,0.1);
}

.forumAdminActionBox > div:nth-child(1) {
    display:inline-block;
    margin-right:10px;
    vertical-align:top;
}

.forumAdminActionBox > div:nth-child(2) {
    display:inline-block;
    vertical-align:top;
}

.forumAdminActionBox  a {
    display:inline-block;
    color:inherit;
    margin-left:15px; 
    margin-right:15px;
}

.forumAdminActionBox div.inactiveLink {
    display:inline-block;
    color:rgba(0,0,0,0.9);
    margin-left:15px; 
    margin-right:15px;
}

.forumReplyContainer {
    border:1px solid #C3C3C3;
    border-radius:5px;
    padding:5px;
    margin-top:2px;
    margin-bottom:2px;
}

.forumReplyContainer .forumReplyTopLeft {
    width:80%;
    height:30px;
    vertical-align:top;
    font-size:14px;
}

.forumReplyContainer .forumReplyTopRight {
    width:20%;
    height:30px;
    text-align:right;
    vertical-align:top;
    font-size:11px; 
    color:rgb(100,100,100);
}

.forumReplyContainer .forumReplyBottomLeft {
    font-size:11px; 
    color:rgb(100,100,100);
    width:60px;
    vertical-align:top;
}

.forumReplyContentsContainer {
    font-size:14px;
    margin-left:10px;
    padding-left:2px;
    padding-right:2px;
    min-height:120px;
    border:1px solid rgb(230,230,230);
    overflow:hidden;
}

.forumQuote {
    margin:10px 5px 5px 25px;
    font-size:13px;
    background-color:#D6D6D6;
    word-wrap:break-word;
    padding:5px;
    opacity:0.8;
    border:1px solid #ADADAD;
    border-radius:2px;
}

.forumReplyContentsWasEditedMessage {
    text-align:center;
    margin-top:20px;
    font-size:13px;
    opacity:0.6;
}

/*============================================== */
/* ATCD page: */
/*============================================== */

ul#ATCD {
    list-style: none;
}

ul#ATCD li:before {
    content: "\2192 \0020";
}

/*============================================== */
/* Maps page: */
/*============================================== */

.googleMapInfoContainer {
    font-family:'Open Sans',serif; /* Open Sans loaded through Google Fonts */
	font-size:12px;
	color:rgba(0,0,0,0.78);
}

.googleMapsAvatarTd {
    width:60px;
}

.googleMapsAvatarImg {
    margin-right:10px;
    border:1px solid #ABABAB; /*fallback */
	border:1px solid rgba(150,150,150,0.82);
}

.googleMapsInfoBelow {
    font-size:13px;
    padding-left:10px;
}

/*============================================== */
/* Registration page: */
/*============================================== */

ol.rulesList > li {
    margin-bottom:10px;
    padding-left:7px;
}

table.rules {
    margin-top:10px;
}

table.rules > tbody > tr td:nth-child(2) { /* Second column */
    text-align:left;
}

/*============================================== */
/* Popup windows: */
/*============================================== */

.popUp {
    background-color:white;
    display:none; 
    border-radius:5px; 
    border:1px solid rgb(73,0,110);
    width:400px;
    padding-top:80px; 
    padding-bottom:60px; 
    padding-left:50px; 
    padding-right:50px; 
}

.popUp > .bClose {
    background:url("icons/popup-background.jpg") top right no-repeat white;
    cursor:pointer;
    position:absolute;
    right:5px;
    top:5px;
    width:35px;
    height:35px;
}

.popUpOkCancel {
    background-color:white;
    display:none; 
    border-radius:5px; 
    border:1px solid rgb(73,0,110);
    width:500px;
    padding-top:40px; 
    padding-bottom:40px; 
    padding-left:50px; 
    padding-right:50px; 
}


/*============================================== */
/* Notebook element: */
/*============================================== */

.notebook {

}

.notebook > table { /* table containing tab headers */
    border-collapse:collapse;
    width:100%;
    font-size:14px;
}

.notebook > table td { /* tab header cells and spacers */
    border:1px solid rgba(150, 150, 150, 0.82);
}

.notebook > table td.notebookSpacer { /* tab header spacers */
    border-top:none;
    border-left:none;
    border-right:none;
}

.notebook > table td.notebookTab { /* tab headers */
    text-align:center;
    padding-top:5px;
    padding-bottom:5px;
    cursor:pointer;
    opacity:0.7;
}

.notebook > table td.notebookTabSelected { /* tab header that is selected */
    border-bottom:none;
    opacity:1;
}

.notebook div.notebookTabContent { /* a div holding the content of one of the tabs */
    display:none;
    margin-top:10px;
}


/*============================================== */
/* Admin panel page: */
/*============================================== */

.regTable.adminPanelTable th {
    font-weight:normal;
}



/* All the responsive stuff*/

/* When really narrow make the fonts smaller */
@media all and (max-width: 600px)
{
    body
    {
	font-size: 14px;
    }
	.bodyFont {font-size:14px !important;}
	.smallerFont {font-size:12px;}
	.bodyFontSize {font-size: 14px;}
	div#topMenuContainer{font-size:16px; margin-bottom:10px;}
	div#topMenuContainer .spaceRight {margin-right:20px; padding-top:6px; padding-bottom:7px;}
	div#contentContainer {margin-left:10px;}
	div#outerContainer {padding-left:10px; padding-right:10px;}
	h1 {font-size:20px;}
	.pageNote {padding:5px;}
}

/* When not on a wide screen, move problems menu to the top */
@media all and (max-width: 1039px)
{
	div#problemContainer {width:100%;}
	div#middleLeftContainer {width:100%; margin-bottom:10px;}
	.problemSetContainer{margin-left:10px; margin-right:10px; min-height:108px;}
	.problemSetContainer:last-child{min-height:0px}
	div#problemContainer > div:nth-child(1){font-size:18px; margin-bottom:10px; margin-top:4px;}
}


.rail td {border: 1px solid #a0a0a0; width:20px; text-align: center;}
.plaintext {border: 1px solid #e0e0e0; padding:10px; margin:10px; font-style:italic;}







                                                                                
td.rank_top {                                                                                              
    color:#424242;                                                                                         
    font-weight:bold;                                                                                      
    background-color:#D4D4D4;                                                                              
    border: 1px solid #D4D4D4;                                                                             
    font-size:10pt;                                                                                         
    text-align:center;                                                                                     
    padding:5px;                                                                                           
    height:18px;                                                                                           
}                                                                                                          
                                                                                                           
td.rank_header {                                                                                           
    height:18px;                                                                                           
    color:#424242;                                                                                         
    font-weight:bold;                                                                                      
    background-color:#D4D4D4;                                                                              
    border: 1px solid #D4D4D4;                                                                             
    font-size:10pt;                                                                                         
    text-align:center;                                                                                     
    padding-top:5px;                                                                                       
    padding-bottom:5px;                                                                                    
    padding-left:7px;                                                                                      
    padding-right:7px;                                                                                     
}                                                                                                          
                                                                                                           
td.rank_outline {                                                                                          
    color:#424242;                                                                                         
    font-weight:bold;                                                                                      
    border: 1px solid #D4D4D4;                                                                             
    font-size:10pt;                                                                                         
    padding-top:5px;                                                                                       
    padding-bottom:5px;                                                                                    
    padding-left:7px;                                                                                      
    padding-right:7px;                                                                                     
}                                                                                                          
                                                                                                           
td.rank_entry {                                                                                            
    border: 1px solid #D4D4D4;                                                                             
    font-size:11pt;                                                                                         
    color:#424242;                                                                                         
    text-align:center;
    padding:2px;
}               
