/* ***************************************************************************
 *
 * Globale Vorgaben für die komplette Applikation.
 *
 * ***************************************************************************/
/*
 * Nötig, falls wir mal einen Footer einbauen wollen.
 */
html, body {
  height: 100%;
}
/*
 * Vom Body sollten weder margin noch padding vorgegeben werden.  
 * Außerdem wird hier die grundlegende Schriftart und Größe festgelegt.
 */
body {
  margin: 0;
  padding: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}
/*
 * Die Schriftart und Größe muss für einige HTML-Tags nochmal getrennt
 * definiert werden.
 */
table {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}
input {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}  
select {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
}
/*
 * Der grundsätzliche Seitenaufbau besteht aus einem Header, einem links
 * ausgerichteten Menü und dem Content im restlichen Bereich.
 */
#header {
  float: left;
  width: 100%;
  padding: 10px;
  background-color: beige;
  display: none;
}
#menu {
  float: left;
  width: 140px;
  background: beige;
  margin-right: 15px;
  padding: 10px;
  display: none;
}
#content {
  float: left;
  padding: 10px;
}
/*
 * Titelzeile im Headerbereich
 */
#header .title {
  font-weight: bold;
  font-size: 16px;
  text-align: center;
}
/*
 * Im Menü-Bereich werden unter anderem die Auswahlkriterien für die 
 * anzuzeigenden Bestellungen angezeigt.
 */
#menu .choose {
  padding-bottom: 10px;
}
/*
 * Die Auswahlboxen und die Eingabefelder sollen gleiche Breite haben.
 */
#menu .choose select {
  width: 11em;
}
#menu .choose input {
  width: 11em;
}
/*
 * Und der Anzeigebutton soll zentriert dargestellt werden.
 */
#menu .button {
  text-align: center;
}
/*
 * Darstellung der eigentlichen Menüpunkte.
 */
#header div.menu {
  position: absolute;
  top: 5px;
  right: 5px;
  text-align: left;
}
#header a.menu {
  text-decoration: none;
  color: darkblue;
  padding-left: 5px;
}
#header a.menu:hover {
  font-weight: bold;
}
/* ***************************************************************************
 *
 * Formatierungsanweisungen fuer das Formular für die Anzeiger einer Bestellung
 *
 * ***************************************************************************/
/*
 * Hiermit wird ein typisches Eingabeformular (jeweils pro Zeile ein
 * Label und ein Ein/Ausgabefeld) in einer tabellenähnlichen Struktur
 * ausgegeben.
 */
div.title {
  font-weight: bold;
  font-size: 14px;
  color: darkblue;
  text-align: center;
}
div.tablecaption {
  font-weight: bold;
  font-size: 14px;
  color: darkblue;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 10px;
}
div.spacer {
  clear: both;
}
table.address {
  padding: 2px;
  border-width: 1px;
  border-style: solid;
  border-collapse:collapse;
  empty-cells: show;
  border-color: black;
}
table.address th {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  font-weight: bold;
  color: darkblue;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  border-color: black;
}
table.address td {
  border-style: none;
  padding-left: 10px;
  padding-right: 10px;
  border-color: black;
}
table.address td.left {
  border-width: 1px;
  border-left-style: solid;
  background-color: white;
}
table.address td.empty {
  border-width: 1px;
  border-left-style: solid;
  text-align: center;
}
table.address td.top {
  border-width: 1px;
  border-top-style: solid;
  padding-top: 5px;  
}
table.address td.bottom {
  border-width: 1px;
  border-bottom-style: solid;
  padding-bottom: 5px;
}
/*
 * Box um eine Adress-Formular.  Wesentlich ist, das hier eine Breite
 * vorgegeben wird.
 */
div.address {
  float: left;
  width: 310px;
  border-width: 1px;
  border-style: solid;
}
/*
 * Über jedem Eingabebereich soll ein Header angezeigt werden.
 */
div.address div.header {
  font-weight: bold;
  color: darkblue;
  text-align: center;
  border-width: 1px;
  border-style: solid;
}
/*
 * Box um eine Zeile des Formulars.
 */
