/**
 * Common Styles
 */
* {
    margin: 0;
    padding: 0;
}

body {
    background: #7a766a;
    margin: 0;
    font-family: Helvetica, Arial;
    font-size: 13px;
    color: #000;
    line-height: 18px;
}

address {
    white-space: pre;
}

img {
    border: 1px solid #333;
}

h1 {
    font-size: 1.2em;
    margin: 1.2em 0 .8em;
}

h2 {
    font-size: 1em;
    margin: 1em 0 .8em;
}

h1.pagetitle {
    color: #77ac3a;
    margin-top: 0;
    margin-bottom: .6em;
    padding: 0;
    font-size: 2.4em;
    line-height: 1em;
}

h1.pagetitle span.sub {
    color: #444444;
    letter-spacing: .15em;
    text-transform: uppercase;
    display: block;
    font-size: .5em;
    margin-bottom: -.2em;
}

a {
    margin: 0;
    padding: 0;
    color: #444;
    text-decoration: underline;
}

a:hover {
    text-decoration: underline;
    color: #acca57;
}

a img {
    border: none;
}

p {
    margin: 0 0 .6em 0;
}


ul, ol {
    margin: 1em 0 1em 1.5em;
}

dl {
    margin: 1em 0;
}

dt {
    margin-bottom: -2.5ex;
}

dd {
    margin-left: 10em;
    margin-bottom: .6em;
}

table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}

table td {
    border: 1px solid #666;
    padding: .2em;
}

table thead td,
table tr.head td {
    background: #ddd;
    font-weight: bold;
}

input[type="text"],
input[type="email"],
input[type="password"],
textarea {
    border: 1px solid black;
    padding: .1em;
    width: 25em;
}

textarea {
    height: 8ex;
}

label {
    color: black;
    font-weight: normal;
}

label.required {
    color: #333;
    font-weight: bolder;
}

div.wrap {
    width: 1000px;
    margin: 0 auto;
}

/**
 * HEADER
 */
#header, #header .wrap {
    background: url(/static/img/header-bg.png) top repeat-x;
    height: 144px;
    text-align: right;
}

#header .inner {
    padding: 0 50px 0 15px;
}

#header h1 {
    display: none;
}

#header a.logo {
    padding-top: 20px;
    display: block;
    float: left;
}

#header ul {
    list-style: none;
    margin-top: 1.8em;
}

#header ul li {
    display: inline;
    padding: 0 1px .2em;
    margin-left: .8em;
}

#header ul li.active {
    border-bottom: 5px solid #acca57;
}

#header ul li a {
    text-decoration: none;
    color: #333;
    font-weight: bold;
}


/**
 * USERMGMT
 */
#usermgmt {
    background: #333;
    padding: .4em .8em .2em;
    color: #ccc;
    display: inline;
    border-radius: 0 0 5px 5px;
}

#usermgmt a {
  color: #ccc;
  text-decoration: none;
}


/**
 * QUICKSEARCH
 */
#quicksearch {
    margin-top: 2.5em;
}

#quicksearch input[type="text"] {
    border: 1px solid #999;
    background: #fff;
    color: #444;
    width: 12em;
}

#quicksearch img {
    cursor: pointer;
    float: right;
    margin-top: -5px;
    padding-left: .5em;
    border: none;
    background: none;
}


/**
 * PAGE
 */
#page {
    background: #7a766a url(/static/img/page-bg.png) center repeat-y;
}

#page .top {
    background: url(/static/img/page-top.png) top no-repeat;
    padding: 30px 65px 0 30px;
    min-height: 200px;
}

#bottom {
    clear: both;
    background: red;
    margin-top: 2em;
    padding: 1em 65px 1px 30px;
    background: url(/static/img/page-dark.png) center repeat-y;
    color: #ccc;
}

#bottom hr {
    border: none;
    border-top: 2px solid #333;
    border-bottom: 2px solid #333;
    height: 4px;
    margin-bottom: 1em;
}

