body {
  background: #EEF3F4 url('../images/back-top.gif') top repeat-x;
  font-family: Tahoma, Arial, Verdana, sans-serif;
  font-size: 12px;
  line-height: 16px;
  color: #434343;
}

body, ul, form {
  margin: 0;
  padding: 0;
}

a {
  outline: none;
  color: #438E9A;
  *letter-spacing: 0;
}

a:hover {  color: #2E47A9 !important; }
a.active {  color: #A92E37 !important; }
h2 a, h3 a, h4 a {  text-decoration: none; }

select, input {
  font-family: Tahoma, Arial, Verdana, sans-serif;
  font-size: 14px;
  color: #434343;
  outline: none;
}

img, object {
  border: 0;
  vertical-align: bottom;
}

/*img, div, a {  behavior: url('images/iepngfix.htc'); }*/

h2, h3, h4, h5 {
  margin: 0;
  color: #045696;
  font-size: 16px;
  font-weight: normal;
  line-height: 17px;
}
p {
  margin: 0;
  line-height: 17px;
}

div {
  position: relative;
}

.end-line {
  display: inline-block;
  width: 99%;
  height: 0px;
}

.u {
  text-decoration: underline;
}
.no_u {
  text-decoration: none;
}
.center {
  text-align: center;
}
.left {
  float: left;
}
.right {
  float: right;
  margin-left: auto;
}
.clear {  clear: both; }
.clear-left {  clear: left; }
.clear-right {  clear: right; }
.last {
  margin-right: 0px !important;
  float: right !important;
}

.spacer {
  clear: both;
  height: 0;
  line-height: 0px;
  zoom: 1;
}

.spreader {
  height: 100%;
}

.red {  color: #A92E37 !important; }
.blue {  color: #438E9A !important; }
.green {  color: #3C6D75 !important; }
.light_green { color: #438E9A !important; }

.nav-pages {  letter-spacing: 3px; }
.nav-pages a {  text-decoration: none; }


/******************************************************************************/
/******************************************************************************/
/******************************************************************************/

.page {
  background: url('../images/back-bottom.gif') bottom repeat-x;
}

.page-container {
  margin: auto;
  width: 908px;
  min-height: 720px;
  padding-bottom: 200px;
}

.header {
  height: 170px;
  cursor: default;
}

.header .menu-bar {
  top: 56px;
  height: 56px;
  margin: 0px 15px;
  background: url('../images/header/bar-fill.gif') top repeat-x;
}
.header .menu-bar .shadow {
  width: 24px;
  height: 100%;
}
.header .menu-bar .left {
  left: -24px;
  background: url('../images/header/bar-left.gif') left top no-repeat;
}
.header .menu-bar .right {
  right: -24px;
  background: url('../images/header/bar-right.gif') right top no-repeat;
}

.header .main-menu,
.header .auth-menu {
  text-align: justify;
  color: #363636;
}

.header .main-menu {
  width: 510px;
  left: 25px;
}

.header .auth-menu {
  width: 230px;
  right: 10px;
}
.header .auth-menu img {  vertical-align: middle; }

.header .main-menu a, .header .auth-menu a {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  color: #363636;
  height: 100%;
  padding: 14px 10px;
}
.header a.sep {
  padding: 14px 0px;
}

.header .logo {
  width: 120px;
  height: 130px;
  position: absolute;
  top: 0;
  left: 542px;
  text-align: center;
  font-weight: bold;
  font-size: 25px;
}

.header .logo-rails {
  width: 285px;
  height: 40px;
  position: absolute;
  left: 452px;
  top: 130px;
  background: url('../images/header/logo-rails.png') no-repeat;
}

.footer {
  position: absolute;
  bottom: 20px;
  width: 100%;
  height: 136px;
  margin-top: 65px;
}
.footer .footer-bar {
  height: 100%;
  margin: 0 14px;
  _margin: 0 7px;
  background: #F8F8F8 url('../images/footer/bar-fill.gif') bottom repeat-x;
}
.footer .footer-bar .left,
.footer .footer-bar .right {
  width: 14px;
  height: 100%;
}
.footer .footer-bar .left,
.footer .footer-bar .right,
.footer .footer-bar .shadow {
  background: bottom no-repeat;
}
.footer .footer-bar .left {
  left: -14px;
  background-image: url('../images/footer/bar-left.gif');
}
.footer .footer-bar .right {
  right: -14px;
  background-image: url('../images/footer/bar-right.gif');
}
.footer .footer-bar .shadow {
  width: 30px;
  height: 100%;
}
.footer .footer-bar .left .shadow {
  left: -30px;
  _left: -22px;
  background-image: url('../images/footer/left-shadow.gif');
}
.footer .footer-bar .right .shadow {
  right: -14px;
  _right: -22px;
  background-image: url('../images/footer/right-shadow.gif');
}
.footer .footer-bar .box-body {
  padding: 0 40px;
  height: 100%;
}
.footer .footer-bar .box-body table {
  width: 100%;
  height: 100%;
}
.footer .footer-bar .box-body td {  vertical-align: middle; }
.footer .footer-bar .box-body img {  vertical-align: middle; }
.footer .footer-bar .box-body span {  display: block; }
.footer .footer-copyrights {  }
.footer .footer-contacts { text-align: right; }

.round-box {
}
.round-box .top,
.round-box .bottom,
.round-box .fill-top,
.round-box .fill-bottom {
  height: 14px;
  font-size: 0;
  line-height: 1px;
}
.round-box .fill {
  margin: 0px 14px;
  height: 100%;
  background-color: #FFF;
}
.round-box .box-body {
  padding: 0 35px;
  background-color: #FFF;
}
.round-box.padding_v .box-body {
  padding: 14px 35px;
}

.round-box .left, .round-box .right {
  width: 14px;
  height: 100%;
  position: absolute;
}
.round-box .left {
  left: 0px;
}
.round-box .right {
  margin-left: auto;
  right: 0px;
}
.round-box .top .left {  background: url('../images/round-box/top-left.png') no-repeat; }
.round-box .top .right {  background: url('../images/round-box/top-right.png') no-repeat; }
.round-box .bottom .left, .round-box .bottom .right {
  height: 22px;
}
.round-box .bottom .left {  background: url('../images/round-box/bottom-left.png') no-repeat; }
.round-box .bottom .right {  background: url('../images/round-box/bottom-right.png') no-repeat; }
.round-box .bottom .sh {
  position: absolute;
  width: 4px;
  height: 86px;
  top: -64px;
}
.round-box .bottom .left .sh {
  left: -4px;
  background: url('../images/round-box/bottom-left-shadow.png') no-repeat;
}
.round-box .bottom .right .sh {
  margin-left: auto;
  right: -4px;
  background: url('../images/round-box/bottom-right-shadow.png') no-repeat;
}
.round-box .bottom .shadow {
  margin: 0px 14px;
  height: 8px;
  background: url('../images/round-box/bottom-shadow.png') no-repeat;
}
.round-box .bottom .shadow .arrow-down {
  width: 21px;
  height: 100%;
  margin: auto;
  background: url('../images/round-box/arrow-down.png') no-repeat;
}
.round-box .curve {
  width: 27px;
  height: 22px;
  top: -22px;
}
.round-box .curve-left {
  left: 21px;
  background: url('../images/round-box/curve-left.png') no-repeat;
}
.round-box .curve-right {
  right: 21px;
  background: url('../images/round-box/curve-right.png') no-repeat;
}
.round-box h2, .round-box h2 a {
/*  white-space: nowrap;*/
  color: #A92E37;
}

.round-box .fill-body,
.round-box .fill-top .fill,
.round-box .fill-bottom .fill {  background-color: #C3D9DB !important; }
.round-box .fill-top .left {  background: url('../images/round-box/fill-top-left.png') no-repeat; }
.round-box .fill-top .right {  background: url('../images/round-box/fill-top-right.png') no-repeat; }
.round-box .fill-bottom .left {  background: url('../images/round-box/fill-bottom-left.png') no-repeat; }
.round-box .fill-bottom .right {  background: url('../images/round-box/fill-bottom-right.png') no-repeat; }


.round-box.combo_wrapper .right {  _right: -1px; }
.round-box.combo_wrapper .top {  _top: 4px; }
.round-box.combo_wrapper .top .left {  background: url('../images/round-box/combo_wrapper/top-left.png') no-repeat; }
.round-box.combo_wrapper .top .right {  background: url('../images/round-box/combo_wrapper/top-right.png') no-repeat; }
.round-box.combo_wrapper .bottom .left {  background: url('../images/round-box/combo_wrapper/bottom-left.png') no-repeat; }
.round-box.combo_wrapper .bottom .right {  background: url('../images/round-box/combo_wrapper/bottom-right.png') no-repeat; }
.round-box.combo_wrapper .fill,
.round-box.combo_wrapper .box-body,
.round-box.combo_wrapper select {
  border: 0 solid #F5F9FA;
  background-color: #EAF3F4;
}
.round-box.combo_wrapper .top .fill {  border-top-width: 1px; _height: 13px; }
.round-box.combo_wrapper .bottom .fill {  border-bottom-width: 1px; height: 13px; }
.round-box.combo_wrapper .box-body {  border-width: 0 1px; padding: 0; text-align: center; }
.round-box.combo_wrapper .bottom .left,
.round-box.combo_wrapper .bottom .right {  height: 100%; }

.round-box.h3_wrapper .top .left {  background: url('../images/round-box/h_wrapper/top-left.png') no-repeat; }
.round-box.h3_wrapper .top .right {  background: url('../images/round-box/h_wrapper/top-right.png') no-repeat; }
.round-box.h3_wrapper .bottom .left {  background: url('../images/round-box/h_wrapper/bottom-left-shaded.png') no-repeat; _left: 4px; }
.round-box.h3_wrapper .bottom .right {  background: url('../images/round-box/h_wrapper/bottom-right-shaded.png') no-repeat; _right: 4px; }
.round-box.h3_wrapper .fill,
.round-box.h3_wrapper .box-body {
  border: 0 solid #FFF;
  background-color: #EAF3F4;
}
.round-box.h3_wrapper .top .fill {  border-top-width: 2px; _height: 12px; }
.round-box.h3_wrapper .bottom .fill {  border-bottom-width: 2px; height: 12px; _margin: 0 18px; }
.round-box.h3_wrapper .box-body {  border-width: 0 2px; }
.round-box.h3_wrapper h3 {
  color: #3C6D75;
  font-size: 15px;
}

.round-box.conf_materials {
  width: 185px;
  height: 225px;
  float: left;
  margin-right: 33px;
  margin-top: 35px;
}
.round-box.conf_materials .right {  _right: -1px; }
.round-box.conf_materials .top .left {  background: url('../images/round-box/h_wrapper/top-left.png') no-repeat; }
.round-box.conf_materials .top .right {  background: url('../images/round-box/h_wrapper/top-right.png') no-repeat; }
.round-box.conf_materials .bottom .left {  background: url('../images/round-box/h_wrapper/bottom-left.png') no-repeat; }
.round-box.conf_materials .bottom .right {  background: url('../images/round-box/h_wrapper/bottom-right.png') no-repeat; }
.round-box.conf_materials .fill,
.round-box.conf_materials .box-body {
  border: 0 solid #FFF;
  background-color: #EAF3F4;
}
.round-box.conf_materials .top .fill {  border-top-width: 2px; _height: 12px; }
.round-box.conf_materials .bottom .fill {  border-bottom-width: 2px; height: 12px; }
.round-box.conf_materials .box-body {
  border-width: 0 2px;
  padding: 0;
  text-align: center;
}
.round-box.conf_materials .bottom .left,
.round-box.conf_materials .bottom .right {
  height: 100%;
  background-color: #C3D9DB;
}
.round-box.conf_materials .bottom {  }
.round-box.conf_materials .fill-body {  height: 150px; }
.round-box.conf_materials .fill-body .img-box {
  width: 120px;
  height: 120px;
  margin: auto;
  background: url('../images/page_materials/archive-box.png') no-repeat;
}
.round-box.conf_materials h2,
.round-box.conf_materials h2 a {
  color: #3C6D75;
}
.round-box.conf_materials span {
  color: #438E9A;
  display: inline-block;
  padding-top: 5px;
}
.round-box.conf_materials .links {
  position: absolute;
  bottom: 25px;
  width: 100%;
  text-align: center;
}
.round-box.conf_materials .links img {  margin: 0 4px; }
.round-box.conf_materials .links .disabled img {  cursor: default; }

.photo-box {
  height: 128px;
  background-color: #FFF;
  text-align: center;
  margin: auto;
}
.photo-box img {
  padding: 7px;
}
.photo-box .ls, .photo-box .rs {
  height: 100%;
  width: 12px;
  position: absolute;
}
.photo-box .ls {
  background: url('../images/photo-box/left-shadow.png') no-repeat;
  left: -12px;
}
.photo-box .rs {
  background: url('../images/photo-box/right-shadow.png') no-repeat;
  right: -12px;
}

/******************************************************************************/
/******************************************************************************/
/******************************************************************************/

.wrapper-left {
  width: 603px;
  float: left;
}

.wrapper-right {
  width: 282px;
  float: right;
}

.wrapper-left .box_header {
  float: right;
  margin-right: 12px;
  _margin-right: 5px;
  width: 250px;
  font-size: 13px;
  text-align: center;
}
.wrapper-left .box_header h2 {
  display: inline;
}
.wrapper-left .rc-conf {
  position: absolute;
  left: 27px;
  top: 10px;
  padding: 10px;
  color: #FFF;
  font-size: 22px;
  font-weight: bold;
  text-decoration: none;
  text-shadow: 2px -2px 2px #99A;
}

.wrapper-right h2 {
  padding-bottom: 15px;
}
.wrapper-right .round-box.margin_b {
  margin-bottom: 30px;
  _margin-bottom: 15px;
}

.page_main .wrapper-left .speakers {
  float: right;
  margin-top: 25px;
  _margin-top: 12px;
  width: 600px;
  height: 260px;
  overflow: hidden;
}
.page_main .speakers .prev,
.page_main .speakers .next {
  width: 10px;
  height: 20px;
  padding: 10px;
  position: absolute;
  top: 100px;
}
.page_main .speakers .prev {
  float: left;
  left: -10px;
}
.page_main .speakers .next {
  float: right;
  right: -10px;
}
.page_main .speakers ul {
  list-style-type: none;
  position: absolute;
  width: 50000px;
}
.page_main .speakers li {
  float: left;
  width: 200px;
}
.page_main .speakers .name {
  color: #3C6D75;
  text-align: center;
  padding: 20px 0;
}
.page_main .speakers .name img {  vertical-align: top; }
.page_main .speakers .photo-box {  width: 120px; }
.page_main .speakers p {
  padding: 14px 7px;
  line-height: 18px;
}

.page_main .partners {
  padding: 22px 0 10px;
  _padding: 22px 0 0px;
  height: 180px;
}
.page_main .partners .round-box {
  width: 194px;
  height: 180px;
  float: left;
  margin-right: 44px;
}
.page_main .partners .round-box .box-body {
  padding: 0px;
  height: 152px; /* 180 - 2 * 14 */
}
.page_main .partners .round-box .top-box,
.page_main .partners .round-box .bottom-box {
  position: absolute;
  width: 100%;
  height: 180px;
  text-align: center;
  margin: auto;
}
.page_main .partners .round-box .top-box {
  top: 0px;
}
.page_main .partners .round-box .bottom-box {
  top: 90px;
  background: url('../images/round-box/shade-top.gif') top repeat-x;
}
.page_main .partners .round-box .top-box .left,
.page_main .partners .round-box .top-box .right {
  position: absolute;
  width: 8px;
  height: 40px;
  bottom: 0px;
}
.page_main .partners .round-box .top-box .left {
  left: -8px;
  background: url('../images/round-box/drop_ls.png') no-repeat;
}
.page_main .partners .round-box .top-box .right {
  right: -8px;
  background: url('../images/round-box/drop_rs.png') no-repeat;
}
.page_main .partners .round-box a {
  vertical-align: middle;
  display: inline-block;
}
.page_main .partners .round-box a img {
  vertical-align: middle;
}

.page_main .news {
  padding: 40px 0 25px;
}
.page_main .news .news-header {
}
.page_main .news .news-header .round-box,
.page_main .materials .materials-header .round-box {
  width: 245px;
}
.page_main .news .news-header .box-body {
  padding: 0 35px;
}
.page_main .news .news-header .news-links a {
  margin-right: 25px;
}
.page_main .news .news-line {
  padding-top: 40px;
  _padding-top: 20px;
}
.page_main .news .news-box {
  width: 180px;
  float: left;
  margin-right: 60px;
}
.page_main .news .news-box p {
  margin-top: 17px;
}

.page_main .materials {
  padding-top: 40px;
  _padding-top: 20px;
}
.page_main .materials .materials-header .box-body {
  padding: 0 35px;
}
.page_main .materials .material-box {
  width: 24.9%;
  float: left;
}
.page_main .materials .material-box h3 {
  font-size: 12px;
  color: #438E9A;
  margin: 18px 0;
}
.page_main .materials .material-box h3 img {
  margin-right: 10px;
}
.page_main .materials .material-box .photo-box {
  width: 164px;
}
.page_main .materials .material-box p {
  padding: 17px 0;
}


.page_news .wrapper-right h2 {
  white-space: normal;
  padding-bottom: 0;
}
.page_news .wrapper-right p {
  margin-top: 17px;
}
.news-wrapper {
  padding-top: 35px;
}
.news-wrapper h3 {
  font-size: 18px;
  color: #3C6D75;
  margin-bottom: 5px;
}
.news-wrapper .date {
  color: #438E9A;
}
.news-wrapper p {
  padding: 18px 0;
  line-height: 18px;
}
.news-wrapper .speaker {
  font-size: 14px;
  color: #A92E37;
  margin-left: 40px;
}
.news-wrapper .spacer {
  height: 40px;
}
.news-wrapper img {
  vertical-align: middle;
}
.news-wrapper .twitter {
  float: left;
  text-decoration: none;
  margin-top: 10px;
}
.news-wrapper .place {
  float: right;
  width: 320px;
}
.news-wrapper .place img {
  float: left;
  margin-top: 10px;
}
.news-wrapper .place p {
  margin-left: 70px;
  margin-right: 25px;
  padding: 0;
}
.news-wrapper .new-comment {
  width: 98%;
  height: 110px;
  margin-top: 70px;
}
.news-wrapper .new-comment-controls {
  padding: 5px 30px 0 20px;
}
.news-wrapper .new-comment-controls img {
  float: left;
  margin-right: 5px;
  cursor: pointer;
}
.news-wrapper .new-comment-controls .send {
  float: right;
}

.page_materials .wrapper-left .speaker-filter {
  float: right;
  padding: 13px 35px;
  vertical-align: middle;
}
.page_materials .wrapper-left .speaker-filter .caption {
  position: absolute;
  left: -30px;
  top: 28px;
  _top: 32px;
}
.page_materials .wrapper-left .speaker-filter .combo_wrapper {
  width: 215px;
}

.page_materials .wrapper-right .content-filter .box-body {
  padding-right: 10px;
  line-height: 23px;
}
.page_materials .wrapper-right .content-filter a {
  display: inline-block;
  width: 49%;
  _padding: 2px 0;
  text-decoration: none;
}
.page_materials .wrapper-right .content-filter a img {
  vertical-align: middle;
}
.page_materials .wrapper-right .content-filter a span {
  text-decoration: underline;
  padding-left: 8px;
}

.page_materials .materials {
  padding: 15px 0 0 0;
}
.page_materials .materials.archive_list {
  padding: 0 0 0 35px;
}

.page_materials .materials h3 {
  float: right;
  padding: 20px;
  color: #3C6D75;
}
.page_materials .materials .hint {
  clear: both;
  float: right;
  padding: 10px 40px 0 0;
  _padding-top: 0px;
  width: 250px;
}
.page_materials .materials .material-video,
.page_materials .materials .material-photo,
.page_materials .materials .material-audio,
.page_materials .materials .material-text {
  padding-top: 20px;
}

.page_materials .materials .material-video {
  width: 520px;
  padding-left: 30px;
}
.page_materials .materials .material-video .round-box {
  height: auto;
  margin: 0;
  float: none;
}
.page_materials .materials .material-video .round-box .bottom .right {
  background-color: transparent;
}
.page_materials .materials .video_wrapper {
  width: auto;
}
.page_materials .materials .video_wrapper .fill-top .fill {
  margin-left: 0;
}
.page_materials .materials .video_wrapper .fill-body {
  padding: 6px 20px;
  height: auto;
}

.page_materials .materials .material-photo {
  right: 0;
  _right: auto;
  width: 320px;
  _width: 350px;
}
.page_materials .materials .material-photo .spacer {  height: 10px; }
.page_materials .materials .photo-box {
  height: 99px;
  float: left;
  margin: 0 13px 33px 20px;
}
.page_materials .materials .photo-box img {  padding: 8px; }
.page_materials .materials .photo-box .ls,
.page_materials .materials .photo-box .rs {  width: 8px; }
.page_materials .materials .photo-box .ls {
  background: url('../images/photo-box/left-shadow_h99.png') no-repeat;
  left: -8px;
}
.page_materials .materials .photo-box .rs {
  background: url('../images/photo-box/right-shadow_h99.png') no-repeat;
  right: -8px;
}

.page_materials .materials .round-box.audio_bar,
.page_materials .materials .material-text .links {
  width: 550px;
  height: 86px;
  margin-top: 45px;
}
.page_materials .materials .round-box.audio_bar .box-body {  height: 58px; } /* 86 - 14 * 2 */
.page_materials .materials .round-box.audio_bar .players {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.page_materials .materials .round-box.audio_bar .players .player-box,
.page_materials .materials .material-text .links .link-box {
  width: 33%;
  height: 100%;
  float: left;
  text-align: center;
}
.page_materials .materials .round-box.audio_bar .players .player-box.shade {
  background: url('../images/round-box/shade-right.gif') right repeat-y;
}


.page_profile .personal span {  color: #438E9A; }
.page_profile .box_header .fill-body {  padding-bottom: 35px; }
.page_profile .box_header .photo-box {
  width: 168px;
  height: 180px;
  margin-top: 45px;
  _margin-top: 40px;
}
.page_profile .box_header .photo-box img {  padding: 10px; }
.page_profile .box_header .photo-box .ls,
.page_profile .box_header .photo-box .rs {  width: 16px; }
.page_profile .box_header .photo-box .ls {
  background: url('../images/photo-box/left-shadow_h180.png') no-repeat;
  left: -16px;
}
.page_profile .box_header .photo-box .rs {
  background: url('../images/photo-box/right-shadow_h180.png') no-repeat;
  right: -16px;
}
.page_profile .materials {
  width: 310px;
}

.page_profile .materials .material-box {
  padding: 19px 30px;
  border-bottom: 1px solid #B8D6DA;
}
.page_profile .materials .material-box .left h4 {
  font-size: 13px;
  color: #434343;
}
.page_profile .materials .material-box .left span {
  font-size: 11px;
  padding-top: 5px;
  color: #438E9A;
}
.page_profile .materials .material-box .links {
  text-align: right;
  padding-top: 7px;
}
.page_profile .materials .material-box .links img {  margin: 0 4px; }
.page_profile .materials .nav {  padding: 19px 30px; }
.page_profile .materials .nav .nav-pages {  padding-top: 4px; }
.page_profile .materials .selector-year {
  background: url('../images/select_year.gif') no-repeat;
  width: 69px;
  height: 25px;
  text-align: center;
  padding-top: 4px;
}
.page_profile .materials select {
  font-size: 12px;
  color: #28656E;
  border: 0;
  background-color: #C3D9DB;
}

.page_profile .actions {
  text-align: left;
  padding-left: 35px;
  padding-top: 15px;
}
.page_profile .actions p {  margin-top: 20px; }
.page_profile .actions img {  margin-right: 20px; }
.page_profile .actions span {
  margin-left: 10px;
  color: #626262;
}


/* -------------------------------------------------------------------------------------------------

It's *strongly* suggested that you don't modify this file.  Instead, load a new stylesheet after
this one in your layouts (eg formtastic_changes.css) and override the styles to suit your needs.
This will allow you to update formtastic.css with new releases without clobbering your own changes.

This stylesheet forms part of the Formtastic Rails Plugin
(c) 2008 Justin French

--------------------------------------------------------------------------------------------------*/


/* NORMALIZE AND RESET - obviously inspired by Yahoo's reset.css, but scoped to just form.formtastic
--------------------------------------------------------------------------------------------------*/
form.formtastic, form.formtastic ul, form.formtastic ol, form.formtastic li, form.formtastic fieldset, form.formtastic legend, form.formtastic input, form.formtastic textarea, form.formtastic select, form.formtastic p { margin:0; padding:0; }
form.formtastic fieldset { border:0; }
form.formtastic em, form.formtastic strong { font-style:normal; font-weight:normal; }
form.formtastic ol, form.formtastic ul { list-style:none; }
form.formtastic abbr, form.formtastic acronym { border:0; font-variant:normal; }
form.formtastic input, form.formtastic textarea, form.formtastic select { font-family:inherit; font-size:inherit; font-weight:inherit; }
form.formtastic input, form.formtastic textarea, form.formtastic select { font-size:100%; }
form.formtastic legend { color:#000; }


/* FIELDSETS & LISTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset { }
form.formtastic fieldset.inputs { }
form.formtastic fieldset.buttons { padding-left:25%; }
form.formtastic fieldset ol { }
form.formtastic fieldset.buttons li { float:left; padding-right:0.5em; }

/* clearfixing the fieldsets */
form.formtastic fieldset { display: inline-block; }
form.formtastic fieldset:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
html[xmlns] form.formtastic fieldset { display: block; }
* html form.formtastic fieldset { height: 1%; }


/* INPUT LIs
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li { margin-bottom:1.5em; }

/* clearfixing the li's */
form.formtastic fieldset ol li { display: inline-block; }
form.formtastic fieldset ol li:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
html[xmlns] form.formtastic fieldset ol li { display: block; }
* html form.formtastic fieldset ol li { height: 1%; }

form.formtastic fieldset ol li.required { }
form.formtastic fieldset ol li.optional { }
form.formtastic fieldset ol li.error { }
  

/* LABELS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li label { display:block; width:25%; float:left; padding-top:.2em; }
form.formtastic fieldset ol li li label { line-height:100%; padding-top:0; }
form.formtastic fieldset ol li li label input { line-height:100%; vertical-align:middle; margin-top:-0.1em;}


/* NESTED FIELDSETS AND LEGENDS (radio, check boxes and date/time inputs use nested fieldsets)
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li fieldset { position:relative; }
form.formtastic fieldset ol li fieldset legend { position:absolute; width:25%; padding-top:0.1em; }
form.formtastic fieldset ol li fieldset legend span { position:absolute; }
form.formtastic fieldset ol li fieldset legend.label label { position:absolute; }
form.formtastic fieldset ol li fieldset ol { float:left; width:74%; margin:0; padding:0 0 0 25%; }
form.formtastic fieldset ol li fieldset ol li { padding:0; border:0; }


/* INLINE HINTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li p.inline-hints { color:#666; margin:0.5em 0 0 25%; }


/* INLINE ERRORS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li p.inline-errors { color:#cc0000; margin:0.5em 0 0 25%; }
form.formtastic fieldset ol li ul.errors { color:#cc0000; margin:0.5em 0 0 25%; list-style:square; }
form.formtastic fieldset ol li ul.errors li { padding:0; border:none; display:list-item; }


/* STRING & NUMERIC OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.string input { width:74%; }
form.formtastic fieldset ol li.password input { width:74%; }
form.formtastic fieldset ol li.numeric input { width:74%; }


/* TEXTAREA OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.text textarea { width:74%; }


/* HIDDEN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.hidden { display:none; }


/* BOOLEAN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.boolean label { padding-left:25%; width:auto; }
form.formtastic fieldset ol li.boolean label input { margin:0 0.5em 0 0.2em; }


/* RADIO OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.radio { }
form.formtastic fieldset ol li.radio fieldset ol { margin-bottom:-0.6em; }
form.formtastic fieldset ol li.radio fieldset ol li { margin:0.1em 0 0.5em 0; }
form.formtastic fieldset ol li.radio fieldset ol li label { float:none; width:100%; }
form.formtastic fieldset ol li.radio fieldset ol li label input { margin-right:0.2em; }


/* CHECK BOXES (COLLECTION) OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.check_boxes { }
form.formtastic fieldset ol li.check_boxes fieldset ol { margin-bottom:-0.6em; }
form.formtastic fieldset ol li.check_boxes fieldset ol li { margin:0.1em 0 0.5em 0; }
form.formtastic fieldset ol li.check_boxes fieldset ol li label { float:none; width:100%; }
form.formtastic fieldset ol li.check_boxes fieldset ol li label input { margin-right:0.2em; }



/* DATE & TIME OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.date fieldset ol li,
form.formtastic fieldset ol li.time fieldset ol li,
form.formtastic fieldset ol li.datetime fieldset ol li { float:left; width:auto; margin:0 .3em 0 0; }

form.formtastic fieldset ol li.date fieldset ol li label,
form.formtastic fieldset ol li.time fieldset ol li label,
form.formtastic fieldset ol li.datetime fieldset ol li label { display:none; }

form.formtastic fieldset ol li.date fieldset ol li label input, 
form.formtastic fieldset ol li.time fieldset ol li label input, 
form.formtastic fieldset ol li.datetime fieldset ol li label input { display:inline; margin:0; padding:0;  }


/* -------------------------------------------------------------------------------------------------

Load this stylesheet after formtastic.css in your layouts to override the CSS to suit your needs.
This will allow you to update formtastic.css with new releases without clobbering your own changes.

For example, to make the inline hint paragraphs a little darker in color than the standard #666:

form.formtastic fieldset ol li p.inline-hints { color:#333; }

--------------------------------------------------------------------------------------------------*/

/* FIELDSETS & LISTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset.buttons { padding-left:20%; }

/* LABELS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li label { display:block; width:20%; float:left; padding-top:.2em; }

/* STRING & NUMERIC OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.string input { width:30%; }
form.formtastic fieldset ol li.password input { width:30%; }
form.formtastic fieldset ol li.numeric input { width:30%; }

/* BOOLEAN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.boolean label { padding-left:20%; width:auto; }

/* NESTED FIELDSETS AND LEGENDS (radio, check boxes and date/time inputs use nested fieldsets)
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li fieldset ol { float:left; width:30%; margin:0; padding:0 0 0 20%; }

/* TEXTAREA OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.text textarea { width:50%; }