html {
    background: #ebebec url("../img/background.png");
}

body {
    background: url("../img/body-background.png") repeat-x;
    min-height: 574px;
}

div#container {
    width: 834px;
    background: white;
    position: relative;
    margin: 0px auto 0px auto;
    padding: 0px 1px 0px 1px;
}

div#header {
    height: 87px;
    position: relative;
}

a#logo {
    position: absolute;
    top: 11px;
    left: 12px;
    width: 252px;
    height: 67px;
}

/*
    Mini shopping cart.
*/

div#mini-cart {
    position: absolute;
    width: 230px;
    top: 18px;
    right: 30px;
    background: url("../img/shopping-cart.png") top left no-repeat;
    padding: 0px 0px 2px 0px;
}

p.view-cart {
    text-align: right;
}

div#mini-cart h2 {
    color: white;
    font-size: 100%;
    margin: 1px 0px 7px 10px;
}

div#mini-cart h2 a {
    color: white;
    float: right;
    margin: 0px 11px 0px 0px;
    font-size: 90%;
}

div#mini-cart p {
    margin: 0px 10px 5px 10px;
}

div#mini-cart span {
    float: right;
}

/*
    Primary navigation.
*/

ul#nav-primary {
    height: 32px;
    list-style: none;
    padding: 0px 11px 0px 11px;
    margin: 0px 0px 2px 0px;
}

ul#nav-primary li,
ul#nav-primary li a {
    height: 32px;
    float: left;
    width: 116px;
    line-height: 30px;
    text-align: center;
    margin: 0px 0px 0px 0px;
}

ul#nav-primary li a {
    color: white;
    font-weight: bold;
    letter-spacing: -0.6px;
    font-size: 96%;
    background: #99cc33 url("../img/nav-primary.png");
    text-decoration: none;
}

ul#nav-primary li a:hover {
    background-image: url("../img/nav-primary-hover.png");
}

ul#nav-primary li a.here,
ul#nav-primary li a.here:hover {
    background-color: #a9e138; 
    background-image: url("../img/nav-primary-here.png");
}

ul#nav-primary li.first a {
    background-image: url("../img/nav-primary-first.png");
}

ul#nav-primary li.first a:hover {
    background-image: url("../img/nav-primary-first-hover.png");
}

ul#nav-primary li.first a.here,
ul#nav-primary li.first a.here:hover {
    background-image: url("../img/nav-primary-first-here.png");
}

ul#nav-primary li.last a {
    background-image: url("../img/nav-primary-last.png");
}

ul#nav-primary li.last a:hover {
    background-image: url("../img/nav-primary-last-hover.png");
}

ul#nav-primary li.last a.here,
ul#nav-primary li.last a.here:hover {
    background-image: url("../img/nav-primary-last-here.png");
}

/*
	Upload form.
*/

div#upload-form {
    height: 47px;
    position: relative;
    background: #f1f2f2 url("../img/upload-form.png");
    margin: 0px 0px 3px 0px;
}

button#go {
    position: absolute;
    left: 550px;
    top: 10px;
    width: 39px;
    height: 24px;
    background: url("../img/go-button.png") top left no-repeat;
    border: none;
    cursor: pointer;
}

button#go:hover {
    background-image: url("../img/go-over.png");
}

button#go span {
    display: none;
}

input#go:hover {
    position: absolute;
    left: 550px;
    top: 10px;
}

img#uploading {
    position: absolute;
    top: 16px;
    left: 605px;
    display: none;
}

div#upload-form input#id_image {
    position: absolute;
    top: 11px;
    right: 286px;
    cursor: pointer;
}

div#fake-upload {
    display: none;
}

div#fake-browse {
    background: url("../img/browse-off.png") top left no-repeat;
    width: 70px;
    height: 24px;
    position: absolute;
    top: 10px;
    left: 471px;
}

div#fake-browse:hover {
    background-image: url("../img/browse-over.png");
}

div#fake-input {
    width: 255px;
    height: 26px;
    line-height: 23px;
    position: absolute;
    top: 11px;
    left: 208px;
    overflow: hidden;
    font-size: 120%;
    padding: 0px 0px 0px 7px;
    background: url("../img/fake-input.png") top left no-repeat;
}

/*
    Breadcrumbs.
*/

div#breadcrumbs {
    padding: 6px 15px 11px 15px;
    margin: 0px 0px 15px 0px;
    font-weight: normal;
    font-size: 90%;
    position: relative;
    background: #f3f3f4 url("../img/content-top.png") bottom left no-repeat; 
}

/*
    Primary content.
*/

div#content-primary {
    padding: 0px 25px 10px 25px;
    width: 540px;
    float: left;
    position: relative;
}

/*
    Secondary content.
*/

div#content-secondary {
    width: 225px;
    padding: 13px 15px 0px 4px;
    float: left;
    margin: -15px 0px 0px 0px;
    position: relative;
}

/*
    News feed.
*/

div#news-feed,
div#homepage-buttons {
    background: #e6e7e8 url("../img/news-feed-background.png") top left no-repeat;
}

div#homepage-buttons {
    margin: 0px 0px 20px 0px;     
}

div#news-feed h2,
div#homepage-buttons h2 {
    background: #96c832 url("../img/news-feed-title.png");
    height: 23px;
    color: white;
    line-height: 22px;
    padding: 0px 10px 0px 10px;
    font-size: 100%;
}

