body {
  margin:                     0px;
  padding:                    0px;
  font-family:                "trebuchet ms",tahoma,verdana,helvetica;
  font-size:                  10pt;
  color:                      #000000;
  background-color:           #E6E6E6;
}

table {
  width:   100%;
  margin:  0px 0px 20px 0px;
  padding: 0px;
}
table.pattern-collaboration {
  margin: 0px;
  border: 0px;
}
table.footnote {
  margin-left: 37px;
  width:       770px;
}

.thesis td {
  font-weight:      bold;
  color:            #FFFFFF;
  background-color: #232660;
  border:           0px;
  text-align:       center;
}

.diku td {
  border:      0px;
  padding:     0px 10px 0px 10px;
  font-size:   14pt;
  font-weight: bold;
}
.dedication td {
  text-align: center;
  border:     0px;
  margin:     0px;
  padding:    2px;
}

td {
  margin:           0px;
  padding:          4px;
  font-family:      "trebuchet ms",tahoma,verdana,helvetica;
  font-size:        10pt;
  text-align:       left;
  vertical-align:   top;
  border-bottom:    solid 1px black;
  border-right:     solid 1px black;
}
td.empty {
  padding:          0px 4px 0px 0px;
  border-bottom:    0px;
  width:            34px;
}
td.title {
  font-weight:      normal;
  font-size:        11pt;
  color:            #FFFFFF;
  background-color: #232660;
  border-top:       solid 1px black;
}
td.heading {
  font-weight:      bold;
  font-size:        11pt;
  color:            #232660;
  background-color: #E6E6E6;
}
td.section {
  color:            #000000;
  background-color: #F3F3F3;
  font-weight:      bold;
  font-size:        11pt;
}
td.selection {
  background-color: #F3F3F3;
}
td.example {
  text-align:    justify;
  padding-left:  8px;
  border-left:   solid 3px #E6E6E6;
  border-top:    solid 3px #E6E6E6;
  border-bottom: 0px;
  border-right:  0px;
  line-height:   1.5;
}
td.example-empty {
  padding:          4px 4px 0px 0px;
  border-bottom:    0px;
  width:            34px;
  border:           0px; 
}
td.pattern-collaboration-left {
  width:   20px;
  border:  0px;
  margin:  0px;
  padding: 0px 0px 0px 4px;
}
td.pattern-collaboration {
  border:  0px;
  margin:  0px;
  padding: 1px 2px 1px 2px;
}
td.footnote-left {
  border:     0px;
  text-align: right;
  font-size:  9pt;
  padding:    10px 10px 0px 0px;
}
td.footnote {
  border:     0px;
  text-align: justify;
  font-size:  9pt;
  padding:    10px 10px 0px 0px;
}
td.uml {
  width: 100%;
}

td.listing-left {
  text-align:       center;
  width:            30px;
  padding:          4px;
  font-family:      "courier new";
  font-size:        8pt;
  font-weight:      normal;
  color:            #3F7F5F;
  background-color: #E6E6E6;
}
td.listing-right {
  text-align:       left;
  padding:          4px;
  font-family:      "courier new";
  font-size:        8pt;
  font-weight:      normal;
  color:            #000000;
  background-color: #F3F3F3;
}

td.p {
  margin:           0px;
  padding:          0px;
  /*width:            19px;*/
}
td.x {
  text-align:       center;
}
td.h {
  text-align:       center;
  color:            #FFFFFF;
  background-color: #232660;  
}
td.m {
  text-align:       center;
  background-color: #E6E6E6;
}
td.meta {
  font-weight:      bold;
  font-style:       italic;
  color:            #232660;
  background-color: #E6E6E6;  
}

table.toc {
  margin:      0px 0px 20px 37px;
}

td.toc-1 {
  font-size:   12pt;
  font-weight: bold;
  width:       30px;
  border:      0px;
}
td.toc-1-text {
  font-size:   12pt;
  font-weight: bold;
  border:      0px;
}
td.toc-2 {
  width:       35px;
  border:      0px;
}
td.toc-3 {
  width:       40px;
  border:      0px;
}
td.toc-text {
  border: 0px;
}

p {
  text-align:       justify;
  margin:           0px 0px 20px 37px;
  background-color: #FFFFFF;
  line-height:      1.5;
}
p.intro {
   text-align:      justify;
   margin:          0px 0px 20px 24px;
   border-left:     solid 6px #E6E6E6;
   padding:         4px 0px 6px 8px;
}
p.example {
   text-align:      justify;
   margin:          0px 0px 20px 24px;
   padding:         4px 0px 6px 8px;
}

img {
  border: 0px;
}
img.uml {
  width:  756px;
}
img.arrow {
  width:  30px;
  height: 30px;
}
img.pattern-arrow {
  padding-top: 6px;
}
img.print {
  float:          right;
  vertical-align: top;
  margin:         4px 2px 0px 0px;
  display:        none;
}
img.footnote {
   margin: 0px 0px 20px 0px;
   width:  250px;
   height: 1px;
   border: 0px;
}

