/* ---------- HACK for prototype.show and hide -------------- */
.hidden {
    position: absolute !important;
    left: -9999px !important;
    display: block !important;
    height: 1px;
    overflow: scroll;
}
/* ------- End of HACK for prototype.show and hide ---------- */

body { background-color: #fff; color: #333; }

body, ol, ul, td {
    font-family: verdana, arial, helvetica, sans-serif;
    font-size:   13px;
    margin:      0;
    padding:     0;
}

a img {
    border: 0;
}

h1 .inplaceeditor-form input.editor_field {
    font-family: "American Typewriter", "Bookman Old Style", "Georgia", "Courier New", serif;
    width: 600px;
}

#top {
    background: #333;
    padding-top: 1ex;
    overflow: visible;
    width: 100%;
}

#nav {
    font-variant: small-caps;
    overflow: hidden;
    width: 100%;
}
#page_nav {
    float: left;
    padding: 5px;
}
#page_nav .logo-small {
    margin-bottom: -6px;
}

#user_nav {
    float: right;
    padding: 5px;
}
#top .container {
    overflow: visible;
}

#top h1 {
    padding: 10px 0 10px 0;
    margin: 0;
    font-weight: bold;
    color: #555;
    overflow: hidden;
    width: 100%;
    line-height: 1.1em;
}

#top .thumbnail {
    float: left;
    padding-right: 0.5em;
}

#page-subtitle {
    padding-left: 1em;
    font-family: "American Typewriter", "Bookman Old Style", "Georgia", "Courier New", serif;
    font-size: 125%;
}
#scope-controls {
    margin-top: 1ex;
    font-size: 75%;
}
.trip_scope {
    white-space: nowrap;
}

.remove-link img {
    margin-bottom:  -2px;
    vertical-align: baseline;
}
.remove-link:hover {
    background-color: #ffa;
}

#body {
    overflow: visible;
    width: 100%;
    background: #eee;
}
#body .container {
    min-height: 550px;
    /* background: rgba(255,255,255,0.9) top left url(../images/white-transition.png) repeat-x scroll; */
}

#footer {
    background-color: #333;
    color: #eee;
    padding-bottom: 2em;
    padding-top: 2em;
    margin-top: -2em;
    overflow: auto;
    width: 100%;
    background: #333;
}
#footer .container {
    background-color: #555;
    color: white;
    padding-top: 2em;
}
#footer .col-3-left, #footer .col-3-mid {
    border-right: 2px dashed #333;
}
#footer .col-3-left, #footer .col-3-mid, #footer .col-3-right {
    min-height: 100px;
}
#footer ul {
    padding-left: 2em;
}
#footer li,
#footer p {
    font-size: 80%;
    margin-top: 0;
}
#footer h2 {
    padding: 0;
    margin: 0 0 0.5em 1ex;
    font-size: 15px;
    color: #aaa;
}
#footer a {
    color: #aaa;
}
#footer a:hover {
    background-color: #aaa;
    color: #666;
}

label {
    color: #334;
}

.container {
    position: relative;
    margin: 0 auto;
    width: 960px;
    background-color: white;
    overflow: auto;
    border-left: 1px solid #333;
    border-right: 1px solid #333;
    padding: 1ex;
}

pre {
    background-color: #eee;
    padding: 10px;
    font-size: 11px;
}

h1, h2, h3, h4, h5 {
    letter-spacing: -0.045em;
    color: #555;
    font-family: "American Typewriter", "Bookman Old Style", "Georgia", "Courier New", serif;
    clear: both;
}
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong {
    font-weight: bolder;
    color: black;
    font-size: 110%;
}

label {
    font-weight: bold;
}
.label {
    color: black;
}

a { color: #5674b9; text-decoration: none;}
a:visited { color: #3d5283; text-decoration: none; }
a:hover { color: #fff; background-color:#3d5283; text-decoration: none; }
/* Feedback widget */
#fdbk_close:hover {
    background-color: transparent;
}
/*
 * --------------- Top -------------------
*/
#logo {
    text-align: center;
}
#headline {
    text-align: center;
    font-size: 14pt;
    top: -24pt;
    position: relative;
    margin-left: 100px;
    color: #929ba4;
}



