/**
 * @(#)layout.css 2.0 2022-05-15 Andre Platzer
 *
 * Copyright (c) 2000-2022 Andre Platzer. All Rights Reserved.
 */

/* -top -right -bottom -left */

/* ordinary logo in globalnav */
a.logo>img, a.logo:hover>img, a.logo:active>img, a.logo:visited>img  {
	border: 0 !important;
	border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1.0;
  display: inline; 
}
a.logo, a.logo:hover, a.logo:active, a.logo:visited  {
	border: 0 !important;
	border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline; 
}


body {
	margin: 0;
	padding: 0;
	/*background: #9E9D9D; */
	font-family: Georgia, serif;
}

p {
	margin: 0 0 10px 0;
	padding: 0;
	line-height: 1.2em;

}

a, a:visited {
	text-decoration: none;
	color: #0166CC;
}

/* layout elements */

div.globalfooter {
	text-align: center;
	font-size: 80%;
}

div.globalfooter a, div.globalfooter a:visited {
	color: #495057;
}

/* breadcrumb bar */

div.structNavigation {
	padding: 4px 0 0 0;
	background: #36A4FF;
	color: #fff;
}

div.structNavigation ol, ol.structNavigation {
  margin: 6px 0 2px 0;
	padding: 0 0 0 0;
  list-style-type: none !important;
}

div.structNavigation ol li, li.structNavigation {
  display: inline !important;
  list-style-type: none;
}

*.structNavigation a, *.structNavigation a:visited {
	color: #eee;	
}



*.wrap {
	margin: 0 auto;
	width: 800px;
	/* background: #DBEFFF; */
	/*
  border-left: 5px solid #0078FF;
	border-right: 5px solid #0078FF;
	border-bottom: 5px solid #0078FF;
	border-top: 5px solid #0078FF;
	border-bottom-left-radius: 25px;
	border-bottom-right-radius: 25px;
  */
}

*.wrap h1 {
	margin: 0 0 -10px 0;
	padding: 5px;
	text-align: center;
	background: #36A4FF;
	
	color: #fff;
	font-weight: normal;
	font-family: Helvetica, sans-serif;
	letter-spacing: -1px;
  font-size: x-large;
}
*.wrap h3 {
	margin: 0;
	padding: 10px;
	text-align: center;
	background: #36A4FF;
	
	color: #fff;
	font-weight: normal;
	font-family: Helvetica, sans-serif;
	letter-spacing: 0px;
	font-size: medium;
}
*.wrap h4 {
	background: #36A4FF;
	color: #fff;
	margin: 20px 0 0 0 !important;
}

/* GlobalNav navigation menu */

*.header {
	margin: 0 auto;
	width: 810px;
	text-align: center;
}

div.globalheader {
	margin: 0 auto;
	width: 800px;
	background: #0990FF;
  /* border-top: 5px solid; */
  /*
	border-left: 5px solid #0078FF;
	border-right: 5px solid #0078FF;
  border-bottom: none;
	border-top-left-radius: 25px;
	border-top-right-radius: 25px;
  */
	height: 50px;
}

*.globalheader ul {
	padding: 14px;
}

*.globalheader ul li.logo {
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	display: inline;
}

*.globalheader ul li {
	margin: 0 9px 0 9px;
	display: inline;
}

*.globalheader ul li a {
	color: #E0F1FF;
	font-size: large;
	text-decoration: none;
	padding: 9px 9px 9px 9px;
}

*.globalheader ul li a.selectedglobalnav {
	color: #fff;
	background: #44AAFF;
	border-radius: 8px;
}

*.globalheader ul li a.selectedsubglobalnav {
	color: #eee;
	background: #44AAFF;
	border-radius: 8px;
}

*.content {
	margin: 0px 0 0 0;
	float: left;
	width: 630px;
	padding: 0 15px 0 15px;	
}

*.content h2 {
	margin: 0 0 10px 0;
	font-size: xx-large;
}

*.content h4 {
	margin: 0 0 10px 0;
	font-size: large;
}



div.sidebar {
	float: left;
	width: 135px;
	margin: 10px 0 0 0;
	position: relative;
  background-color: #C6E6FF;
}

*.sidebar ul {
	margin: 0 0 0 0px;
	padding: 0;
	list-style-type: none;
}

*.sidebar ul li {
	margin: 0 0 10px 0;
	
}

*.sidebar a, *.sidebar a:visited {
	color: #06174A;	
}

a.selectedsidebarnav, a.selectedsidebarnav:visited {
	color: #fff;
	background: #36A4FF !important;
	/*color: #051542;*/
	border-radius: 8px;
}