#bottom h2 {
    color: #77ac3a;
    font-size: 1.4em;
    margin-top: 0;
}

#bottom ul {
    list-style: none;
    margin-left: 0;
}

#bottom ul li {
    background: #222;
    padding: 2px;
    margin-bottom: .5em;
}

#bottom a {
    color: #ccc;
}

#bottom a:hover {
    color: #77ac3a;
}

/**
 * FOLLOW BUTTON
 */
#follow {
    position: absolute;
    margin-top: 45px;
    margin-left: 952px;
}

/**
 * FLASH MESSAGES
 */
#flash_messages {
    list-style: none;
    margin: 0 0 1.5em 0;
}

#flash_messages li {
    background: #ffa;
    margin-left: 0;
    padding: .2em .4em;
    border-top: 1px solid #dd4;
    border-bottom: 1px solid #dd4;
}


/**
 * FOOTER
 */
#footer {
    background: #7a766a url(/static/img/page-bottom.png) top no-repeat;
    color: #111;
    clear: both;
    padding: 22px 65px 15px 20px;
}

#page.with_bottom #footer {
    background-image: url(/static/img/page-bottom-dark.png);
}

#footer a {
    color: #111;
    text-decoration: none;
}

#footer a:hover {
    color: #acca57;
    text-decoration: underline;
}


/**
 * CALENDAR
 */
table.calendar {
    table-layout: fixed;
}

table.calendar thead td {
    text-align: center;
    background: none;
}

table.calendar thead td img.weather {
    width: 1.8em;
    height: 1.5em;
    float: right;
    border: none;
    background: none;
}

table.calendar tbody td {
    vertical-align: top;
    line-height: 1.2em;
}

table.calendar tbody.monthview td {
    height: 8.5em;
}

table.calendar tbody td a.day {
    display: block;
    text-decoration: none;
    text-align: right;
}

table.calendar tbody td img.weather {
    width: 1.2em;
    height: 1em;
    float: left;
    background: none;
    border: none;
}

table.calendar tbody td.other {
    color: #999;
}

table.calendar tbody td.other a.day {
    color: #999;
}

table.calendar tbody td.today {
    background: #ffc;
}

table.calendar div.event {
    background: #dedede;
    margin: 2px 0;
    text-align: left;
    padding: 2px;
    font-size: .85em;
    overflow: hidden;
}

table.calendar div.event a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
}

table.calendar span.time {
    font-weight: bold;
    font-size: .9em;
}

table.calendar thead tr.title td {
    border-left: none;
    border-right: none;
    border-top: none;
}

div.calendar_navigation {
    padding-top: 1em;
    text-align: right;
    padding-bottom: 1.5em;
    float: right;
}

div.calendar_navigation form {
    margin-bottom: 1em;
}

div.calendar_navigation a,
div.calendar_navigation .month,
div.calendar_navigation .day,
div.calendar_navigation .today {
    padding: .2em .6em;
    border: 1px solid #444;
    margin-left: .2em;
    background: #e8e8e8;
    text-decoration: none;
    color: #111;
}

div.calendar_navigation strong.month,
div.calendar_navigation strong.day {
    background: none;
}

div.calendar_navigation .month {
    margin: 0 .5em 0 0;
    border-left: none;
}

div.calendar_navigation .day {
    margin: 0 0 0 .5em;
}

div.calendar_navigation .today {
    margin-right: .5em;
}


/**
 * PAGINATION
 */
p.pagination {
    margin-top: 1em;
    margin-bottom: .5em;
}

p.pagination a, p.pagination span.current {
    border: 1px solid #666;
    color: #666;
    padding: .1em .3em;
    text-decoration: none;
}

p.pagination span.ellipsis {
    color: #666;
    padding: .1em .3em;
}

p.pagination a:hover {
    color: #acca57;
    border-color: #acca57;
}

