* {
  padding: 0;
  margin: 0; }

h1, h2, h3, h4, h5, h6, p, pre, blockquote, label, ul, ol, dl, fieldset, address {
  margin: 1em 5%; }

li, dd {
  margin-left: 5%; }

fieldset {
  padding: 0.5em; }

html, body, input {
  font-family: arial, sans-serif; }

.gist {
  font-size: 12px; }

body {
  background: white url(images/bg.jpg) repeat-x; }

#header {
  width: 1000px;
  height: 50px;
  margin: 0 auto;
  padding: 0; }
  #header a, #header img {
    border: 0; }

#search {
  float: right; }

#header #username {
  float: right;
  color: white;
  font-size: 0.7em;
  padding: 17px 2em 0 0;
  color: #f0f0f0; }
  #header #username a {
    color: #d0d0e0;
    text-decoration: none;
    padding-left: 0.5em; }
    #header #username a:hover {
      text-decoration: underline; }

#search_text {
  width: 310px;
  height: 24px;
  border: 0;
  background: url(images/search.input.jpg) 0 0 no-repeat;
  font-size: 14pt;
  padding: 13px 20px; }

#content {
  width: 1020px;
  margin: 0 auto;
  position: relative;
  top: 50px;
  min-height: 600px; }
  #content .admin_action {
    color: #888888; }
    #content .admin_action a {
      color: white; }
  #content #sidebar {
    width: 370px;
    float: right; }
    #content #sidebar div.info {
      background: transparent;
      margin: 20px 10px 0 10px !important;
      padding: 0 !important;
      box-shadow: 0 0 2px #bbbbbb;
      -moz-box-shadow: 0 0 2px #bbbbbb;
      -webkit-box-shadow: 0 0 2px #bbbbbb;
      -o-box-shadow: 0 0 2px #bbbbbb;
      -khtml-box-shadow: 0 0 2px #bbbbbb; }
      #content #sidebar div.info h2 {
        padding: 10px 0 5px 12px; }
    #content #sidebar div.warning {
      background: rgba(200,0,0,.05);
      margin: 20px 10px 0 10px !important;
      padding: 0 0 .3em 0 !important;
      box-shadow: 0 0 2px #bbbbbb;
      -moz-box-shadow: 0 0 2px #bbbbbb;
      -webkit-box-shadow: 0 0 2px #bbbbbb;
      -o-box-shadow: 0 0 2px #bbbbbb;
      -khtml-box-shadow: 0 0 2px #bbbbbb;
      color: #505050; }
      #content #sidebar div.warning p {
        font-size: .8em; }
      #content #sidebar div.warning h3 {
        padding: 10px 0 5px 12px;
        font-size: 1em; }
    #content #sidebar div.actions {
      background: #f8f8f8;
      margin: 20px 10px 0 10px !important;
      padding: 0 !important;
      border-radius: 5px;
      -moz-border-radius: 5px;
      -webkit-border-radius: 5px;
      -o-border-radius: 5px;
      -khtml-border-radius: 5px;
      box-shadow: 0 0 2px #bbbbbb;
      -moz-box-shadow: 0 0 2px #bbbbbb;
      -webkit-box-shadow: 0 0 2px #bbbbbb;
      -o-box-shadow: 0 0 2px #bbbbbb;
      -khtml-box-shadow: 0 0 2px #bbbbbb; }
      #content #sidebar div.actions h2 {
        padding: 10px 0 5px 12px; }
    #content #sidebar .info h2 {
      display: none; }
    #content #sidebar .info li:first-child h3 {
      background: url(images/directions.header.bg.png) bottom left repeat-x !important;
      height: 30px !important; }
      #content #sidebar .info li:first-child h3 a {
        height: 23px !important; }
    #content #sidebar .info ul, #content #sidebar .info li {
      margin: 0;
      padding: 0;
      list-style: none; }
      #content #sidebar .info ul div.directions, #content #sidebar .info ul div.list, #content #sidebar .info li div.directions, #content #sidebar .info li div.list {
        padding: 12px 0; }
        #content #sidebar .info ul div.directions ul, #content #sidebar .info ul div.list ul, #content #sidebar .info li div.directions ul, #content #sidebar .info li div.list ul {
          margin: 6px 6px 6px 18px; }
        #content #sidebar .info ul div.directions li, #content #sidebar .info ul div.list li, #content #sidebar .info li div.directions li, #content #sidebar .info li div.list li {
          padding-bottom: .5em; }
      #content #sidebar .info ul h3, #content #sidebar .info li h3 {
        position: relative;
        font-size: 13px;
        height: 31px;
        width: 338px;
        padding-left: 12px;
        margin: 0;
        background: url(images/directions.header.bg.png) bottom left repeat-x;
        color: #333333; }
        #content #sidebar .info ul h3 a, #content #sidebar .info ul h3 a:hover, #content #sidebar .info li h3 a, #content #sidebar .info li h3 a:hover {
          display: block;
          height: 24px;
          padding: 0;
          padding-top: 7px;
          color: inherit;
          font-size: inherit !important;
          text-decoration: none; }
        #content #sidebar .info ul h3 span.duration, #content #sidebar .info li h3 span.duration {
          float: right;
          padding: 8px 12px 0 0;
          font-size: .8em;
          color: #666666; }
        #content #sidebar .info ul h3 span.icon, #content #sidebar .info li h3 span.icon {
          display: inline-block;
          text-indent: -5000px;
          padding-top: 7px;
          opacity: .7; }
          #content #sidebar .info ul h3 span.icon.transit, #content #sidebar .info li h3 span.icon.transit {
            height: 20px;
            width: 22px; }
            #content #sidebar .info ul h3 span.icon.transit.bus, #content #sidebar .info li h3 span.icon.transit.bus {
              background: url(images/directions.icon.bus.png) center center no-repeat; }
            #content #sidebar .info ul h3 span.icon.transit.streetcar, #content #sidebar .info li h3 span.icon.transit.streetcar {
              background: url(images/directions.icon.streetcar.png) center center no-repeat; }
            #content #sidebar .info ul h3 span.icon.transit.subway, #content #sidebar .info li h3 span.icon.transit.subway {
              background: url(images/directions.icon.subway.png) center center no-repeat;
              width: 21px; }
          #content #sidebar .info ul h3 span.icon.walk, #content #sidebar .info li h3 span.icon.walk {
            height: 20px;
            width: 16px;
            background: url(images/directions.icon.walk.png) center center no-repeat; }
    #content #sidebar .info li h3 {
      color: #808080; }
    #content #sidebar .info li:hover h3 {
      color: #4052a0; }
    #content #sidebar .info li.selected h3 {
      color: #008000; }
    #content #sidebar table.stationedges {
      margin-bottom: 20px; }
    #content #sidebar table.stoptimes {
      width: 326px;
      margin: 14px 12px 20px 12px;
      border: 0;
      font-size: 9pt; }
      #content #sidebar table.stoptimes thead {
        display: none; }
      #content #sidebar table.stoptimes td {
        margin: 0;
        padding: 0 0 4px 0; }
        #content #sidebar table.stoptimes td[colspan] {
          text-align: center;
          color: #c0c0c0;
          font-size: 0.9em; }
        #content #sidebar table.stoptimes td.stoptime {
          text-align: right;
          color: #808080;
          font-size: 0.9em;
          padding-left: 1em; }
      #content #sidebar table.stoptimes a {
        padding-bottom: 0.5em; }
    #content #sidebar ul, #content #sidebar .stoptimes {
      list-style: none; }
    #content #sidebar li {
      color: #202020;
      margin: 0;
      font-size: 9pt; }
      #content #sidebar li a {
        padding-bottom: 0.5em; }
    #content #sidebar .map {
      height: 300px;
      width: 350px;
      margin: 0 10px; }
    #content #sidebar .actions {
      position: relative; }
      #content #sidebar .actions .buttons {
        text-align: right;
        width: 320px;
        margin-left: 20px;
        margin-left: auto;
        margin-right: auto; }
      #content #sidebar .actions input.button {
        position: relative;
        font-size: 10pt;
        padding: 2px 4px;
        border: 1px solid #d0d0d0;
        background: white;
        cursor: pointer; }
        #content #sidebar .actions input.button.bike {
          background: white url(images/icon.bike.png) 4px no-repeat;
          padding-left: 30px; }
        #content #sidebar .actions input.button.buggy {
          background: white url(images/icon.buggy.png) 4px no-repeat;
          padding-left: 24px; }
        #content #sidebar .actions input.button.wheelchair {
          background: white url(images/icon.wheelchair.png) 4px no-repeat;
          padding-left: 22px; }
        #content #sidebar .actions input.button.cane {
          background: white url(images/icon.cane.png) 4px no-repeat;
          padding-left: 22px; }
      #content #sidebar .actions label {
        font-size: 8pt;
        display: block;
        text-align: right;
        width: 320px;
        margin-left: auto;
        margin-right: auto;
        color: #808080; }
        #content #sidebar .actions label input, #content #sidebar .actions label textarea {
          width: 200px;
          padding: 2px 3px;
          border: 1px solid #d0d0d0; }
        #content #sidebar .actions label textarea {
          height: 200px;
          vertical-align: top; }
      #content #sidebar .actions .notice {
        padding-bottom: 10px;
        margin-top: -28px; }
        #content #sidebar .actions .notice h3 {
          margin-left: 20px;
          margin-right: 200px;
          font-family: arial, sans-serif;
          font-size: 9pt;
          color: #4052a0;
          cursor: help; }
        #content #sidebar .actions .notice p {
          font-size: 8pt; }
    #content #sidebar #trip_planner label input, #content #sidebar #trip_planner label textarea, #content #sidebar #feedback label input, #content #sidebar #feedback label textarea {
      width: 250px !important; }
    #content #sidebar #trip_planner label input[name="when"], #content #sidebar #feedback label input[name="when"] {
      width: 168px !important; }
    #content #sidebar #trip_planner label select, #content #sidebar #feedback label select {
      width: 80px !important; }
    #content #sidebar #trip_planner label input.locating, #content #sidebar #feedback label input.locating {
      background: white url(images/geolocating.gif) center right no-repeat; }
    #content #sidebar #trip_planner p.example, #content #sidebar #feedback p.example {
      position: relative;
      left: 65px;
      top: -5px;
      font-size: 8pt;
      color: #a0a0a0;
      margin-top: 0;
      margin-bottom: .3em; }
    #content #sidebar #directions div.leg {
      margin: 0;
      padding: .5em 1.5em;
      color: #505050; }
      #content #sidebar #directions div.leg.current, #content #sidebar #directions div.leg .current {
        color: black;
        background: #f4f4f4;
        cursor: help; }
      #content #sidebar #directions div.leg.note {
        font-size: .9em;
        color: #808080; }
      #content #sidebar #directions div.leg.triptime {
        color: #808080; }
      #content #sidebar #directions div.leg.stationedge {
        background: #f4f4ff;
        border: 1px solid #e8e8ff;
        border-width: 0 3px;
        padding-left: 1.3em; }
        #content #sidebar #directions div.leg.stationedge + .stationedge {
          border-top: 1px dashed #d4d4f0; }
      #content #sidebar #directions div.leg p {
        margin: 0;
        padding: 0; }
    #content #sidebar #directions .notice {
      padding-bottom: 10px;
      font-size: .8em; }
      #content #sidebar #directions .notice h3 {
        margin-left: 20px;
        margin-right: 200px;
        font-family: arial, sans-serif;
        font-size: 9pt;
        color: #4052a0;
        color: #dd0000;
        cursor: help; }
      #content #sidebar #directions .notice p {
        font-size: 8pt; }
  #content #article, #content #headlines, #content #welcome {
    width: 620px;
    padding: 0 10px; }
    #content #article .features, #content #headlines .features, #content #welcome .features {
      margin-bottom: 30px; }
      #content #article .features div, #content #headlines .features div, #content #welcome .features div {
        width: 600px;
        height: 250px;
        border: 1px solid black;
        padding: 10px; }
    #content #article p, #content #article li, #content #headlines p, #content #headlines li, #content #welcome p, #content #welcome li {
      font-size: 9pt;
      line-height: 14pt;
      margin: 0; }
    #content #article p, #content #headlines p, #content #welcome p {
      color: #303030;
      margin: 0;
      margin-bottom: 0.7em;
      text-align: justify;
      overflow: auto; }
  #content #headlines h2 {
    font-size: 15pt; }
  #content #headlines .attrib {
    position: relative;
    top: -5px;
    color: #a0a0a0; }
  #content #headlines p {
    text-align: left; }
  #content #welcome {
    padding-bottom: 20px;
    background: white url(images/welcome.box.bottom.png) bottom center no-repeat; }
    #content #welcome h1 {
      background: white url(images/welcome.box.top.png) top center no-repeat;
      padding: 25px 20px 10px 35px;
      margin: 0 -20px;
      font-size: 17pt;
      display: block; }
    #content #welcome p {
      margin: 0 15px 0.7em 15px; }
  #content a {
    color: #4052a0;
    text-decoration: none; }
    #content a:hover {
      text-decoration: underline; }
  #content a[href^=http] {
    background: transparent url(images/ext.link.png) right center no-repeat;
    padding-right: 16px; }
  #content div.map a {
    background: transparent;
    padding-right: 0; }
  #content h1 {
    margin: 0 0 1em 0;
    font-family: "Helvetica Neue", "Helvetica LT", "Helvetica CY", FreeSans, helvetica, arial, sans-serif;
    font-size: 1.55em;
    font-weight: normal; }
  #content h2 {
    margin: 1.3em 0 0.7em 0;
    font-family: "Helvetica Neue", "Helvetica LT", "Helvetica CY", FreeSans, helvetica, arial, sans-serif;
    font-size: 1.1em;
    font-weight: normal; }
  #content h3 {
    margin: 1.2em 0 0.5em 0;
    font-family: "Helvetica Neue", "Helvetica LT", "Helvetica CY", FreeSans, helvetica, arial, sans-serif;
    font-size: .9em;
    font-weight: normal; }
  #content #search_results {
    font-size: 10pt;
    line-height: 14pt;
    position: relative;
    top: -50px;
    width: 330px;
    min-height: 500px;
    float: right;
    padding: 20px;
    background: url(images/search.box.bottom.png) bottom center no-repeat; }
    #content #search_results h2 {
      margin: auto; }
    #content #search_results ul {
      list-style: none;
      margin: 0.5em 0 1.2em 0; }
      #content #search_results ul li {
        font-size: 0.9em;
        margin: 0.2em 0.5em; }
        #content #search_results ul li a {
          display: block; }
          #content #search_results ul li a:hover {
            text-decoration: none;
            color: red; }