ol {
  text-align:      justify;
  line-height:     1.5;
}
ol.goals {
  list-style-type: upper-roman;
}
ul {
  text-align:       justify;
  line-height:      1.5;
  list-style-image: url(../images/bar.png);
}
ul.highlights {
  margin-left:  68px;
}

li {
  padding-left: 10px;
  padding-top:  0px;
  margin:       0px 0px 10px 40px;
}

ul.items {
  padding: 0px;
  margin:  0px;
}

.items li {
  margin:     0px 6px 4px 20px;
  text-align: left;
}

tt {
  color: #606060;
}
span.crossed {
  background-image:    url(../images/footnote.gif);
  background-repeat:   repeat-x;
  background-position: 0px;
}

/* Layout elements */

#main {
  width:            800px;
  margin:           0px auto 0px auto;
  padding:          20px 20px 0px 20px;
  border:           solid 1px black;
  border-right:     solid 1px black;
  border-bottom:    solid 1px black;
  border-top:       0px;
  background-color: #FFFFFF;
}

#content {
  margin:           0px;
  padding:          0px;
  text-align:       justify;
  background-color: #FFFFFF;
}

#header {
  margin:        0px 0px 20px 0px;
  padding:       0px;
  text-align:    left;
  font-family:   calibri, "trebuchet ms",tahoma,verdana,helvetica;
  font-weight:   bold;
  font-size:     9pt;
}
#header-first {
  padding:       0px;
  margin:        0px;
  border-bottom: solid 1px black;
}
#header-second {
  font-style:    italic;
}

#navigation-top {
  padding-bottom: 20px;
}
#navigation-top-info {
  font-size: 9pt;
}
#navigation-bottom {
  padding-bottom: 20px;
}

/* Headings */

.heading-1 {
  font-family:    calibri, "trebuchet ms",tahoma,verdana,helvetica;
  font-weight:    bold;
  font-size:      22pt;
  color:          #232660;
  padding-bottom: 20px;
}

.heading-2 {
  font-family:    calibri, "trebuchet ms",tahoma,verdana,helvetica;
  font-weight:    bold;
  font-size:      18pt;
  color:          #000000;
}

.heading-3 {
  font-family:    calibri, "trebuchet ms",tahoma,verdana,helvetica;
  font-weight:    bold;
  font-size:      16pt;
  color:          #000000;
}

.heading-4 {
  font-family:    calibri, "trebuchet ms",tahoma,verdana,helvetica;
  font-weight:    bold;
  font-size:      14pt;
  color:          #000000;
}

.heading-5 {
  font-family:    "trebuchet ms",tahoma,verdana,helvetica;
  font-weight:    bold;
  font-size:      11pt;
  color:          #000000;
}
.dash {
  font-family:    "times new roman", tahoma, verdana;
}

.heading-5 tt {
  font-size: 12pt;
  font-weight: bold;
}

span.example {
  font-weight:    bold;
  font-size:      11pt;
  color:          #232660;
}

.variable {
  font-size:   11pt;
  font-style:  italic;
  font-family: "times new roman", tahoma, verdana;
}

/* Quotes */

div.quote {
  margin:         0px;
  padding:        0px;
  font-family:    "times new roman", tahoma, verdana;
  font-size:      11pt;
  font-style:     italic;
  text-align:     right;
  color:          #232660;
  padding-bottom: 20px;
  border:         0px;  
}

div.quote-left {
  text-align:     left;
}

table.quote {
  margin-left: 75px;  
  border:      0px;
  width:       640px;
}
td.quote-left {
  border: 0px;
}
td.quote-right {
  border:      0px;
  text-align:  justify;
  padding-top: 8px;
  font-family: "times new roman", tahoma, verdana;
  font-size:   11pt;
  font-style:  italic;
  line-height: 1.5;
}

/* Links */

a:link {
  color:           #232660;
  font-weight:     bold;
  text-decoration: none;
}
a:visited {
  color:           #24749C;
  font-weight:     bold;
  text-decoration: none;
}
a:hover {
  color:           #92BACE;
  font-weight:     bold;
  text-decoration: underline;
}
a:active {
  color:           #232660;
  font-weight:     bold;
  text-decoration: none;
}

tt a:link {
  color:           #606060;
  font-weight:     normal;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}
tt a:visited {
  color:           #606060;
  font-weight:     normal;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}
tt a:hover {
  color:           #606060;
  font-weight:     bold;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}
tt a:active {
  color:           #606060;
  font-weight:     normal;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}

.listing-right  a:link {
  color:           #000000;
  font-weight:     normal;
  text-decoration: none;
  border:          0px;
}
.listing-right a:visited {
  color:           #000000;
  font-weight:     normal;
  text-decoration: none;
  border:          0px;  
}
.listing-right a:hover {
  color:           #606060;
  font-weight:     bold;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}