*.sidebar h2 {
	background: #553f2d;
	margin: 0 0 10px 0;
	padding: 5px;
	font-size: large;
}

*.footer {
	padding: 10px;
	clear: both;
	font-size: small;
	color: #ADB5BD;
}

*.footer p {
	margin: 0;
	padding: 10px;
/*	background: #281a0f;*/
	/* background: #36A4FF; */
	text-align: center;
}

*.footer a, *.footer a:visited {
	color: white;
}

/* fancy sidebarnav buttons */

a.sidebarnav, a.selectedsidebarnav, a.subnavigation, a.tableofcontents {
    display: block; 
}

a.globalnav:hover, a.selectedglobalnav:hover, a.sidebarnav:hover, a.selectedsidebarnav:hover, a.navbar:hover, a.subnavigation:hover, a.tableofcontents:hover, a.structural:hover, *.quick>a:hover, *.tableofcontents a:hover {
    color:#A50707;
    background-color: #9BA0A5;/*/ #094ED8;/* #042a75;*/
    text-decoration: none !important;
  	border-radius: 8px;
}
a.globalnav:active, a.selectedglobalnav:active, a.sidebarnav:active, a.selectedsidebarnav:active, a.navbar:active, a.subnavigation:active, a.tableofcontents:active, a.structural:active, *.quick>a:active, *.tableofcontents a:active {
    color:#AA0000 !important;
    text-decoration: none !important;
    text-shadow: 1px 1px 1px #550000;
}

/* content elements */

/* fancy borders for reference images */

*.eyecatcher img {
  max-width: 285px;
  max-height: 150px;
}

tr.eyecatcher {
  vertical-align: top;
}

td.eyecatcher {
  vertical-align: top;
}

a   {border: none;}

a>img.inline, a:hover>img.inline, a:active>img.inline {
	border: 0 !important;
	border-radius: 0 !important;
  opacity: 1.0;
}

a>img, a.eyecatcher>img, a>img.contact, a.contact>img {
	margin: 0em 0em;
	border: 5pt solid transparent;
	border-radius: 8px;
  opacity: 1.0;
}
a:hover>img, a.eyecatcher:hover>img, a:hover>img.contact, a.contact:hover>img {
	border: 5pt ridge #92b4ff;
    opacity: 0.8;
}
a:active>img, a.eyecatcher:active>img, a:active>img.contact, a.contact:active>img {
	border: 5pt ridge #92b4ff;
    opacity: 0.5;
}

/* ordinary logo on side */
a.structLogo>img, a.structLogo:active>img {
	margin: 0em 0em;
	border: 0;
  opacity: 1.0;
	border-radius: 0px;
}


/* navigational part */

      /* @todo could add a little more distance between td cells of Sitemap table */
ul.Sitemap {
  list-style-type: none !important;
	margin: 0em 0em 0em 0em !important; 
	padding: .5em 0em .5em 1em !important;
	border-radius: 10px;
}

ul.Sitemap a {
	color: #06174A;
}

ul.Sitemap > li {
  list-style-type: none !important;
  background-color: #ceddff !important;/*=hsv(222,19,100)*/ /*#dde8ff;*/ /*#fff2dd;*/
	padding: 0em 0em 0.2em 0.4em !important;
	border-radius: 10px;
}
ul.Sitemap > li > ul.Sitemap {
  background-color: #f0f4ff !important;/*=hsv(222,6,100)*/
}
ul.Sitemap > li > ul.Sitemap > li {
  list-style-type: none !important;
  background-color: #f0f4ff !important;
}
ul.Sitemap > li > ul.Sitemap > li > ul.Sitemap > li {
  list-style-type: circle;
}
div.sidebarnavseparator {
	display: block;
	border-color: #042a75;
	border-width: 1pt;
	border-top-style: solid;
	margin-left: 4pt;
	margin-right: 8pt;
}

div.separator {
	display: block;
	border-color: #042a75;
	border-width: 1pt;
	border-top-style: solid;
}

table.tableofcontents, table.subnavigation {
    border-top: 2px solid #4CAEFF !important;
    border-bottom: 2px solid #4CAEFF !important;
    border-left: 10px solid #4CAEFF !important;
    border-right: 2px solid #4CAEFF !important;
    background-color: #BBE1FF /*#A6D7FF*/ !important;
    padding-left: 1em;
    margin-top: 2mm;
    margin-bottom: 2mm;
    margin-left: 1em;
    margin-right: 2mm;
}
th.tableofcontents, th.subnavigation {
    color: #042a75;
    text-align: left !important; 
    font-family: "Arial", "Helvetica", Sans-serif; 
    font-weight: bold;
    font-size: 16pt;
    padding-left: 2em;
}
th.labelled {
    color: #042a75;
    text-align: left !important; 
    font-weight: bold;
}
ul.tableofcontents, ul.subnavigation, ol.tableofcontents, ol.subnavigation {
}
table.tableofcontents a, table.subnavigation a {
	color: #144EFB/*#06174A*/;
}