#list_item_bukkit {
  margin: 1em 0;
  padding: 0 1em 1em 1em;
  max-height: 150px;
  overflow: auto;
  background: #f8f8f8;
  list-style: none; }
  #list_item_bukkit li {
    margin-left: 4px; }

#flash {
  color: black;
  font-weight: bold; }
  #flash .flashmsg {
    display: block;
    background: url(images/ribbon.bg.png) top center repeat-x;
    padding: 1em;
    text-align: center; }
    #flash .flashmsg.error {
      background: url(images/ribbon.bg.png) top center repeat-x; }

#login_form {
  width: 400px;
  border: 1px solid #d0d0d0;
  margin: 2em auto;
  padding: 1em; }
  #login_form label {
    display: block;
    text-align: right; }
  #login_form > form > input {
    margin-left: 330px; }

.beautytip {
  color: #d8d8d8;
  font-weight: normal;
  white-space: nowrap; }

#footer {
  position: relative;
  top: 70px;
  clear: both;
  margin: 20px 0;
  padding-bottom: 5px;
  background: #f0f0f0;
  border-top: 1px solid #d0d0d0;
  font-size: 0.8em;
  color: #808080; }
  #footer ul {
    margin: 20px auto;
    text-align: center; }
    #footer ul li {
      display: inline;
      text-align: center;
      margin: 0 40px; }
      #footer ul li a {
        color: inherit;
        text-decoration: none; }

input.positive, a.positive {
  color: green;
  font-weight: bold; }

input.negative, a.negative {
  color: red;
  font-weight: bold; }

input.neutral, a.neutral {
  color: #000080;
  font-weight: bold; }

.js_only {
  display: none; }

a.firefox {
  color: darkorange; }

a.safari {
  color: #0000a0; }

a.chrome {
  color: #808080; }

