/* FitnessClasses */

.runkeeper .threeColumn.fitnessClass#content #leftColumn {
   margin-right: 30px;
}

.runkeeper .threeColumn.fitnessClass#content #mainColumn {
   width: 510px;
}

.runkeeper .threeColumn.fitnessClass#content #rightColumn {
   margin-left: 30px;
}

.runkeeper #fitnessClassSignUp {
   width: 200px;
   float: none;
   margin: 15px 0 0 0;
}

.runkeeper .threeColumn.fitnessClass#content #leftColumn input[type="submit"] {
   position: absolute;
   top: -5000px;
}

.runkeeper .fitnessClass .priceContainer {
   width: 200px;
   margin: 15px 0;
}

.runkeeper .fitnessClass .priceContainer .priceItem {
   width: 200px;
   margin: 5px 0;
   font-weight: bold;
   color: #333;
}

.runkeeper .fitnessClass .priceContainer .priceItem span {
   font-weight: normal;
   color: #666;
}

.runkeeper .fitnessClass .priceContainer .priceItem span.notAvailable {
   font-weight: bold;
   color: #333;
   font-style: italic;
}

.runkeeper .fitnessClass #mainColumn .description,
.fitnessClass #leftColumn .description {
   color: #333;
   line-height: 130%;
   font-size: 12px;
}

.runkeeper .fitnessClass #leftColumn .description {
   margin-top: 25px;
}

.runkeeper .fitnessClass #leftColumn .description {
   border-top: 1px solid #EEE;
   padding-top: 15px;
}

.runkeeper .calendar.fitnessClass {
   background: url(../images/calendar-bg-large.png) no-repeat 0 0;
   padding-top: 40px;
   width: 506px;
   padding-right: 4px;
   height: 366px;
   margin-bottom: 25px;
}

.runkeeper .calendar.fitnessClass .calendarHeader {
   width: 470px;
   margin: 0 auto 2px auto;
   position: relative;
}

.runkeeper .calendar.fitnessClass .calendarHeader h3 {
   font-size: 24px;
   text-align: center;
   border-bottom: none;
   width: 200px;
   margin: 0 auto;
}

.runkeeper .calendar.fitnessClass .calendarHeader .calendarPrevious {
   position: absolute;
   top: 7px;
   left: 0;
}

.runkeeper .calendar.fitnessClass .calendarHeader .calendarNext {
   position: absolute;
   top: 7px;
   right: 0;
}