.listing-right a:active {
  color:           #000000;
  font-weight:     normal;
  text-decoration: none;
  border:          0px;
}

/* Indexes */

a.index:link {
  color:               #000000;
  font-weight:         normal;
  text-decoration:     none;
}
a.index:visited {
  color:               #000000;
  font-weight:         normal;
  text-decoration:     none;
}
a.index:hover {
  color:               #92BACE;
  font-weight:         normal;
  text-decoration:     underline;
}
a.index:active {
  color:               #000000;
  font-weight:         normal;
  text-decoration:     none;
}

/* Navigation  */

a.navigation:link {
  color:               #232660;
  font-weight:         bold;
  text-decoration:     none;
  background-image:    url(../images/navigation-arrow.png);
  background-repeat:   no-repeat;
  background-position: 0px;
  padding-left:        12px;
}
a.navigation:visited {
  color:               #24749C;
  font-weight:         bold;
  text-decoration:     none;
  background-image:    url(../images/navigation-arrow-visited.png);
  background-repeat:   no-repeat;
  background-position: 0px;
  padding-left:        12px;
}
a.navigation:hover {
  color:               #92BACE;
  font-weight:         bold;
  text-decoration:     underline;
  background-image:    url(../images/navigation-arrow-hover.png);
  background-repeat:   no-repeat;
  background-position: 0px;
  padding-left:        12px;
}
a.navigation:active {
  color:               #232660;
  font-weight:         bold;
  text-decoration:     none;
  background-image:    url(../images/navigation-arrow.png);
  background-repeat:   no-repeat;
  background-position: 0px;
  padding-left:        12px;
}


/* Person links */

a.person:link {
  color:           #24749C;
  font-weight:     normal;
  text-decoration: none;
}
a.person:visited {
  color:           #24749C;
  font-weight:     normal;
  text-decoration: none;
}
a.person:hover {
  color:           #92BACE;
  font-weight:     normal;
  text-decoration: underline;
}
a.person:active {
  color:           #24749C;
  font-weight:     normal;
  text-decoration: none;
}

/* Location links */

a.location:link {
  color:           #24749c;
  font-weight:     normal;
  text-decoration: none;
}
a.location:visited {
  color:           #24749c;
  font-weight:     normal;
  text-decoration: none;
}
a.location:hover {
  color:           #92BACE;
  font-weight:     normal;
  text-decoration: underline;
}
a.location:active {
  color:           #24749c;
  font-weight:     normal;
  text-decoration: none;
}

/* Pattern links */

a.pattern:link {
  font-weight:     normal;
  color:           #000000;
  text-decoration: none;
  border:          0px;
}
a.pattern:visited {
  font-weight:     normal;
  color:           #000000;
  text-decoration: none;
  border:          0px;
}
a.pattern:hover {
  font-weight:     normal;
  color:           #92BACE;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}
a.pattern:active {
  font-weight:     normal;
  color:           #000000;
  text-decoration: none;
  border:          0px;
}

a.pattern-title:link {
  font-weight:     normal;
  color:           #FFFFFF;
  text-decoration: none;
  border:          0px;
}
a.pattern-title:visited {
  font-weight:     normal;
  color:           #FFFFFF;
  text-decoration: none;
  border:          0px;
}
a.pattern-title:hover {
  font-weight:     normal;
  color:           #92BACE;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dotted none;
}
a.pattern-title:active {
  font-weight:     normal;
  color:           #FFFFFF;
  text-decoration: none;
  border:          0px;
}

/* Bibliography */

a.bibliography:link {
  color:           #232660;
  text-decoration: none;
}
a.bibliography:visited {
  color:           #24749c;
  text-decoration: none;
}
a.bibliography:hover {
  color:           #92BACE;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dashed none;
}
a.bibliography:active {
  color:           #232660;
  text-decoration: none;
}

a.bibliography-title:link {
  color:           #FFFFFF;
  font-weight:     normal;
  text-decoration: none;
}
a.bibliography-title:visited {
  color:           #FFFFFF;
  font-weight:     normal;
  text-decoration: none;
}
a.bibliography-title:hover {
  color:           #92BACE;
  font-weight:     normal;
  text-decoration: none;
  border-width:    0px 0px 1px 0px;
  border-style:    none none dashed none;
}
a.bibliography-title:active {
  color:           #FFFFFF;
  font-weight:     normal;
  text-decoration: none;
}


table.bibliography {
  border: 0px;
  margin: 0px 0px 20px 0px;
}
td.bibliography-empty {
  border: 0px;
  padding: 0px;
}
td.bibliography-reference {
  width: 15%;
  border: 0px;
}
td.bibliography-entry {
  width: 85%;
  border: 0px;
}
.bibliography-title {
   font-weight: bold;  
}
.bibliography-author {
   font-style: italic;  
}

.keyword {
  color: #0000FF;
}
.comment {
  color: #3F7F5F;
}
.string {
  color: #808080;
}
.annotation {
  text-decoration: underline;
}