/*------------------------------------------------*/
/*                                                */
/* http://gedanken.org.uk/ - Style Sheet          */
/*                                                */
/* Using CSS2 - (Cascading Style Sheets, level 2) */
/*                                                */
/*------------------------------------------------*/


/*----------------------------------*/
/* Body HTML formatting             */
/*----------------------------------*/

BODY
{
 /* fonts and text styles */

 font-family: sans-serif;
 font-size:   medium;

 /* margins, borders and padding */

 padding: 0;

 margin: 0;
}

A.ext
{
 /* fonts and text styles */

 text-decoration: underline;
}

PRE
{
 /* fonts and text styles */

 font-family: monospace;
}

PRE.boxed
{
 /* display style, position and size */

 overflow-x: auto;

 /* margins, borders and padding */

 padding:      0.5em;

 border:       solid;
 border-width: thin;
}


/*-----------------------------------*/
/* Header HTML formatting            */
/*-----------------------------------*/

DIV.header
{
 /* margins, borders and padding */

 padding:        0;
 padding-top:    0.5em;
 padding-bottom: 0.5em;

 border-width:        0;
 border-bottom:       solid;
 border-bottom-width: thin;

 margin: 0;

 /* alignment */

 text-align: center;
}

DIV.header H1
{
 /* fonts and text styles */

 font-size:   160%;
 font-weight: bold;

 text-decoration: underline;

 /* margins, borders and padding */

 padding: 0.25em;

 border: 0;

 margin: 0;
}


/*-----------------------------------*/
/* Main HTML formatting              */
/*-----------------------------------*/

DIV.main
{
 /* margins, borders and padding */

 padding-left: 13em;
}


/*-----------------------------------*/
/* Footer HTML formatting            */
/*-----------------------------------*/

DIV.footer
{
 /* fonts and text styles */

 font-size: 80%;

 /* margins, borders and padding */

 padding:        0;
 padding-top:    0.5em;
 padding-bottom: 0.5em;

 border-width:      0;
 border-top:        solid;
 border-top-width:  thin;

 margin: 0;

 /* alignment */

 text-align: center;

 /* floats */

 clear: both;
}


/*-----------------------------------*/
/* Menu HTML formatting              */
/*-----------------------------------*/

#menubutton label, #hamburger
{
 /* display style, position and size */

 display: none;
}


/*-----------------------------------*/
/* Sidebar HTML formatting           */
/*-----------------------------------*/

DIV.sidebar
{
 /* display style, position and size */

 display: block;

 width: 13em;

 /* margins, borders and padding */

 padding: 0;

 margin-left: -13em;

 /* floats */

 float: left;
}

DIV.linkbox
{
 /* display style, position and size */

 overflow: hidden;

 /* margins, borders and padding */

 padding: 0.25em;

 border: dashed thin;

 margin: 0.25em;
}

DIV.linkbox B
{
}

DIV.linkbox A
{
 /* display style, position and size */

 display: block;

 /* margins, borders and padding */

 border-top:   dotted;
 border-width: thin;
 border-color: gray;

 margin: 0.1em;
}

DIV.linkbox B A
{
 /* margins, borders and padding */

 border: none;
}

DIV.linkbox A.h2
{
 /* margins, borders and padding */

 padding-left: 0em;
}

DIV.linkbox A.h3
{
 /* margins, borders and padding */

 padding-left: 0.5em;
}

DIV.linkbox A.h4
{
 /* margins, borders and padding */

 padding-left: 1.0em;
}


DIV.validhtml
{
 /* margins, borders and padding */

 padding: 0;

 border: 0;

 margin: 0.25em;

 /* alignment */

 text-align: center;
}

DIV.validhtml IMG
{
 /* margins, borders and padding */

 border: none;
}


/*-----------------------------------*/
/* Headline HTML formatting          */
/*-----------------------------------*/

DIV.headline
{
 /* colours */

 background-color: white;

 /* margins, borders and padding */

 border-width: 0;
 border-bottom: 1px solid;

 /* alignment */

 text-align: center;
}

