/*** Resets ***/

body,
div,
h1,
h2,
h3,
ul,
li,
p,
pre,
input,
textarea,
button {
    margin: 0;
    padding: 0;
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.25;
}

/*** General Typography ***/

body {
    color: #303030;
}

h1,
h2 {
    clear: both;
    margin: 0;
    padding: 0;
    text-align: center;
}
h1 {
    font-size: 200%;
}
h2 {
    font-size: 125%;
    line-height: .96;
    margin-bottom: 1em;
    border-bottom: .05em solid;
}
h3 {
    margin-bottom: 1.25em;
}
p {
    margin: 1.25em 0;
}
ul ul {
    margin: 1.25em 0;
}
ul ul li {
    list-style: disc;
}
a {
    text-decoration: none;
}
a:link {
    color: #85ac40;
}

a:visited {
    color: #61883b;
}

/*** Print Settings ***/

@media print {
    body {
        color: black;
    }
    body .events {
        width: 100%;
    }
    a:link,
    a:visited {
        color: black;
    }
    .archives {
        display: none;
    }
}

/*** Event Sections ***/

.events {
    width: 46%;
    margin: 0 2% 1.25em 2%;
}
.events > ul {
    list-style: none;
}
.events > ul > li {
    padding: 1.25em 1em 1.25em 0;
}
.events .date {
    float: left;
}
.events h3,
.events p,
.events ul ul {
    margin-left: 8em;
}
.events > ul > li {
    clear: left;
}
.events > ul > li.empty {
    text-align: center;
    font-style: italic;
    padding: 1.25em 0;
}

/*** Dates ***/

.date {
    text-align: center;
    width: 4em;
    margin-top: -2.5em;
    margin-bottom: 1.25em;
}
.start.end.date {
    width: 8em;
}
.start .day {
    background: url('border.png') right no-repeat;
}
.end .day {
    background: url('border.png') left no-repeat;
}
.start.end .day {
    background: none;
}
.date > * {
    display: block;
}
.day {
    font-size: 200%;
}
.month {
    text-transform: uppercase;
    margin-top: -3.125em;
    height: 2.5em;
}
.events .day {
    margin-top: .3125em
}
/*** Individual Event Section Overrides ***/

.upcoming {
    float: left;
    clear: left;
}
.recent {
    float: right;
}

/*** Metadata ***/

.meta {
    margin-bottom: 0;
    padding-top: 0;
    margin-top: 0;
}
.meta li {
    list-style: none;
}
.meta img {
    vertical-align: -.15em;
    width: 1em;
    height: 1em;
}
li.tag {
    display: inline;
    background: url('http://media.djangoevents.com/tag_green.png') left .15em no-repeat;
}
li.tag + li.tag {
    background: url('border.png') -8px .6em no-repeat;
    margin: 0;
    padding-left: .4em;
}

/*** Archives ***/

.archives {
    clear: both;
    text-align: center;
    margin-bottom: 1.25em;
}
.archives li {
    list-style: none;
    display: inline;
}
.archives li + li {
    padding-left: .9em;
    background: url('border.png') left center no-repeat;
}

/*** Forms ***/

form {
    margin: 1.25em 0;
}
form table {
    width: 100%;
}
input {
    border: .1em solid #303030;
    width: 99.75%;
}
#username {
    background: url('user_green.png') .1em center no-repeat;
    padding-left: 1.25em;
    padding-right: .25em;
    width: 10em;
}
button {
    border: .1em solid #303030;
    margin: 0 .5em;
}
#username,
#username + button {
    background-color: #E0FFB8;
    border: solid #94DA3A;
    border-width: .1em 0;
    color: #234F32;
}
#username + button {
    border-width: .1em;
}

/*** Day Page Overrides ***/

#day .current h2 {
    display: none;
}

#day .current .date {
    margin-top: 0;
    margin-left: -2em;
    margin-bottom: .625em;
    float: left;
}
#day .current.events {
    margin: 1.25em auto;
    width: 60%;
}
#day .current.events > ul > li {
    background: none;
    clear: none;
    margin-left: 4em;
    padding: 0;
    border: none;
}
#day .current.events > ul > li + li {
    margin-top: 1.25em;
}
#day .current.events > ul > li > * {
    margin-left: 0;
}
#day .current.events > ul > li.empty {
    padding: 2.5em 0;
}
#day h2 {
    margin: 0;
}
#day .events > ul > li + li {
    padding-top: 0;
}
#day h3 ~ p {
    margin-top: -1.25em;
}
#day h3 ~ .meta {
    margin-top: -1.25em;
}

/*** Detail Page Overrides ***/

#detail {
    width: 50%;
    margin: 1.25em auto;
}
#detail h2.date,
#detail h2.time {
    border: none;
    float: none;
    width: auto;
    margin: 0;
}
#detail .meta {
    margin-bottom: 1.25em;
}
.attendees {
    margin-bottom: 1.25em;
}
.attendees li {
    list-style: none;
    width: 33%;
    float: left;
}
.attendees img {
    margin-right: .25em;
    width: 1em;
    height: 1em;
    vertical-align: -.15em;
}
#detail form {
    text-align: center;
}

/*** Year and Tag Page Overrides ***/

#year,
#tag {
    margin-top: 1.25em;
}

#year .events,
#tag .events {
    margin: 1.25em auto;
}
#year .date,
#tag .date {
    margin-top: -1.875em;
}
#year h3,
#year .meta,
#tag h3,
#tag .meta {
    margin-bottom: 0;
    padding: 0;
}
#year .events > ul > li,
#tag .events > ul > li {
    clear: none;
    padding-top: 0;
}
#tag .date {
    margin-top: -1.25em;
}

/*** About and Error Page Overrides ***/

#about,
#error {
    width: 50%;
    margin: 1.25em auto;
}
#about h1,
#error h1 {
    margin-top: 0;
    margin-left: -3.25em;
    float: left;
    font-size: 400%;
}
#about h2,
#error h2 {
    position: absolute;
    left: 10%;
    width: 15%;
    padding: 1em 50% 0 0;
    font-size: 125%;
    text-align: center;
    border-top: .05em solid;
    border-bottom: none;
}
#about p,
#error p {
    margin-top: 0;
}
#about p + p,
#error p + p {
    margin-top: 1.25em;
}
#about h2 + p,
#error h2 + p {
    margin-top: 2.5em;
}

/*** Form Page Overrides ***/

#form {
    width: 50%;
    margin: 1.25em auto;
}
#form form {
    margin-left: -7em;
}
#form th:first-child {
    width: 7em;
    text-align: left;
}
#form th img {
    vertical-align: -.15em;
    margin-right: .25em;
}

