.bold {
  font-weight: bold;
}
div, body, p, ul, form, h1, h2, h3, th, td, table, input, select {
  font-size: 16px;
  font-family: Palatino Linotype, Times, Serif;
}
input, select {
  font-size: 14px;
}
h1 {
  font-size: 27px;
  font-weight: bold;
  margin: 10px 0px 6pt;
}
h2 {
  font-size: 22px;
  font-weight: bold;
  margin: 12pt 0px 6pt;
  border-bottom: #4A452A 1px solid;
}
h3 {
  font-size: 18px;
  font-weight: bold;
  font-variant: small-caps;
  margin: 0pt 0px 6pt;
}
p {
  margin: 0px 0px 12pt;
}
span.required {
  color: red;
  background: inherit;
  font-style: normal;
}
a {
  color: #953735;
  background: inherit;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
ul {
  margin: 9pt 0px 9pt 30pt;
  list-style: square outside;
}
th {
  text-align: center;
  font-style: italic;
  padding: 2px;
}
td {
  font-size: 14px;
  padding: 2px;
}

p.intro {
  text-align: justify;
}

/* -- Errors -- */
.error {
  background: #fba url(error.gif) 2% 50% no-repeat;
  color: black;
  border: #c00 1px solid;
  text-align: center;
  font-weight: bold;
  padding: 6px 60px;
  margin: 12px 0px;
  list-style: none outside;
}
p.error {
  background-image: none;
  font: 14px Monospace;
}

/* -- Pane -- */
.pane {
  margin: 12px 0px;
  padding: 6px 12px;
  background: #BFBFBF;
  color: black;
  /*border: #4A452A 1px solid;*/
}

.security li {
  margin: 6px 0px 0px;
}
.securityLink {
  text-align: right;
  font-size: 11px;
}

.associactions {
  text-align: center;
  line-height: 80%;
}

/*.constraintsImage {
  background: #cdf url(search.gif) 100% 5% no-repeat;
  color: inherit;
}*/
.constraints input, .constraints select {
  font-size: 13px;
  width: 300px;
}
.constraints select {
  width: 304px;
}
.constraints input.between {
  width: 100px;
}
.constraints .label {
  width: 120px;
}

.category, .keywords {
  background: #BFBFBF url(books.gif) 100% 5% no-repeat;
  color: inherit;
  min-height: 130px;
}
.category p, .keywords p {
  margin: 0px;
}

.address {
  background: #BFBFBF url(address.gif) 100% 5% no-repeat;
  color: inherit;
}
.address input, .address select {
  font-size: 13px;
  width: 240px;
}
.address td {
  text-align: left;
  vertical-align: middle;
}
.address sup {
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
}

.address a {
  background: transparent;
}

.payment {
  background: #BFBFBF url(payment.gif) 100% 5% no-repeat;
  color: inherit;
}
.payment input {
  font-size: 13px;
}
.payment td {
  padding: 2px 2px 12px 2px;
  vertical-align: top;
}
.payment table table td {
  vertical-align: middle;
  padding: 2px;
}
.payment table table td input {
  width: 200px;
}

div.columns table td {
  vertical-align: top;
  width: 50%;
}
div.columns table td.border {
  border-left: #4A452A 1px solid;
  padding-left: 10px;
}
div.columns table p {
  margin: 6px 0px 0px 0px;
  padding: 0px;
}

/* -- List -- */
.list {
  /*border: #4A452A 1px solid;*/
  margin: 12px 0px;
}
.list table {
  width: 100%;
}
.list td {
  vertical-align: top;
}
.list td.number {
  /*text-align: right;*/
  text-align: left;
  width: 70px;
  padding: 2px 5px;
}
.list td.index {
  text-align: right;
  width: 20px;
}
.list td.desc {
  text-align: justify;
}
.list td.desc p.annotation {
  font-size: 13px;
  font-style: italic;
  margin: 3px 0px 0px 0px;
}
.list td.desc p.keywords {
  font-size: 13px;
  margin: 3px 0px 0px 0px;
  background: none;
  min-height: 0px;
}
.list td.desc p.image {
  float: right;
  margin: 0px;
}
.list td.price {
  text-align: right;
  padding: 2px 2px 2px 2px;
  width: 90px;
}
.list td.amount {
  text-align: center;
  padding: 2px 2px 2px 2px;
  width: 70px;
}
.list td.order {
  width: 21px;
  padding-right: 6px;
}
.list input {
  font: 9pt Tahoma, Helvetica, Sans-Serif;
  padding: 0px;
  margin: 0px;
  text-align: center;
}
.list select {
  font: 9pt Tahoma, Helvetica, Sans-Serif;
}
.list th {
  border-bottom: #4A452A 1px solid;
  background: #BFBFBF;
  font-weight: normal;
  font-size: 11px;
  font-style: italic;
  padding: 0px 0px 2px 0px;
  padding: 2px 5px;
  text-align: left;
}
.list th.center {
  /*text-align: center;*/
}
.list th.right a {
  text-align: right;
  padding-right: 27px;
}
.list th a {
  color: black;
  display: block;
  background: transparent url(sort.gif) top right no-repeat;
}
.list th a.sortDesc {
  background: transparent url(sort_desc.gif) top right no-repeat;
}
.list th a.sortAsc {
  background: transparent url(sort_asc.gif) top right no-repeat;
}
.list th a:hover {
  background: #def url(sort_active.gif) top right no-repeat;
  text-decoration: none;
  color: black;
}
.list th b {
  font-size: 18px;
}
.list tfoot td {
  text-align: left;
  border-top: #4A452A 1px solid;
  background: #BFBFBF;
}
.list tfoot td {
  padding: 2px 6px;
  text-align: right;
}
.list tfoot td.left {
  text-align: left;
}

.list tbody td {
  text-align: right;
}
.list tbody tr.even {
  /*background: #feb;*/
  background: #8EB4E3;
  color: inherit;
}
.list tbody tr.odd {
  /*background: #fd8;*/
  background: #C6D9F1;
  color: inherit;
}
.list tbody tr.active {
  /*background: #def;*/
  background: white;
  color: inherit;
  cursor: pointer;
}

.agbOrder p {
  margin: 0px;
}

/* -- List components -- */
.listControl {
  font-size: 14px;
  text-align: center;
}
.listControl input,
.listControl select {
  font-size: 11px;
  padding: 0px;
}
.listControl td {  
  vertical-align: middle;
  margin: 0px;
  padding: 0px 3px;
}

.pager table {
  width: 100%;
}
.pager input {
  font-size: 11px;
}
.pager .jump {
  width: 180px;
  text-align: right;
}
.pager .jump table,
.pager .jump table td {
  padding: 0px 3px;
  margin: 0px;  
  width: auto;
}

/* -- Command -- */
.command table {
  width: 100%;
}
.command table td {
  padding: 0px 6px;
  margin: 12px;
}
.noSSL {
  margin-top: 10px;
  color: gray;
}
.noSSL input {
  color: #333;
  font-size: 11px;
}

/* -- Detailansicht -- */
.detail {
  overflow: auto;
}
.detail table {
  width: 100%;
}
.detail td {
  vertical-align: top;
}
.detail td.picture {
  text-align: center;
  font-size: 13px;
  font-style: italic;
  margin: 0px;
  padding: 0px;  
}
.detail .picture img {
  max-width: 300px;
}
.detail td p {
  font-size: 17px;
}
.detail td .description {  
  text-align: justify;
  margin: 0px 6px 0px 0px;
}
.detail td .comment {
  font-size: 14px;
  font-style: italic;
  text-align: justify;
  margin: 6px 6px 0px 0px;
}
.detail td ul.additional {
  font-size: 120%;
  padding: 0px;
  margin: 20px 0px 6px 25px;
  list-style-type: square;
}
.detail td .price {
  font-size: 140%;
  font-weight: bold;
  margin: 20px 0px 0px;
}
.detail .order {
  margin: 0px;
  padding: 0px;
}
.detail .order input[type=text] {
  text-align: center;
  font-size: 12px;
}

/* -- Empfehlungen -- */
/*.recommendations table {
  margin-bottom: 12pt;
}
.recommendations td {
  font-size: 13px;
  border: #89b 1px solid;
  background: #cdf;
  padding: 10px;
  width: 25%;
  vertical-align: top;
}*/
.recommendations a,
.recommendationBig a {
  color: black;
}
.recommendations a:hover,
.recommendationBig a:hover {
  text-decoration: none;
  color: #953735;
}

.recommendationBig table {
  /*border-collapse: separate;
  border-spacing: 10px; */
}
.recommendationBig td {
  background: #BFBFBF;
  color: black;
  /*border: #4A452A 1px solid;*/
  border-right: white 10px solid;
  border-bottom: white 10px solid;
  /*margin: 5px;*/
  width: 50%;
  vertical-align: top;
  padding: 5px
}
.recommendationBig .image {
  float: left;
  margin-right: 5px;
}
.recommendationBig .image img {
  height: 300px;
}
.recommendationBig .clearLeft {
  clear: left
}

.admin table.recommended {
  background: #BFBFBF;
  color: black;
}
.admin table.recommended td,
.admin table.recommended th {
  border: #4A452A 1px solid;
  padding: 2px 8px;
}