DIV.headline A
{
 /* fonts and text styles */

 font-size:   140%;
 font-weight: bold;

 line-height: 220%;

 /* margins, borders and padding */

 padding: 0.2em;

 border: solid medium;
}


/*-----------------------------------*/
/* Content HTML formatting           */
/*-----------------------------------*/

DIV.content
{
 /* margins, borders and padding */

 padding: 0.5em;

 border-width:  0;
 border-left:   1px solid;
 border-bottom: 1px solid;

 margin-bottom: -1px;
}

DIV.content H1
{
 /* fonts and text styles */

 font-size:   150%;
 font-weight: bold;

 /* margins, borders and padding */

 padding: 0;

 margin-top:    1em;
 margin-bottom: 0.25em;
}

DIV.content H2
{
 /* fonts and text styles */

 font-size:   140%;
 font-weight: bold;

 /* margins, borders and padding */

 padding: 0;

 margin-top:    0.75em;
 margin-bottom: 0.25em;
}

DIV.content H3
{
 /* fonts and text styles */

 font-size:   120%;
 font-weight: bold;

 /* margins, borders and padding */

 padding: 0;

 margin-top:    0.75em;
 margin-bottom: 0.25em;
}

DIV.content H4
{
 /* fonts and text styles */

 font-size:   110%;
 font-weight: bold;

 /* margins, borders and padding */

 padding: 0;

 margin-top:    0.5em;
 margin-bottom: 0.125em;
}

DIV.content P.center
{
 /* alignment */

 text-align: center;
}

DIV.content OL, DIV.content UL, DIV.content DIR, DIV.content MENU, DIV.content DL
{
 /* margins, borders and padding */

 padding-top:    0;
 padding-bottom: 0;

 margin-top:    0.25em;
 margin-bottom: 0.25em;
}

DIV.content UL UL, DIV.content UL OL, DIV.content UL DL, DIV.content OL UL, DIV.content OL OL, DIV.content OL DL, DIV.content DL UL, DIV.content DL OL, DIV.content DL DL
{
 /* margins, borders and padding */

 padding-top:    0;
 padding-bottom: 0;

 margin-top:    0;
 margin-bottom: 0;
}

DIV.content FORM
{
 /* margins, borders and padding */

 padding: 0.5em;

 margin: 0.5em;
}

DIV.content INPUT
{
 /* margins, borders and padding */

 padding: 0;

 border:  1px solid;

 margin:  1px;
}

DIV.content BUTTON
{
 /* margins, borders and padding */

 padding: 0;

 border:  1px solid;

 margin:  1px;
}

DIV.content INPUT.left
{
 /* alignment */

 text-align: left;
}

DIV.content INPUT.center
{
 /* alignment */

 text-align: center;
}

DIV.content INPUT.right
{
 /* alignment */

 text-align: right;
}

DIV.content TABLE
{
 /* margins, borders and padding */

 padding: 0;

 border:  2px solid;

 margin:  0;
 margin-left: auto;
 margin-right: auto;

 border-collapse: collapse;
}

DIV.content TABLE.center
{
 /* alignment */

 text-align: center;
}

DIV.content TABLE.noborder
{
 /* margins, borders and padding */

 margin-left: auto;
 margin-right: auto;

 border:  0;
}

DIV.content TABLE.noborder-left
{
 /* margins, borders and padding */

 margin-left: 0;
 margin-right: auto;

 border:  0;
}

DIV.content CAPTION
{
 /* position */

 caption-side: bottom;

 /* alignment */

 text-align: center;

 /* fonts and text styles */

 font-weight: bold;
}

DIV.content TD, DIV.content TH
{
 /* margins, borders and padding */

 border:  1px solid;

 padding-left:  0.5em;
 padding-right: 0.5em;
}

DIV.content TABLE.noborder TD, DIV.content TABLE.noborder TH
{
 /* margins, borders and padding */

 border: 0;
}

DIV.content TABLE.noborder-left TD, DIV.content TABLE.noborder-left TH
{
 /* margins, borders and padding */

 border: 0;
}