div#homepage-buttons h2 {
    margin: 0px 0px 0px 0px;     
}

div#news-feed h2 a {
    color: white;
    text-decoration: none;
}

div#news-feed ul,
div#homepage-buttons ul,
ul.news-feed {
    list-style: none;
}

div#homepage-buttons li {
    margin: 0px 0px 5px 0px;
    height: 90px; 
}

ul.news-feed {
    background: url("../img/horizontal-rule.png") top left no-repeat;
    padding: 20px 0px 0px 0px;
}

div#news-feed li {
    margin: 0px 10px 10px 10px;
    padding: 0px 0px 20px 0px;
    background: url("../img/news-separator.png") bottom left no-repeat;
}

ul.news-feed li {
    margin: 0px 0px 20px 0px;
    padding: 0px 0px 10px 0px;
    background: url("../img/horizontal-rule.png") bottom left no-repeat; 
}

div#news-feed li.last {
    background: none;
}

div#news-feed li p {
    margin: 0px 0px 0px 0px;
}

div#news-feed h3,
ul.news-feed h2 {
    color: #99cc33;
    font-size: 125%;
    margin: 0px 0px 10px 0px;
}

div#news-feed h3 a,
ul.news-feed h2 a {
    text-decoration: none;
}

div#news-feed h3 span.date,
ul.news-feed h2 span.date {
    color: #808080;
    font-size: 80%;
    display: block;
}

/*
    Footer.
*/

div#footer {
    border-top: 1px #d2d4d5 solid;
    margin: 0px -1px 0px -1px;
    height: 42px;
    background: #a7a9ac;
    font-size: 90%;
    position: relative;
    clear: both;
}

div#footer,
div#footer a {
    color: #e1e3e4;
}

div#footer p {
    position: absolute;
    top: 5px;
}

p#site-info {
    left: 25px;
}

p#votelinks {
    right: 25px;
}

/*
	Forms.
*/

div.form {
    float: left;
    clear: left;
    width: 530px;
    margin: 0px 0px 0px 0px;
    padding: 7px 10px 7px 10px;
    display: inline;
}

div.submit {
    padding-left: 160px;  
}

div.alt {
    background: #eeeeee;    
}

div.checkbox {
    background: none;    
}

span.checkbox {
    display: block;
}

span.checkbox label {
    width: 400px;
    margin-left: 10px;
}

ul.errorlist {
    color: #800000;
    font-weight: bold;
    float: left;
    clear: both;
    margin: 5px 0px 0px 150px;    
}

label {
    width: 150px;
    float: left;
    font-weight: bold;
}

input,
textarea,
select {
    float: left;
    padding: 2px 2px 2px 2px;
    border: 1px #808080 solid;
    color: #58595b;
    margin-right: 5px;
}

input.image {
    border: none;
}

input[type=hidden] {
    display: none;
}

div.error input,
div.error textarea,
div.error select {
    background: #FFd0d0;
}

input.submit {
    color: white;
    font-weight: bold;
    width: auto;
    height: 25px;
    padding: 0px 10px 3px 10px;
    background: #97ca32;
    border-top: 2px #cee3a6 solid;
    border-bottom: 2px #729926 solid;
    border-left: 2px #9bc546 solid;
    border-right: 2px #9bc546 solid;
    cursor: pointer;
}

input.submit:hover {
    background: #a7da42;
    border-top: 2px #def3b6 solid;
    border-bottom: 2px #82a936 solid;
    border-left: 2px #abd556 solid;
    border-right: 2px #abd556 solid;
}

optgroup {
    font-style: normal;
    margin: 5px 0px 0px 0px;
    font-weight: bold;
}

input#id_title {
    width: 75px;
}

input.button_send-message {
    width: 58px;
    height: 24px;
    border: none;
    background: url("../img/send-off.png") top left no-repeat;
}

input.button_send-message:hover {
    border: none;
    background-image: url("../img/send-over.png");
}

input.button_next {
    width: 62px;
    height: 24px;
    border: none;
    background: url("../img/next-off.png") top left no-repeat;
}

input.button_next:hover {
    border: none;
    background-image: url("../img/next-over.png");
}

input.edit_canvas {
    width: 97px;
    height: 24px;
    border: none;
    background: url("../img/edit-canvas-off.png") top left no-repeat;
}

input.edit_canvas:hover {
    border: none;
    background-image: url("../img/edit-canvas-over.png");
}

div.name_contact_me {
    margin-top: 20px;
}

input#id_postcode {
    width: 100px;
}

div.name_use_same_delivery_details {
    margin-bottom: 20px;
}

/*
    Drop shadows.
*/

div.shadow-outer {
    position: absolute;
    top: 90px;
    left: 30px;
    background: url("../img/drop-shadow.png") bottom left no-repeat;
}

div.shadow-left {
    float: left;
    background: url("../img/drop-shadow-left.png") top left no-repeat;
}

div.shadow-right {
    float: left;
    background: url("../img/drop-shadow-right.png") bottom right no-repeat;
    padding: 0px 0px 4px 6px;
}

/*
    Hacks for delivery details content secondary.
*/

body.type_billingdetailspage div#content-secondary,
body.type_deliverydetailspage div#content-secondary {
    padding-top: 30px;
}