*.quick a {
	text-decoration: none; 
	font-size: 12pt;
  color: #2e73af !important; /*#042a75;*/  /*E3F0FD;*/
}

*.quick ano {
	text-decoration: none; 
	font-size: 12pt;
  color: #2e73af !important; /*#042a75;*/  /*E3F0FD;*/
}

td.quick a {
    display: block;
}

*.quick {
    /*border-top: 2px solid #92b4ff !important;
    border-bottom: 2px solid #92b4ff !important;
    border-left: 10px solid #92b4ff !important;
    border-right: 2px solid #92b4ff !important;*/
    border: 2px solid #4CAEFF !important;
    background-color: #A6D7FF !important;
	  border-radius: 12px;
}

td.quick {
    float: right;
    vertical-align: top;
    text-align: center;
    padding: 1mm;
}

*.ordinary {
    color: #fff;
}

*.side {
    float: right;	
    text-align: center;
    vertical-align: top;
}
*.side a {
	text-decoration: none; 
	font-size: 12pt;	
}

/* individual element styles */

pre {
	margin: .5em 0em .5em 0em;
	background: white;
	color: black;
   }


/* text in a file */
pre.file, tt.file {  
	background: #fff2dd; /* light orange */
	/* #f5ffff /* light blue */
   }

a>img.contact, a.contact>img {
    float: right;
}
 
/* experimenting with list compaction, which doesn't really work yet. */
dl.compact dt {
	display: inline-block;
}
/*dl.compact dd {
	display: run-in;
} */

dl.compact {
 margin: 0;
 padding: 0;
}
dl.compact dt {
 display: inline-block;
}

dl.tabcompact, dt.tabcompact, dd.tabcompact {
 margin: 0;
 padding: 0;
}
dl.tabcompact {
 display: inline;
}
dl.tabcompact dt {
 clear: left;
 float: left;
 width: 10%;
}
dl.tabcompact dd {
 float: left;
 width: 89%; /* 1% gap to avoid hitting both sides */
}

/* course and lectures */

dl.course {margin-bottom: 1.5em;}
dl.course dt {font-weight: bold;}

*.exam {background: #36A4FF; font-weight: bold; font-style: normal !important;}
	
*.recitation {color: #058862; font-size: 80%; font-style: normal !important;}


table.syntax tr td {
	vertical-align: top;
}

table.syntax tr {
	padding-bottom: 10pt;
}

em {
	font-weight: bold;
	font-style: italic;
}

/* programming language syntax highlighting */

  /**
   * For language keywords.
   */
  *.keyword {
  	font-weight: bold;
  }
  pre *.keyword {
  	font-weight: bold;
  	color: #0000A5;
  }
  /**
   * For predefined primitive types.
   */
  *.primitiveType {
  	font-weight: bold;
  	color: #0000A5;
  }
  /**
   * For operators.
   */
  *.operator {
  	color: #0000A5; /*#008200;*/
  }
  /**
   * For assignment operation.
   */
  *.assignment {
  	color: #008200;
  }

  /**
   * For comments.
   */
  *.comment {
  	font-style: italic;
  	color: #008284;
  }
  
  /* literals */
  
  /**
   * For String terminals.
   */
  *.string, *.String {
  	color: #848284;
  }
  /* Specify pairs of quotes for two levels in two languages */
  /* *.String:lang(en) { quotes: '"' '"' "'" "'" } */ 
  
  /* Insert quotes before and after *.String element content */
  /* *.String:before { content: open-quote; }
  *.String:after  { content: close-quote; } */

  /**
   * For number terminals.
   */
  *.number, *.float, *.integer, *.Number {
  	color: red;
  }
  
  /**
   * For annotations.
   */
  *.annote {
  	color: #34e92a; /*#38ff2e;*/ /*#168000;*/
  }
  *.annoteArg {
  	color: #127000;
  }

  /* known classes */
  
  /**
   * For java core classes.
   */
  *.Class {
  	color: blue;
  }
  /**
   * For classes in the Orbital library.
   */
  *.Orbital {
  	color: blue;
  }
/**
 * Use this class to tell the browser to use a unicode font for displaying.
 * Most browsers are not smart enough to pick a unicode font for unicode characters.
 */
*.unicode {
	font-family: unicode;
}

*.emi {
  direction: rtl;
  unicode-bidi: bidi-override;
}