p.pagination span.current {
    color: #000;
    border-color: #000;
    background: #dfdfdf;
    font-weight: bold;
}

p.pagination strong {
    margin-right: .5em;
    color: #333;
}




img.button, a img.button { border: none; }

.picture {
  float: right;
  margin: 0 0 1em 1.5em;
  padding: 0;
}

.picture img {
  padding: 0;
  margin: 0;
}

.meta {
  color: #222;
  font-size: .9em;
  font-weight: normal;
}

span.meta {
  font-style: italic;
}

#f_streetnr {
  width: 4em;
}

#f_titel, #f_plz {
  width: 6em;
}

.rightbox {
  float: right;
  margin-left: 1em;
  background: #d1f5aa;
  border: 1px dashed #999;
  padding: .5em 1em .5em .5em;
}

.rightbox h3 {
  margin: .2em 0 .3em;
}

.rightbox ul {
    margin: .4em .5em .4em 1.2em;
}

.rightbox dt, .box dt {
    margin-bottom: 0;
}

dd.left {
  float: left;
}

ul.errors {
  list-style: none;
  color: #cc0000;
  margin: .2em 0 .5em;
}

#subnav {
    clear: both;
    padding-top: 5px;
}

#subnav a {
    text-decoration: none;
}

#subnav a:hover {
    text-decoration: underline;
}

p.actions a img {
  border: none;
}

p.actions {
  margin-top: 2em;
}



p.buttons {
    background: #eef4dd;
    padding: .4em;
    border-top: 1px solid #acca57;
    border-bottom: 1px solid #acca57;
}

img.feed {
    margin-left: .5em;
    border: none;
}
.interactive {
    background-color: #ffa;
    padding: .2em;
    display: block;
    position: absolute;
}

div.weekday {
    color: #333;
    float: left;
    margin-left: -70px;
    padding: .2em 0;
    text-align: center;
    margin-top: 1em;
    font-size: .7em;
    width: 60px;
    background: #dedede;

}

div.weekday strong {
    font-size: 3.2em;
    display: block;
    color: #acca57;
    margin-top: .3em;
    margin-bottom: .2em;
}

iframe {
    border: 1px solid black;
}



ul.errors {
    margin: .5em 0 1em;
}

table.admin img {
    background: none;
    margin: 1em 0 .5em;
}

table.admin a {
    display: block;
    text-align: center;
}

table.admin .title {
    padding: .2em .4em;
    background: #ccc;
    font-weight: bold;
}

.box {
    background: #eef4dd;
    padding: .6em .8em 0 1em;
    border: 1px solid #acca57;
}

.box dd {
    clear: left;
    margin-left: 1em;
}

.box select {
    width: 15em;
}

.box input[type="submit"] {
    width: 100%;
    padding: .2em .5em;
}

form dd ul {
  list-style-type: none;
  margin-left: 0;
}

form dd {
    margin-bottom: 1em;
}

img.paypal {
    float: right;
    background: none;
    border: none;
}

input.ticket_amount {
    width: 5em;
}

div.paypal_info {
    margin-top: 1.5em;
    color: #222;
    font-size: .9em;
    margin-right: 140px;
}

div.paypal_info div.pay_buttons {
    margin-right: -140px;
    margin-top: 1em;
    float: right;
    text-align: center;
}

#bigimage {
    float: right;
    border: 1px solid #666;
    margin-left: 1em;
    margin-bottom: 15px;
    width: 500px;
    height: 500px;
    overflow: hidden;
}

#bigimage img, #bigimage a img {
    width: 500px;
    height: 500px;
    border: none;
}

ul#subnav {
    float: right;
    list-style: none;
    margin-left: 0;
}

p.intro {
    font-weight: bold;
    color: #333;
    font-style: italic;
}

textarea#intro {
    width: 90%;
    height: 5ex;
}

#map {
    width: 350px;
    height: 220px;
    background:#ccc;
    margin-top: 1em;
    border: 0;
}