/*
 * --------------- Flash (common) -------------------
*/
.flash,
.notice {
    font-size: 14px;
    padding: 5px;
    margin: 1em 0 1em 0;
    border: 1px solid;
    min-height: 40px;
}

.flash h1,
.notice h1 {
    font-size: 16px;
    font-weight: normal;
}
.flash h2,
.notice h2 {
    font-size: 12px;
    color: #a6ac9d;
    font-weight: normal;
}

/*
 * --------------- Info -------------------
*/
#flash_info {
    background: #E4FFCF url("../images/happy.png") no-repeat;
    min-height: 40px;
    padding-left: 50px;
}

/*
 * --------------- Notice -------------------
*/
#flash_notice,
.notice {
    color: #c69c6d;
    border-color: #998675;
    background: #FFF5EF url("../images/sad.png") no-repeat;
    padding-left: 50px;
}

#flash_error {
    border-color: #EE8675;
    background-color: #FFDAD9;
    background: #FFF5EF url("../images/sad.png") no-repeat;
    padding-left: 50px;
}
#flash_error h1 {
    color: #EE8675;
}

/*
 * --------------- Minor, but useful, details -------------------
 */
 .minor {
     font-style: oblique;
     font-size: 80%;
     color: #999;
 }
/*
 * --------------- Errors -------------------
*/
.fieldWithErrors {
    padding: 2px;
    background-color: red;
    display: table;
}

#errorExplanation {
    width: 400px;
    border: 2px solid red;
    padding: 7px;
    padding-bottom: 12px;
    margin-bottom: 20px;
    background-color: #f0f0f0;
}

#errorExplanation h2 {
    text-align: left;
    font-weight: bold;
    padding: 5px 5px 5px 15px;
    font-size: 12px;
    margin: -7px;
    background-color: #c00;
    color: #fff;
}

#errorExplanation p {
    color: #333;
    margin-bottom: 0;
    padding: 5px;
}

#errorExplanation ul li {
    font-size: 12px;
    list-style: square;
}

.error input,
.active-scaffold .error {
    background-color: #FFDAD9;
}


/*
 * Big forms
*/
.big-input {
    height: 60px;
    padding: 5px;
    background: #F7FCFF url('/images/input_bg.png') repeat-x top right;
    padding: 5px;
    width: 655px;
    font-size: 50px;
}
.big-label {
    font-size: 40px;
    padding-right: 1ex;
}

.full-width-form {
    display: relative;
    margin: 0 auto;
    width: 80%;
}
.full-width-form label {
    display: block;
    float: left;
    clear: left;
    width: 20%;
}
.row {
    padding-bottom: 1em;
    width: 100%;
    overflow: auto;
}

/*
 * Grouping and decorators
*/
.group {

}
.group h1 {
    font-size: 18px;
}
.group h2 {
    font-size: 14px;
}
h4.date {
  text-align: right;
  border-bottom: 1px solid #ccc;
}
.separator {
    margin-top: 1px;
    border-bottom: 3px dashed #ccd;
    clear: both;
    height: 10px;
}
.clear {
    clear: both;
    height: 1px;
}
.col-2-left {
    float: left;
    width: 47%;
    position: relative;
}
.col-2-right {
    float: right;
    width: 47%;
    position: relative;
}
.col-3-left,
.col-3-mid {
    float: left;
    width: 33%;
    position: relative;
}
.col-3-right {
    float: right;
    width: 33%;
    position: relative;
}
.note {
    background: #ffd;
    padding: 2px 2px 2px 20px;
}
/* -------- Pictures container ------------ */
.pictures {
    text-align: left;
}
.pictures img {
    border: 0px;
    vertical-align: middle;
    border: 2px solid white;
}
.pictures .notice h1,
.pictures .notice h2,
.pictures .notice {
    background-image: none;
    min-height: 0px;
    border: none;
}
.pictures .notice h1,
.pictures .notice h2 {
    padding: 0;
    margin: 0;
}


/* -------- Stops and drag&drop ------------ */
li .handle {
    cursor: move;
    vertical-align: middle;
    color: lightgray;
    font-size: 80%;
}

ul.stops {
    padding-left: 0px;
    margin: 0;
}

li.stop {
    list-style: none none outside;
    display: block;
}

/* -------- Tabs ------------ */