.runkeeper .calendar.fitnessClass .calendarBox {
   width: 476px;
   margin: 0 auto;
   border-right: 1px solid #CCC;
   border-bottom: 1px solid #CCC;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow {
   clear: both;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell {
   float: left;
   width: 61px;
   height: 53px;
   padding: 3px;
   border-left: 1px solid #CCC;
   border-top: 1px solid #CCC;
   position: relative;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell.todayCell {
   background: #D3E3EF;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell img {
   display: none;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell.raceDay img {
   display: block;
   position: absolute;
   z-index: 1;
   top: -23px;
   left: -17px;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell .calendarDayNumber {
   position: absolute;
   top: 3px;
   left: 3px;
   text-align: left;
   font-size: 14px;
   font-weight: bold;
   color: #000;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell.diffMonth {
   background: #EEE;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell.diffMonth .calendarDayNumber {
   color: #999;
}

.runkeeper .calendar.fitnessClass .calendarBox .calendarWeekRow .calendarDayCell .classDayNumber {
   position: absolute;
   top: 5px;
   right: 3px;
   text-align: right;
   font-size: 10px;
   font-weight: normal;
   color: #666;
   letter-spacing: -0.05em;
}

.runkeeper .fitnessClass .workoutBox {
   position: absolute;
   bottom: 3px;
}

.runkeeper .fitnessClass .restDay {
   position: relative;
   top: 38px;
   width: 61px;
   text-align: center;
   color: #999;
   font-weight: bold;
   font-style: italic;
}

.runkeeper .fitnessClass .workoutItem {
   width: 61px;
   height: 15px;
   margin-top: 1px;
   position: relative;
   font-size: 11px;
   font-weight: bold;
   color: #FFF;
   z-index: 5;
}

.runkeeper .fitnessClass .workoutItem .workoutItemMiddle a,
.fitnessClass .workoutItem .workoutItemMiddle a:hover {
   color: #FFF;
   text-shadow: #333 -1px -1px 0px;
}

.runkeeper .fitnessClass .workoutItem.completed .workoutItemMiddle a,
.fitnessClass .workoutItem.completed .workoutItemMiddle a:hover {
   color: #333;
   text-shadow: none;
}

.runkeeper .fitnessClass .workoutItem:hover {
   cursor: pointer;
}

.runkeeper .fitnessClass .workoutItem .workoutItemLeft {
   background: url(../images/workout-bg-l.png) no-repeat 0 0;
   position: absolute;
   top: 0;
   left: 0;
   width: 4px;
   height: 15px;
}

.runkeeper .fitnessClass .workoutItem .workoutItemRight {
   background: url(../images/workout-bg-r.png) no-repeat 0 0;
   position: absolute;
   top: 0;
   right: 0;
   width: 4px;
   height: 15px;
}

.runkeeper .fitnessClass .workoutItem .workoutItemMiddle {
   background: url(../images/workout-bg.png) repeat-x 0 0;
   width: 53px;
   height: 14px;
   padding-top: 1px;
   margin: 0 4px;
}

.runkeeper .fitnessClass .workoutItem .workoutItemIcon {
   background: url(../images/workoutItem-arrow.png) no-repeat 0 0;
   float: right;
   width: 10px;
   height: 10px;
   position: relative;
   top: 1px;  
}

.runkeeper .fitnessClass .workoutItem.completed .workoutItemIcon {
   background: url(../images/workoutItem-checkmark.png) no-repeat 0 0;
}

.runkeeper .fitnessClass .workoutItem:hover .workoutItemLeft {
   background: url(../images/workout-bg-l.png) no-repeat 0 -15px;
}

.runkeeper .fitnessClass .workoutItem:hover .workoutItemRight {
   background: url(../images/workout-bg-r.png) no-repeat 0 -15px;
}

.runkeeper .fitnessClass .workoutItem:hover .workoutItemMiddle {
   background: url(../images/workout-bg.png) repeat-x 0 -15px;
}

.runkeeper .fitnessClass .workoutItem:active .workoutItemLeft {
   background: url(../images/workout-bg-l.png) no-repeat 0 -30px;
}

.runkeeper .fitnessClass .workoutItem:active .workoutItemRight {
   background: url(../images/workout-bg-r.png) no-repeat 0 -30px;
}

.runkeeper .fitnessClass .workoutItem:active .workoutItemMiddle {
   background: url(../images/workout-bg.png) repeat-x 0 -30px;
}

.runkeeper .fitnessClass .workoutItem.completed .workoutItemLeft {
   background: url(../images/workout-bg-l.png) no-repeat 0 -45px;
}

.runkeeper .fitnessClass .workoutItem.completed .workoutItemRight {
   background: url(../images/workout-bg-r.png) no-repeat 0 -45px;
}

.runkeeper .fitnessClass .workoutItem.completed .workoutItemMiddle {
   background: url(../images/workout-bg.png) repeat-x 0 -45px;
}

.runkeeper .fitnessClass .workoutItem.completed:hover .workoutItemLeft {
   background: url(../images/workout-bg-l.png) no-repeat 0 -60px;
}

.runkeeper .fitnessClass .workoutItem.completed:hover .workoutItemRight {
   background: url(../images/workout-bg-r.png) no-repeat 0 -60px;
}

.runkeeper .fitnessClass .workoutItem.completed:hover .workoutItemMiddle {
   background: url(../images/workout-bg.png) repeat-x 0 -60px;
}

.runkeeper .fitnessClass .workoutItem.completed:active .workoutItemLeft {
   background: url(../images/workout-bg-l.png) no-repeat 0 -75px;
}

.runkeeper .fitnessClass .workoutItem.completed:active .workoutItemRight {
   background: url(../images/workout-bg-r.png) no-repeat 0 -75px;
}

.runkeeper .fitnessClass .workoutItem.completed:active .workoutItemMiddle {
   background: url(../images/workout-bg.png) repeat-x 0 -75px;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox .icon {
   width: 30px;
   height: 30px;
   margin-right: 6px;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox {
   height: 30px;
   position: relative;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox .icon img {
   width: 30px;
   height: 30px;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox .textBox {
   float: left;
   width: 123px;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox .textBox .leftListTitle {
   font-size: 13px;
   color: #111;
   font-weight: bold;
   margin-bottom: 4px;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox .textBox .leftListSub {
   font-size: 11px;
   color: #666;
   font-weight: normal;
}

.runkeeper .fitnessClass .leftListItem .mainDetailsBox .textBox .leftListSub span {
   font-weight: bold;
}

.runkeeper .fitnessClass .leftListItem .streetTeammatesBox .leftListStreetTeammates {
   margin: 10px auto 0 auto;
   width: 180px;
}

.runkeeper .fitnessClass .leftListItem .streetTeammatesBox .leftListStreetTeammates .title {
   font-size: 10px;
   color: #666;
   margin-bottom: 6px;
}

.runkeeper .fitnessClass .userGrid.streetTeammates {
   margin-bottom: 40px;
}

.runkeeper .fitnessClass .leftListItem .streetTeammatesBox .userGrid.streetTeammates {
   margin-bottom: 0;
}

.runkeeper .fitnessClass .detailsBox {
   width: 200px;
   margin-bottom: 20px;
}

.runkeeper .fitnessClass .detailsBox .icon {
   width: 50px;
   height: 50px;
   float: left;
   margin-right: 6px;
}

.runkeeper .fitnessClass .detailsBox .text {
   width: 140px;
   float: left;
   position: relative;
   top: 6px;
}

.runkeeper .fitnessClass .detailsBox .text .mainText {
   font-size: 15px;
   color: #111;
   font-weight: bold;
   margin-bottom: 4px;
}

.runkeeper .fitnessClass .detailsBox .text .subText {
   font-size: 13px;
   color: #666;
   font-weight: normal;
}

.runkeeper .fitnessClass .detailsBox .text .subText span {
   font-weight: bold;
   color: #666;
}

.runkeeper .fitnessClass .authorBox {
   margin: 10px 0 20px;
   width: 200px;
   text-align: center;
   font-size: 14px;
}

.runkeeper .fitnessClass .authorBox span {
   font-weight: bold;
   color: #666;
}

.runkeeper .fitnessClassHeaderBox {
   margin-bottom: 6px;
}

.runkeeper .fitnessClassHeaderBox .fitnessClassHeader {
   float: left;
   font-size: 21px;
   margin-left: 6px;
   font-weight: bold;
}

.runkeeper .fitnessClassHeaderBox .fitnessClassDetails {
   float: right;
   font-size: 13px;
   margin-right: 10px;
   position: relative;
   top: 6px;
   color: #666;
}

.runkeeper .fitnessClassHeaderBox .fitnessClassDetails span {
   font-weight: bold;
   color: #333;
}

.runkeeper .fitnessClass .alreadyStarted {
   width: 200px;
   margin: 20px 0;
   font-size: 18px;
   font-weight: bold;
   font-style: italic;
   color: #111;
   text-align: center;
   line-height: 130%;
}

.runkeeper .fitnessClass.workoutDetailsLightbox {
   width: 661px;
}

.runkeeper .fitnessClass .workoutIntervalsContainer {
   width: 240px;
   padding-left: 20px;
   border-left: 1px solid #EEE;
   float: left;
}

.runkeeper .fitnessClass .workoutDetailsContainer {
   width: 370px;
   padding-right: 10px;
   float: left;
}

.runkeeper .fitnessClass h3.workoutDetailsHeader {
   font-size: 22px;
   border-bottom: none;
   float: left;
   width: 296px;
}

.runkeeper .fitnessClass .shadowBoxContent h3 div.totalWorkout {
   float: right;
   font-size: 16px;
   font-weight: bold;
}

.runkeeper .fitnessClass h3.intervalsHeader {
   border-bottom: none;
   width: 240px;
   margin: 0 auto;
}

.runkeeper .fitnessClass .intervalsContainer {
   width: 260px;
   margin: 0 auto;
   max-height: 300px;
   overflow: auto;
}

.runkeeper .fitnessClass .intervalGroup {
   background: #666;
   padding: 2px;
   width: 236px;
}

.runkeeper #fancybox-inner p.footnote {.fitnessClass 
   font-style: italic;
   font-size: 11px;
   color: #666;
   text-align: center;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem {
   width: 226px;
   padding: 5px;
   margin-top: 2px;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem:first-child {
   margin-top: 0;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem.warmUp,
.fitnessClass .intervalsContainer .intervalsItem.coolDown {
   background: #EEE;
   width: 230px;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem.repetitions {
   font-size: 12px;
   font-weight: bold;
   color: #CCC;
   text-align: center;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem.warmUp .number,
.fitnessClass .intervalsContainer .intervalsItem.coolDown .number,
.fitnessClass .intervalsContainer .intervalsItem.warmUp .speed,
.fitnessClass .intervalsContainer .intervalsItem.coolDown .speed {
   color: #666;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem.slow {
   background: #C3EDC7;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem.steady {
   background: #F7EEC1;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem.fast {
   background: #F7CCC1;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem .speed {
   font-size: 18px;
   font-weight: bold;
   float: right;
   color: #333;
}

.runkeeper .fitnessClass .intervalsContainer .intervalsItem .number {
   font-size: 18px;
   font-weight: bold;
   float: left;
   color: #333;
}

.runkeeper .fitnessClass .nutrition1 {
   width: 500px;
   background: #EDF5FC;
   border: 1px solid #369;
   padding: 10px;
}

.runkeeper .fitnessClass #fancybox-inner p.nutritionInfoAvailable {
   color: #333;
   font-weight: bold;
   font-style: italic;
   font-size: 14px;
}

.runkeeper .fitnessClass .noneContainer {
   width: 720px;
   text-align: center;
}

.runkeeper .fitnessClass .noneContainer .mainText {
   font-size: 24px;
   font-weight: bold;
   color: #666;
   margin: 30px 0;
}

.runkeeper .fitnessClass .noneContainer .subText {
   font-size: 16px;
   font-weight: normal;
   color: #666;
   margin-top: 30px;
}

.runkeeper .fitnessClass .noneContainer .subText a {
   font-weight: bold;
}

.runkeeper .fitnessClass .additionalDetailsRow .selector {
   max-width: 382px;
}

.runkeeper .fitnessClass .additionalDetailsRow .selector span {
   max-width: 342px;
   overflow: hidden;
}

.runkeeper .resultsContainer.fitnessClasses .border:first-child {
   display: none;
}

.runkeeper .fitnessClass h3.profile {
   padding-bottom: 10px;
   font-size: 21px;
   margin-top: 60px;
}

.runkeeper .fitnessClass h3.profile img {
   position: relative;
   top: 2px;
}

.runkeeper .fitnessClass h3.profile:first-child {
   margin-top: 0;
}

.runkeeper .fitnessClass .calendarDayLabelsRow {
   width: 476px;
   margin: 0 auto;
}

.runkeeper .fitnessClass .calendarDayLabel {
   width: 62px;
   padding: 0 3px 3px 3px;
   text-align: center;
   float: left;
   color: #666;
   font-size: 10px;
}

.runkeeper .fitnessClass#leftColumn p {
   text-align: center;
   color: #666;
   font-size: 13px;
   line-height: 130%;
}

.runkeeper .fitnessClass #sponsorBiographyLightbox {
   overflow: auto;
   height: 270px;
   position: relative;
   top: 30px;
}

.runkeeper .fitnessClass .whatsThisbox {
   position: absolute;
   right: 0;
   top: 5px;
   align: right;
}

.runkeeper .fitnessClass #rightColumn .whatsThisbox {
   width: 200px;
   position: relative;
   margin: 0 auto 14px;
}

.runkeeper .fitnessClass .helpIcon {
   float: right;
   width: 20px;
   height: 20px;
   margin-right: 6px;
   position: relative;
   top: -4px;
}

.runkeeper .fitnessClass .whatsThisLink {
   float: right;
}