div.row {
  clear: both;
  padding-top: 2px;
}
/*
 * Hiermit wird der Label-Bereich des Formulars auf die linke Seite der
 * umgebenden Box gezogen.  Die Gesamtbreite des Labelbereichs muss
 * vorgegeben werden.
 */
div.row span.label {
  float: left;
  width: 130px;
  text-align: right;
}
/*
 * Hiermit wird der Ein/Ausgabe-Bereich des Formulars auf die rechte Seite
 * der umgebenden Box gezogen.  Die Gesamtbreite des Bereichs muss
 * vorgegeben werden.
 */
div.row span.formw {
  float: right;
  width: 170px;
  text-align: left;
}
/* ***************************************************************************
 *
 * Formatierungsanweisungen fuer die Liste der Bestellungen
 *
 * ***************************************************************************/
table.orderlist {
  text-align: left;
}
/* 
 * Die Zeilen der Tabelle sollen alternierend mit unterschiedlichen 
 * Farben dargestellt werden.
 */
table.orderlist .even {
  background-color: white;
}
table.orderlist .odd {
  background-color: white;
}
table.orderlist td {
  padding-right: 10px;
}
/*
 * Jede Zeile enthält einen Button, der auf Klick die jeweilige Bestellung
 * anzeigen soll. Der Button soll aber nicht wie ein Button sondern wie ein
 * Link angezeigt werden.
 */
table.orderlist input.button {
  background: transparent;  /* Ohne grauen Hintergrund und */
  border: none;             /* ohne Rand sehen wir nur noch den normalen Text.*/
  color: darkblue;
  margin: 0px;
  padding: 0px;
  width: 100%;              /* Damit lässt der IE den überbreiten Rand weg. */
  text-align: left;
  cursor: hand;             /* Damit wechselt der IE bei hover den Cursor. */
}
/*
 * Wird leider nur von Mozilla und Co unterstützt: Bei hover den Button-Text
 * in Bold anzeigen.
 */
table.orderlist > input.button:hover {
  font-weight: bold;
}
/* ***************************************************************************
 *
 * Formatierungsanweisungen fuer das Impressum
 *
 * ***************************************************************************/
#impressum {
  float: left;
  padding: 20px;
  font-size: 14px;
}
#impressum div.title {
  font-weight: bold;
  color: darkblue;
  text-align: left;
  font-size: 16px;
}
#impressum div.haftung {
  margin-right: 10%;
  text-align: justify;
}
/*
 * Box um die Adress-Angabe im Impressum.  Wesentlich ist, das hier eine Breite
 * vorgegeben wird.
 */
#impressum div.data {
  float: left;
  width: 450px;
}
/*
 * Hiermit wird der Label-Bereich des Formulars auf die linke Seite der
 * umgebenden Box gezogen.  Die Gesamtbreite des Labelbereichs muss
 * vorgegeben werden.
 */
#impressum div.row {
  clear: both;
}
#impressum span.label {
  float: left;
  width: 230px;
  text-align: left;
}
/* ***************************************************************************
 *
 * Formatierungsanweisungen fuer die Liste der Bestellpositionen
 *
 * ***************************************************************************/
table.poslist {
  text-align: left;
  border-width: 1px;
  border-style: solid;
  border-color: black;
  border-collapse:collapse;
  empty-cells: show;
}
table.poslist th {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 10px;
  border-style: none;
  border-width: 1px;
  border-bottom-style: solid;
  border-color: black;
  color: black;
}
table.poslist tfoot {
  border-style: solid;
  border-color: black;
  border-width: 1px;
  font-weight: bold;
  color: black;
  text-align: right;
}
table.poslist td.price {
  text-align: right;
}
/* 
 * Die Zeilen der Tabelle sollen alternierend mit unterschiedlichen 
 * Farben dargestellt werden.
 */
table.poslist .even {
  background-color: white;
}
table.poslist .odd {
  background-color: white;
}
table.poslist td {
  padding-right: 10px;
}
div.navigation {
  display: none;
  margin-top: 20px;
}
div.navigation input {
  margin-left: 15px;
}