ul.tabs {
    font-family: "American Typewriter", "Bookman Old Style", "Georgia", "Courier New", serif;
    overflow: hidden;
    width: 100%;
    list-style: none;
    padding: 0;
    border-bottom: 2px solid #ccc;
}
ul.tabs li {
    display: block;
    float: left;
    width: 10em;
    padding: 0 1em 0 2em;
    text-align: center;
}
ul.tabs li a {
    display: block;
    width: 100%;
    border: 1px solid #ccc;
    border-bottom: 0;
    color: #555;
    padding: 2px 2px 2px 2px;
}
ul.tabs li a:hover {
    background-color: #ddd;
}
ul.tabs .active {
    background-color: #ccc !important;
    font-weight: bolder;
    cursor: default;
}

/* -------- Autocomplete ---------- */
div.autocomplete {
  position:absolute;
  width:450px;
  background-color:white;
  border:1px solid #888;
  margin:0;
  padding:0;
  z-index: 9999;
}
div.autocomplete ul {
  list-style-type:none;
  margin:0;
  padding:0;
}
div.autocomplete ul li.selected { background-color: #ffb;}
div.autocomplete ul li {
  list-style-type:none;
  display:block;
  margin:0;
  padding:2px;
  /* height:32px; */
  cursor:pointer;
}
/* country */
span.adm-0 {

}
span.adm-1 {

}
span.adm-2 {
    display: none;
}
span.adm-3 {
    display: none;
}
span.adm-4 {
    display: none;
}
/* ------- In place editor -------- */
.editable {
    border: 1px solid #fef;
    cursor: pointer;
    padding: 3px;
}
.editable-hover {
    background-color: #eee;
}
.editable-trigger {
    cursor: pointer;
}
.inplaceeditor-form {
    display: inline;
}
.inplaceeditor-form * {
    font-size: 1em;
}
.inplaceeditor-form .editor_field,
.inplaceeditor-form a {
    margin-right: 1em;
}
.inplaceeditor-form a.editor_cancel {
    color: #a55;
    padding: 5px;
}
.inplaceeditor-form a.editor_cancel:hover {
    background-color: #a55;
    color: white;
}

/* -------- Businesses ------------ */
.businesses {
    overflow: inherit;
    width: 100%;
}
.business {
    float: left;
    width: 450px;
    margin: 1ex 5px;
    padding: 5px;
    border: 2px dashed #ddd;
    min-height: 165px;
}
.business .original a {
    font-size: 0.6em;
    float: right;
    color: rgb(166, 172, 157);
}
.business .name {
    font-family: "American Typewriter", "Bookman Old Style", "Georgia", "Courier New", serif;
    font-size: 1.1em;
    font-weight: bold;
}
.business .description {
    height: 4em;
    overflow: hidden;
    font-size: 0.8em;
}
.business .phone,
.business .address {
    font-size: 0.8em;
}

/* ----------- Modal windows   -------------- */
.modal {
    padding:10px;
    border:1px solid #333;
}
#control_overlay {
    background-color: black;
}
/* -- Address selector -- */
.address-modal {
    background: black;
    color: white;
}
.address-modal form {
    width: 600px;
}
.address-modal label {
    color: white;
    width: 100px;
    float: left;
    display: block;
}
.address-modal #address_address {
    width: 462px;
    margin: 0;
}
.address-modal .address-selector form {
  padding-bottom: 1ex;
}
.address-modal #map {
    color: #333;
}
.modal .actions,
.modal .actions input{
    float: right;
    font-size: 120%;
    margin-top: 1ex;
}

/* ----------- Special-purpose -------------- */
li.blog {
    list-style-image: url('http://www.feedicons.com/images/feed-icon-14x14.png');
    list-style-position:inside;
}
li.twitter {
    list-style-image: url('http://twitter.com/favicon.ico');
    list-style-position:inside;
}
li.support {
    list-style-image: url('http://getsatisfaction.com/favicon.gif');
    list-style-position:inside;
}

input.inside-field-16 {
    padding: 2px;
    padding-right: 30px;
    height: 20px;
    font-size: 16px;
    vertical-align: middle;
    margin-right: 5px;
}
input.inside-button-16 {
    -moz-border-radius: 5px;
    -webkit-border-radius:5px;
    background-color: #ccc;
    margin: 0 0 0 -27px;
    padding:4px;
    position:relative;
    vertical-align:middle;
}
input.inside-button-16:hover {
    background-color: #dba;
}