DIV.content TD.left, DIV.content TH.left, DIV.content TR.left
{
 /* alignment */

 text-align: left;
}

DIV.content TD.center, DIV.content TH.center, DIV.content TR.center
{
 /* alignment */

 text-align: center;
}

DIV.content TD.right, DIV.content TH.right, DIV.content TR.right
{
 /* alignment */

 text-align: right;
}

DIV.content IMG.center
{
 /* display style, position and size */

 display: block;

 /* margins, borders and padding */

 margin-left:  auto;
 margin-right: auto;
}

DIV.content IMG
{
 /* margins, borders and padding */

 border: 0;
}


/*------------------------------------------------*/
/*                                                */
/* Special case layout for narrow screens         */
/*                                                */
/*------------------------------------------------*/

@media screen and (max-width:640px) {

  /*----------------------------------*/
  /* Body HTML formatting             */
  /*----------------------------------*/

  BODY
  {
   /* fonts and text styles */

   font-size: small;
  }


  /*-----------------------------------*/
  /* Main HTML formatting              */
  /*-----------------------------------*/

  DIV.main
  {
   /* margins, borders and padding */

   padding-left: 0;
  }


  /*-----------------------------------*/
  /* Menu HTML formatting              */
  /*-----------------------------------*/

  #menubutton label
  {
   /* display style, position and size */

   display: inline-block;

   position: absolute;

   top:  0.5em;
   left: 0.5em;

   /* fonts and text styles */

   font-size:   160%;
   font-weight: bold;
  }

  #menubutton input:checked ~ #menu
  {
   display: block;
  }


  /*-----------------------------------*/
  /* Sidebar HTML formatting           */
  /*-----------------------------------*/

  DIV.sidebar
  {
   /* display style, position and size */

   display: none;

   width: 100%; /* cancel default style */

   /* margins, borders and padding */

   margin: 0; /* cancel default style */

   /* floats */

   float: none; /* cancel default style */

   /* alignment */

   text-align: center;
  }

  DIV.linkbox
  {
   /* display style, position and size */

   display: inline-block;

   /* alignment */

   text-align: left; /* cancel text align from sidebar */
   vertical-align: top;
  }

  DIV.validhtml
  {
   /* display style, position and size */

   display: inline-block;

   /* margins, borders, padding and sizes */

   margin: 0; /* cancel default style */
  }


  /*-----------------------------------*/
  /* Headline HTML formatting          */
  /*-----------------------------------*/

  DIV.headline A
  {
   /* fonts and text styles */

   font-size: 120%;
  }


  /*-----------------------------------*/
  /* Content HTML formatting           */
  /*-----------------------------------*/

  DIV.content
  {
   /* display style, position and size */

   width: auto; /* cancel default style */

   /* margins, borders, padding and sizes */

   border-left:   0; /* cancel default style */

   margin-left:   0; /* cancel default style */
   margin-bottom: 0; /* cancel default style */

   /* floats */

   float: none; /* cancel default style */
  }

}


/*------------------------------------------------*/
/*                                                */
/* Special case layout for print                  */
/*                                                */
/*------------------------------------------------*/

@media print {

  /*-----------------------------------*/
  /* Main HTML formatting              */
  /*-----------------------------------*/

  DIV.main
  {
   /* margins, borders and padding */

   padding-left: 0;
  }


  /*-----------------------------------*/
  /* Sidebar HTML formatting           */
  /*-----------------------------------*/

  DIV.sidebar
  {
   /* display style, position and size */

   display: none;
  }


  /*-----------------------------------*/
  /* Content HTML formatting           */
  /*-----------------------------------*/

  DIV.content
  {
   /* display style, position and size */

   width: auto; /* cancel default style */

   /* margins, borders, padding and sizes */

   border-left:   0; /* cancel default style */

   margin-left:   0; /* cancel default style */
   margin-bottom: 0; /* cancel default style */

   /* floats */

   float: none; /* cancel default style */
  }

}
