#header {
  font-size: 12px;
  height: 41px;
  background: #474747;
  z-index: 200;
  position: fixed;
  width: 100%;
  top: 0;
  box-sizing: border-box;
  box-shadow: 1px 1px 10px -5px black;
}

#header a.logo {
  width: 62px;
  text-indent: -9999px;
  overflow: hidden;
  background: transparent url("images/xhale-logo-only-white-on-transparent-32x32.5c75fc7eafdd.png") no-repeat scroll 50% 50%;
  height: 40px;
  margin: auto;
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -31px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (min-resolution: 1.25dppx) {
  #header a.logo {
    background-image: url("images/xhale-logo-only-white-on-transparent-64x64.f46ec763b301.png");
    background-size: 32px 32px;
  }
}

#header a.today-link {
  display: none;
}
@media all and (max-width: 1050px) {
  #header a.today-link {
    color: white;
    padding: 14px 10px;
    display: inline-block;
    text-decoration: none;
  }
}

#header a.today-link:hover {
  text-decoration: underline;
}

@media all and (max-width: 1050px) {
  #header .main-menu-button {
    position: absolute;
    right: 0;
    top: 0;
  }
}

#header .main-menu-button:hover .main-menu-link {
  text-decoration: underline;
  cursor: pointer;
}

#header .main-menu-link {
  display: none;
}
@media all and (max-width: 1050px) {
  #header .main-menu-link {
    color: white;
    padding: 14px 16px;
    display: inline-block;
    text-decoration: none;
  }
}

@media all and (max-width: 1050px) {
  #header .main-menu-button .menu-container {
    display: none;
    clear: right;
    background: #444;
    right: 0px;
    box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 41px;
    z-index: 200;
  }
}

#header ul.menu {
  padding: 0px 0px 0px 0;
  border: 0;
  text-align: left;
  left: 0px;
  display: block;
  margin: 0px;
  border-bottom: 0;
}

#header ul.main-menu {
  z-index: 1;
  background: #474747;
  position: absolute;
}
@media all and (max-width: 1050px) {
  #header ul.main-menu {
    position: relative;
  }
}

#header ul.menu li.calendar a.main-item {
  background: transparent url("icons/menu-16-06.aa70f4feb2f9.png") 7px 9px no-repeat;
}

#header ul.menu li.upload a.main-item {
  background: transparent url("icons/menu-16-02.544af7ec2196.png") 5px 8px no-repeat;
}

#header ul.menu li.charts a.main-item {
  background: transparent url("icons/menu-16-05.97973fdc8871.png") 7px 11px no-repeat;
}

#header ul.menu li.athletes a.main-item {
  background: transparent url("icons/menu-16-04.09757984a181.png") 8px 10px no-repeat;
}

#header ul.menu li.groups a.main-item {
  background: transparent url("icons/menu-group-x1.0e45d3e387ff.png") 5px 13px no-repeat;
}

#header ul.menu li.contact a.main-item {
  background: transparent url("icons/menu-16-01.5c106c892305.png") 5px 10px no-repeat;
}

#header ul.menu li.periodisation a.main-item {
  background: transparent url("icons/menu-periodisation.ab54bdeef9d7.png") 5px 10px no-repeat;
}

#header ul.menu li.dashboard a.main-item {
  background: transparent url("icons/menu-dashboard.07bec3b81972.png") 4px 11px no-repeat;
}

#header ul.menu li.premium a.main-item {
  background: transparent url("icons/menu-premium.f46d9acf36ac.png") 6px 11px no-repeat;
}

#header ul.menu li.settings a.main-item {
  background: transparent url("icons/menu-16-03.13e3eb633ba1.png") 8px 12px no-repeat;
}

#header ul.menu li.logout a.main-item {
  background: transparent url("icons/menu-16-07.58621645aa0f.png") 8px 10px no-repeat;
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.25), only screen and (min-resolution: 1.25dppx) {
  #header ul.menu li.calendar a.main-item {
    background: transparent url("icons/menu-32-06.3e706b66972a.png") 6px 9px no-repeat;
    background-size: 15px 20px;
  }
  #header ul.menu li.upload a.main-item {
    background: transparent url("icons/menu-32-02.125c6f2040fb.png") 6px 9px no-repeat;
    background-size: 15px 20px;
  }
  #header ul.menu li.contact a.main-item {
    background: transparent url("icons/menu-32-01.20e90f09a4db.png") 5px 13px no-repeat;
    background-size: 18px 13px;
  }
  #header ul.menu li.dashboard a.main-item {
    background: transparent url("icons/menu-dashboard-x2.c3a9f8ca1962.png") 4px 11px no-repeat;
    background-size: 19px 19px;
  }
  #header ul.menu li.premium a.main-item {
    background: transparent url("icons/menu-premium-x2.adfe11ba0f59.png") 6px 11px no-repeat;
    background-size: 17px 17px;
  }
  #header ul.menu li.periodisation a.main-item {
    background: transparent url("icons/menu-periodisation-x2.7286f2cd33d1.png") 5px 10px no-repeat;
    background-size: 19px 22px;
  }
  #header ul.menu li.settings a.main-item {
    background: transparent url("icons/menu-32-03.36026e27ca2f.png") 7px 12px no-repeat;
    background-size: 15px 15px;
  }
  #header ul.menu li.coach-directory a.main-item {
    background: transparent url("icons/menu-32-coach.7bfb5d355cd5.png") 7px 9px no-repeat;
    background-size: 17px 19px;
  }
  #header ul.menu li.athletes a.main-item {
    background: transparent url("icons/menu-32-04.a69ea261593d.png") 7px 9px no-repeat;
    background-size: 14px 19px;
  }
  #header ul.menu li.groups a.main-item {
    background: transparent url("icons/menu-group-x2.8ad560f74f58.png") 5px 13px no-repeat;
    background-size: 18px 14px;
  }
  #header ul.menu li.charts a.main-item {
    background: transparent url("icons/menu-32-05.03c1a2ca67c0.png") 8px 9px no-repeat;
    background-size: 13px 18px;
  }
  #header ul.menu li.logout a.main-item {
    background: transparent url("icons/menu-32-07.7f29ef3f78ee.png") 8px 9px no-repeat;
    background-size: 15px 20px;
  }
}
@media all and (max-width: 1050px) {
  #header.logged-in ul.menu li.calendar a.main-item {
    padding-right: 40px;
  } /* Give enough room for the unseen counter.*/
}
#header ul.user-menu {
  float: right;
}

@media all and (max-width: 1050px) {
  #header.logged-in ul.main-menu {
    float: none;
  }
}

@media all and (max-width: 1050px) {
  #header.logged-in ul.user-menu {
    float: none;
  }
}

#header ul.menu li {
  display: block;
  float: left;
  white-space: nowrap;
}

@media all and (max-width: 1050px) {
  #header.logged-in ul.menu li {
    width: 100%;
  }
}

#header ul.menu li a:link,
#header ul.menu li a:visited {
  color: white;
  margin: 0;
  position: relative;
  display: inline-block;
  text-decoration: none;
  box-sizing: border-box;
  font-size: 11.5px;
  font-weight: 100;
}
@media all and (max-width: 1050px) {
  #header ul.menu li a:link,
  #header ul.menu li a:visited {
    width: 100%;
  }
}

#header.logged-in ul.main-menu li a.main-item {
  padding: 13px 14px 13px 25px;
}

#header.logged-in ul.user-menu li a.main-item {
  padding: 13px 12px 13px 27px;
}

#header.logged-out ul.menu li a.main-item {
  padding: 13px 8px 14px 8px;
}

#header ul.menu li a:hover,
#header ul.menu li a:active,
#header ul.menu li a:focus {
  text-decoration: underline;
}

#header ul.menu li .unseen-count {
  display: inline-block;
}
@media all and (max-width: 1050px) {
  #header ul.menu li .unseen-count {
    position: absolute;
    right: 0px;
  }
}

#header ul.menu li .unseen-count .link {
  padding: 13px 8px 13px 0;
  margin-left: -13px;
  display: inline-block;
}

#header ul.menu li .unseen-count .number {
  padding: 1px 5px 1px 5px;
}

#header ul.menu li .unseen-count a .number {
  background: #E75656;
}

#header ul.menu li .unseen-count a:hover,
#header ul.menu li .unseen-count a:focus,
#header ul.menu li .unseen-count a:active {
  text-decoration: none;
}

#header ul li.active a:link,
#header ul li.active a:visited {
  color: #f5f5f5;
}

#training-session-container .training-session-details #race-stages {
  float: left;
  width: 65%;
  margin: 10px 1.5% 0 1%;
}
@media all and (max-width: 506px) {
  #training-session-container .training-session-details #race-stages {
    margin: 0;
    float: none;
    width: 100%;
  }
}

#training-session-container .training-session-details #race-stages table {
  width: 100%;
}
@media all and (max-width: 506px) {
  #training-session-container .training-session-details #race-stages table {
    margin-top: 20px;
  }
}

#training-session-container .training-session-details #race-stages table tr th {
  padding: 5px;
}

@media all and (max-width: 506px) {
  #training-session-container .training-session-details #race-stages table tr {
    padding: 5px;
    border-bottom: 2px solid #eee;
    background: #FDFDFD;
  }
}

#training-session-container .training-session-details #race-stages table td {
  font-size: 13px;
  height: 30px;
  padding: 2px 5px;
  border-top: 1px solid rgb(226, 226, 226);
}
@media all and (max-width: 506px) {
  #training-session-container .training-session-details #race-stages table td {
    display: block;
    height: inherit;
    padding: 2px 0;
    margin: 0;
    border: 0;
  }
}

#training-session-container .training-session-details #race-stages table td .delete,
#training-session-container .training-session-details #race-stages table td .move-up,
#training-session-container .training-session-details #race-stages table td .move-down {
  display: inline-block;
  width: 12px;
  line-height: 100px;
  overflow: hidden;
  height: 15px;
  cursor: pointer;
}

#training-session-container .training-session-details #race-stages table td .delete:hover,
#training-session-container .training-session-details #race-stages table td .move-up:hover,
#training-session-container .training-session-details #race-stages table td .move-down:hover {
  cursor: pointer;
}

#training-session-container .training-session-details #race-stages table td .move-up {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%3Cpath%20fill%3D%22%23555555%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%207%200%20L%2014%2014%20L%207%2011%20L%200%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 50%;
}

#training-session-container .training-session-details #race-stages table td .move-down {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%3Cpath%20fill%3D%22%23555555%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%207%203%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 50%;
}

.structured-workout__editor--athlete {
  background: white;
  overflow: auto;
  display: flex;
  border: 1px solid #C1C1C1;
  margin: 0 15px 15px;
  border-radius: 3px;
}

.structured-workout__editor--athlete.session-form--intensity-1 {
  border-color: #B3D3E5;
}

.structured-workout__editor--athlete.session-form--intensity-2 {
  border-color: #C1D7AD;
}

.structured-workout__editor--athlete.session-form--intensity-3 {
  border-color: #F5E29B;
}

.structured-workout__editor--athlete.session-form--intensity-4 {
  border-color: #DBBFA1;
}

.structured-workout__editor--athlete.session-form--intensity-5 {
  border-color: #DBBCBC;
}

.structured-workout__editor .icon {
  display: inline-block;
  width: 15px;
  line-height: 100px;
  overflow: hidden;
  height: 17px;
  cursor: pointer;
  padding: 0 2px;
  vertical-align: text-bottom;
}

.up-arrow-icon {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2215%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.389%207.013H0L6.028%200%2012%207.013H7.563L7.231%2015H4.687L4.39%207.013z%22%20fill%3D%22%23666%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.up-arrow-icon.icon_active:hover {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2215%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.389%207.013H0L6.028%200%2012%207.013H7.563L7.231%2015H4.687L4.39%207.013z%22%20fill%3D%22%23000%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.up-arrow-icon.icon_disabled {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2215%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.389%207.013H0L6.028%200%2012%207.013H7.563L7.231%2015H4.687L4.39%207.013z%22%20fill%3D%22%23BBB%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.down-arrow-icon {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2215%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.611%207.987H12L5.972%2015%200%207.987h4.437L4.769%200h2.544l.297%207.987z%22%20fill%3D%22%23666%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.down-arrow-icon.icon_active:hover {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2215%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.611%207.987H12L5.972%2015%200%207.987h4.437L4.769%200h2.544l.297%207.987z%22%20fill%3D%22%23000%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.down-arrow-icon.icon_disabled {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2215%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.611%207.987H12L5.972%2015%200%207.987h4.437L4.769%200h2.544l.297%207.987z%22%20fill%3D%22%23BBB%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.pencil-icon {
  background: transparent url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20469.3%20469.3%22%3E%3Cpath%20d%3D%22M348%20151c-4-4-11-4-15%200L130%20354a11%2011%200%200%200%203%2018l16%208v28l-51%2015-51-52%2014-51h28l9%2017a11%2011%200%200%200%2017%202l203-203c2-2%203-4%203-7s-1-6-3-8l-40-39c-2-2-4-3-7-3s-6%201-8%203L46%20302l-3%204-18%2065-25%2085a11%2011%200%200%200%2014%2013l84-24%2065-19%202-1%202-1h1l219-218a11%2011%200%200%200%200-15l-39-40zM457%2076l-64-64a44%2044%200%200%200-61%200l-39%2040c-4%204-4%2011%200%2015l109%20109a11%2011%200%200%200%2015%200l40-39a42%2042%200%200%200%200-61z%22%20fill%3D%22%23666%22%20%2F%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.delete-icon,
#training-session-container .training-session-details #race-stages table td .delete {
  background: transparent url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2215%22%3E%3Cg%20fill%3D%22%23666%22%3E%3Cpath%20d%3D%22M1%2011V4h10v9c0%201%200%201-1%201H2c-1%200-1%200-1-1v-2ZM0%201h3l1-1h4l1%201h3v2H0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) no-repeat 50%;
}

.delete-icon:hover,
#training-session-container .training-session-details #race-stages table td .delete:hover {
  background: transparent url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2215%22%3E%3Cg%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M1%2011V4h10v9c0%201%200%201-1%201H2c-1%200-1%200-1-1v-2ZM0%201h3l1-1h4l1%201h3v2H0z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) no-repeat 50%;
}

#training-session-container .training-session-details #race-stages label {
  width: 10.5em;
  display: inline-block;
}

#training-session-container .training-session-details #race-stages table .overall-time,
#training-session-container .training-session-details #race-stages table .overall-time-label,
#training-session-container .training-session-details #race-stages table .goal-time,
#training-session-container .training-session-details #race-stages table .completed-time,
#training-session-container .training-session-details #race-stages table .advertised-distance,
#training-session-container .training-session-details #race-stages table .completed-distance {
  text-align: right;
}
@media all and (max-width: 506px) {
  #training-session-container .training-session-details #race-stages table .overall-time,
  #training-session-container .training-session-details #race-stages table .overall-time-label,
  #training-session-container .training-session-details #race-stages table .goal-time,
  #training-session-container .training-session-details #race-stages table .completed-time,
  #training-session-container .training-session-details #race-stages table .advertised-distance,
  #training-session-container .training-session-details #race-stages table .completed-distance {
    text-align: left;
  }
}

#training-session-container .training-session-details #race-stages table .completed-time {
  width: 90px;
}

#training-session-container .training-session-details #race-stages table .race-stage:not(.transition) {
  background: #ececec;
}

#training-session-container .training-session-details #race-stages table .advertised-distance-suffix,
#training-session-container .training-session-details #race-stages table .completed-distance-suffix {
  width: 1px;
  padding-left: 0;
}

@media all and (max-width: 506px) {
  #training-session-container .training-session-details #race-stages table .race-stage.transition .goal-time,
  #training-session-container .training-session-details #race-stages table .race-stage.transition .advertised-distance,
  #training-session-container .training-session-details #race-stages table .race-stage.transition .completed-distance {
    display: none;
  }
}

#training-session-container .training-session-details .race-stage.transition .advertised-distance-suffix .unit,
#training-session-container .training-session-details .race-stage.transition .completed-distance-suffix .unit,
#training-session-container .training-session-details .race-stage.transition .advertised-distance .field-wrapper,
#training-session-container .training-session-details .race-stage.transition .goal-time .field-wrapper,
#training-session-container .training-session-details .race-stage.transition .completed-distance .field-wrapper {
  display: none;
}

#training-session-container .race-bottom .right-column {
  float: left;
  width: 31%;
  margin-left: 0.5%;
}
@media all and (max-width: 506px) {
  #training-session-container .race-bottom .right-column {
    float: none;
    width: inherit;
  }
}

#training-session-container .importing-activity-file {
  padding: 9px 0 7px;
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  padding: 0;
  line-height: 1.5em;
  position: relative;
  color: #f1f1f1;
  background-color: #fbfbfb;
  border-color: #f1f1f1;
  border-top: 2px solid;
}

#training-session-container #training-session-form .related-training-logs-widget {
  background: #f1f1f1;
  border-radius: 5px;
}

#training-session-container #training-session-form.intensity-1 .related-training-logs-widget {
  background: #53bdf8;
  border-color: #53bdf8;
}

#training-session-container #training-session-form.intensity-2 .related-training-logs-widget {
  background: #bbeb8f;
  border-color: #bbeb8f;
}

#training-session-container #training-session-form.intensity-3 .related-training-logs-widget {
  background: #ffe57d;
  border-color: #ffe57d;
}

#training-session-container #training-session-form.intensity-4 .related-training-logs-widget {
  background: #ffac52;
  border-color: #ffac52;
}

#training-session-container #training-session-form.intensity-5 .related-training-logs-widget {
  background: #ff6e6e;
  border-color: #ff6e6e;
}

#training-session-container .related-training-logs-widget h5 {
  margin: 0;
  text-align: center;
  padding-top: 12px;
  padding-bottom: 10px;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
}

#training-session-container .importing-activity-file .add-button {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 24px;
  box-sizing: border-box;
  height: 24px;
  font-size: 20px;
  text-align: center;
  vertical-align: middle;
  padding-top: 3px;
  background: white;
  border-radius: 5px;
  border: 1px solid;
  padding-left: 2px;
}

#training-session-container .importing-activity-file.not-importing .add-button {
  box-shadow: inset 0px 1px 1px 0px rgba(0, 0, 0, 0.09);
  border-color: #C1C1C1;
}

#training-session-container .importing-activity-file .add-button:hover {
  cursor: pointer;
}

#training-session-container #training-session-form .importing-activity-file.importing .add-button {
  background: #797979;
  color: white;
}

#training-session-container .importing-activity-file .details {
  padding: 10px;
  margin-right: 50px;
}

#training-session-container .importing-activity-file .details .importing-activity-description .activity-type {
  font-weight: bold;
  font-size: 1.2em;
}

#training-session-container .importing-activity-file .details .importing-activity-description,
#training-session-container .importing-activity-file .details .importing-activity-datetime {
  color: black;
}

#training-session-container .permalink {
  display: block;
  padding: 14px 0;
  border-radius: 0 0 5px 5px;
  text-align: center;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
}

#training-log-container .charts-container.loading {
  background: transparent url("images/loading-dark-background-16x16.ecf792c6a7ad.gif") no-repeat 50% 50%;
  height: 200px;
}

#training-session-container .discipline-widget #other-discipline {
  margin: 3px 0 0 112px;
  font-size: 13px;
  font-style: italic;
  text-transform: lowercase;
  overflow: auto;
}

#training-session-container #training-log,
#training-session-container #training-log-preview {
  line-height: 1.4em;
}

#training-session-container #training-log h4,
#training-session-container #training-log-preview h4 {
  width: 100px;
  text-align: right;
}

#training-session-container #training-log dt,
#training-session-container #training-log-preview dt {
  float: left;
  width: 112px;
  text-align: right;
  margin-right: 10px;
}

.intensity-1 .session-form__discipline-title.active, .intensity-1 .session-form__intensity-title.active, .intensity-1 .session-form__schedule-title.active {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%2322aaf6%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 96%;
}

.intensity-2 .session-form__discipline-title.active, .intensity-2 .session-form__intensity-title.active, .intensity-2 .session-form__schedule-title.active {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23a1e364%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 96%;
}

.intensity-3 .session-form__discipline-title.active, .intensity-3 .session-form__intensity-title.active, .intensity-3 .session-form__schedule-title.active {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23ffcc00%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 96%;
}

.intensity-4 .session-form__discipline-title.active, .intensity-4 .session-form__intensity-title.active, .intensity-4 .session-form__schedule-title.active {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23ff941f%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 96%;
}

.intensity-5 .session-form__discipline-title.active, .intensity-5 .session-form__intensity-title.active, .intensity-5 .session-form__schedule-title.active {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23ff3b3b%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 96%;
}

.session-form__discipline-title.active:hover, .session-form__intensity-title.active:hover, .session-form__schedule-title.active:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

#training-session-form.columns-1 .intensity-widget {
  position: relative;
  box-shadow: none;
  left: 0;
  right: 0;
}

#training-session-form.columns-3 .schedule-widget {
  position: absolute;
  display: block;
  left: 66.666666%;
  right: 0%;
  z-index: 10;
}

#training-session-form.columns-3 .intensity-widget {
  position: absolute;
  display: block;
  left: 33.333333%;
  right: 33.333333%;
  z-index: 10;
}

#training-session-form .schedule-widget-inner,
#training-session-form .intensity-widget-inner {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

#training-session-form.columns-1 .intensity-widget-inner {
  background: transparent;
  padding: 10px 0 0;
  margin: 0;
  clear: both;
}

#training-session-form.columns-3 .schedule-widget-inner,
#training-session-form.columns-3 .intensity-widget-inner {
  background: white;
  padding: 1px 15px 15px;
  margin: 0 13px;
  height: 455px;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 15px;
}

#training-session-form.columns-3 .discipline-widget-inner,
#training-session-form.columns-3 .schedule-widget-inner,
#training-session-form.columns-3 .intensity-widget-inner {
  border-radius: 5px;
}

.discipline-widget {
  position: absolute;
  display: block;
  left: 0;
  width: 33.333333%;
  z-index: 10;
}

.discipline-widget-inner {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  background: white;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 15px;
  padding: 1px 15px 15px;
  margin: 0 13px;
  min-height: 455px;
}

.discipline-widget ul:not(.errorlist) {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-left: 90px;
  margin-top: 10px;
  font-size: 13px;
}

.discipline-widget h5 {
  width: 86px;
  float: left;
  text-align: right;
  margin-top: 2px;
  font-size: 13px;
}

.discipline-widget .full-coaching-message {
  clear: both;
  margin: 25px 0px 0px 112px;
  line-height: 1.4em;
}

.discipline-widget .errorlist {
  margin: 6px 0 0 51px;
}

.discipline-dropdown__main-category {
  display: block;
  float: left;
  background: silver;
  width: 75px;
  text-align: center;
  margin: 10px;
  height: 75px;
  box-sizing: border-box;
  cursor: pointer;
  background: #e8e8e8;
}

.discipline-dropdown__main-category:hover {
  cursor: pointer;
  background: #cccccc;
}

.session-form__discipline-title, .session-form__intensity-title, .session-form__schedule-title {
  width: 33.333333%;
  box-sizing: border-box;
  padding: 15px;
}

.session-form__discipline-title.active, .session-form__intensity-title.active, .session-form__schedule-title.active {
  border-right: 1px solid rgba(0, 0, 0, 0.07);
  cursor: pointer;
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23B2B2B2%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2014%200%20L%207%2014%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 96%;
}

#training-session-form .intensity-widget ul li label {
  display: block;
  overflow: auto;
  border-width: 3px 0 0 0;
  border-style: solid;
  min-height: 3em;
}

#training-session-form .intensity-widget ul li.level-0 label {
  border-color: #c1c1c1;
}

#training-session-form .intensity-widget ul li.level-1 label {
  border-color: #22aaf6;
}

#training-session-form .intensity-widget ul li.level-2 label {
  border-color: #a1e364;
}

#training-session-form .intensity-widget ul li.level-3 label {
  border-color: #ffe57d;
}

#training-session-form .intensity-widget ul li.level-4 label {
  border-color: #ff941f;
}

#training-session-form .intensity-widget ul li.level-5 label {
  border-color: #ff3b3b;
}

#training-session-form .intensity-widget ul li.level-0 label .description {
  background: #fbfbfb;
}

#training-session-form .intensity-widget ul li.level-1 label .description {
  background: #DFF4FF;
}

#training-session-form .intensity-widget ul li.level-2 label .description {
  background: #EDFFDC;
}

#training-session-form .intensity-widget ul li.level-3 label .description {
  background: #fffcee;
}

#training-session-form .intensity-widget ul li.level-4 label .description {
  background: #FFFBF3;
}

#training-session-form .intensity-widget ul li.level-5 label .description {
  background: #FFF7F7;
}

#training-session-form.columns-1 .intensity-widget-inner > label {
  padding-left: 5px;
}

#training-session-form.columns-1 .intensity-widget ul {
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin-top: 3px;
  font-size: 14px;
}

#training-session-form.columns-1 .intensity-widget ul li {
  display: inline-block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  text-align: center;
}

#training-session-form.columns-1 .intensity-widget-option-label {
  padding: 12px 0px;
  width: inherit;
  cursor: pointer;
  display: block;
  border-width: 3px 0 3px 0;
  min-height: 0;
}

#training-session-form.columns-1 .intensity-widget ul li label .description {
  display: none;
}

#training-session-form.columns-1 .intensity-widget ul li input {
  margin: 4px 10px 9px;
  display: none;
}

#training-session-form.columns-1 .intensity-widget ul li.level-0 label {
  background: #fbfbfb;
}

#training-session-form.columns-1 .intensity-widget ul li.level-1 label {
  background: #DFF4FF;
}

#training-session-form.columns-1 .intensity-widget ul li.level-2 label {
  background: #EDFFDC;
}

#training-session-form.columns-1 .intensity-widget ul li.level-3 label {
  background: #fffcee;
}

#training-session-form.columns-1 .intensity-widget ul li.level-4 label {
  background: #FFFBF3;
}

#training-session-form.columns-1 .intensity-widget ul li.level-5 label {
  background: #FFF7F7;
}

#training-session-form.columns-1 .intensity-widget-option-label-disabled {
  cursor: default;
}

#training-session-form.columns-1 .intensity-widget-option-label-disabled:not(.active) {
  opacity: 0.5;
}

#training-session-form.columns-1 .intensity-widget:not([readonly]) ul li.level-0 label:hover, #training-session-form.columns-1 .intensity-widget ul li.level-0 label.active {
  background: #CDCDCD;
}

#training-session-form.columns-1 .intensity-widget:not([readonly]) ul li.level-1 label:hover, #training-session-form.columns-1 .intensity-widget ul li.level-1 label.active {
  background: #53bdf8;
}

#training-session-form.columns-1 .intensity-widget:not([readonly]) ul li.level-2 label:hover, #training-session-form.columns-1 .intensity-widget ul li.level-2 label.active {
  background: #bbeb8f;
}

#training-session-form.columns-1 .intensity-widget:not([readonly]) ul li.level-3 label:hover, #training-session-form.columns-1 .intensity-widget ul li.level-3 label.active {
  background: #ffe57d;
}

#training-session-form.columns-1 .intensity-widget:not([readonly]) ul li.level-4 label:hover, #training-session-form.columns-1 .intensity-widget ul li.level-4 label.active {
  background: #ffac52;
}

#training-session-form.columns-1 .intensity-widget:not([readonly]) ul li.level-5 label:hover, #training-session-form.columns-1 .intensity-widget ul li.level-5 label.active {
  background: #ff6e6e;
}

#training-session-form.columns-1 .intensity-widget .small-guide {
  font-size: 11px;
  padding: 6px 0 0px;
}

#training-session-form.columns-1 .intensity-widget .small-guide div {
  padding: 1px;
}

#training-session-form.columns-3 .intensity-widget ul {
  padding: 0;
}

#training-session-form.columns-3 .intensity-widget ul li {
  display: block;
  margin-bottom: 10px;
}

#training-session-form.columns-3 .intensity-widget ul li label input {
  margin: 4px 10px 9px;
}

#training-session-form.columns-3 .intensity-widget-inner > label {
  display: none;
}

#training-session-form.columns-3 .intensity-widget ul li label .description {
  float: right;
  display: block;
  padding: 5px;
  width: 250px;
  font-size: 0.9em;
  line-height: 1.5em;
  text-align: right;
}

#training-session-form.columns-3 .intensity-widget ul li label .description .bike-heart-rate,
#training-session-form.columns-3 .intensity-widget ul li label .description .run-heart-rate {
  display: block;
}

#training-session-form.columns-3 #other-discipline input {
  float: left;
  width: 84%;
  border: 1px solid rgb(195, 195, 195);
  padding: 4px;
  border-right: 1px solid rgb(219, 219, 219);
}

#training-session-form.columns-3 #other-discipline .continue {
  float: left;
  padding: 3px 3px 1px 3px;
  border: 1px solid silver;
  border-left: 0;
  background: #EFEFEF;
  color: #979696;
  height: 17px;
}

#training-session-form.columns-3 #other-discipline .continue:hover {
  background: #DBD9D9;
  cursor: pointer;
}

#training-session-form.columns-3 #delete-session {
  margin: 10px 5px 0 0;
}

#training-session-form.columns-1 #delete-session {
  margin: 9px 5px 0 0;
}

#training-session-container.discipline-race #delete-session {
  color: white;
}

#training-session-container .field {
  margin: 15px 0;
}

.session-form__training-plan-notes,
.session-form__athlete-feedback,
.session-form__athlete-race-plan,
.session-form__athlete-race-feedback {
  width: 100%;
  min-height: 250px;
  font-size: 11px;
}
@media all and (max-width: 506px) {
  .session-form__training-plan-notes,
  .session-form__athlete-feedback,
  .session-form__athlete-race-plan,
  .session-form__athlete-race-feedback {
    font-size: 16px;
  }
}

#training-session-container #training-session-form.intensity-racing {
  color: #222;
}

#training-session-container #training-session-form.intensity-racing {
  background: #fbfbfb;
}

#training-session-container #training-session-form.intensity-none {
  background: #fbfbfb;
}

#training-session-container #training-session-form.intensity-0 {
  background: #fbfbfb;
}

#training-session-container #training-session-form.intensity-1 {
  background: #DFF4FF;
}

#training-session-container #training-session-form.intensity-2 {
  background: #EDFFDC;
}

#training-session-container #training-session-form.intensity-3 {
  background: #fffcee;
}

#training-session-container #training-session-form.intensity-4 {
  background: #FFFBF3;
}

#training-session-container #training-session-form.intensity-5 {
  background: #FFF7F7;
}

#training-session-container #training-session-form.columns-1 .title-section {
  padding: 1px 5px 1px;
}

#training-session-form .title-section .meta-info .field-wrapper {
  float: left;
  margin: 4px 0px 0 20px;
}

#training-session-form.columns-1 .title-section .meta-info .field-wrapper,
#training-session-form.columns-1 .title-section .field-wrapper {
  margin: 10px 0 0 0;
  float: none;
}

#training-session-container #training-session-form.columns-1 .reschedule-date > div {
  display: inline-block;
  width: inherit;
}

#training-session-container #training-session-form.columns-3 .title-section h2 {
  font-weight: bold;
  float: left;
  margin: 0;
}

.session-form__title.active span.title {
  cursor: pointer;
  border-bottom: 2px dotted rgba(0, 0, 0, 0.2);
}

.session-form__title.active span.title:hover {
  cursor: pointer;
  border-bottom: 2px solid rgba(0, 0, 0, 0.2);
}

#training-session-container #training-session-form.columns-3 .title-section .reschedule-date.field-wrapper {
  float: right;
  padding: 10px 15px;
}
@media all and (max-width: 506px) {
  #training-session-container #training-session-form.columns-3 .title-section .reschedule-date.field-wrapper {
    padding: 0;
    float: none;
  }
}

#training-session-container #training-session-form.columns-1 .title-section .reschedule-date.field-wrapper {
  padding: 0;
  float: none;
}

#training-session-form.columns-1 input[type=text] {
  width: 140px;
}

#training-session-container #training-session-form.columns-3 .title-section .reschedule-date label {
  line-height: 32px;
  display: inline-block;
  margin-right: 6px;
}
@media all and (max-width: 506px) {
  #training-session-container #training-session-form.columns-3 .title-section .reschedule-date label {
    line-height: inherit;
    width: 8.5em;
  }
}

#training-session-container #training-session-form.columns-3 .title-section {
  overflow: auto;
  color: black;
  clear: both;
  background: #f1f1f1;
  position: relative;
  z-index: 11;
}

#training-session-container #training-session-form.columns-3.intensity-racing .title-section {
  background: #444;
  color: white;
}

#training-session-container #training-session-form.columns-3.columns-3.intensity-0 .title-section {
  background: #f1f1f1;
}

#training-session-container #training-session-form.columns-3.intensity-1 .title-section {
  background: #53bdf8;
}

#training-session-container #training-session-form.columns-3.intensity-2 .title-section {
  background: #bbeb8f;
}

#training-session-container #training-session-form.columns-3.intensity-3 .title-section {
  background: #ffe57d;
}

#training-session-container #training-session-form.columns-3.intensity-4 .title-section {
  background: #ffac52;
}

#training-session-container #training-session-form.columns-3.intensity-5 .title-section {
  background: #ff6e6e;
}

#training-session-container #training-session-form.columns-1 .button-wrapper {
  background: rgb(223, 223, 223);
}

#training-session-container #training-session-form .button-wrapper {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

#training-session-container #training-session-form.intensity-1 .button-wrapper {
  background-color: #DFF4FF;
}

#training-session-container #training-session-form.intensity-2 .button-wrapper {
  background-color: #EDFFDC;
}

#training-session-container #training-session-form.intensity-3 .button-wrapper {
  background-color: #fffcee;
}

#training-session-container #training-session-form.intensity-4 .button-wrapper {
  background-color: #FFFBF3;
}

#training-session-container #training-session-form.intensity-5 .button-wrapper {
  background-color: #FFF7F7;
}

#training-session-form input[type=submit] {
  border: none;
  box-shadow: none;
  color: #000000;
  background: #c1c1c1;
  text-shadow: none;
  margin: 6px;
  width: 130px;
  -webkit-appearance: none;
}

#training-session-form.intensity-0 input[type=submit] {
  background-color: #c1c1c1;
}

#training-session-form.intensity-1 input[type=submit] {
  background-color: #53bdf8;
}

#training-session-form.intensity-2 input[type=submit] {
  background-color: #bbeb8f;
}

#training-session-form.intensity-3 input[type=submit] {
  background-color: #ffe57d;
}

#training-session-form.intensity-4 input[type=submit] {
  background-color: #ffac52;
}

#training-session-form.intensity-5 input[type=submit] {
  background-color: #ff6e6e;
}

#training-session-form input[type=submit]:hover:enabled {
  background: #d2d2d2;
}

#training-session-form.intensity-0 input[type=submit]:hover:enabled {
  background: #d2d2d2;
}

#training-session-form.intensity-1 input[type=submit]:hover:enabled {
  background: #62c7ff;
}

#training-session-form.intensity-2 input[type=submit]:hover:enabled {
  background: #c1f196;
}

#training-session-form.intensity-3 input[type=submit]:hover:enabled {
  background: #ffee8d;
}

#training-session-form.intensity-4 input[type=submit]:hover:enabled {
  background: #fdc477;
}

#training-session-form.intensity-5 input[type=submit]:hover:enabled {
  background: #ff8181;
}

#training-session-form input[type=submit]:focus {
  outline: none;
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #c1c1c1;
}

#training-session-form.intensity-0 input[type=submit]:focus {
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #c1c1c1;
}

#training-session-form.intensity-1 input[type=submit]:focus {
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #53bdf8;
}

#training-session-form.intensity-2 input[type=submit]:focus {
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #bbeb8f;
}

#training-session-form.intensity-3 input[type=submit]:focus {
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #ffe57d;
}

#training-session-form.intensity-4 input[type=submit]:focus {
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #ffac52;
}

#training-session-form.intensity-5 input[type=submit]:focus {
  box-shadow: 0 0 0px 1px white, 0 0 0px 3px #ff6e6e;
}

#training-session-form input[type=submit]:disabled {
  color: #8a8a8a;
}

#training-session-form.intensity-0 input[type=submit]:disabled {
  color: #8a8a8a;
}

#training-session-form.intensity-1 input[type=submit]:disabled {
  color: #398ec3;
}

#training-session-form.intensity-2 input[type=submit]:disabled {
  color: #74ad40;
}

#training-session-form.intensity-3 input[type=submit]:disabled {
  color: #b19600;
}

#training-session-form.intensity-4 input[type=submit]:disabled {
  color: #c37b2c;
}

#training-session-form.intensity-5 input[type=submit]:disabled {
  color: #cc2727;
}

#training-session-container #training-session-form.columns-3 .training-session-details {
  overflow: auto;
  padding-bottom: 13px;
}

#training-session-container #training-session-form.columns-1 .training-session-details {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  clear: both;
  padding: 5px;
}

#training-session-container #training-session-form h3 {
  margin-top: 16px;
}

#weekly-summaries h4,
#training-session-container #training-session-form h4 {
  margin-top: 18px;
}

#training-session-container .training-session-details h2 {
  float: left;
}

#training-session-form .fake-textarea {
  background: white;
  font-family: monospace;
}

#training-session-form input[readonly],
#training-session-form .fake-textarea[readonly],
#training-session-form textarea[readonly] {
  background: transparent;
  box-shadow: none;
  color: black;
}

#training-session-form .button-wrapper {
  clear: both;
  position: relative;
}

#training-session-form.columns-1 .button-wrapper {
  padding: 0 5px;
}

#training-session-form.columns-3 .button-wrapper {
  text-align: center;
}

#training-session-form.columns-1 #show-pb-button {
  float: right;
  background: white;
  padding: 2px;
  width: 65px;
  text-align: center;
  font-size: 0.9em;
  text-transform: capitalize;
  border-radius: 5px;
}

#training-session-form.columns-1 #show-pb-button.inactive {
  color: #444;
}

#training-session-form.columns-1 #show-pb-button:not(.inactive):hover {
  cursor: pointer;
}

#id_discipline {
  width: 150px;
}

#training-session-form.columns-1 #additional-discipline-data {
  border-radius: 5px;
  background: white;
  padding: 2px;
  margin: 5px 0px 0px 122px;
  font-size: 0.9em;
}

#training-session-form.columns-1 #additional-discipline-data h4 {
  margin: 5px 2px 0;
}

#training-session-form.intensity-1 #additional-discipline-data, #training-session-form.intensity-1 #show-pb-button {
  background: #53bdf8;
}

#training-session-form.intensity-2 #additional-discipline-data, #training-session-form.intensity-2 #show-pb-button {
  background: #bbeb8f;
}

#training-session-form.intensity-3 #additional-discipline-data, #training-session-form.intensity-3 #show-pb-button {
  background: #ffe57d;
}

#training-session-form.intensity-4 #additional-discipline-data, #training-session-form.intensity-4 #show-pb-button {
  background: #ffac52;
}

#training-session-form.intensity-5 #additional-discipline-data, #training-session-form.intensity-5 #show-pb-button {
  background: #ff6e6e;
}

#training-session-form.columns-1 input[type=submit] {
  margin: 4px auto;
}

#training-session-container .key-session p {
  background: url("images/key.4e881ae4e6f5.svg") no-repeat 0 0;
  padding: 2px 0 0 26px;
  height: 24px;
  background-size: 20px 27px;
}

#training-session-container #training-session-form.columns-3 .column-left,
#training-session-container #training-session-form.columns-3 .column-middle,
#training-session-container #training-session-form.columns-3 .column-right {
  float: left;
  width: 31%;
  position: relative;
  min-height: 362px;
}
@media all and (max-width: 506px) {
  #training-session-container #training-session-form.columns-3 .column-left,
  #training-session-container #training-session-form.columns-3 .column-middle,
  #training-session-container #training-session-form.columns-3 .column-right {
    min-height: inherit;
    width: 100%;
    float: none;
    margin: 0;
  }
}

#training-session-container #training-session-form.columns-3 .column-left {
  margin: 0 1%;
}
@media all and (max-width: 506px) {
  #training-session-container #training-session-form.columns-3 .column-left {
    margin: 0;
  }
}

#training-session-container #training-session-form.columns-3 .column-middle {
  margin: 0 1.5%;
}
@media all and (max-width: 506px) {
  #training-session-container #training-session-form.columns-3 .column-middle {
    margin: 0;
  }
}

#training-session-container #training-session-form.columns-3 .column-right {
  margin: 0 0 0 1%;
}
@media all and (max-width: 506px) {
  #training-session-container #training-session-form.columns-3 .column-right {
    margin: 0;
  }
}

#training-session-container .field-wrapper.number label {
  display: inline-block;
  height: 18px;
}

#training-session-form {
  font-size: 14px;
}

#training-session-form.columns-1 .field-wrapper.inline label,
#training-session-form.columns-1 .field-wrapper.number label {
  display: inline-block;
  width: 122px;
}

#training-session-form.columns-3 .field-wrapper.inline label,
#training-session-form.columns-3 .field-wrapper.number label {
  display: inline-block;
  width: 127px;
}

#training-session-form.columns-1 .title-section label {
  width: 122px;
  display: inline-block;
}

#training-session-form select {
  width: 212px;
}

#training-session-form input[type=text],
#training-session-form input[type=url] {
  width: 204px;
}

#training-session-form select,
#training-session-form input[type=date],
#training-session-form input[type=text],
#training-session-form input[type=url],
#training-session-form input[type=number] {
  border-width: 1px;
  border-style: solid;
  padding: 3px;
  border-radius: 3px;
  margin-top: 1px;
  margin-bottom: 1px;
}
@media all and (max-width: 506px) {
  #training-session-form select,
  #training-session-form input[type=date],
  #training-session-form input[type=text],
  #training-session-form input[type=url],
  #training-session-form input[type=number] {
    font-size: 15px;
  }
}

#training-session-form input[type=date]:focus,
#training-session-form input[type=text]:focus,
#training-session-form input[type=url]:focus,
#training-session-form input[type=number]:focus {
  outline: none;
  border-width: 2px;
  padding: 2px;
}

#training-session-container #training-map-container {
  width: 100%;
  position: relative;
  margin: 0;
}

#training-session-form textarea,
#training-session-form #id_training_plan_notes {
  font-size: 12px;
  box-shadow: inset 3px 2px 6px -2px rgba(210, 210, 210, 0.44);
  width: 100%;
  box-sizing: border-box;
  line-height: 1.4em;
  padding: 5px;
  border-style: solid;
}
@media all and (max-width: 506px) {
  #training-session-form textarea,
  #training-session-form #id_training_plan_notes {
    font-size: 16px;
  }
}

#training-session-form #id_training_plan_notes:not(textarea) {
  font-family: helvetica, arial, sans-serif;
  white-space: pre-wrap;
  min-height: 100px;
}

#training-session-form .training-plan-sections > .training-plan-section .training-plan-section-block {
  border-width: 0 1px 1px 1px;
  border-style: solid;
  background: white;
}

#training-session-form .training-plan-sections > .training-plan-section:first-child .training-plan-section-block {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  border-top-width: 1px;
}

#training-session-form .training-plan-sections > .training-plan-section:last-child .training-plan-section-block {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  margin-bottom: 4px;
}

#training-session-form .delete-button {
  float: right;
  position: absolute;
  right: 0;
  top: 0;
}

#training-session-form input[type=checkbox] {
  margin: 0px;
  vertical-align: middle;
}
#training-session-form input[type=text],
#training-session-form input[type=date],
#training-session-form input[type=url],
#training-session-form input[type=number],
#training-session-form select,
#training-session-form #id_training_plan_notes,
#training-session-form textarea {
  border-color: #c1c1c1;
}
#training-session-form.intensity-none input[type=text], #training-session-form.intensity-none input[type=date], #training-session-form.intensity-none input[type=url], #training-session-form.intensity-none input[type=number], #training-session-form.intensity-none .fake-text-input, #training-session-form.intensity-none select, #training-session-form.intensity-none #id_training_plan_notes, #training-session-form.intensity-none .structured-workout-summary, #training-session-form.intensity-none .training-plan-section-block, #training-session-form.intensity-none textarea {
  border-color: #C1C1C1;
}
#training-session-form.intensity-0 input[type=text], #training-session-form.intensity-0 input[type=date], #training-session-form.intensity-0 input[type=url], #training-session-form.intensity-0 input[type=number], #training-session-form.intensity-0 .fake-text-input, #training-session-form.intensity-0 select, #training-session-form.intensity-0 #id_training_plan_notes, #training-session-form.intensity-0 .structured-workout-summary, #training-session-form.intensity-0 .training-plan-section-block, #training-session-form.intensity-0 textarea {
  border-color: #C1C1C1;
}
#training-session-form.intensity-1 input[type=text], #training-session-form.intensity-1 input[type=date], #training-session-form.intensity-1 input[type=url], #training-session-form.intensity-1 input[type=number], #training-session-form.intensity-1 .fake-text-input, #training-session-form.intensity-1 select, #training-session-form.intensity-1 #id_training_plan_notes, #training-session-form.intensity-1 .training-plan-section-block, #training-session-form.intensity-1 textarea {
  border-color: #B3D3E5;
}
#training-session-form.intensity-2 input[type=text], #training-session-form.intensity-2 input[type=date], #training-session-form.intensity-2 input[type=url], #training-session-form.intensity-2 input[type=number], #training-session-form.intensity-2 .fake-text-input, #training-session-form.intensity-2 select, #training-session-form.intensity-2 #id_training_plan_notes, #training-session-form.intensity-2 .training-plan-section-block, #training-session-form.intensity-2 textarea {
  border-color: #C1D7AD;
}
#training-session-form.intensity-3 input[type=text], #training-session-form.intensity-3 input[type=date], #training-session-form.intensity-3 input[type=url], #training-session-form.intensity-3 input[type=number], #training-session-form.intensity-3 .fake-text-input, #training-session-form.intensity-3 select, #training-session-form.intensity-3 #id_training_plan_notes, #training-session-form.intensity-3 .training-plan-section-block, #training-session-form.intensity-3 textarea {
  border-color: #F5E29B;
}
#training-session-form.intensity-4 input[type=text], #training-session-form.intensity-4 input[type=date], #training-session-form.intensity-4 input[type=url], #training-session-form.intensity-4 input[type=number], #training-session-form.intensity-4 .fake-text-input, #training-session-form.intensity-4 select, #training-session-form.intensity-4 #id_training_plan_notes, #training-session-form.intensity-4 .training-plan-section-block, #training-session-form.intensity-4 textarea {
  border-color: #DBBFA1;
}
#training-session-form.intensity-5 input[type=text], #training-session-form.intensity-5 input[type=date], #training-session-form.intensity-5 input[type=url], #training-session-form.intensity-5 input[type=number], #training-session-form.intensity-5 .fake-text-input, #training-session-form.intensity-5 select, #training-session-form.intensity-5 #id_training_plan_notes, #training-session-form.intensity-5 .training-plan-section-block, #training-session-form.intensity-5 textarea {
  border-color: #DBBCBC;
}
#training-session-form .training-plan-sections {
  margin-top: 10px;
}
#training-session-form .device-info {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 0 10px 13px;
}
#training-session-form .device-details {
  display: flex;
  align-items: baseline;
  gap: 0.3em; /* space between logo and device name */
}
#training-session-form .device-company {
  width: 60px;
  display: inline-block;
  background: no-repeat center bottom;
  background-size: contain;
  position: relative;
  overflow: hidden;
  line-height: 100;
}
#training-session-form .garmin-logo-tag-black {
  background-image: url("images/garmin-tag-logo-black.40628612905b.png");
  width: 72.5px;
  height: 25px;
  top: 8px;
  background-size: 72.5px 25px;
}

.session-form--intensity-1 .small-button:not(.small-button_disabled, .small-button--dark):hover {
  background-color: #53bdf8;
}

.session-form--intensity-2 .small-button:not(.small-button_disabled, .small-button--dark):hover {
  background-color: #bbeb8f;
}

.session-form--intensity-3 .small-button:not(.small-button_disabled, .small-button--dark):hover {
  background-color: #ffe57d;
}

.session-form--intensity-4 .small-button:not(.small-button_disabled, .small-button--dark):hover {
  background-color: #ffac52;
}

.session-form--intensity-5 .small-button:not(.small-button_disabled, .small-button--dark):hover {
  background-color: #ff6e6e;
}

.session-form--intensity-1 .small-button:not(.small-button--dark) {
  background-color: #c2eafb;
}

.session-form--intensity-2 .small-button:not(.small-button--dark) {
  background-color: #c7f7a8;
}

.session-form--intensity-3 .small-button:not(.small-button--dark) {
  background-color: #fbeeaf;
}

.session-form--intensity-4 .small-button:not(.small-button--dark) {
  background-color: #ffdfb5;
}

.session-form--intensity-5 .small-button:not(.small-button--dark) {
  background-color: #ffd7d9;
}

.session-form--intensity-1 .small-button_disabled:not(.small-button--dark) {
  color: #92c7de;
}

.session-form--intensity-2 .small-button_disabled:not(.small-button--dark) {
  color: #adde8e;
}

.session-form--intensity-3 .small-button_disabled:not(.small-button--dark) {
  color: #d4c891;
}

.session-form--intensity-4 .small-button_disabled:not(.small-button--dark) {
  color: #e4b87d;
}

.session-form--intensity-5 .small-button_disabled:not(.small-button--dark) {
  color: #e6b1b4;
}

.step-section__drag-handle, .step-section__step__drag-handle__intensity-0 {
  background: #f1f1f1 url("images/draggable-indicator-intensity-0.223896d124b8.svg") no-repeat center;
}

.step-section__step__drag-handle__intensity-1 {
  background: #53bdf8 url("images/draggable-indicator-intensity-1.dabfcb225c3a.svg") no-repeat center;
}

.step-section__step__drag-handle__intensity-2 {
  background: #bbeb8f url("images/draggable-indicator-intensity-2.15cf4d7b31c6.svg") no-repeat center;
}

.step-section__step__drag-handle__intensity-3 {
  background: #ffe57d url("images/draggable-indicator-intensity-3.12baf6e25bff.svg") no-repeat center;
}

.step-section__step__drag-handle__intensity-4 {
  background: #ffac52 url("images/draggable-indicator-intensity-4.c41228878cba.svg") no-repeat center;
}

.step-section__step__drag-handle__intensity-5 {
  background: #ff6e6e url("images/draggable-indicator-intensity-5.b53b32f05211.svg") no-repeat center;
}

.session-form__interval-field {
  width: 17px;
}

.session-form__number-field {
  width: 3.5em;
  margin: 1px 0;
  text-align: right;
}

.structured_training__section-title input {
  margin: -3px;
  border-color: transparent;
  background-color: transparent;
  font-weight: bold;
  border-width: 1px;
  border-style: solid;
  padding: 3px;
  border-radius: 3px;
}

.structured_training__section-title input:active,
.structured_training__section-title input:hover,
.structured_training__section-title input:focus {
  border-color: #c1c1c1;
}

.step_target_widget__dropdown_arrow {
  display: inline-block;
  width: 11px;
  height: 9px;
}

.step_target_widget__dropdown_list:focus {
  outline: none;
}

.step_target_widget__dropdown_arrow--is-hovering {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%229%22%20height%3D%229%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23B2B2B2%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%209%200%20L%204.5%209%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 0% 50%;
}

.step_target_widget__dropdown_list_item {
  cursor: pointer;
  border-bottom: 1px solid silver;
  padding: 1px 15px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}

.step_target_widget__dropdown_list_item--selected,
.step_target_widget__dropdown_list_item:hover {
  background: #f1f1f1;
}

.race-form label {
  width: 100px;
  display: inline-block;
}

.tag-input__dropdown-list {
  font-size: 12px;
  position: absolute;
  background: white;
  border-radius: 5px;
  left: 0px;
  box-shadow: 0px 0px 6px -3px #757374;
  border: 1px solid silver;
  overflow: auto;
  z-index: 3;
}

.tag-input__dropdown-list-item {
  padding: 4px;
  cursor: pointer;
}

.tag-input__dropdown-list-item:hover {
  background: #e9e9e9;
}

.training_session_form__add_content_attachment_button {
  background: #FFF url("icons/icon-attachment.e0eccaeec1a8.svg") no-repeat 9px 8px;
  height: 22px;
  padding: 10px 0px 1px 40px;
}

.training_session_form__create_structured_workout_button {
  background: #FFF url("icons/icon-structured-workout.2f08d4735aa3.svg") no-repeat 10px 11px;
  height: 26px;
  padding: 10px 0px 1px 40px;
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

.structured-workout-summary__edit-button:hover,
.training_session_form__create_structured_workout_button:hover,
.training_session_form__add_content_attachment_button:hover {
  text-decoration: underline;
  cursor: pointer;
}

.structured-workout-summary__edit-button {
  background: #FFF url("icons/icon-structured-workout.2f08d4735aa3.svg") no-repeat 5px 10px;
  height: 22px;
  padding: 9px 0px 0px 35px;
}

.content-attachments--content-attachment:hover .content-attachment--title {
  text-decoration: underline;
  cursor: pointer;
}

.content-attachment--remove {
  background: url("icons/cross-black.2ba527ae7928.svg") no-repeat 50%;
  color: transparent;
  width: 15px;
  margin-right: 7px;
  cursor: pointer;
  background-color: #f4f3f3;
  border-radius: 19px;
  padding: 4px;
  height: 15px;
}

.content-attachment--remove:hover {
  background-color: #ebeaea;
}

@media all and (max-width: 506px) {
  .top-section__inner {
    width: 100%;
  }
}

@media all and (max-width: 506px) {
  .activity-summary {
    overflow: auto;
    width: inherit;
    min-height: inherit;
    border: 0;
  }
}

.activity-summary__inner {
  width: 418px;
  border-left: 1px solid #3E3E3E;
  overflow: auto;
  min-height: 265px;
  color: #eee;
}
@media all and (max-width: 506px) {
  .activity-summary__inner {
    overflow: auto;
    width: inherit;
    min-height: inherit;
    border-width: 0;
  }
}

.activity-summary__discipline-title {
  margin: 0 3px 4px;
  font-weight: 100;
  padding: 5px 0 0 40px;
  background-repeat: no-repeat;
  background-position: 0 100%;
}

.level-race .running .activity-summary__discipline-title {
  background-image: url("icons/run-race.4017345566bb.svg");
}

.level-1 .running .activity-summary__discipline-title {
  background-image: url("icons/run-1.f29a36b6df90.svg");
}

.level-2 .running .activity-summary__discipline-title {
  background-image: url("icons/run-2.e1969cbe9624.svg");
}

.level-3 .running .activity-summary__discipline-title {
  background-image: url("icons/run-3.7f66bdbfb6f8.svg");
}

.level-4 .running .activity-summary__discipline-title {
  background-image: url("icons/run-4.eb809d92167d.svg");
}

.level-5 .running .activity-summary__discipline-title {
  background-image: url("icons/run-5.45d52c74ac3f.svg");
}

.level-race .cycling .activity-summary__discipline-title {
  background-image: url("icons/bike-race.7d4f3abc490e.svg");
}

.level-1 .cycling .activity-summary__discipline-title {
  background-image: url("icons/bike-1.eb327b4f18fc.svg");
}

.level-2 .cycling .activity-summary__discipline-title {
  background-image: url("icons/bike-2.5e156c54854f.svg");
}

.level-3 .cycling .activity-summary__discipline-title {
  background-image: url("icons/bike-3.d25f2ab6ba5e.svg");
}

.level-4 .cycling .activity-summary__discipline-title {
  background-image: url("icons/bike-4.314ef75a0dfe.svg");
}

.level-5 .cycling .activity-summary__discipline-title {
  background-image: url("icons/bike-5.65c961b4c3b8.svg");
}

.level-race .swimming .activity-summary__discipline-title {
  background-image: url("icons/swim-race.0d4d7889b6c3.svg");
}

.level-1 .swimming .activity-summary__discipline-title {
  background-image: url("icons/swim-1.637be90ea158.svg");
}

.level-2 .swimming .activity-summary__discipline-title {
  background-image: url("icons/swim-2.f6f87e4f9e59.svg");
}

.level-3 .swimming .activity-summary__discipline-title {
  background-image: url("icons/swim-3.82c34e1b66f9.svg");
}

.level-4 .swimming .activity-summary__discipline-title {
  background-image: url("icons/swim-4.87f20efe0011.svg");
}

.level-5 .swimming .activity-summary__discipline-title {
  background-image: url("icons/swim-5.531eb50199cc.svg");
}

.activity-summary__tab {
  font-weight: normal;
  float: right;
  padding: 12px 9px 5px 9px;
  margin: 0px 0 0 0;
  font-size: 14px;
  cursor: pointer;
}

.activity-summary__tab_active,
.activity-summary__tab:hover {
  background-color: #484848;
}

.activity-summary__help-text {
  margin: 5px 5px 18px;
}

.activity-summary__section {
  clear: both;
  padding: 20px 0px 20px;
  background-color: #484848;
  overflow: auto;
  min-height: 194px;
  position: relative;
}

.activity-summary__buttons {
  float: right;
  margin: -52px 7px 12px 0;
  font-size: 12px;
  font-weight: 400;
}
@media all and (max-width: 506px) {
  .activity-summary__buttons {
    margin-top: -110px;
  }
}

.activity-summary__button {
  padding: 4px 12px;
  border-radius: 4px;
  box-shadow: 1px 1px 5px 0px rgba(0, 0, 0, 0.01);
  background: rgb(132, 132, 132);
  background: -moz-linear-gradient(top, rgb(132, 132, 132) 0%, rgb(107, 107, 107) 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgb(132, 132, 132)), color-stop(100%, rgb(107, 107, 107)));
  background: -webkit-linear-gradient(top, rgb(132, 132, 132) 0%, rgb(107, 107, 107) 100%);
  background: -o-linear-gradient(top, rgb(132, 132, 132) 0%, rgb(107, 107, 107) 100%);
  background: -ms-linear-gradient(top, rgb(132, 132, 132) 0%, rgb(107, 107, 107) 100%);
  background: linear-gradient(to bottom, rgb(132, 132, 132) 0%, rgb(107, 107, 107) 100%);
  text-shadow: 1px 1px 1px rgba(24, 24, 24, 0.29);
  display: inline;
  margin-left: 5px;
  cursor: pointer;
}

.activity-summary__button:hover {
  cursor: pointer;
}

.activity-summary__button_inline {
  margin: 0px;
  width: 22px;
  padding: 0 0 2px 0;
  display: inline-block;
}

/* Component: Menu Bar */
#top-bar {
  position: fixed;
  z-index: 101;
  top: 41px;
  width: 100%;
}

.menu-bar {
  background: #5a5a5a;
  height: 50px;
  color: #ffffff;
  font-weight: 100;
  font-size: 11.5px;
  overflow: hidden;
}

.menu-bar__menu-hierarchy {
  height: 36px;
  float: left;
  margin: 7px;
}

.menu-bar__menu-section {
  float: left;
  border-right: 3px solid #5a5a5a;
}

.menu-bar__menu-section:last-child {
  border-right: none;
}

@media all and (max-width: 506px) {
  .menu-bar__menu-section-one {
    width: 55px;
    overflow: hidden;
  }
}

.menu-bar__menu-title-text {
  padding: 11px 37px 0 9px;
  display: inline-block;
  vertical-align: top;
}

.menu-title.interactive .menu-bar__menu-title-text {
  cursor: pointer;
}

@media all and (max-width: 506px) {
  .menu-bar__menu-section-two {
    width: 65px;
    overflow: hidden;
  }
}

.menu-bar__menu-section:first-child .menu-title {
  border-top-left-radius: 9px;
  border-bottom-left-radius: 9px;
}

.menu-bar__menu-section:last-child .menu-title {
  border-top-right-radius: 9px;
  border-bottom-right-radius: 9px;
}

.menu-bar__menu-section:first-child .menu-section-inner.open .menu-title {
  border-bottom-left-radius: 0;
}

.menu-bar__menu-section:last-child .menu-section-inner.open .menu-title {
  border-bottom-right-radius: 0;
}

#top-bar .menu-title {
  height: 36px;
}

#top-bar .menu-title.interactive {
  cursor: pointer;
  background: #6d6d6d url(data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%238c8c8c%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2010%200%20L%205%2010%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 90% 14px;
  background-position: right 10px top 14px;
}

#top-bar .menu-title-icon {
  background: #8c8c8c;
  width: 26px;
  height: 36px;
  display: inline-block;
}

#top-bar .menu-title.interactive:hover,
#top-bar .menu-section-inner.open .menu-title {
  background: #4a4a4a url(data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%238c8c8c%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2010%200%20L%205%2010%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 90% 14px;
  background-position: right 10px top 14px;
}

#top-bar .menu-body {
  background: #4a4a4a;
  position: absolute;
  top: 46px;
  color: white;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.28);
  min-width: 190px;
  overflow-y: auto;
  z-index: 101;
}

#top-bar .menu-body .menu-item {
  padding: 8px 17px;
  display: block;
  cursor: pointer;
}

#top-bar .menu-body .menu-item:hover {
  background: #656565;
}

#top-bar .menu-body a {
  color: white;
  text-decoration: none;
}

#top-bar .menu-body table tr {
  border-bottom: 1px solid #4c4c4c;
}

#top-bar .menu-body .name {
  min-width: 20em;
}

#top-bar .menu-body table td {
  padding: 0;
}

#top-bar .menu-body table tr.odd {
  background: #5f5f5f;
}

#top-bar .menu-body table tr.even {
  background: #585858;
}

#top-bar .menu-body table tr a {
  padding: 13px 10px;
  display: block;
}

#top-bar .menu-body table tr a:hover {
  background: #656565;
}

.menu-bar__controls .control-info {
  margin: 17px 10px;
  display: inline-block;
}

.menu-bar__controls .control-button {
  background: #6d6d6d;
  display: inline-block;
  padding: 4px 9px;
  margin: 4px 1px;
}

.menu-bar__controls .control-group .control-button:first-child {
  margin-left: 4px;
  border-top-left-radius: 9px;
  border-bottom-left-radius: 9px;
}

.menu-bar__controls .control-group .control-button:last-child {
  margin-right: 4px;
  border-top-right-radius: 9px;
  border-bottom-right-radius: 9px;
}

.menu-bar__controls .control-button.inactive {
  color: #8c8c8c;
}

.menu-bar__controls .control-button.active {
  cursor: pointer;
}

.menu-bar__controls .control-button.active:hover {
  background: #4a4a4a;
}

.menu-bar__controls a.control-button {
  color: white;
  text-decoration: none;
}

#top-bar .athletes-menu .menu-title-icon {
  background: transparent url("icons/menu-32-04.a69ea261593d.png") 100% 8px no-repeat;
  background-size: 14px 19px;
}

#top-bar .coach-calendar-menu .menu-title-icon {
  background: transparent url("icons/menu-32-06.3e706b66972a.png") 100% 7px no-repeat;
  background-size: 15px 20px;
}

#top-bar .private-message-menu .menu-title-icon {
  background: transparent url("icons/menu-32-01.20e90f09a4db.png") 100% 11px no-repeat;
  background-size: 18px 13px;
}

#top-bar .periodisation-menu .menu-title-icon {
  background: transparent url("icons/menu-periodisation-x2.7286f2cd33d1.png") 100% 7px no-repeat;
  background-size: 19px 22px;
}

#top-bar .charts-menu .menu-title-icon {
  background: transparent url("icons/menu-32-05.03c1a2ca67c0.png") 100% 7px no-repeat;
  background-size: 13px 18px;
}

#top-bar .athlete-view-menu .menu-title-icon {
  background: transparent url("icons/menu-32-06.3e706b66972a.png") 100% 7px no-repeat;
  background-size: 13px 18px;
}

#top-bar .athlete-settings-menu .menu-title-icon {
  background: transparent url("icons/menu-32-03.36026e27ca2f.png") 100% 9px no-repeat;
  background-size: 15px 15px;
}

#top-bar .groups-menu .menu-title-icon {
  background: transparent url("icons/menu-group-x2.8ad560f74f58.png") 100% 11px no-repeat;
  background-size: 18px 14px;
}

#top-bar .group-athletes-menu .menu-title-icon {
  background: transparent url("icons/menu-32-04.a69ea261593d.png") 100% 9px no-repeat;
  background-size: 14px 19px;
}

#top-bar .group-settings-menu .menu-title-icon {
  background: transparent url("icons/menu-32-03.36026e27ca2f.png") 100% 9px no-repeat;
  background-size: 15px 15px;
}

.template-folder-marker {
  margin: 12px 1% 0px 1%;
  float: left;
  font-size: 11px;
  cursor: pointer;
  perspective: 700px;
  width: 31.33333%;
  height: 48px;
  position: relative;
}
.template-folder-marker__back, .template-folder-marker__front {
  width: 100%;
  height: 48px;
  user-select: none;
  position: absolute;
  top: 0;
  left: 0px;
  margin-left: 0px;
  padding: 4px;
  box-sizing: border-box;
}
.template-folder-marker__back {
  background: #909090;
  border-radius: 0 5px 0 0;
  box-shadow: 0 -1px 1px rgba(0, 0, 0, 0.15);
}
.template-folder-marker__front {
  color: white;
  font-weight: 100;
  border-radius: 5px 5px 0 0;
  box-shadow: 0 -2px 2px rgba(0, 0, 0, 0.1), 0 1px rgba(255, 255, 255, 0.25) inset;
  background: #909090 no-repeat 95% 85%;
}
.template-folder-marker__tab {
  width: 30px;
  height: 7px;
  border-radius: 4px 4px 0 0;
  position: absolute;
  top: -7px;
  left: 0px;
  box-shadow: 0 -1px 1px rgba(0, 0, 0, 0.15);
  background: #909090;
}
.template-folder-marker__title {
  overflow: hidden;
  height: 36px;
}
.template-folder-marker__intensity-dot {
  background: white;
  height: 4px;
  width: 12px;
  float: left;
  border-radius: 0px;
}
.template-folder-marker__intensity-dot--intensity-1 {
  background-color: #53bdf8;
}
.template-folder-marker__intensity-dot--intensity-2 {
  background-color: #bbeb8f;
}
.template-folder-marker__intensity-dot--intensity-3 {
  background-color: #ffe57d;
}
.template-folder-marker__intensity-dot--intensity-4 {
  background-color: #ffac52;
}
.template-folder-marker__intensity-dot--intensity-5 {
  background-color: #ff6e6e;
}
.template-folder-marker__discipline-category-swim .template-folder-marker__front {
  background-image: url("icons/swim-race.0d4d7889b6c3.svg");
}
.template-folder-marker__discipline-category-bike .template-folder-marker__front {
  background-image: url("icons/bike-race.7d4f3abc490e.svg");
}
.template-folder-marker__discipline-category-run .template-folder-marker__front {
  background-image: url("icons/run-race.4017345566bb.svg");
}
.template-folder-marker__discipline-category-gym .template-folder-marker__front {
  background-image: url("icons/gym-race.e2f6f5d65bad.svg");
}

/**
 * General overrides.
 */
svg {
  overflow: hidden; /* Stop items appearing outside of canvas in IE */
}

/**
 * Layout
 */
.page-athlete-calendar__inner {
  clear: both;
  position: absolute;
  overflow: auto;
  left: 0;
  background: white;
  right: 0;
  top: 0px;
  bottom: 0;
  padding-top: 41px;
  -webkit-overflow-scrolling: touch;
}
@media all and (max-width: 506px) {
  .page-athlete-calendar__inner {
    min-width: inherit;
    position: inherit;
    overflow: none;
  }
}

/**
 * Components
 *
 * These should work the same wherever they appear on the site.
 **/
.no-select {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Chrome/Safari/Opera */
  -khtml-user-select: none; /* Konqueror */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently not supported by any browser */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* stops this element getting a grey highlight when clicked on */
}

.race-marker-row {
  clear: both;
  margin: 5px 0;
  overflow: auto;
}

.race-marker-row .date {
  float: left;
  padding: 11px;
  background: #EAEAEA;
  width: 170px;
  color: #222;
}

.race-marker-row .race-priority {
  float: left;
  font-size: 28px;
  width: 31px;
  background: #DCDADA;
  text-align: center;
  height: 32px;
  padding: 3px;
  color: #464646;
  font-weight: 300;
  text-transform: uppercase;
}

.session {
  font-size: 11px;
  list-style-type: none;
}

.session a .duration,
.session a .description {
  display: block;
  line-height: 15px;
  min-height: 16px;
  float: left;
  clear: left;
}

.small-button {
  background-color: #eaeaea;
  color: black;
  padding: 2px 10px;
  box-shadow: inset -1px -1px 3px 0px rgba(0, 0, 0, 0.04);
  font-size: 11px;
  display: inline;
  border-radius: 8px;
  letter-spacing: 0px;
  border: none;
  white-space: nowrap;
  text-decoration: none; /* in case of this being an <a> tag */
  user-select: none; /* avoid multiple clicks highlighting text */
}

.small-button--dark {
  background-color: #6d6d6d;
  color: white;
}

.small-button:not(.small-button_disabled):not([disabled]) {
  cursor: pointer; /* This may be required to make the click event function on some touchscreens */
}

.small-button:not(.small-button_disabled):not([disabled]):hover {
  cursor: pointer;
  background-color: #dcdcdc;
  text-decoration: none;
}

.small-button--dark:not(.small-button_disabled):not([disabled]):hover {
  background-color: #4a4a4a;
  text-decoration: none;
}

.small-button_highlighted {
  background-color: #2aa0c8;
  color: white;
}

.small-button_highlighted:not(.small-button_disabled):not([disabled]):hover {
  background-color: #30b8e7;
}

.small-button_disabled,
.small-button[disabled] {
  color: #c5c5c5;
}

.small-buttons-group .small-button {
  border-radius: 0;
  margin-right: 1px;
}

.small-buttons-group .small-button:first-child {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.small-buttons-group .small-button:last-child {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  margin-right: 0px;
}

.overlay__close-button {
  background: #eaeaea url("icons/cross-black.2ba527ae7928.svg") no-repeat 50%;
  line-height: 3em;
  overflow: hidden;
  color: black;
  box-shadow: inset -1px -1px 3px 0px rgba(0, 0, 0, 0.04);
  display: inline;
  letter-spacing: 0px;
  border: none;
  white-space: nowrap;
  cursor: pointer;
  float: right;
  transition: background-color 0.3s ease;
  border-radius: 50%;
  padding: 0;
  margin: 5px;
  font-size: 20px;
  text-align: center;
  width: 25px;
  height: 25px;
  color: #3e3e3e;
}

.overlay__close-button:hover {
  background-color: #dcdcdc;
}

.coach-calendar-notes__menu {
  position: absolute;
  background: rgb(220, 220, 220);
  padding: 3px 0px;
  margin: 22px 0px 0px 1px;
  z-index: 2;
  border-radius: 0px 5px 5px;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 8px -2px;
  font-size: 13px;
}

.coach-calendar-notes__menu-item {
  list-style: none;
  width: 150px;
}
.coach-calendar-notes__menu-item--clickable {
  padding: 4px 7px;
  cursor: pointer;
}
.coach-calendar-notes__menu-item--clickable:hover {
  background: #eaeaea;
}
.coach-calendar-notes__menu-item--info-only {
  padding: 4px 7px;
  background: #eaeaea;
}
.coach-calendar-notes__menu-item--separator {
  padding: 1px 7px 0;
  background: #c1c1c1;
}

.coach-calendar-notes__menu-item-title {
  display: block;
  text-transform: uppercase;
  font-size: 0.8em;
  font-weight: bold;
}

.dropdown_menu__body {
  position: absolute;
  background: rgb(220, 220, 220);
  padding: 3px 0px;
  margin: 4px 0px 0px 1px;
  z-index: 2;
  border-radius: 0px 5px 5px;
  box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 8px -2px;
  font-size: 13px;
}

.dropdown_menu__body--dark {
  background: #545454;
  color: white;
}

.dropdown_menu__menu-item {
  list-style: none;
  width: 160px;
}
.dropdown_menu__menu-item--clickable {
  padding: 4px 7px;
  cursor: pointer;
}
.dropdown_menu__menu-item--disabled {
  padding: 4px 7px;
  color: #808080;
}
.dropdown_menu__menu-item--clickable:hover {
  background: #eaeaea;
}
.dropdown_menu__menu-item--info-only {
  padding: 4px 7px;
  background: #eaeaea;
}
.dropdown_menu__menu-item--separator {
  padding: 1px 7px 0;
  background: #c1c1c1;
}

.dropdown_menu__body--dark .dropdown_menu__menu-item--clickable:hover {
  background: #717171;
}

.button-gradient-blue {
  background: #4ba5e6;
  background: -moz-linear-gradient(top, #97d5ff 0%, #4ba5e6 100%);
  background: -webkit-linear-gradient(top, #97d5ff 0%, #4ba5e6 100%);
  background: linear-gradient(top, #97d5ff 0%, #4ba5e6 100%);
}

.number-and-unit-input input {
  margin: 0 1px 0 0;
  border-width: 1px;
  border-style: solid;
  padding: 4px;
  border-radius: 3px;
  text-align: right;
}

.number-and-unit-input .unit.switchable {
  cursor: pointer;
}

.number-and-unit-input .unit.switchable:hover {
  cursor: pointer;
  text-decoration: underline;
}

.number-highlight {
  padding: 0 3px 0 3px;
  border-radius: 2px;
}

.number-highlight.inactive-dark {
  color: white;
  background: #777;
}

.number-highlight.inactive-light {
  color: black;
  background: #eaeaea;
}

.number-highlight.active-red {
  color: white;
  background: #E75656;
}

.number-highlight.active-red:hover {
  background: #FD1F1F;
}

.number-highlight.active-blue {
  color: white;
  background: #4cb8ff;
}

.number-highlight.active-blue:hover {
  background: #4cc1ff;
}

.number-highlight.active-white {
  color: black;
  background: white;
}

.inline-action {
  text-decoration: underline;
  cursor: pointer;
}

input[type=date] {
  margin: 0 5px 0 0;
  border-width: 1px;
  border-style: solid;
  padding: 4px 4px 0px;
  border-radius: 3px;
}

table.data-table {
  border-collapse: collapse;
}

table.data-table thead tr th {
  background: #636363;
  color: white;
  padding-top: 8px;
  padding-bottom: 6px;
  font-weight: normal;
}

table.data-table .number {
  text-align: right;
}

table.data-table tr.odd {
  background: #ececec;
}

table.data-table tr.even {
  background: #f7f7f7;
}

.tag {
  cursor: pointer;
  padding: 0px 5px;
  background: rgba(0, 0, 0, 0.07);
  margin: 0 3px 2px 0px;
  border-radius: 4px;
  font-size: 12px;
  display: inline-block;
}

.tag.removed {
  opacity: 0.3;
}

.tag:hover {
  background: rgba(0, 0, 0, 0.2);
}

.tag.active {
  background: rgb(144, 140, 140);
  color: white;
}

.delete-icon {
  background: transparent url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2215%22%20viewBox%3D%220%200%2012%2015%22%20version%3D%221.1%22%3E%3Cg%20fill%3D%22%23555555%22%3E%3Cpath%20d%3D%22M1%2011C1%2011%201%2011%201%2011L1%204%2011%204C11%204%2011%2012%2011%2011%2011%2011%2011%2011%2011%2011L11%2013C11%2014%2011%2014%2010%2014L2%2014C1%2014%201%2014%201%2013L1%2011C1%2011%201%2011%201%2011L1%2011%201%2011Z%22%20fill%3D%22%23555555%22%2F%3E%3Cpolygon%20points%3D%220%201%203%201%204%200%208%200%209%201%2012%201%2012%203%200%203%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) no-repeat 50%;
  display: inline-block;
  width: 12px;
  line-height: 100px;
  overflow: hidden;
  height: 15px;
  cursor: pointer;
}

.delete-button:hover {
  text-decoration: underline;
  cursor: pointer;
}

.folders-section {
  padding: 7px;
  overflow: auto;
}

label {
  font-size: 13px;
}

.errorlist li {
  padding: 2px 4px;
  margin: 4px 0px 0;
  background: #ee3c3c;
  box-shadow: 2px 2px 0 0 rgba(0, 0, 0, 0.19);
  color: white;
  display: inline;
}

.form-section .errorlist {
  margin-left: 195px;
}

input.standard-button {
  position: relative;
  overflow: hidden;
  margin: 8px auto;
  cursor: pointer;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
  background: #EDEDED;
  background: -moz-linear-gradient(top, #FAFAFA 0%, #CECECE 100%);
  background: -webkit-linear-gradient(top, #FAFAFA 0%, #CECECE 100%);
  background: linear-gradient(top, #FAFAFA 0%, #CECECE 100%);
  padding: 5px 18px;
  font-size: 12px;
  border: 1px solid #C3C3C3;
  box-shadow: 0px 0px 8px 0px rgba(139, 139, 139, 0.34);
  color: rgb(40, 40, 40);
  border-radius: 5px;
}

input.standard-button:disabled {
  color: #929292;
}

input.standard-button:active {
  background: -moz-linear-gradient(top, #CECECE 0%, #FAFAFA 100%);
  background: -webkit-linear-gradient(top, #CECECE 0%, #FAFAFA 100%);
  background: linear-gradient(top, #CECECE 0%, #FAFAFA 100%);
  outline: none;
}

.dark-button {
  position: relative;
  overflow: hidden;
  margin: 8px auto;
  cursor: pointer;
  background: #6d6d6d;
  background: -moz-linear-gradient(top, #7d7d7d 0%, #656464 100%);
  background: -webkit-linear-gradient(top, #7d7d7d 0%, #656464 100%);
  background: linear-gradient(top, #7d7d7d 0%, #656464 100%);
  padding: 5px 18px;
  font-size: 12px;
  border: 0;
  box-shadow: 0px 0px 8px 0px rgba(90, 90, 90, 0.34);
  color: white;
  border-radius: 5px;
}

.dark-button:disabled {
  color: #989898;
}

.dark-button:hover,
.dark-button:active {
  background: -moz-linear-gradient(top, #656464 0%, #7d7d7d 100%);
  background: -webkit-linear-gradient(top, #656464 0%, #7d7d7d 100%);
  background: linear-gradient(top, #7d7d7d 0%, #656464 100%);
  outline: none;
}

.company-profile {
  font-family: "Raleway", sans-serif;
  background: white;
  padding: 15px;
  max-width: 700px;
  margin: 0px auto 15px;
  box-shadow: 2px 2px 15px -8px black;
  border-radius: 5px;
}

/* Dashboard menu */
#menu .menu-item {
  padding: 10px 5px;
  border-bottom: 1px solid #5a5a5a;
  box-shadow: inset 0px -1px 0px 0 rgb(62, 62, 62);
  cursor: pointer; /* clicking these menu items doesn't register on iOS without this */
  display: block;
  color: white;
  text-decoration: none;
}

#menu a.menu-item[href^="http://"],
#menu a.menu-item[href^="https://"] {
  background-image: url("icons/external-link-white.57c09e56d2d4.svg");
  background-repeat: no-repeat;
  background-position: 98% 45%;
}

#menu .menu-item.group {
  background: transparent url(data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23E2E2E2%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2010%200%20L%205%2010%20z%22%2F%3E%20%3C%2Fsvg%3E) no-repeat 97% 12px;
}

#menu .menu-item.group:hover {
  background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%3E%20%3Cpath%20fill%3D%22%23474747%22%20x%3D%220%22%20y%3D%220%22%20d%3D%22M%200%200%20L%2010%200%20L%205%2010%20z%22%2F%3E%20%3C%2Fsvg%3E);
}

#menu a.menu-item.active[href^="http://"],
#menu a.menu-item.active[href^="https://"],
#menu a.menu-item[href^="http://"]:active,
#menu a.menu-item[href^="https://"]:active,
#menu a.menu-item[href^="http://"]:hover,
#menu a.menu-item[href^="https://"]:hover {
  background-image: url("icons/external-link-grey.54270b22512f.svg");
}
@media (max-width: 506px) {
  #menu a.menu-item.active[href^="http://"],
  #menu a.menu-item.active[href^="https://"],
  #menu a.menu-item[href^="http://"]:active,
  #menu a.menu-item[href^="https://"]:active,
  #menu a.menu-item[href^="http://"]:hover,
  #menu a.menu-item[href^="https://"]:hover {
    background-image: url("icons/external-link-white.57c09e56d2d4.svg");
  }
}

#menu .menu-item.active,
#menu .menu-item:active,
#menu .menu-item:hover {
  background-color: #E2E2E2;
  color: black;
  cursor: pointer;
  font-weight: normal;
}

@media (max-width: 506px) {
  #menu .menu-item {
    font-size: 14px;
    padding: 15px;
  }
  #menu .menu-item:hover,
  #menu .menu-item:active,
  #menu .menu-item.active {
    background: inherit;
    color: inherit;
    font-weight: 100;
    border-bottom: inherit;
    border-bottom: 1px solid #5a5a5a;
  }
}
#menu .menu-item .unseen-count {
  padding: 2px 5px 1px 5px;
  font-size: 11px;
}

#menu .menu-item .unseen-count.new-messages {
  background: #E75656;
}

/* Component: Training Session Form */
/* .. race specific */
.race-bottom .results {
  float: left;
  width: 65.5%;
  margin: 0 1.5% 0 1%;
}

.race-bottom .results table {
  width: 100%;
  text-align: left;
  border-collapse: collapse;
}

.race-bottom .results table thead th {
  background: #484848;
  color: #eee;
  font-weight: normal;
}

.race-bottom .results table tbody tr.even {
  background: #ECECEC;
}

.race-bottom .results table th.number,
.race-bottom .results table td.number {
  text-align: right;
}

.race-bottom .race-position {
  float: left;
  width: 31%;
  margin: 0;
}

@media (max-width: 506px) {
  .race-bottom .advertised-distance,
  .race-bottom .goal-time {
    display: none;
  }
  .race-bottom .results,
  .race-bottom .race-position {
    width: 100%;
    float: none;
  }
}
/* Page: Athlete and Coach Calendars */
#training-calendar .week-summary.highlighted {
  background: #e9faff;
}

#training-calendar .week-summary h5 {
  margin: 0 0 2px;
}
@media all and (max-width: 506px) {
  #training-calendar .week-summary h5 {
    margin: 30px 0px 0 2px;
    font-size: 1.3em;
  }
}

#coach-calendar .week-summary h5 {
  display: inline-block;
}

#training-calendar .week-summary .training-aim {
  font-size: 12px;
  margin: 0 0 2px;
  clear: both;
}

#training-calendar .day {
  height: 100px;
  font-size: 11px;
  padding: 0px;
  vertical-align: top;
  word-break: break-word;
}
@media all and (max-width: 506px) {
  #training-calendar .day {
    border: none;
    height: initial;
    box-sizing: border-box;
    width: 100%;
    clear: both;
    font-size: 1em;
  }
}

#training-calendar .day .textual-day {
  display: none;
}
@media all and (max-width: 506px) {
  #training-calendar .day .textual-day {
    display: block;
    padding: 8px 6px;
    float: left;
    font-weight: bold;
    width: 83px;
  }
}

#training-calendar .day.today .textual-day {
  display: block;
  float: left;
  padding: 4px 6px;
}
@media all and (max-width: 506px) {
  #training-calendar .day.today .textual-day {
    padding: 8px 6px;
  }
}

#training-calendar .day.today .date {
  display: none;
}
@media all and (max-width: 506px) {
  #training-calendar .day.today .date {
    display: inline;
  }
}

#training-calendar .day .date {
  padding: 5px 6px 4px;
  float: left;
}
@media all and (max-width: 506px) {
  #training-calendar .day .date {
    font-weight: bold;
    padding: 8px 0px;
    right: 45px;
    float: right;
  }
}

#training-calendar .day .date .month,
#training-calendar .day .date .year {
  display: none;
}
@media all and (max-width: 506px) {
  #training-calendar .day .date .month,
  #training-calendar .day .date .year {
    display: inline;
  }
}

#training-calendar .day .date-1 {
  background: #444;
  color: white;
}
@media all and (max-width: 506px) {
  #training-calendar .day .date-1 {
    background: inherit;
    color: inherit;
  }
}

#training-calendar .day .date-1 .day,
#training-calendar .day .date-1 .month,
#training-calendar .day .date-1 .year {
  display: inline;
}

#training-calendar .day .add-training-session {
  float: right;
  text-decoration: none;
  margin: 2px 2px 2px 0;
  padding: 2px 6px 3px;
  transition: background-color 0.3s ease;
  border-radius: 50%;
  cursor: pointer;
}
@media all and (max-width: 506px) {
  #training-calendar .day .add-training-session {
    font-weight: bold;
    padding: 4px 9px 7px;
  }
}

#training-calendar .day .add-training-session:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

#training-calendar .week-summary:hover {
  background: #e9faff;
  cursor: pointer;
}

#training-calendar .week-details-container {
  display: none;
}

#training-calendar .week-details-container.visible {
  display: table-row;
}
@media all and (max-width: 506px) {
  #training-calendar .week-details-container.visible {
    display: block;
  }
}

#training-calendar .week-details-container td {
  padding: 0;
}
@media all and (max-width: 506px) {
  #training-calendar .week-details-container td {
    display: block;
  }
}

#training-calendar #race-container,
#training-calendar #weekly-summaries {
  background: #444 url("images/txture/txture.a922e59e0e52.png");
  color: rgb(223, 223, 223);
  overflow: auto;
}
@media all and (max-width: 506px) {
  #training-calendar #race-container,
  #training-calendar #weekly-summaries {
    padding: 0;
    display: block;
  }
}

#training-calendar tbody tr.week-details-container td #weekly-summaries a {
  color: #dfdfdf;
}

#training-calendar.site-view {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

#training-calendar thead tr th {
  padding: 5px;
  text-align: left;
}

#training-calendar .large-charts #hours-trained {
  width: 30%;
  margin-right: 3%;
}

#training-calendar .large-charts #distance-trained {
  width: 67%;
  margin-top: 68px;
}
@media all and (max-width: 506px) {
  #training-calendar .large-charts #distance-trained {
    margin-top: 0;
  }
}

#training-calendar .large-charts #summary-total-hours-piecharts {
  width: 67%;
}

#training-calendar .large-charts #hours-trained,
#training-calendar .large-charts #summary-total-hours-piecharts,
#training-calendar .large-charts #distance-trained {
  float: left;
}
@media all and (max-width: 506px) {
  #training-calendar .large-charts #hours-trained,
  #training-calendar .large-charts #summary-total-hours-piecharts,
  #training-calendar .large-charts #distance-trained {
    width: 100%;
  }
}

#training-calendar .large-charts #hours-trained-zones-piechart {
  margin-right: 55px;
}
@media all and (max-width: 506px) {
  #training-calendar .large-charts #hours-trained-zones-piechart {
    margin-right: 0;
  }
}

#training-calendar.admin-view tbody td.day {
  height: 100px;
}

#training-calendar.admin-view tbody td.day.highlighted {
  background: #e9faff;
}

#training-calendar.site-view tbody td.day.current-month {
  background: #F1F1F1;
}

#training-calendar.admin-view tbody td.day.today,
#training-calendar.site-view tbody td.day.today {
  background: rgb(212, 247, 255);
}

@media all and (max-width: 506px) {
  #training-calendar tbody {
    display: block;
    width: 100%;
    margin: 0;
  }
}

@media all and (max-width: 506px) {
  #training-calendar tbody td.day, #training-calendar tbody td.summary {
    display: block;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
  }
}

#training-calendar tbody tr.calendar-week td.day,
#training-calendar tbody tr.calendar-week td.week-summary {
  border-top: 2px solid #444;
}
@media all and (max-width: 506px) {
  #training-calendar tbody tr.calendar-week td.day,
  #training-calendar tbody tr.calendar-week td.week-summary {
    border: none;
    font-size: 1em;
  }
}

.comment-stream__comment-author {
  padding: 5px 0px 2px;
  font-size: 12px;
}
.comment-stream__comment-datetime {
  padding: 1px 0px 0px 5px;
  font-size: 11px;
  white-space: nowrap;
  color: rgba(0, 0, 0, 0.3882352941);
  text-align: right;
  float: right;
}
.comment-stream__comment-content {
  padding: 5px;
  margin-bottom: 2px;
  border-radius: 5px;
  line-height: 1.4em;
  white-space: pre-wrap;
  display: inline-block;
}
.comment-stream__comment-content--intensity-0 {
  background: #ebebeb;
}
.comment-stream__comment-content--intensity-1 {
  background: #b3e1fd;
}
.comment-stream__comment-content--intensity-2 {
  background: #d8f5ba;
}
.comment-stream__comment-content--intensity-3 {
  background: #feefb0;
}
.comment-stream__comment-content--intensity-4 {
  background: #fee7bb;
}
.comment-stream__comment-content--intensity-5 {
  background: #fee4e4;
}
.comment-stream__comment-content--editable {
  cursor: text;
}
.comment-stream__comment-content--editable:hover {
  box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.07);
  cursor: text;
}
.comment-stream__comment-content p {
  margin: 0 0 0.5em 0;
}
.comment-stream__comment-content p:last-child {
  margin-bottom: 0;
}
.comment-stream__make-comment-button {
  padding: 0px;
  margin: 4px auto;
  text-align: center;
}
.comment-stream__make-comment-button span {
  border-bottom: 1px dotted rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.comment-stream__make-comment-button span:hover {
  border-bottom-style: solid;
  border-bottom-width: 2px;
}
.comment-stream__comment-input {
  margin-top: 3px;
  min-height: 150px;
}

.time-budget-marker__icon {
  float: left;
  color: #5f5f5f;
}
.time-budget-marker__icon--perspective-coach {
  cursor: pointer;
}
.time-budget-marker__icon--hidden, .time-budget-marker__icon--visible:hover {
  color: #68ab16;
}
.time-budget-marker__icon--week-column:hover {
  color: #4f93ce;
}

.time-budget-form__day--odd {
  background: #EEEEEE;
  background: linear-gradient(135deg, #E0DFDF 0%, #E9E9E9 100%);
  box-shadow: inset 3px 1px 3px -4px rgba(0, 0, 0, 0.2), inset 3px 1px 24px -14px rgba(0, 0, 0, 0.15), inset -13px 9px 28px -20px white;
  border-top: 1px solid #E4E4E4;
}
.time-budget-form__day--even {
  background: #FFFFFF;
  background: linear-gradient(135deg, #F3F2F2 0%, #F7F7F7 100%);
  box-shadow: inset 3px 1px 1px -3px rgba(0, 0, 0, 0.2);
  border-top: 1px solid #F4F4F4;
}
.time-budget-form__day--today {
  background: #C6F1FB;
  border-top: 1px solid #C6F1FB;
}
.time-budget-form__day--blank {
  background: repeating-linear-gradient(45deg, #fafafa, #fafafa 2px, #eeeeee 2px, #eeeeee 4px);
}
.time-budget-form__week-column {
  background: #c8c8c8;
  border-top: 0px;
  box-shadow: inset 7px 6px 15px -7px rgba(0, 0, 0, 0.1);
  position: relative;
}
.time-budget-form__buttons {
  position: absolute;
  bottom: 15px;
  right: 5px;
}
.time-budget-form__submit-button input[type=submit] {
  position: absolute;
  bottom: 0px;
}

/* Page: Athlete Calendar */
.athlete-calendar__week-summary {
  vertical-align: top;
  padding-top: 4px;
  background: #d8d8d8;
  box-shadow: inset 7px 6px 15px -7px rgba(0, 0, 0, 0.1);
  width: 192px;
}
.athlete-calendar__week-summary .chart-thumbnail-hours-piechart {
  float: left;
  width: 60px;
  height: 80px;
  clear: left;
  margin: 0 4px 0 7px;
}
@media all and (max-width: 506px) {
  .athlete-calendar__week-summary .chart-thumbnail-hours-piechart {
    margin: 0 28px 0 2px;
  }
}
.athlete-calendar__week-summary .total-training-time {
  margin: 3px 0 0;
  font-size: 12px;
  text-align: center;
  line-height: 2em;
}
@media all and (max-width: 506px) {
  .athlete-calendar__week-summary .total-training-time {
    margin: 4px 0 0 3px;
    text-align: left;
    font-size: 1.1em;
  }
}
.athlete-calendar__week-summary .total-training-time span.time {
  display: block;
  font-size: 27px;
  font-weight: 100;
}
@media all and (max-width: 506px) {
  .athlete-calendar__week-summary .total-training-time span.time {
    font-weight: normal;
    font-size: inherit;
    display: inline;
  }
}
.athlete-calendar__week-summary .weekly-comments {
  clear: both;
}
@media all and (max-width: 506px) {
  .athlete-calendar__week-summary .weekly-comments {
    clear: none;
  }
}
.athlete-calendar__week-summary--mobile {
  width: 100%;
  box-sizing: border-box;
  border: 0;
  padding: 3px;
  overflow: auto;
}

.athlete-calendar__import-training-prompt .small-button {
  background: rgb(214, 214, 214);
  margin: 9px auto;
  display: block;
  text-align: center;
  padding: 2px 10px;
  border-radius: 8px;
  text-decoration: none;
}
@media all and (max-width: 506px) {
  .athlete-calendar__import-training-prompt .small-button {
    font-size: 13px;
    padding: 10px;
  }
}

.connect-with__connected-button {
  cursor: pointer;
  background: transparent url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2215%22%20viewBox%3D%220%200%2012%2015%22%20version%3D%221.1%22%3E%3Cg%20fill%3D%22%23C0C0C0%22%3E%3Cpath%20d%3D%22M1%2011C1%2011%201%2011%201%2011L1%204%2011%204C11%204%2011%2012%2011%2011%2011%2011%2011%2011%2011%2011L11%2013C11%2014%2011%2014%2010%2014L2%2014C1%2014%201%2014%201%2013L1%2011C1%2011%201%2011%201%2011L1%2011%201%2011Z%22%20fill%3D%22%23C0C0C0%22%2F%3E%3Cpolygon%20points%3D%220%201%203%201%204%200%208%200%209%201%2012%201%2012%203%200%203%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) no-repeat 98% 11%;
}
.connect-with__connected-button:hover {
  color: #575656;
  background: transparent url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2215%22%20viewBox%3D%220%200%2012%2015%22%20version%3D%221.1%22%3E%3Cg%20fill%3D%22%23575656%22%3E%3Cpath%20d%3D%22M1%2011C1%2011%201%2011%201%2011L1%204%2011%204C11%204%2011%2012%2011%2011%2011%2011%2011%2011%2011%2011L11%2013C11%2014%2011%2014%2010%2014L2%2014C1%2014%201%2014%201%2013L1%2011C1%2011%201%2011%201%2011L1%2011%201%2011Z%22%20fill%3D%22%23575656%22%2F%3E%3Cpolygon%20points%3D%220%201%203%201%204%200%208%200%209%201%2012%201%2012%203%200%203%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) no-repeat 98% 11%;
}

@media all and (max-width: 506px) {
  #athlete-calendar #training-calendar {
    width: 100%;
    margin: 0;
    font-size: 1em;
  }
}

#athlete-calendar #training-calendar div.calendar-week {
  clear: both;
}

@media all and (max-width: 506px) {
  #training-calendar .day-inner {
    background: white;
    border-top: 3px solid #000;
  }
}

/* Page: Coach Calendar */
#template-sessions-container .template-section {
  width: 100%;
  overflow: auto;
  padding: 7px;
  box-sizing: border-box;
}

#template-sessions-container .template-marker-container {
  float: left;
  width: 33.3333%;
}

.training-plan-marker {
  background: rgb(238, 238, 238);
  margin: 1%;
  width: 23%;
  float: left;
  cursor: pointer;
  box-sizing: border-box;
  font-size: 12px;
  box-shadow: rgba(0, 0, 0, 0.23) 0px 0px 3px;
  border-radius: 4px;
  overflow-wrap: anywhere;
  hyphens: auto;
  max-width: 83px;
}

.training-plan-marker:hover {
  background: #f3f3f3;
}

.training-plan-marker__plan-length {
  background: rgb(143, 143, 143);
  padding: 4px 2px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.training-plan-marker__title {
  padding: 3px 2px 10px 2px;
  min-Height: 4em;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 1px #999797 inset;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

#template-sessions h2 {
  margin: 0 10px;
  text-transform: capitalize;
}

#template-sessions h3 {
  clear: both;
  margin: 3px 3px 0;
  font-weight: normal;
  text-transform: capitalize;
}

#template-sessions p {
  margin: 0 10px 1em;
  font-size: 13px;
}

.template-help-message {
  color: #444;
  padding: 10%;
  height: 80%;
  display: block;
  position: absolute;
  width: 78%;
  font-size: 1.3em;
  text-align: center;
}

#coach-calendar-container {
  position: absolute;
  right: 366px;
  left: 0;
  bottom: 0;
  top: 90px;
  user-select: none;
  -webkit-user-select: none;
}

#coach-calendar-container #training-calendar.admin-view {
  table-layout: fixed;
  border-collapse: collapse;
}

#coach-calendar {
  background: #949494;
  background: linear-gradient(170deg, #949494 0%, #868686 100%);
}

#coach-calendar .field-wrapper.inline label {
  width: 122px;
  font-size: 13px;
  display: inline-block;
}

#coach-calendar input[type=date], #coach-calendar input[type=text], #coach-calendar input[type=url], #coach-calendar input[type=number], #coach-calendar .fake-text-input {
  border-width: 1px;
  border-style: solid;
  padding: 3px;
  border-radius: 3px;
}

#coach-calendar input[type=date]:focus, #coach-calendar input[type=text]:focus, #coach-calendar input[type=url]:focus, #coach-calendar input[type=number]:focus {
  outline: none;
  border-width: 2px;
  padding: 2px;
}

#coach-calendar input[type=number] {
  width: 3.5em;
  text-align: right;
}

#coach-calendar #sidebar-container {
  position: absolute;
  right: 0;
  top: 50px;
  width: 378px;
  bottom: 0;
  -webkit-overflow-scrolling: touch;
}

.coach-calendar__notes-tab,
.coach-calendar__templates-tab,
.coach-calendar__contents-tab {
  border-top-left-radius: 7px;
  border-top-right-radius: 7px;
  margin-top: 2px;
  padding: 5px 10px;
  position: absolute;
  font-size: 13px;
  z-index: 1;
  background: white;
}

.coach-calendar__notes-tab--inactive,
.coach-calendar__templates-tab--inactive {
  background: #fbfbfb;
  cursor: pointer;
}

.coach-calendar__notes-tab--inactive:hover,
.coach-calendar__templates-tab--inactive:hover {
  background: white;
}

.coach-calendar__contents-tab--inactive {
  cursor: pointer;
}

.coach-calendar__notes-tab {
  height: 14px;
  width: "34px";
  z-index: 1;
  background: "white";
  cursor: "pointer";
}

.coach-calendar__templates-tab {
  height: 14px;
  width: 62px;
  text-align: center;
}

.coach-calendar__contents-tab {
  height: 10px;
  padding: 5px 6px 9px;
  color: white;
  background: #949494;
  right: 0;
  background: linear-gradient(170deg, #949494 0%, #868686 100%);
}
.coach-calendar__contents-tab .tab-title {
  float: left;
}
.coach-calendar__contents-tab .close-contents-pane-button {
  float: right;
  transition: background-color 0.3s ease;
  border-radius: 50%;
  padding: 0px 0px 1px 0px;
  margin: -1px 0px;
  background: rgba(255, 255, 255, 0.65);
  font-size: 12px;
  text-align: center;
  width: 15px;
}
.coach-calendar__contents-tab .close-contents-pane-button:hover {
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.07);
}

.coach-calendar-notes__container {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  overflow-y: scroll;
}

.coach-calendar-notes__avatar {
  float: left;
  margin: 5px;
  background: #edecec;
  height: 80px;
  width: 80px;
}

.coach-calendar-notes__form {
  margin: 5px;
  clear: both;
  overflow: auto;
  border-bottom: 1px solid #d8d8d8;
}

.coach-calendar-notes__input {
  padding: 5px 0;
}

#coach-calendar #sidebar-container #add-template-button {
  background-color: #EFEFEF;
  padding: 0 5px;
  box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.2);
  font-size: 12px;
  position: absolute;
  right: 4px;
  top: 5px;
}

#coach-calendar #sidebar-container #add-template-button:hover {
  background-color: #e9faff;
  cursor: pointer;
}

#coach-calendar #sidebar {
  width: 378px;
  position: absolute;
  right: 0;
  top: 26px;
  -webkit-overflow-scrolling: touch;
}

#coach-calendar #sidebar #weekly-notes-form-container {
  background: #fbfbfb;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  overflow-y: scroll;
}

#coach-calendar #sidebar #training-session-container .training-session-details {
  padding: 0px 5px 3px 5px;
}

#coach-calendar #sidebar textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 5px;
  line-height: 1.3em;
  border-width: 1px;
  border-style: solid;
  border-radius: 3px;
}

#coach-calendar #sidebar textarea:focus {
  outline: none;
  padding: 4px;
  border-width: 2px;
}

.coach-sidebar__bottom-button-wrapper {
  width: 377px;
  bottom: 0px;
  position: fixed;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  background: rgb(241, 241, 241);
}

#coach-calendar #coach-calendar-container {
  position: absolute;
  right: 378px;
  left: 0;
  bottom: 0;
  top: 76px;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

#coach-calendar-headings-container {
  margin-right: 378px;
  background-color: #444;
  margin-top: 50px;
}

#coach-calendar-headings-container table {
  border-collapse: collapse;
  table-layout: fixed;
}

#coach-calendar-headings-container table th {
  background: #949494;
  background: linear-gradient(170deg, #949494 0%, #868686 100%);
  text-align: left;
  font-size: 0.9em;
  box-shadow: inset 1px 0 5px -2px #494949;
  padding: 5px;
  height: 16px;
  font-weight: normal;
  color: white;
}

#coach-calendar .week-summary {
  overflow: auto;
  vertical-align: top;
  padding-top: 2px;
  padding-bottom: 0px;
  background: #d8d8d8;
  box-shadow: inset 7px 6px 15px -7px rgba(0, 0, 0, 0.1);
}
@media all and (max-width: 506px) {
  #coach-calendar .week-summary {
    width: 100%;
    box-sizing: border-box;
    border: 0;
    padding: 3px;
  }
}

/* Page: Import Training Sessions */
#sessions-to-import .log,
#sessions-to-reimport .log {
  border-top: 1px solid #ECECEC;
  border-bottom: 1px solid #D1D1D1;
  background: #E2E2E2;
  height: 38px;
  box-sizing: border-box;
  clear: both;
  display: table-row;
  box-shadow: inset 0px 0px 0.5px 0px #232323;
}
@media all and (max-width: 506px) {
  #sessions-to-import .log,
  #sessions-to-reimport .log {
    border-top: 2px solid black;
    display: block;
    overflow: auto;
    height: inherit;
  }
}

#sessions-to-import .log td,
#sessions-to-import .log > div,
#sessions-to-reimport .log > div {
  display: inline-block;
  margin-top: -1px;
  height: 25px;
  display: table-cell;
  vertical-align: middle;
  white-space: nowrap;
}
@media all and (max-width: 506px) {
  #sessions-to-import .log td,
  #sessions-to-import .log > div,
  #sessions-to-reimport .log > div {
    display: block;
    height: inherit;
  }
}

.import-training-table__row td {
  padding-top: 0;
  padding-bottom: 0;
}

#sessions-to-import .import-training-table__row td .device-attribution {
  display: inline-flex;
  gap: 0.3em;
}

#sessions-to-import .session,
#sessions-to-reimport .session {
  float: left;
  width: 130px;
}
@media all and (max-width: 506px) {
  #sessions-to-import .session,
  #sessions-to-reimport .session {
    width: 100%;
  }
}

@media all and (max-width: 506px) {
  #sessions-to-import .log .add-to-sessions-container {
    width: 100%;
  }
}

@media all and (max-width: 506px) {
  #sessions-to-import .log .sessions-container,
  #sessions-to-reimport .log .sessions-container {
    display: block;
  }
}

.training-log-file-enter {
  opacity: 0.01;
  transition: opacity 0.5s ease-in;
}

.training-log-file-enter-active {
  opacity: 1;
}

#sessions-to-import .training-log-file-exit {
  opacity: 1;
  transition: opacity 1s ease-in;
}

#sessions-to-import .training-log-file-exit-active {
  opacity: 0.01;
}

.import-training-table__row .import-training-table__session-activity {
  padding: 0 0 0 46px;
}
@media all and (max-width: 506px) {
  .import-training-table__row .import-training-table__session-activity {
    padding: 10px;
  }
}

.import-training-table__row .import-training-table__loading {
  padding: 0 0 0 46px;
}
@media all and (max-width: 506px) {
  .import-training-table__row .import-training-table__loading {
    padding: 10px;
  }
}

.import-training-table__session-activity .discipline-name {
  text-transform: capitalize;
}

.import-training-table__session-date {
  padding: 0 20px;
}
@media all and (max-width: 506px) {
  .import-training-table__session-date {
    width: inherit;
    padding: 10px;
  }
}

.import-training-table__device {
  padding-right: 20px;
}

#sessions-to-import .session-message {
  margin-left: 46px;
  padding: 12px 0 0;
}

@media all and (max-width: 506px) {
  #sessions-to-import .log .delete {
    display: none;
  }
}

.import-training-table__row .or-add-to {
  padding: 0 5px;
}
@media all and (max-width: 506px) {
  .import-training-table__row .or-add-to {
    padding: 10px 10px 0;
    clear: both;
    font-style: italic;
  }
}

#sessions-to-import .session.calendar-training-session:last-child .session-link,
#sessions-to-reimport .session.calendar-training-session:last-child .session-link {
  box-shadow: inset 3px 1px 1px -3px rgba(0, 0, 0, 0.22), inset 0px 1px 1px -1px white, inset 0px -1px 1px -1px rgba(0, 0, 0, 0.55), inset -3px 1px 1px -3px rgba(0, 0, 0, 0.22);
}

/* Page: Profile and settings */
.training-zone-form__table {
  border-collapse: collapse;
  border-spacing: 0;
  margin-top: 7px;
}
.training-zone-form__table th {
  text-align: left;
  background: #e2e2e2;
  padding: 7px 10px;
}
.training-zone-form__pace-column, .training-zone-form__power-column, .training-zone-form__heart-rate-column {
  padding: 7px 10px;
}
.training-zone-form__pace-column, .training-zone-form__heart-rate-column {
  background: #f7f7f7;
}

/* Page: Log in */
#log-in-container {
  max-width: 350px;
  padding: 0 10px;
  margin: 0 auto 15px;
}

#log-in-container form.log-in {
  padding: 15px;
  clear: both;
}

#log-in-container input {
  width: 100%;
  box-sizing: border-box;
  margin: 4px 0 15px 0;
  padding: 10px;
  border: 1px solid rgb(233, 231, 231);
}
@media all and (max-width: 506px) {
  #log-in-container input {
    font-size: 1.2em;
  }
}

#log-in-container a#forgotten-password {
  float: right;
  text-decoration: none;
}

#log-in-container .reset-password {
  display: block;
  color: black;
  padding: 1px 15px 15px;
  margin-top: 15px;
}

#log-in-container input[type=submit] {
  -webkit-appearance: none;
  position: relative;
  overflow: hidden;
  margin: 5px auto 0;
  cursor: pointer;
  background: #03C75A;
  background: -webkit-linear-gradient(top, #01E2AA 0%, #03C75A 100%);
  color: white;
  padding: 10px 20px;
  font-size: 1em;
  border: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 5px rgba(0, 0, 0, 0.2);
}

/* Unsorted */
.import-training-table {
  display: table;
  width: 100%;
}
@media all and (max-width: 506px) {
  .import-training-table .sessions {
    padding: 5px;
  }
}

#training-log-container .activity {
  background: #515151;
  z-index: 1;
  position: relative;
  color: #eee;
}

#training-log-container .charts-container {
  border-style: solid;
  border-width: 0 0 3px 0;
}

#training-log-container.level-0 .charts-container {
  border-color: #f1f1f1;
}

#training-log-container.level-1 .charts-container {
  border-color: #53bdf8;
}

#training-log-container.level-2 .charts-container {
  border-color: #bbeb8f;
}

#training-log-container.level-3 .charts-container {
  border-color: #ffe57d;
}

#training-log-container.level-4 .charts-container {
  border-color: #ffac52;
}

#training-log-container.level-5 .charts-container {
  border-color: #ff6e6e;
}

#training-log-container #separator {
  height: 5px;
  width: 100%;
  z-index: 2;
  position: relative;
}

#training-log-container.level-0 #separator {
  background-color: #f1f1f1;
}

#training-log-container.level-1 #separator {
  background-color: #53bdf8;
}

#training-log-container.level-2 #separator {
  background-color: #bbeb8f;
}

#training-log-container.level-3 #separator {
  background-color: #ffe57d;
}

#training-log-container.level-4 #separator {
  background-color: #ffac52;
}

#training-log-container.level-5 #separator {
  background-color: #ff6e6e;
}

#training-log-container .charts-container .axis text {
  stroke: none;
  font-weight: normal;
  color: black;
}

#training-log-container .charts-container .axis path,
#training-log-container .charts-container .axis line {
  stroke: #333;
}

#training-log-container hr {
  margin: 0;
  height: 3px;
  background: white;
  border: 0;
  position: relative;
}

#training-log-container .activity.swimming hr {
  background-color: rgb(0, 135, 213);
}

#training-log-container .activity.cycling hr {
  background-color: rgb(223, 0, 0);
}

#training-log-container .activity.running hr {
  background-color: rgb(238, 97, 0);
}

.day .race-marker-container.currently-being-dragged.moving,
.day .training-session-marker-container.currently-being-dragged.moving {
  visibility: hidden;
}

.droppable-spacer {
  width: 100%;
  height: 5px;
  border-bottom: 1px solid #b9f4f7;
  border-top: 1px solid #b9f4f7;
  background: #ffffff;
}

#drag-clones.moving a {
  cursor: move;
}

#drag-clones.moving .copy-clone {
  display: none;
}

#drag-clones.copying a {
  cursor: copy;
}

#drag-clones.copying .moving-clone {
  display: none;
}

#drag-clones.copying.no-drop a,
#drag-clones.moving.no-drop a {
  cursor: no-drop;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

span.unit {
  padding-left: 0.15em;
  font-size: 0.8em;
}

#id_diary_summary {
  width: 100%;
  box-sizing: border-box;
}

body {
  color: #222;
  background: rgb(68, 68, 68);
  font-family: helvetica, arial, sans-serif;
  font-size: 14px;
  margin: 0;
}

@media all and (max-width: 506px) {
  textarea {
    width: 100%;
    box-sizing: border-box;
  }
}

#page h1 {
  text-align: left;
  margin: 3em 15px 0;
}
@media all and (max-width: 506px) {
  #page h1 {
    margin-left: 5px;
  }
}

#page p {
  max-width: 600px;
  margin: 1em 15px;
}

.main-content-inner p {
  line-height: 1.4em;
  margin: 0 0 1em;
}

form input.interval {
  width: 2em;
}

form span.interval-divider {
  margin: 0 2px 0 1px;
}

@media all and (max-width: 506px) {
  #connect-social-networks {
    margin-left: 15px;
  }
}

#connect-social-networks .log-in-with {
  overflow: auto;
}

#connect-social-networks .log-in-with.not-connected {
  width: 20em;
}

.form-section {
  overflow: auto;
  clear: both;
}
@media all and (max-width: 506px) {
  .form-section {
    overflow: inherit;
  }
}

.form-section h2 {
  margin: 42px 0 0 238px;
}
@media all and (max-width: 506px) {
  .form-section h2 {
    margin-left: 15px;
  }
}

.form-section h3 {
  margin: 16px 0 0 238px;
  font-weight: normal;
}
@media all and (max-width: 506px) {
  .form-section h3 {
    margin-left: 15px;
  }
}

.form-section p {
  margin: 3px 0 0 238px;
  font-size: 0.9em;
  color: rgb(72, 72, 72);
}
@media all and (max-width: 506px) {
  .form-section p {
    margin-left: 15px;
  }
}

@media all and (max-width: 506px) {
  .form-section table {
    margin-left: 15px;
  }
}

.form-section table th {
  text-align: left;
  padding: 6px;
}

.form-section .field-wrapper {
  margin: 3px 0px 12px;
}

.field-wrapper .personal-best-form {
  margin-left: 238px;
  padding: 3px 0;
}

.form-section input[type=number],
.form-section input[type=email],
.form-section input[type=text],
.form-section input[type=date],
.form-section textarea {
  margin: 0;
  border-width: 1px;
  border-style: solid;
  padding: 4px;
  border-radius: 3px;
  border-color: silver;
}

.form-section input[type=date] {
  padding: 3px 4px 0px;
  height: 23px;
  line-height: 23px;
  box-sizing: border-box;
  width: 124px;
  font-size: 11px;
  vertical-align: bottom;
}

.form-section input.interval[type=number] {
  width: 2em;
  text-align: center;
}

.form-section label {
  line-height: 1.7em;
  margin-right: 5px;
  text-align: right;
  font-weight: bold;
  width: 233px;
  display: block;
  float: left;
}
@media all and (max-width: 506px) {
  .form-section label {
    width: inherit;
  }
}

.form-section .radio {
  float: left;
  margin: 0;
  padding: 0;
  max-width: 500px;
}

.form-section .radio li {
  list-style: none;
}

.form-section .radio label {
  font-weight: normal;
  text-align: left;
  float: none;
  width: inherit;
}

.form-section .radio label .description {
  display: block;
  font-size: 0.9em;
}

.form-section .image-widget {
  overflow: auto;
}

.form-section .image-widget label {
  width: inherit;
  font-weight: normal;
  display: inline;
  float: none;
  margin-left: 5px;
}

.form-section .image-widget a.preview {
  float: left;
  margin-right: 7px;
}

.form-section input[type=text],
.form-section input[type=email] {
  padding: 3px;
  width: 15em;
}

.form-section input[type=number] {
  width: 3em;
}

.messages {
  margin: 0;
  padding: 0;
}

.messages li {
  padding: 15px 0 15px 46px;
}

.messages li.success {
  background: rgb(190, 238, 167);
}

.messages li.error {
  color: white;
  background: none repeat scroll 0 0 #ee3c3c;
}

.messages li.error a {
  color: white;
}

#coaching-request {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.9);
  z-index: 200;
}

#coaching-request .coaching-request-inner {
  background: white;
  position: fixed;
  top: 50%;
  left: 50%;
  height: 95px;
  width: 265px;
  margin-left: -150px;
  margin-top: -150px;
  padding: 15px;
  box-shadow: 0px 0px 9px 0px rgba(0, 0, 0, 0.4);
  border-radius: 5px;
}
@media (max-width: 350px) {
  #coaching-request .coaching-request-inner {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    overflow: scroll;
    height: 100%;
    width: 100%;
    border-radius: 0;
  }
}

#welcome-message {
  padding: 15px;
  background: #DB4504;
  color: white;
  position: fixed;
  bottom: 15px;
  left: 15px;
  right: 15px;
  z-index: 200;
}

#welcome-message a {
  color: white;
}

.message {
  line-height: 1.4em;
}

.close-popup,
.message .close {
  padding: 0px;
  position: absolute;
  text-indent: -9999px;
  width: 11px;
  height: 11px;
  top: 5px;
  right: 5px;
}

.close-popup.dark,
.message .close.dark {
  background: transparent url("icons/cross-black.2ba527ae7928.svg") no-repeat 0 0;
}

.close-popup.light,
.message .close.light {
  background: transparent url("icons/cross-white.36f8195c0f7d.svg") no-repeat 0 0;
}

.close-popup:hover,
.message .close:hover {
  cursor: pointer;
}

#main-content .main-content-inner {
  min-width: 900px;
  clear: both;
  position: absolute;
  overflow: auto;
  left: 0;
  background: white;
  right: 0;
  top: 0px;
  bottom: 0;
  padding-top: 41px;
  -webkit-overflow-scrolling: touch;
}
@media all and (max-width: 506px) {
  #main-content .main-content-inner {
    min-width: inherit;
    position: inherit;
    overflow: none;
  }
}

@media all and (max-width: 506px) {
  #main-content .main-content-inner.provide-extra-calendar-heading-spacer.provide-extra-header-spacer {
    margin-top: 0px;
  }
}

@media all and (max-width: 506px) {
  #main-content .main-content-inner.provide-extra-header-spacer {
    padding-top: 41px;
  }
}

#main-content .main-content-inner.disable-keep-open-sidebar {
  position: relative;
}

#main-content.athlete-menu .main-content-inner.provide-extra-calendar-heading-spacer.provide-extra-header-spacer {
  top: 91px;
  padding-top: 0;
}
@media all and (max-width: 506px) {
  #main-content.athlete-menu .main-content-inner.provide-extra-calendar-heading-spacer.provide-extra-header-spacer {
    top: 41px;
  }
}

#footer {
  width: 100%;
  background-color: #444;
  height: 10px;
  clear: both;
}

#help-box {
  position: fixed;
  top: 41px;
  bottom: 0;
  z-index: 11;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.07);
  z-index: 200;
}

#help-box .help-box__inner {
  margin: auto;
  max-width: 600px;
  box-shadow: 0px 0px 15px -1px rgba(0, 0, 0, 0.4);
  background: white;
  height: 100%;
  position: relative;
}

#help-box .help-page__header {
  background: #f9f9f9;
  padding: 15px 15px 0;
  border-bottom: 1px solid silver;
}
#help-box .help-page__header h2 {
  margin: 2px 0;
}

#help-box .help-page__main-content {
  padding: 15px;
  overflow: auto;
  margin-bottom: 41px;
  position: absolute;
  bottom: 0;
  top: 44px;
}

#help-box img {
  max-width: 100%;
}

#import-training-popup-container {
  position: fixed;
  top: 82px;
  background: white;
  z-index: 100;
  margin: auto;
  width: 250px;
  box-shadow: 0px 0px 25px -10px black;
  border-radius: 3px;
  left: 15px;
}

#import-training-popup-container .import-training-log-popup {
  padding: 15px;
}

#all {
  color: #444;
  border: solid 0px;
  padding-top: 0px;
  background: #fff;
}

a:link,
a:visited {
  color: #444;
}

a:hover,
a:active,
a:focus {
  text-decoration: underline;
}

.divider {
  text-align: center;
  margin: 20px auto;
  box-sizing: border-box;
  border-top: 1px solid #C2C2C2;
  height: 1px;
  font-style: italic;
  border-bottom: 1px solid #FFFFFF;
  max-width: 316px;
}

.divider span {
  margin-top: -41px;
  display: block;
  background: #E9E9E9;
  width: 2em;
  margin: -9px auto;
}

.log-in-with {
  display: block;
  text-decoration: none;
  max-width: 316px;
  padding: 0px 0px 0px 0px;
  margin: 5px auto;
  overflow: auto;
}

.log-in-with.not-connected,
a.log-in-with.not-connected {
  color: white;
}

.log-in-with span.logo {
  display: block;
  height: 35px;
  width: 35px;
  float: left;
  margin: 0;
  border-right: 2px solid #EBEBEB;
}

.log-in-with span.text {
  display: block;
  padding: 9px 5px;
  float: left;
}

span.log-in-with .text {
  color: black;
  background: white;
}

.garmin-logo-tag-white {
  display: block;
  width: 72.5px;
  height: 25px;
  background-image: url("images/garmin-tag-logo-white.60c14637dab1.png");
  background-size: 72.5px 25px;
  overflow: hidden;
  line-height: 100;
  margin-bottom: 6px;
}

h1 {
  float: left;
  text-align: left;
  font-weight: normal;
  margin: 30px 0px 7px 55px;
}
@media all and (max-width: 506px) {
  h1 {
    margin: 5px;
  }
}

h2 {
  font-weight: normal;
}
@media all and (max-width: 506px) {
  h2 {
    margin-left: 5px;
  }
}

.left-margin h2 {
  margin-left: 46px;
}

h2, h3, h4, h5, h6 {
  margin-bottom: 4px;
}

#all {
  width: 1050px;
}

#calendar-navigation {
  width: 100%;
}
@media all and (max-width: 506px) {
  #calendar-navigation {
    margin-top: 0;
  }
}

#calendar-navigation a {
  color: black;
}

#calendar-navigation .previous-month {
  float: left;
}

#calendar-navigation .next-month {
  float: right;
}

#calendar-navigation h2 {
  text-align: center;
}

#race-container h2,
#weekly-summaries h2 {
  margin: 15px 0;
  font-size: 2.5em;
}

#weekly-summaries h3 {
  font-size: 1.5em;
}

#weekly-summaries h2,
#weekly-summaries h3 {
  font-weight: 400;
}

@media all and (max-width: 506px) {
  #weekly-summaries .large-charts {
    margin: 15px;
  }
}

.chart rect {
  shape-rendering: crispEdges;
}

.chart rect.goal, .chart .arc.goal {
  fill: rgba(192, 192, 192, 0.19);
}

.chart .swim rect.brick {
  fill: #0F6397;
}

.chart .bike rect.brick {
  fill: #A90407;
}

.chart .run rect.brick {
  fill: #BC4915;
}

.chart .arc.swim {
  fill: rgb(0, 135, 213);
}

.chart .arc.bike {
  fill: rgb(223, 0, 0);
}

.chart .arc.run {
  fill: rgb(238, 97, 0);
}

.chart .arc.gym {
  fill: rgb(77, 220, 0);
}

.chart .arc.other {
  fill: #9328E0;
}

.chart .swim rect.completed {
  fill: rgb(0, 135, 213);
}

.chart .bike rect.completed {
  fill: rgb(223, 0, 0);
}

.chart .run rect.completed {
  fill: rgb(238, 97, 0);
}

.chart .level-0 {
  fill: #f1f1f1;
}

.chart .level-1 {
  fill: #53bdf8;
}

.chart .level-2 {
  fill: #bbeb8f;
}

.chart .level-3 {
  fill: #ffe57d;
}

.chart .level-4 {
  fill: #ffac52;
}

.chart .level-5 {
  fill: #ff6e6e;
}

.chart .level-racing {
  fill: #ff6e6e;
}

.chart text {
  font: 10px sans-serif;
  font-weight: 100;
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Chrome/Safari/Opera */
  -khtml-user-select: none; /* Konqueror */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently not supported by any browser */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* stops this element getting a grey highlight when clicked on */
}

.charts-page__additional-data .chart text,
#weekly-summaries .chart text {
  fill: #dfdfdf;
}

#weekly-summaries .large-charts .chart text.label-time,
#weekly-summaries .large-charts .chart text.label-name {
  font-size: 0.9em;
}

#weekly-summaries .large-charts .chart text.label-percentage {
  font-size: 2.4em;
}

.key {
  border-right: 10px solid;
  padding: 5px 7px;
  font-size: 0.9em;
  clear: left;
}
@media all and (max-width: 506px) {
  .key {
    border-bottom: 5px solid;
    border-right: 0px;
    padding: 3px 0;
    width: 33.3%;
    clear: none;
    display: inline-block;
  }
}

#distance-bar-chart .key .label {
  width: 3em;
  display: inline-block;
  width: 25px;
}

.key.goal {
  border-color: rgba(192, 192, 192, 0.19);
}

.key.swim.completed {
  border-color: #0087d5;
}

.key.bike.completed {
  border-color: #df0000;
}

.key.run.completed {
  border-color: #ee6100;
}

.key.swim.brick {
  border-color: #0F6397;
}

.key.bike.brick {
  border-color: #A90407;
}

.key.run.brick {
  border-color: #BC4915;
}

.chart-line--total, path.line.completed-total {
  stroke: dimgrey;
}

.chart-line--swim, path.line.completed-swim {
  stroke: rgb(0, 135, 213);
}

.chart-line--bike, path.line.completed-bike {
  stroke: rgb(223, 0, 0);
}

.chart-line--run, path.line.completed-run {
  stroke: rgb(238, 97, 0);
}

.chart-line--gym, path.line.completed-gym {
  stroke: rgb(77, 220, 0);
}

circle.goal-total, circle.completed-total {
  cursor: pointer;
}

circle.goal-swim, circle.completed-swim {
  cursor: pointer;
}

circle.goal-bike, circle.completed-bike {
  cursor: pointer;
}

circle.goal-run, circle.completed-run {
  cursor: pointer;
}

circle.goal-gym, circle.completed-gym {
  cursor: pointer;
}

path.area.goal-total {
  fill: dimgrey;
}

path.area.goal-swim {
  fill: #AEE1FF;
}

path.area.goal-bike {
  fill: rgb(255, 142, 142);
}

path.area.goal-run {
  fill: rgba(249, 101, 0, 0.23);
}

path.area.goal-gym {
  fill: #CEF6B9;
}

.axis path,
.axis line {
  stroke: black;
  fill: none;
  shape-rendering: crispEdges;
}

.charts-page__additional-data .axis path,
.charts-page__additional-data .axis line,
#weekly-summaries .axis path,
#weekly-summaries .axis line {
  stroke: #fff;
}

circle.goal-total, path.line.goal-total {
  stroke: rgb(171, 171, 171);
}

circle.goal-swim, path.line.goal-swim {
  stroke: rgb(0, 135, 213);
}

circle.goal-bike, path.line.goal-bike {
  stroke: rgb(223, 0, 0);
}

circle.goal-run, path.line.goal-run {
  stroke: rgb(238, 97, 0);
}

circle.goal-gym, path.line.goal-gym {
  stroke: rgb(77, 220, 0);
}

circle.completed-total, circle.goal-total {
  fill: dimgrey;
  stroke-width: 0;
}

circle.completed-swim, circle.goal-swim {
  fill: rgb(0, 135, 213);
  stroke-width: 0;
}

circle.completed-bike, circle.goal-bike {
  fill: rgb(223, 0, 0);
  stroke-width: 0;
}

circle.completed-run, circle.goal-run {
  fill: rgb(238, 97, 0);
  stroke-width: 0;
}

circle.completed-gym, circle.goal-gym {
  fill: rgb(77, 220, 0);
  stroke-width: 0;
}

.duration-chart__container--editable circle.goal.past {
  fill: none;
}

.duration-chart__container--editable circle.goal.present,
.duration-chart__container--editable circle.goal.future {
  fill: #333;
  stroke-width: 1.5;
}

#weekly-summaries .weekly-comments {
  clear: both;
  overflow: auto;
}
@media all and (max-width: 506px) {
  #weekly-summaries .weekly-comments {
    padding: 15px;
  }
}

#weekly-summaries .weekly-comments .plan,
#weekly-summaries .weekly-comments .athlete-comments,
#weekly-summaries .weekly-comments .coach-comments {
  float: left;
  width: 31%;
  margin: 1% 1%;
}
@media all and (max-width: 506px) {
  #weekly-summaries .weekly-comments .plan,
  #weekly-summaries .weekly-comments .athlete-comments,
  #weekly-summaries .weekly-comments .coach-comments {
    width: 100%;
    float: none;
    margin: 0;
  }
}

#weekly-summaries .weekly-comments label {
  display: none;
}

#weekly-summaries textarea {
  border: 1px solid rgb(62, 62, 62);
  background: rgb(234, 234, 234);
  color: #000000;
  font-size: 12px;
  box-shadow: inset 3px 2px 6px -2px rgba(210, 210, 210, 0.44);
  width: 100%;
  box-sizing: border-box;
  line-height: 1.4em;
  padding: 5px;
  border-radius: 3px;
}
@media all and (max-width: 506px) {
  #weekly-summaries textarea {
    font-size: 16px;
  }
}

#weekly-summaries .button-wrapper {
  text-align: center;
  background: rgba(192, 192, 192, 0.19);
}

#weekly-summaries .large-charts .hours-trained {
  overflow: auto;
  float: left;
}

#weekly-summaries .large-charts #summary-total-hours-piechart,
#weekly-summaries .large-charts #summary-barchart,
#weekly-summaries .large-charts #distance-bar-chart {
  float: left;
}

#weekly-summaries .large-charts #distance-bar-chart .axis-label span:not(.active) {
  color: rgb(102, 102, 102);
}

#weekly-summaries .large-charts #distance-bar-chart .axis-label .unit:not(.active):hover {
  cursor: pointer;
  color: inherit;
}

#weekly-summaries .large-charts #distance-legend {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  clear: left;
  width: 460px;
  text-align: right;
  float: right;
  padding: 9px;
  margin-bottom: 15px;
}
@media all and (max-width: 506px) {
  #weekly-summaries .large-charts #distance-legend {
    display: block;
    clear: none;
    width: 100%;
    padding: 0;
    box-sizing: border-box;
  }
}

#weekly-summaries .large-charts #distance-legend .column {
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

#weekly-summaries .large-charts .legend tbody tr,
#weekly-summaries .large-charts .legend tbody td {
  border: none;
  padding: 2px;
  display: table-cell;
  background: none;
  color: #dfdfdf;
}

#weekly-summaries .large-charts .legend tbody tr {
  display: table-row;
}

#weekly-summaries .large-charts .legend tbody td {
  display: table-cell;
}

#weekly-summaries .large-charts #distance-trained h3 {
  margin-bottom: -55px;
}
@media all and (max-width: 506px) {
  #weekly-summaries .large-charts #distance-trained h3 {
    margin-bottom: 30px;
  }
}

#training-duration-trend .legend {
  text-align: center;
  margin: 30px;
}

.chart--dark .axis {
  fill: white;
  color: white;
}

.chart--dark .axis path, .chart--dark .axis line {
  stroke: white;
}

#training-duration-trend #time-trend-legend-overall,
#training-duration-trend #time-trend-legend-swim,
#training-duration-trend #time-trend-legend-bike,
#training-duration-trend #time-trend-legend-run,
#training-duration-trend #time-trend-legend-gym {
  padding: 2px 15px;
  color: white;
  font-weight: normal;
  text-transform: uppercase;
  font-size: 12px;
  border-radius: 13px;
  cursor: pointer;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.64);
  margin: 1px;
  border: 2px solid #333333;
}

#training-duration-trend #time-trend-legend-swim {
  background-color: rgb(0, 135, 213);
}

#training-duration-trend #time-trend-legend-bike {
  background-color: rgb(223, 0, 0);
}

#training-duration-trend #time-trend-legend-run {
  background-color: rgb(238, 97, 0);
}

#training-duration-trend #time-trend-legend-gym {
  background-color: rgb(77, 220, 0);
}

#training-duration-trend #time-trend-legend-overall {
  background-color: #555;
}

.charts-page__additional-data {
  color: white;
  background: #444 url("images/txture/txture.a922e59e0e52.png");
  overflow: auto;
  text-align: center;
  font-weight: normal;
}

.charts-page__main-legend__item:hover, .charts-page__main-legend-item-selected {
  border: 2px solid #333333;
}

.charts-page__main-legend__overall-item:hover, .charts-page__main-legend__overall-item-selected {
  box-shadow: 0px 0px 0px 2px #555555;
}

.charts-page__main-legend__swim-item:hover, .charts-page__main-legend__swim-item-selected {
  box-shadow: 0px 0px 0px 2px #0087d5;
}

.charts-page__main-legend__bike-item:hover, .charts-page__main-legend__bike-item-selected {
  box-shadow: 0px 0px 0px 2px #df0000;
}

.charts-page__main-legend__run-item:hover, .charts-page__main-legend__run-item-selected {
  box-shadow: 0px 0px 0px 2px #ee6100;
}

.charts-page__main-legend__gym-item:hover, .charts-page__main-legend__gym-item-selected {
  box-shadow: 0px 0px 0px 2px #4ddc00;
}

#training-duration-trend #time-trend-legend-swim:hover,
#training-duration-trend #time-trend-legend-bike:hover,
#training-duration-trend #time-trend-legend-run:hover,
#training-duration-trend #time-trend-legend-gym:hover {
  cursor: pointer;
}

#top-bar-spacer {
  height: 50px;
}

/* TODO remember to get rid of this when the athlete bar has been replaced */
.athlete-bar {
  background: #5A5A5A;
  overflow: auto;
  color: #FFFFFF;
  font-size: 12.5px;
  font-weight: 200;
}

.athlete-bar a:link,
.athlete-bar a:visited,
.athlete-bar a {
  text-decoration: none;
  color: white;
}

.athlete-bar a:hover {
  text-decoration: underline;
}

.athlete-bar .unseen-count {
  margin: 15px 0;
  float: right;
}

.athlete-bar .unseen-count .view-oldest-unseen span {
  color: silver;
}

.athlete-bar .athlete-details {
  float: left;
}

.athlete-bar .avatar {
  float: left;
  height: 40px;
  background: #8c8c8c;
  border: 5px solid #5A5A5A;
}

.athlete-bar .athlete-details h2 {
  margin: 5px 0 0 0px;
  font-weight: 200;
}

.athlete-bar .athlete-details .coaching-service {
  margin: 2px 0 0;
  text-transform: lowercase;
}

.athlete-bar .athlete-details .next-race,
.athlete-bar .athlete-details .days-of-planned-training {
  padding: 0px 3px;
  font-size: 12px;
  box-shadow: 1px 1px 0px 0px rgba(0, 0, 0, 0.19);
  font-weight: normal;
}

.athlete-bar .athlete-details .next-race {
  background: black;
  color: white;
}

.athlete-bar .athlete-details .days-of-planned-training {
  background: white;
  color: black;
}

.athlete-bar .athlete-details .days-of-planned-training.no-plans-warning {
  color: white;
  background: rgb(238, 60, 60);
}

.athlete-bar ul.menu {
  float: right;
  margin-top: 15px;
}

.athlete-bar ul.menu li {
  display: inline;
  padding-right: 11px;
  position: relative;
}

.athlete-bar ul.menu li .unseen-pm {
  position: absolute;
  background: #53bdf8;
  color: #fff;
  padding: 0px 3px;
  box-shadow: 1px 1px 0px 0px rgba(0, 0, 0, 0.19);
  font-size: 12px;
  font-weight: normal;
  bottom: 14px;
  right: 12px;
  line-height: 11px;
}

#athlete-list .athlete-bar {
  border-top: 1px solid #ECECEC;
  border-bottom: 1px solid #D1D1D1;
}

#template-notes {
  position: fixed;
  background: white;
  width: 331px;
  top: 122px;
  right: 384px;
  box-shadow: 0px 0px 19px 0px rgba(0, 0, 0, 0.1);
  z-index: 100;
  padding: 0 18px;
  bottom: 5px;
  white-space: pre-wrap;
}

:-moz-ui-invalid {
  box-shadow: none;
}

table tr th,
table tr td {
  padding: 5px;
}

#training-session-container {
  clear: both;
  z-index: 2;
}

.confirmation-box {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.9);
  z-index: 200;
}
.confirmation-box__inner {
  background: white;
  color: black;
  width: 300px;
  position: absolute;
  top: 35%;
  left: 50%;
  margin-left: -160px;
  padding: 10px;
  border-radius: 4px;
  box-sizing: border-box;
}
@media all and (max-width: 350px) {
  .confirmation-box__inner {
    left: 0;
    margin-left: 0;
    width: 100%;
    border-radius: 0;
  }
}
.confirmation-box__message {
  line-height: 1.4em;
  margin: 0 0 1em;
}
.confirmation-box__buttons {
  margin: auto;
  width: 270px;
}
@media all and (max-width: 350px) {
  .confirmation-box__buttons {
    width: 100%;
  }
}
.confirmation-box__button {
  padding: 8px;
  background: rgb(231, 231, 231);
  float: left;
  margin: 0 5px;
  width: 125px;
  text-align: center;
  border-radius: 4px;
  box-sizing: border-box;
}
@media all and (max-width: 350px) {
  .confirmation-box__button {
    margin: 5px 0;
    width: 100%;
  }
}
.confirmation-box__button:hover {
  cursor: pointer;
  background: #E0E0E0;
}
.confirmation-box--enter {
  opacity: 0;
}
.confirmation-box--enter-active {
  opacity: 1;
  transition: opacity 500ms;
}
.confirmation-box--exit {
  opacity: 1;
}
.confirmation-box--exit-active {
  opacity: 0;
  transition: opacity 500ms;
}

table.weekly-goal-info {
  border-collapse: collapse;
  text-align: right;
  width: 134px;
  table-layout: fixed;
}

table.weekly-goal-info .goal {
  padding: 2px 1px 0px;
  font-size: 11px;
  clear: both;
  line-height: 1.3em;
  white-space: nowrap;
}

table.weekly-goal-info td {
  padding: 1px 0 0;
}

table.weekly-goal-info .goal-total td {
  padding-top: 4px;
}

table.weekly-goal-info .goal .discipline {
  text-align: left;
  padding-left: 0px;
  width: 24px;
}

table.weekly-goal-info .goal .prescribed {
  width: 26px;
}

table.weekly-goal-info .goal .complete {
  font-weight: bold;
  width: 28px;
}

table.weekly-goal-info .goal .difference {
  width: 34px;
}

table.weekly-goal-info .goal .add-remove {
  width: 61px;
  color: red;
}

.week-distance__distances,
.week-volume__times {
  font-size: 11px;
  border-collapse: collapse;
  width: 273px;
}

.week-volume__set-duration {
  font-size: 11px;
  border-collapse: collapse;
  width: 357px;
}

.week-distance__distances td, .week-distance__distances th,
.week-volume__set-duration td, .week-volume__set-duration th,
.week-volume__times td, .week-volume__times th {
  padding: 2px 22px 2px 0;
  text-align: right;
}

.week-distance__distance-row,
.week-volume__time-row {
  padding: 2px 1px 0px;
  clear: both;
  line-height: 1.3em;
}

.week-distance__discipline,
.week-volume__discipline {
  min-width: 30px;
}

.week-distance__completed-distance,
.week-volume__completed-time {
  font-weight: bold;
}

#sync-times {
  margin: 8px 0;
}

#sync-times span {
  display: inline;
  font-size: 12px;
  border-radius: 7px;
}

#sync-times span.active {
  cursor: pointer;
  background-color: #E0E0E0;
  padding: 3px 10px;
}

#coach-calendar #sidebar-container #training-session-container {
  overflow: auto;
  min-height: 100%;
  height: 100%;
}

#coach-calendar #sidebar-container.intensity-0 #training-session-container {
  background: #fbfbfb;
}

#coach-calendar #sidebar-container.intensity-1 #training-session-container {
  background: #DFF4FF;
}

#coach-calendar #sidebar-container.intensity-2 #training-session-container {
  background: #EDFFDC;
}

#coach-calendar #sidebar-container.intensity-3 #training-session-container {
  background: #fffcee;
}

#coach-calendar #sidebar-container.intensity-4 #training-session-container {
  background: #FFFBF3;
}

#coach-calendar #sidebar-container.intensity-5 #training-session-container {
  background: #FFF7F7;
}

.coach-calendar__contents-tab--intensity-0 {
  background: #fbfbfb;
  color: black;
}

.coach-calendar__contents-tab--intensity-1 {
  background: #DFF4FF;
  color: black;
}

.coach-calendar__contents-tab--intensity-2 {
  background: #EDFFDC;
  color: black;
}

.coach-calendar__contents-tab--intensity-3 {
  background: #fffcee;
  color: black;
}

.coach-calendar__contents-tab--intensity-4 {
  background: #FFFBF3;
  color: black;
}

.coach-calendar__contents-tab--intensity-5 {
  background: #FFF7F7;
  color: black;
}

.day a {
  color: black;
}

#training-calendar.site-view tbody td.empty {
  border: none;
}

#athlete-calendar {
  padding: 25px 0 0 0;
}
@media all and (max-width: 506px) {
  #athlete-calendar {
    padding: 0;
  }
}

#athlete-calendar #show-charts {
  background-color: rgb(236, 236, 236);
  padding: 52px 22px;
  font-size: 1em;
  margin: 0px 0px 0px 18px;
  float: left;
  width: 178px;
  text-align: center;
  height: 15px;
  display: none;
}
@media all and (max-width: 506px) {
  #athlete-calendar #show-charts {
    display: none;
  }
}

#athlete-calendar #show-charts:hover {
  background-color: rgb(230, 230, 230);
  cursor: pointer;
}

.desktop-calendar-day__sessions-list {
  clear: both;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.mobile-calendar-day__sessions-list {
  overflow: auto;
  clear: both;
}

#training-calendar .taper {
  clear: both;
  padding: 3px 4px;
  background: rgb(130, 130, 130);
  height: 32px;
  color: white;
}
@media all and (max-width: 506px) {
  #training-calendar .taper {
    padding: 12px 3px 10px;
    height: 16px;
  }
}

.calendar-pin.race {
  background: #444;
  color: white;
  overflow: auto;
  line-height: 1.5em;
  position: relative;
}

.calendar-pin.race .race-name {
  margin-bottom: 2px;
}

.calendar-pin.race .race-name,
.calendar-pin.race .attendance-probability {
  display: block;
  min-height: 15px;
  float: left;
  line-height: normal;
  clear: left;
}

.calendar-pin.race a {
  color: white;
}

li .session-link {
  padding: 2px;
  line-height: 1.5em;
  border: 2px solid rgb(220, 220, 220);
}
@media all and (max-width: 506px) {
  li .session-link {
    padding: 1px 6px 0;
  }
}

.session .session-link {
  overflow: auto;
  display: block;
  text-decoration: none;
  border: 0;
  line-height: normal; /* this fixes a pixel difference between browsers */
  padding: 3px 4px;
  min-height: 32px;
}
@media all and (max-width: 506px) {
  .session .session-link {
    line-height: 2.2em;
  }
}

.session.calendar-training-session .session-link {
  box-shadow: inset 3px 1px 1px -3px rgba(0, 0, 0, 0.25), inset 0px 1px 1px -1px rgba(0, 0, 0, 0.2);
}

.session.calendar-training-session:last-child .session-link {
  box-shadow: inset 3px 1px 1px -3px rgba(0, 0, 0, 0.25), inset 0px 1px 1px -1px rgba(0, 0, 0, 0.2), inset 0px -1px 1px -1px rgba(0, 0, 0, 0.2);
}

.feedback {
  background-color: rgb(255, 255, 255);
  padding: 0 3px;
  box-shadow: 1px 1px 0px 0px rgba(0, 0, 0, 0.19);
  float: left;
  margin-top: -1px;
  font-size: 11px;
}
@media all and (max-width: 506px) {
  .feedback {
    clear: none;
    line-height: 1.6em;
    margin-top: 0.29em;
  }
}

.calendar-pin.race .feedback,
.session a .feedback {
  clear: left;
  color: black;
  margin-right: 4px;
}
@media all and (max-width: 506px) {
  .calendar-pin.race .feedback,
  .session a .feedback {
    margin: -2px 6px 0 0;
  }
}

.week-summary .feedback,
.summary .feedback {
  height: 14px;
  margin-right: 3px;
}
@media all and (max-width: 506px) {
  .week-summary .feedback,
  .summary .feedback {
    font-size: 1.1em;
    height: 1.4em;
  }
}

.week-summary .feedback:hover {
  background-color: #fcffe1;
}

@media all and (max-width: 506px) {
  #training-calendar .session a .duration,
  #training-calendar .session a .description {
    clear: none;
    padding: 8px 3px;
    white-space: nowrap;
  }
}

@media all and (max-width: 506px) {
  #training-calendar .session a .duration {
    position: absolute;
    right: 45px;
  }
}

@media all and (max-width: 506px) {
  #training-calendar .race a .race-name {
    padding: 8px 3px;
    white-space: nowrap;
  }
}

@media all and (max-width: 506px) {
  #training-calendar .race a .attendance-probability {
    display: none;
  }
}

@media all and (max-width: 506px) {
  #training-calendar .session {
    font-size: 14px;
  }
}

.session.ui-draggable-dragging {
  width: 106px;
}

table tbody td.day.odd {
  background: #EEEEEE;
  background: linear-gradient(135deg, #EAE9E9 0%, #EFEFEF 100%);
  box-shadow: inset 3px 1px 3px -4px rgba(0, 0, 0, 0.2), inset 3px 1px 24px -14px rgba(0, 0, 0, 0.15), inset -13px 9px 28px -20px white;
}

table tbody td.day.even {
  background: #FFFFFF;
  background: linear-gradient(135deg, #F8F8F8 0%, #FFFFFF 100%);
  box-shadow: inset 3px 1px 1px -3px rgba(0, 0, 0, 0.2);
}

table tbody td.day.drop-hover {
  background: rgb(229, 251, 253);
}

.calendar-training-session.ui-draggable-dragging {
  width: 106px;
}

.athlete-calendar__headings-container {
  background: #676767;
  color: white;
  position: fixed;
  width: 100%;
  top: 41px;
  z-index: 100;
  box-shadow: 0 5px 10px -4px rgba(0, 0, 0, 0.1);
}
@media all and (max-width: 506px) {
  .athlete-calendar__headings-container {
    display: none;
  }
}

.athlete-calendar__headings-container.coach-view {
  top: 91px;
}

.athlete-calendar__headings-container table {
  width: 100%;
  border-collapse: collapse;
}

.athlete-calendar__headings-container table th {
  font-weight: 100;
  text-align: left;
  font-size: 0.9em;
  box-shadow: inset 1px 0 5px -2px rgb(73, 73, 73);
  box-sizing: border-box;
  padding: 5px;
  height: 26px;
}

.load-more-dates {
  text-align: center;
  cursor: pointer;
  background: #ececec;
  padding: 15px;
}

.load-more-dates:hover {
  background-color: #e9faff;
}

.load-more-dates.loading .text {
  background: transparent url("images/loading-light-background-16x16.221d02a06f9f.gif") no-repeat 50% 50%;
  color: transparent;
}

#load-later-dates {
  border-top: 2px solid #444;
}

.additional-discipline-data {
  margin: 2px;
}

#override-session {
  float: right;
  font-size: 13px;
  font-style: italic;
}

#override-session:hover {
  cursor: pointer;
}

#athlete-calendar #race-map-container {
  height: 196px;
  width: 100%;
  position: relative;
  margin: 10px 0 0 0;
}
@media all and (max-width: 506px) {
  #athlete-calendar #race-map-container {
    margin: 10px 0 0 0;
  }
}

#athlete-calendar textarea:focus {
  outline: none;
  padding: 4px;
  border-width: 2px;
}

#template-sessions.drop-hover {
  background-color: rgb(229, 251, 253);
}

#template-sessions ul li {
  padding: 0px;
  margin: 3%;
  float: left;
  font-size: 11px;
  width: 94%;
}

#template-sessions-container {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  border: 3px dashed #dfdfdf;
  overflow-y: scroll;
}

#template-sessions {
  list-style-type: none;
  background: white;
  display: table;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

@media all and (max-width: 506px) {
  #training-calendar .session {
    height: 38px;
    width: 100%;
    overflow: hidden;
  }
}

.session {
  background-color: rgb(240, 240, 240);
  border-color: rgb(240, 240, 240);
  color: black;
  min-height: 32px;
  position: relative;
}

.session.level-0 {
  background-color: #f1f1f1;
  border-color: #f1f1f1;
}

.session.level-1 {
  background-color: #DFF4FF;
}

.session.level-2 {
  background-color: #EDFFDC;
}

.session.level-3 {
  background-color: #fffcee;
}

.session.level-4 {
  background-color: #FFFBF3;
}

.session.level-5 {
  background-color: #FFF7F7;
}

.session .session-link {
  background: no-repeat 98% 70%;
}

.session.level-0 .session-link {
  background-color: #f1f1f1;
  border-color: #f1f1f1;
}

.session.level-1 .session-link {
  background-color: #53bdf8;
  border-color: rgb(83, 189, 248);
}

.session.level-2 .session-link {
  background-color: #bbeb8f;
  border-color: rgb(187, 235, 143);
}

.session.level-3 .session-link {
  background-color: #ffe57d;
  border-color: rgb(255, 255, 166);
}

.session.level-4 .session-link {
  background-color: #ffac52;
  border-color: rgb(255, 172, 82);
}

.session.level-5 .session-link {
  background-color: #ff6e6e;
  border-color: rgb(255, 110, 110);
}

#training-calendar .session.hover, #training-calendar .session.active, #training-calendar .day .calendar-pin.race:hover, #training-calendar .day .calendar-pin.race.active {
  transition: box-shadow 0.1s ease, margin 0.1s ease;
  box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.4);
  z-index: 3;
  margin: 0 -2px;
}
@media all and (max-width: 506px) {
  #training-calendar .session.hover, #training-calendar .session.active, #training-calendar .day .calendar-pin.race:hover, #training-calendar .day .calendar-pin.race.active {
    box-shadow: none;
    margin: inherit;
  }
}

.session.level-1.discipline-category-swim .session-link {
  background-image: url("icons/swim-1.637be90ea158.svg");
}

.session.level-2.discipline-category-swim .session-link {
  background-image: url("icons/swim-2.f6f87e4f9e59.svg");
}

.session.level-3.discipline-category-swim .session-link {
  background-image: url("icons/swim-3.82c34e1b66f9.svg");
}

.session.level-4.discipline-category-swim .session-link {
  background-image: url("icons/swim-4.87f20efe0011.svg");
}

.session.level-5.discipline-category-swim .session-link {
  background-image: url("icons/swim-5.531eb50199cc.svg");
}

.session.level-1.discipline-category-bike .session-link {
  background-image: url("icons/bike-1.eb327b4f18fc.svg");
}

.session.level-2.discipline-category-bike .session-link {
  background-image: url("icons/bike-2.5e156c54854f.svg");
}

.session.level-3.discipline-category-bike .session-link {
  background-image: url("icons/bike-3.d25f2ab6ba5e.svg");
}

.session.level-4.discipline-category-bike .session-link {
  background-image: url("icons/bike-4.314ef75a0dfe.svg");
}

.session.level-5.discipline-category-bike .session-link {
  background-image: url("icons/bike-5.65c961b4c3b8.svg");
}

.session.level-1.discipline-category-run .session-link {
  background-image: url("icons/run-1.f29a36b6df90.svg");
}

.session.level-2.discipline-category-run .session-link {
  background-image: url("icons/run-2.e1969cbe9624.svg");
}

.session.level-3.discipline-category-run .session-link {
  background-image: url("icons/run-3.7f66bdbfb6f8.svg");
}

.session.level-4.discipline-category-run .session-link {
  background-image: url("icons/run-4.eb809d92167d.svg");
}

.session.level-5.discipline-category-run .session-link {
  background-image: url("icons/run-5.45d52c74ac3f.svg");
}

.session.level-1.discipline-category-gym .session-link {
  background-image: url("icons/gym-1.12323520bc72.svg");
}

.session.level-2.discipline-category-gym .session-link {
  background-image: url("icons/gym-2.e838a2bd65b0.svg");
}

.session.level-3.discipline-category-gym .session-link {
  background-image: url("icons/gym-3.d1947e176b3f.svg");
}

.session.level-4.discipline-category-gym .session-link {
  background-image: url("icons/gym-4.d8c71b330216.svg");
}

.session.level-5.discipline-category-gym .session-link {
  background-image: url("icons/gym-5.bf08ea22345b.svg");
}

@media all and (max-width: 506px) {
  .session-plan {
    padding-bottom: 0px;
  }
}

#training-calendar .session.invisible {
  opacity: 0.6;
}

#training-calendar .session.missed-session .session-link {
  background-color: transparent;
}

#training-calendar .session.fade-out {
  opacity: 0.1;
}

#template-sessions ul.sessions.drop-hover {
  background-color: rgb(229, 251, 253);
}

#join-xhale {
  color: white;
  clear: both;
  background: black url("images/txture/txture.a922e59e0e52.png");
  padding: 15px;
}

/* Shared sessions */
.lap-tables-container {
  height: 100%;
}

.lap-tables {
  z-index: 2;
  position: relative;
  overflow-y: auto;
  height: 100%;
  background: #515151;
}
@media all and (max-width: 506px) {
  .lap-tables {
    margin: 0 0 0 15px;
    min-height: 0;
    max-width: 100%;
  }
}

.lap-tables table {
  width: 100%;
}

.chart-tooltip {
  width: 100%;
  z-index: 1;
  position: initial;
  position: -webkit-sticky;
  position: sticky;
  border-bottom: 1px solid rgb(223, 223, 223);
  clear: both;
  background: #f5f5f5;
}
@media all and (max-width: 506px) {
  .chart-tooltip {
    overflow: inherit;
    display: block;
  }
}

.compare-tooltip-row h4 {
  display: inline;
}

.compare-tooltip-row {
  overflow: auto;
  justify-content: space-between;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  position: relative;
  color: #eee;
}
@media all and (max-width: 506px) {
  .compare-tooltip-row {
    display: block;
    border: none;
    margin: 0;
  }
}

.compare-tooltip-row .data {
  display: inline;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  text-align: left;
  padding-top: 5px;
  padding-left: 5px;
  padding-bottom: 4px;
}
@media all and (max-width: 506px) {
  .compare-tooltip-row .data {
    width: 100%;
    float: left;
    border: none;
    box-sizing: border-box;
    padding-left: 10px;
  }
}

.compare-tooltip-row .data.time,
.compare-tooltip-row .data.distance {
  cursor: pointer;
  background: transparent url("icons/axis-disabled.afbe4ae1bef2.png") no-repeat 5px 8px;
  background-size: 20px;
  padding-left: 28px;
}

.compare-tooltip-row .data.visible,
.compare-tooltip-row .data.invisible {
  cursor: pointer;
}

.compare-tooltip-row .data.invisible {
  color: #9e9e9e;
}

.compare-tooltip-row .data.time:hover,
.compare-tooltip-row .data.distance:hover,
.compare-tooltip-row .data.time.selected,
.compare-tooltip-row .data.distance.selected {
  background-image: url("icons/axis.4f7469ae4c57.png");
}

@media all and (max-width: 506px) {
  .lap-table .table-container {
    overflow-x: scroll;
  }
}

.top-section {
  z-index: 1;
  width: 100%;
  border-top: 3px solid;
  border-bottom: 3px solid;
  background: #515151;
  overflow: auto;
}

#training-log-container.level-1 .top-section {
  border-color: #53bdf8;
}

#training-log-container.level-2 .top-section {
  border-color: #bbeb8f;
}

#training-log-container.level-3 .top-section {
  border-color: #ffe57d;
}

#training-log-container.level-4 .top-section {
  border-color: #ffac52;
}

#training-log-container.level-5 .top-section {
  border-color: #ff6e6e;
}

.top-section-extras h2 {
  margin: 0 3px 4px;
  padding-left: 4px;
  padding-top: 5px;
  font-weight: 100;
}

.top-section-controls {
  width: 60px;
  height: 265px;
  float: left;
  border-right: 1px solid #3E3E3E;
  background: #3e3e3e;
}
@media all and (max-width: 506px) {
  .top-section-controls {
    width: 100%;
    height: inherit;
    border-width: 0;
  }
}

.top-section-controls .control {
  padding: 10px 5px;
  font-size: 12px;
  border-bottom: 1px solid #2b2b2b;
}
@media all and (max-width: 506px) {
  .top-section-controls .control {
    float: left;
    padding: 10px 15px;
    border-bottom: none;
  }
}

.top-section-controls .control.active,
.top-section-controls .control:hover {
  background: #515151;
  cursor: pointer;
}

.top-section-extras {
  float: left;
  width: 500px;
  height: 268px;
}
@media all and (max-width: 506px) {
  .top-section-extras {
    width: 100%;
    height: inherit;
  }
}

.map-container {
  height: 265px;
  position: relative;
  transform: translate3d(0px, 0px, 0px); /* Fix for disappearing maps when sticky header is used on brick sessions. */
  right: 0;
  z-index: 2;
}
@media all and (max-width: 506px) {
  .map-container {
    float: none;
    border: 0px;
    width: inherit;
    box-shadow: none;
    margin: 0;
  }
}

#training-log-container .top-background {
  top: 0;
  background: #515151;
  right: 0;
  position: fixed;
  height: 285px;
  left: 0;
  z-index: 1;
}
@media all and (max-width: 506px) {
  #training-log-container .top-background {
    background: none;
  }
}

.shared-session-map {
  width: 100%;
  height: 100%;
}

.transition-time {
  display: block;
  position: relative;
  padding: 15px;
  font-size: 30px;
  text-align: center;
  background: #333;
  font-weight: 100;
  color: #eee;
  z-index: 1;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.48);
}

/* Page: Periodisation */
#forecast-header h1 {
  float: none;
  text-align: center;
  margin: 30px 0 0 0;
}

#forecast-header h3 {
  clear: both;
  margin: 0px 0px 5px 0;
  font-weight: normal;
  text-align: center;
}
@media all and (max-width: 506px) {
  #forecast-header h3 {
    margin: 10px 0px 5px 7px;
    font-size: 1em;
  }
}

#season-navigation {
  padding: 15px;
}

#season-navigation #season-date-form {
  position: absolute;
  background-color: #F5F5F5;
  z-index: 10;
  padding: 0 0 3px;
  box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.21);
  left: 50%;
  width: 210px;
  margin-left: -105px;
  margin-top: 9px;
  text-align: center;
  font-size: 12px;
  border-radius: 5px;
}

#season-navigation #season-date-form .field-wrapper {
  margin: 10px 20px 2px;
}

#periodisation-calendar {
  min-width: 1170px;
  background: #555;
  padding-top: 15px;
  padding-bottom: 15px;
  clear: both;
}
@media all and (max-width: 506px) {
  #periodisation-calendar {
    min-width: 100%;
  }
}

#periodisation-calendar .month {
  clear: both;
  margin: 0;
  overflow: hidden;
  margin-top: 3px;
  position: relative;
  padding-left: 24px;
}
@media all and (max-width: 506px) {
  #periodisation-calendar .month {
    padding-left: 7px;
  }
}

#charts-header #date-selector {
  clear: both;
  margin: 0px 0px 5px 45px;
  font-weight: normal;
}
@media all and (max-width: 506px) {
  #charts-header #date-selector {
    margin: 0px 0px 5px 7px;
    font-size: 1em;
  }
}

#date-selector .field-wrapper {
  margin: 11px 7px 0 0;
  float: left;
}
@media all and (max-width: 506px) {
  #date-selector .field-wrapper {
    float: none;
  }
}

#periodisation-calendar .month h3 {
  color: #ececec;
  background: #555;
  margin: 0;
  font-weight: normal;
  font-size: 11.5px;
  float: left;
  transform: rotate(-90deg);
  transform-origin: 32px 30px;
  -ms-transform: rotate(-90deg);
  -ms-transform-origin: 32px 30px;
  -webkit-transform: rotate(-90deg);
  -webkit-transform-origin: 32px 30px;
  position: absolute;
  top: 3px;
  left: 2px;
}
@media all and (max-width: 506px) {
  #periodisation-calendar .month h3 {
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
    font-size: 20px;
    position: relative;
    margin-top: 25px;
    font-weight: 200;
  }
}

#periodisation-calendar .week {
  float: left;
  margin-right: 3px;
}
@media all and (max-width: 506px) {
  #periodisation-calendar .week {
    clear: left;
  }
}

#periodisation-calendar .week .week-text-spacer {
  height: 1.4em;
  padding: 6px 0px 0px 0px;
  display: block;
}
@media all and (max-width: 506px) {
  #periodisation-calendar .week .week-text-spacer {
    height: inherit;
  }
}

@media all and (max-width: 506px) {
  #periodisation-calendar .week .days .day-container.Tue:first-child {
    margin-left: 35px;
  }
  #periodisation-calendar .week .days .day-container.Wed:first-child {
    margin-left: 70px;
  }
  #periodisation-calendar .week .days .day-container.Thu:first-child {
    margin-left: 105px;
  }
  #periodisation-calendar .week .days .day-container.Fri:first-child {
    margin-left: 140px;
  }
  #periodisation-calendar .week .days .day-container.Sat:first-child {
    margin-left: 175px;
  }
  #periodisation-calendar .week .days .day-container.Sun:first-child {
    margin-left: 210px;
  }
}
#race-popup-inner .close,
#week-summary .close,
#period-form .inner .close {
  display: block;
  padding: 9px;
  position: absolute;
  text-decoration: none;
  text-indent: -9999px;
  width: 4px;
  height: 0px;
  top: 0;
  right: 0;
}

#period-form .inner .close {
  color: #ccc;
  background: transparent url("images/ui-icons_cccccc_256x240.99141856ff90.png") -78px -125px no-repeat;
}

#race-popup-inner .close {
  color: white;
  background: transparent url("images/ui-icons_ffffff_256x240.e3f4748b19b8.png") -78px -125px no-repeat;
}

#week-summary .close {
  color: #222;
  background: transparent url("images/ui-icons_222222_256x240.a1b3887a86cf.png") -78px -125px no-repeat;
}

.period.active-period {
  color: black;
  background: lightgrey;
}

.period[period_type_id="0"], .period[period_type_id="0"] span.period-description {
  background-color: #53bdf8;
}

.period[period_type_id="4"], .period[period_type_id="4"] span.period-description {
  background-color: #bbeb8f;
}

.period[period_type_id="1"], .period[period_type_id="1"] span.period-description {
  background-color: #ffe57d;
}

.period[period_type_id="2"], .period[period_type_id="2"] span.period-description {
  background-color: #ffac52;
}

.period[period_type_id="3"], .period[period_type_id="3"] span.period-description {
  background-color: #ff6e6e;
}

@-webkit-keyframes flash_background_yellow {
  to {
    background-color: #e9faff;
  }
}
@keyframes flash_background_yellow {
  to {
    background-color: #e9faff;
  }
}
@-webkit-keyframes flash_background {
  to {
    background-color: transparent;
  }
}
@keyframes flash_background {
  to {
    background-color: transparent;
  }
}
#training-calendar td.week-summary.not-seen,
#training-calendar .session.not-seen a {
  animation-name: flash_background;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  -webkit-animation-name: flash_background;
  -webkit-animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
}

#training-calendar td.week-summary.not-seen {
  animation-name: flash_background_yellow;
  -webkit-animation-name: flash_background_yellow;
}

#private-conversation-container {
  left: 300px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
}
@media all and (max-width: 506px) {
  #private-conversation-container {
    position: inherit;
  }
}

#private-conversation-athlete-list {
  width: 300px;
  top: 0px;
  bottom: 0px;
  position: absolute;
  background: white;
  z-index: 1;
  overflow-y: auto;
}
@media all and (max-width: 506px) {
  #private-conversation-athlete-list {
    display: none;
  }
}

#private-conversation {
  position: absolute;
  bottom: 0px;
  box-sizing: border-box;
  width: 100%;
  top: 0;
}

#private-conversation .private-message-messages {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  overflow-y: scroll;
  bottom: 156px;
}
@media all and (max-width: 506px) {
  #private-conversation .private-message-messages {
    bottom: 124px;
  }
}

#private-conversation .coach-message {
  overflow: auto;
  margin: 5px 5px 4px;
}

#private-conversation .details {
  font-size: 13px;
  overflow: auto;
}

#private-conversation .details .unseen {
  color: #579EFF;
}

@media all and (max-width: 506px) {
  #private-conversation .details .sender-name {
    margin-top: 10px;
  }
}

#private-conversation .details .sender-avatar .avatar {
  border-radius: 5px;
  width: 40px;
  height: 40px;
  background: white;
  display: inline-block;
}

@media all and (max-width: 506px) {
  #private-conversation .sent-by-another .details .sender-avatar .avatar {
    float: left;
    margin-right: 5px;
  }
}

@media all and (max-width: 506px) {
  #private-conversation .sent-by-current-user .details .sender-avatar .avatar {
    float: right;
    margin-left: 5px;
  }
}

@media all and (max-width: 506px) {
  #private-conversation .sent-by-another {
    margin-left: 60px;
  }
}

@media all and (max-width: 506px) {
  #private-conversation .sent-by-current-user {
    margin-right: 60px;
  }
}

#private-conversation .sent-by-current-user .details {
  float: right;
  overflow: auto;
}
@media all and (max-width: 506px) {
  #private-conversation .sent-by-current-user .details {
    margin-bottom: 5px;
    text-align: right;
    float: none;
    width: inherit;
  }
}

#private-conversation .sent-by-another .details {
  float: left;
  text-align: right;
}
@media all and (max-width: 506px) {
  #private-conversation .sent-by-another .details {
    float: none;
    text-align: left;
    margin-bottom: 5px;
  }
}

#private-conversation .private-message-input-section {
  position: absolute;
  bottom: 5px;
  box-sizing: border-box;
  right: 0;
  left: 0;
  border-top: 1px solid #FFF;
  padding: 5px;
}

#private-conversation .private-message-form {
  margin: 0;
  height: 140px;
  padding: 0;
}
@media all and (max-width: 506px) {
  #private-conversation .private-message-form {
    padding: 5px;
    height: 107px;
  }
}

#private-conversation .private-message-form .textarea-container {
  position: absolute;
  width: 500px;
  right: 185px;
  bottom: 0px;
}
@media all and (max-width: 506px) {
  #private-conversation .private-message-form .textarea-container {
    width: inherit;
    right: 60px;
    left: 5px;
  }
}

#private-conversation .private-message-form textarea {
  border: none;
  box-sizing: border-box;
  height: 145px;
  padding: 10px;
  float: right;
  border-radius: 5px;
  font-size: 12px;
  width: 100%;
}
@media all and (max-width: 506px) {
  #private-conversation .private-message-form textarea {
    height: 112px;
  }
}

#private-conversation .private-message-form #submit-private-message {
  cursor: pointer;
  text-shadow: 0 1px 0 rgba(93, 93, 93, 0.6);
  padding: 5px 18px;
  font-size: 13px;
  box-shadow: 0px 0px 8px 0px rgba(139, 139, 139, 0.34);
  color: #282828;
  border-radius: 5px;
  width: 175px;
  right: 5px;
  border: 0;
  position: absolute;
  bottom: 0;
  color: white;
  padding: 7px 29px;
  line-height: 14px;
}
@media all and (max-width: 506px) {
  #private-conversation .private-message-form #submit-private-message {
    width: 49px;
    padding: 18px;
  }
}

@media all and (max-width: 506px) {
  #private-conversation .private-message-form #submit-private-message .text {
    display: none;
  }
}

#private-conversation .private-message-form #submit-private-message svg {
  float: right;
}

#private-conversation .content {
  background: white;
  padding: 5px;
  min-height: 75px;
  border-radius: 5px;
  width: 500px;
  box-sizing: border-box;
}
@media all and (max-width: 506px) {
  #private-conversation .content {
    width: 100%;
  }
}

#private-conversation .sent-by-another .content {
  margin-left: 165px;
}
@media all and (max-width: 506px) {
  #private-conversation .sent-by-another .content {
    margin-left: 0;
  }
}

#private-conversation .sent-by-current-user .content {
  margin-right: 5px;
  float: right;
  position: relative;
}
@media all and (max-width: 506px) {
  #private-conversation .sent-by-current-user .content {
    margin-right: 0px;
  }
}

.private-conversation-athlete-list__athlete {
  border-bottom: 1px solid #E2E2E2;
  cursor: pointer;
}

.private-conversation-athlete-list__athlete--active,
.private-conversation-athlete-list__athlete:hover {
  background: #E2E2E2;
}

.private-conversation-athlete-list__athlete > div {
  display: inline-block;
  vertical-align: middle;
}

.private-conversation-athlete-list__athlete .private-messages {
  padding: 5px;
}

.topic-title {
  margin: 17px 10px 10px 172px;
}
@media all and (max-width: 506px) {
  .topic-title {
    margin-left: 5px;
  }
}

.topic-message__details {
  float: left;
  text-align: right;
  width: 160px;
  font-size: 13px;
  overflow: auto;
}
@media all and (max-width: 506px) {
  .topic-message__details {
    float: none;
    text-align: left;
    margin: 5px 0 3px;
  }
}

.topic-message__sender-avatar {
  float: right;
  margin: 0 0 0 5px;
}
@media all and (max-width: 506px) {
  .topic-message__sender-avatar {
    float: left;
    margin: 0 5px 0 0;
  }
}

.topic-message__sender-avatar-image {
  border-radius: 5px;
  width: 40px;
  height: 40px;
  background: white;
  display: inline-block;
}

.topic-message__content {
  background: white;
  padding: 5px;
  min-height: 75px;
  border-radius: 5px;
  width: 500px;
  box-sizing: border-box;
  margin-left: 165px;
}
@media all and (max-width: 506px) {
  .topic-message__content {
    margin-left: 0px;
    width: 100%;
  }
}

.topic-message__form {
  margin: 5px 5px 5px 169px;
  width: 502px;
  overflow: auto;
}
@media all and (max-width: 506px) {
  .topic-message__form {
    margin: 0px;
    padding: 5px;
    width: 100%;
    box-sizing: border-box;
  }
}

.topic-message__form-textarea {
  border: none;
  box-sizing: border-box;
  height: 145px;
  padding: 10px;
  float: right;
  border-radius: 5px;
  font-size: 12px;
  width: 100%;
  margin-bottom: 6px;
}

/* jQuery UI - v1.10.4 - 2014-01-22
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Segoe%20UI%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=333333&bgTextureHeader=gloss_wave&bgImgOpacityHeader=25&borderColorHeader=333333&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=000000&bgTextureContent=inset_soft&bgImgOpacityContent=25&borderColorContent=666666&fcContent=ffffff&iconColorContent=cccccc&bgColorDefault=555555&bgTextureDefault=glass&bgImgOpacityDefault=20&borderColorDefault=666666&fcDefault=eeeeee&iconColorDefault=cccccc&bgColorHover=0078a3&bgTextureHover=glass&bgImgOpacityHover=40&borderColorHover=59b4d4&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=f58400&bgTextureActive=inset_soft&bgImgOpacityActive=30&borderColorActive=ffaf0f&fcActive=ffffff&iconColorActive=222222&bgColorHighlight=eeeeee&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=80&borderColorHighlight=cccccc&fcHighlight=2e7db2&iconColorHighlight=4b8e0b&bgColorError=ffc73d&bgTextureError=glass&bgImgOpacityError=40&borderColorError=ffb73d&fcError=111111&iconColorError=a83300&bgColorOverlay=5c5c5c&bgTextureOverlay=flat&bgImgOpacityOverlay=50&opacityOverlay=80&bgColorShadow=cccccc&bgTextureShadow=flat&bgImgOpacityShadow=30&opacityShadow=60&thicknessShadow=7px&offsetTopShadow=-7px&offsetLeftShadow=-7px&cornerRadiusShadow=8px
* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none;
}

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}

.ui-helper-clearfix:after {
  clear: both;
}

.ui-helper-clearfix {
  min-height: 0; /* support: IE7 */
}

.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
}

.ui-front {
  z-index: 100;
}

#settings-page {
  width: 1000px;
  margin: 15px 0 15px 46px;
}

#settings-page .menu {
  float: left;
  width: 240px;
  margin-bottom: 15px;
}

#settings-page .menu h3 {
  margin: 1px 15px 6px 1px;
  background: #444;
  color: white;
  font-weight: normal;
  padding: 7px 10px 5px;
  border-radius: 5px;
  font-size: 1em;
}

#settings-page .menu ul {
  padding: 0;
  margin: 0 15px 20px 0;
  background: #F5F5F5;
  border: 1px solid rgb(215, 215, 215);
  border-radius: 5px;
}

#settings-page .athlete-not-logged-in {
  float: left;
  padding: 15px;
  background: #DB4504;
  box-shadow: 1px 1px 7px rgba(0, 0, 0, 0.19);
  clear: left;
  width: 195px;
  color: white;
  text-decoration: none;
  border-radius: 5px;
}

#settings-page .menu li {
  border-bottom: 1px solid #d2d2d2;
  list-style: none;
}

#settings-page .menu li:first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

#settings-page .menu li:last-child {
  border: 0;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

#settings-page .menu li.active {
  font-weight: bold;
  background: white;
}

#settings-page .menu li a {
  padding: 10px;
  display: block;
  text-decoration: none;
  border-radius: 5px;
}

#settings-page .menu li a:hover {
  background-color: #e9faff;
}

#settings-page .page {
  overflow: auto;
  background: white;
  border-radius: 5px;
  padding: 15px;
  border: 1px solid rgb(215, 215, 215);
}

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
}

/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}

/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ui-datepicker {
  width: 17em;
  padding: 0.2em 0.2em 0;
  display: none;
}

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: 0.2em 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px;
}

.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}

.ui-datepicker .ui-datepicker-next {
  right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px;
}

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 49%;
}

.ui-datepicker table {
  width: 100%;
  font-size: 0.9em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}

.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: bold;
  border: 0;
}

.ui-datepicker td {
  border: 0;
  padding: 1px;
}

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: 0.2em;
  text-align: right;
  text-decoration: none;
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

/* Component containers
----------------------------------*/
.ui-widget {
  font-family: Segoe UI, Arial, sans-serif;
  font-size: 1.1em;
}

.ui-widget .ui-widget {
  font-size: 1em;
}

.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: Segoe UI, Arial, sans-serif;
  font-size: 1em;
}

.ui-widget-content {
  border: 1px solid #666666;
  background: #000000 url("images/ui-bg_inset-soft_25_000000_1x100.a15361e882fe.png") 50% bottom repeat-x;
  color: #ffffff;
}

.ui-widget-content a {
  color: #ffffff;
}

.ui-widget-header {
  border: 1px solid #333333;
  background: #333333 url("images/ui-bg_gloss-wave_25_333333_500x100.95c84c58d8a1.png") 50% 50% repeat-x;
  color: #ffffff;
  font-weight: bold;
}

.ui-widget-header a {
  color: #ffffff;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  border: 1px solid #666666;
  background: #555555 url("images/ui-bg_glass_20_555555_1x400.5ee8bfb4d702.png") 50% 50% repeat-x;
  font-weight: bold;
  color: #eeeeee;
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
  color: #eeeeee;
  text-decoration: none;
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  border: 1px solid #59b4d4;
  background: #0078a3 url("images/ui-bg_glass_40_0078a3_1x400.a39afacbc374.png") 50% 50% repeat-x;
  font-weight: bold;
  color: #ffffff;
}

.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
  color: #ffffff;
  text-decoration: none;
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  border: 1px solid #ffaf0f;
  background: #f58400 url("images/ui-bg_inset-soft_30_f58400_1x100.946bb2376f51.png") 50% 50% repeat-x;
  font-weight: bold;
  color: #ffffff;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #ffffff;
  text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #cccccc;
  background: #eeeeee url("images/ui-bg_highlight-soft_80_eeeeee_1x100.e9bf56e0c718.png") 50% top repeat-x;
  color: #2e7db2;
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #2e7db2;
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #ffb73d;
  background: #ffc73d url("images/ui-bg_glass_40_ffc73d_1x400.9454e71ab5bc.png") 50% 50% repeat-x;
  color: #111111;
}

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #111111;
}

.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #111111;
}

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold;
}

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: 0.7;
  filter: Alpha(Opacity=70);
  font-weight: normal;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  filter: Alpha(Opacity=35);
  background-image: none;
}

.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35); /* For IE8 - See #6059 */
}

/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px;
}

.ui-icon,
.ui-widget-content .ui-icon {
  background-image: url("images/ui-icons_cccccc_256x240.99141856ff90.png");
}

.ui-widget-header .ui-icon {
  background-image: url("images/ui-icons_ffffff_256x240.e3f4748b19b8.png");
}

.ui-state-default .ui-icon {
  background-image: url("images/ui-icons_cccccc_256x240.99141856ff90.png");
}

.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
  background-image: url("images/ui-icons_ffffff_256x240.e3f4748b19b8.png");
}

.ui-state-active .ui-icon {
  background-image: url("images/ui-icons_222222_256x240.a1b3887a86cf.png");
}

.ui-state-highlight .ui-icon {
  background-image: url("images/ui-icons_4b8e0b_256x240.947012ca3f45.png");
}

.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url("images/ui-icons_a83300_256x240.04884d7e9a0a.png");
}

/* positioning */
.ui-icon-blank {
  background-position: 16px 16px;
}

.ui-icon-carat-1-n {
  background-position: 0 0;
}

.ui-icon-carat-1-ne {
  background-position: -16px 0;
}

.ui-icon-carat-1-e {
  background-position: -32px 0;
}

.ui-icon-carat-1-se {
  background-position: -48px 0;
}

.ui-icon-carat-1-s {
  background-position: -64px 0;
}

.ui-icon-carat-1-sw {
  background-position: -80px 0;
}

.ui-icon-carat-1-w {
  background-position: -96px 0;
}

.ui-icon-carat-1-nw {
  background-position: -112px 0;
}

.ui-icon-carat-2-n-s {
  background-position: -128px 0;
}

.ui-icon-carat-2-e-w {
  background-position: -144px 0;
}

.ui-icon-triangle-1-n {
  background-position: 0 -16px;
}

.ui-icon-triangle-1-ne {
  background-position: -16px -16px;
}

.ui-icon-triangle-1-e {
  background-position: -32px -16px;
}

.ui-icon-triangle-1-se {
  background-position: -48px -16px;
}

.ui-icon-triangle-1-s {
  background-position: -64px -16px;
}

.ui-icon-triangle-1-sw {
  background-position: -80px -16px;
}

.ui-icon-triangle-1-w {
  background-position: -96px -16px;
}

.ui-icon-triangle-1-nw {
  background-position: -112px -16px;
}

.ui-icon-triangle-2-n-s {
  background-position: -128px -16px;
}

.ui-icon-triangle-2-e-w {
  background-position: -144px -16px;
}

.ui-icon-arrow-1-n {
  background-position: 0 -32px;
}

.ui-icon-arrow-1-ne {
  background-position: -16px -32px;
}

.ui-icon-arrow-1-e {
  background-position: -32px -32px;
}

.ui-icon-arrow-1-se {
  background-position: -48px -32px;
}

.ui-icon-arrow-1-s {
  background-position: -64px -32px;
}

.ui-icon-arrow-1-sw {
  background-position: -80px -32px;
}

.ui-icon-arrow-1-w {
  background-position: -96px -32px;
}

.ui-icon-arrow-1-nw {
  background-position: -112px -32px;
}

.ui-icon-arrow-2-n-s {
  background-position: -128px -32px;
}

.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px;
}

.ui-icon-arrow-2-e-w {
  background-position: -160px -32px;
}

.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px;
}

.ui-icon-arrowstop-1-n {
  background-position: -192px -32px;
}

.ui-icon-arrowstop-1-e {
  background-position: -208px -32px;
}

.ui-icon-arrowstop-1-s {
  background-position: -224px -32px;
}

.ui-icon-arrowstop-1-w {
  background-position: -240px -32px;
}

.ui-icon-arrowthick-1-n {
  background-position: 0 -48px;
}

.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px;
}

.ui-icon-arrowthick-1-e {
  background-position: -32px -48px;
}

.ui-icon-arrowthick-1-se {
  background-position: -48px -48px;
}

.ui-icon-arrowthick-1-s {
  background-position: -64px -48px;
}

.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px;
}

.ui-icon-arrowthick-1-w {
  background-position: -96px -48px;
}

.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px;
}

.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px;
}

.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px;
}

.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px;
}

.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px;
}

.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px;
}

.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px;
}

.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px;
}

.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px;
}

.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px;
}

.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px;
}

.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px;
}

.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px;
}

.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px;
}

.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px;
}

.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px;
}

.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px;
}

.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px;
}

.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px;
}

.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px;
}

.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px;
}

.ui-icon-arrow-4 {
  background-position: 0 -80px;
}

.ui-icon-arrow-4-diag {
  background-position: -16px -80px;
}

.ui-icon-extlink {
  background-position: -32px -80px;
}

.ui-icon-newwin {
  background-position: -48px -80px;
}

.ui-icon-refresh {
  background-position: -64px -80px;
}

.ui-icon-shuffle {
  background-position: -80px -80px;
}

.ui-icon-transfer-e-w {
  background-position: -96px -80px;
}

.ui-icon-transferthick-e-w {
  background-position: -112px -80px;
}

.ui-icon-folder-collapsed {
  background-position: 0 -96px;
}

.ui-icon-folder-open {
  background-position: -16px -96px;
}

.ui-icon-document {
  background-position: -32px -96px;
}

.ui-icon-document-b {
  background-position: -48px -96px;
}

.ui-icon-note {
  background-position: -64px -96px;
}

.ui-icon-mail-closed {
  background-position: -80px -96px;
}

.ui-icon-mail-open {
  background-position: -96px -96px;
}

.ui-icon-suitcase {
  background-position: -112px -96px;
}

.ui-icon-comment {
  background-position: -128px -96px;
}

.ui-icon-person {
  background-position: -144px -96px;
}

.ui-icon-print {
  background-position: -160px -96px;
}

.ui-icon-trash {
  background-position: -176px -96px;
}

.ui-icon-locked {
  background-position: -192px -96px;
}

.ui-icon-unlocked {
  background-position: -208px -96px;
}

.ui-icon-bookmark {
  background-position: -224px -96px;
}

.ui-icon-tag {
  background-position: -240px -96px;
}

.ui-icon-home {
  background-position: 0 -112px;
}

.ui-icon-flag {
  background-position: -16px -112px;
}

.ui-icon-calendar {
  background-position: -32px -112px;
}

.ui-icon-cart {
  background-position: -48px -112px;
}

.ui-icon-pencil {
  background-position: -64px -112px;
}

.ui-icon-clock {
  background-position: -80px -112px;
}

.ui-icon-disk {
  background-position: -96px -112px;
}

.ui-icon-calculator {
  background-position: -112px -112px;
}

.ui-icon-zoomin {
  background-position: -128px -112px;
}

.ui-icon-zoomout {
  background-position: -144px -112px;
}

.ui-icon-search {
  background-position: -160px -112px;
}

.ui-icon-wrench {
  background-position: -176px -112px;
}

.ui-icon-gear {
  background-position: -192px -112px;
}

.ui-icon-heart {
  background-position: -208px -112px;
}

.ui-icon-star {
  background-position: -224px -112px;
}

.ui-icon-link {
  background-position: -240px -112px;
}

.ui-icon-cancel {
  background-position: 0 -128px;
}

.ui-icon-plus {
  background-position: -16px -128px;
}

.ui-icon-plusthick {
  background-position: -32px -128px;
}

.ui-icon-minus {
  background-position: -48px -128px;
}

.ui-icon-minusthick {
  background-position: -64px -128px;
}

.ui-icon-close {
  background-position: -80px -128px;
}

.ui-icon-closethick {
  background-position: -96px -128px;
}

.ui-icon-key {
  background-position: -112px -128px;
}

.ui-icon-lightbulb {
  background-position: -128px -128px;
}

.ui-icon-scissors {
  background-position: -144px -128px;
}

.ui-icon-clipboard {
  background-position: -160px -128px;
}

.ui-icon-copy {
  background-position: -176px -128px;
}

.ui-icon-contact {
  background-position: -192px -128px;
}

.ui-icon-image {
  background-position: -208px -128px;
}

.ui-icon-video {
  background-position: -224px -128px;
}

.ui-icon-script {
  background-position: -240px -128px;
}

.ui-icon-alert {
  background-position: 0 -144px;
}

.ui-icon-info {
  background-position: -16px -144px;
}

.ui-icon-notice {
  background-position: -32px -144px;
}

.ui-icon-help {
  background-position: -48px -144px;
}

.ui-icon-check {
  background-position: -64px -144px;
}

.ui-icon-bullet {
  background-position: -80px -144px;
}

.ui-icon-radio-on {
  background-position: -96px -144px;
}

.ui-icon-radio-off {
  background-position: -112px -144px;
}

.ui-icon-pin-w {
  background-position: -128px -144px;
}

.ui-icon-pin-s {
  background-position: -144px -144px;
}

.ui-icon-play {
  background-position: 0 -160px;
}

.ui-icon-pause {
  background-position: -16px -160px;
}

.ui-icon-seek-next {
  background-position: -32px -160px;
}

.ui-icon-seek-prev {
  background-position: -48px -160px;
}

.ui-icon-seek-end {
  background-position: -64px -160px;
}

.ui-icon-seek-start {
  background-position: -80px -160px;
}

/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first {
  background-position: -80px -160px;
}

.ui-icon-stop {
  background-position: -96px -160px;
}

.ui-icon-eject {
  background-position: -112px -160px;
}

.ui-icon-volume-off {
  background-position: -128px -160px;
}

.ui-icon-volume-on {
  background-position: -144px -160px;
}

.ui-icon-power {
  background-position: 0 -176px;
}

.ui-icon-signal-diag {
  background-position: -16px -176px;
}

.ui-icon-signal {
  background-position: -32px -176px;
}

.ui-icon-battery-0 {
  background-position: -48px -176px;
}

.ui-icon-battery-1 {
  background-position: -64px -176px;
}

.ui-icon-battery-2 {
  background-position: -80px -176px;
}

.ui-icon-battery-3 {
  background-position: -96px -176px;
}

.ui-icon-circle-plus {
  background-position: 0 -192px;
}

.ui-icon-circle-minus {
  background-position: -16px -192px;
}

.ui-icon-circle-close {
  background-position: -32px -192px;
}

.ui-icon-circle-triangle-e {
  background-position: -48px -192px;
}

.ui-icon-circle-triangle-s {
  background-position: -64px -192px;
}

.ui-icon-circle-triangle-w {
  background-position: -80px -192px;
}

.ui-icon-circle-triangle-n {
  background-position: -96px -192px;
}

.ui-icon-circle-arrow-e {
  background-position: -112px -192px;
}

.ui-icon-circle-arrow-s {
  background-position: -128px -192px;
}

.ui-icon-circle-arrow-w {
  background-position: -144px -192px;
}

.ui-icon-circle-arrow-n {
  background-position: -160px -192px;
}

.ui-icon-circle-zoomin {
  background-position: -176px -192px;
}

.ui-icon-circle-zoomout {
  background-position: -192px -192px;
}

.ui-icon-circle-check {
  background-position: -208px -192px;
}

.ui-icon-circlesmall-plus {
  background-position: 0 -208px;
}

.ui-icon-circlesmall-minus {
  background-position: -16px -208px;
}

.ui-icon-circlesmall-close {
  background-position: -32px -208px;
}

.ui-icon-squaresmall-plus {
  background-position: -48px -208px;
}

.ui-icon-squaresmall-minus {
  background-position: -64px -208px;
}

.ui-icon-squaresmall-close {
  background-position: -80px -208px;
}

.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px;
}

.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px;
}

.ui-icon-grip-solid-vertical {
  background-position: -32px -224px;
}

.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px;
}

.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px;
}

.ui-icon-grip-diagonal-se {
  background-position: -80px -224px;
}

/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 6px;
}

.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 6px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 6px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 6px;
}

/* Overlays */
.ui-widget-overlay {
  background: #5c5c5c url("images/ui-bg_flat_50_5c5c5c_40x100.f6ad84a9d592.png") 50% 50% repeat-x;
  opacity: 0.8;
  filter: Alpha(Opacity=80);
}

.ui-widget-shadow {
  margin: -7px 0 0 -7px;
  padding: 7px;
  background: #cccccc url("images/ui-bg_flat_30_cccccc_40x100.829cfcaee493.png") 50% 50% repeat-x;
  opacity: 0.6;
  filter: Alpha(Opacity=60);
  border-radius: 8px;
}

/** BEGIN CHOSEN PLUGIN **/
/* @group Base */
.chzn-container {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 13px;
  zoom: 1;
  *display: inline;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.chzn-container .chzn-drop {
  position: absolute;
  top: 100%;
  left: -9999px;
  z-index: 1010;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #aaa;
  border-top: 0;
  background: #fff;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
}

.chzn-container.chzn-with-drop .chzn-drop {
  left: 0;
}

.chzn-container a {
  cursor: pointer;
}

/* @end */
/* @group Single Chosen */
.chzn-container-single .chzn-single {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 0 0 0 8px;
  height: 23px;
  border: 1px solid #aaa;
  border-radius: 5px;
  background-color: #fff;
  background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
  background: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background: linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
  background-clip: padding-box;
  box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
  color: #444;
  text-decoration: none;
  white-space: nowrap;
  line-height: 24px;
}

.chzn-container-single .chzn-default {
  color: #999;
}

.chzn-container-single .chzn-single span {
  display: block;
  overflow: hidden;
  margin-right: 26px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chzn-container-single .chzn-single-with-deselect span {
  margin-right: 38px;
}

.chzn-container-single .chzn-single abbr {
  position: absolute;
  top: 6px;
  right: 26px;
  display: block;
  width: 12px;
  height: 12px;
  background: url("images/chosen-sprite.25b9acb1b504.png") -42px 1px no-repeat;
  font-size: 1px;
}

.chzn-container-single .chzn-single abbr:hover {
  background-position: -42px -10px;
}

.chzn-container-single.chzn-disabled .chzn-single abbr:hover {
  background-position: -42px -10px;
}

.chzn-container-single .chzn-single div {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 18px;
  height: 100%;
}

.chzn-container-single .chzn-single div b {
  display: block;
  width: 100%;
  height: 100%;
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat 0px 2px;
}

.chzn-container-single .chzn-search {
  position: relative;
  z-index: 1010;
  margin: 0;
  padding: 3px 4px;
  white-space: nowrap;
}

.chzn-container-single .chzn-search input[type=text] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 1px 0;
  padding: 4px 20px 4px 5px;
  width: 100%;
  height: auto;
  outline: 0;
  border: 1px solid #aaa;
  background: white url("images/chosen-sprite.25b9acb1b504.png") no-repeat 100% -20px;
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat 100% -20px, -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat 100% -20px, -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat 100% -20px, -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat 100% -20px, -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat 100% -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
  font-size: 1em;
  font-family: sans-serif;
  line-height: normal;
  border-radius: 0;
}

.chzn-container-single .chzn-drop {
  margin-top: -1px;
  border-radius: 0 0 4px 4px;
  background-clip: padding-box;
}

.chzn-container-single.chzn-container-single-nosearch .chzn-search {
  position: absolute;
  left: -9999px;
}

/* @end */
/* @group Results */
.chzn-container .chzn-results {
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  margin: 0 4px 4px 0;
  padding: 0 0 0 4px;
  max-height: 240px;
  -webkit-overflow-scrolling: touch;
}

.chzn-container .chzn-results li {
  display: none;
  margin: 0;
  padding: 5px 6px;
  list-style: none;
  line-height: 15px;
}

.chzn-container .chzn-results li.active-result {
  display: list-item;
  cursor: pointer;
}

.chzn-container .chzn-results li.disabled-result {
  display: list-item;
  color: #ccc;
  cursor: default;
}

.chzn-container .chzn-results li.highlighted {
  background-color: #3875d7;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
  background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
  background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
  background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
  background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
  color: #fff;
}

.chzn-container .chzn-results li.no-results {
  display: list-item;
  background: #f4f4f4;
}

.chzn-container .chzn-results li.group-result {
  display: list-item;
  font-weight: bold;
  cursor: default;
}

.chzn-container .chzn-results li.group-option {
  padding-left: 15px;
}

.chzn-container .chzn-results li em {
  font-style: normal;
  text-decoration: underline;
}

/* @end */
/* @group Multi Chosen */
.chzn-container-multi .chzn-choices {
  position: relative;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto !important;
  height: 1%;
  border: 1px solid #aaa;
  background-color: #fff;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
  background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
  cursor: text;
}

.chzn-container-multi .chzn-choices li {
  float: left;
  list-style: none;
}

.chzn-container-multi .chzn-choices li.search-field {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

.chzn-container-multi .chzn-choices li.search-field input[type=text] {
  margin: 1px 0;
  padding: 5px;
  height: 15px;
  outline: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none;
  color: #666;
  font-size: 100%;
  font-family: sans-serif;
  line-height: normal;
  border-radius: 0;
}

.chzn-container-multi .chzn-choices li.search-field .default {
  color: #999;
}

.chzn-container-multi .chzn-choices li.search-choice {
  position: relative;
  margin: 3px 0 3px 5px;
  padding: 3px 20px 3px 5px;
  border: 1px solid #aaa;
  border-radius: 3px;
  background-color: #e4e4e4;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
  background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-clip: padding-box;
  box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
  color: #333;
  line-height: 13px;
  cursor: default;
}

.chzn-container-multi .chzn-choices li.search-choice .search-choice-close {
  position: absolute;
  top: 4px;
  right: 3px;
  display: block;
  width: 12px;
  height: 12px;
  background: url("images/chosen-sprite.25b9acb1b504.png") -42px 1px no-repeat;
  font-size: 1px;
}

.chzn-container-multi .chzn-choices li.search-choice .search-choice-close:hover {
  background-position: -42px -10px;
}

.chzn-container-multi .chzn-choices li.search-choice-disabled {
  padding-right: 5px;
  border: 1px solid #ccc;
  background-color: #e4e4e4;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
  background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
  color: #666;
}

.chzn-container-multi .chzn-choices li.search-choice-focus {
  background: #d4d4d4;
}

.chzn-container-multi .chzn-choices li.search-choice-focus .search-choice-close {
  background-position: -42px -10px;
}

.chzn-container-multi .chzn-results {
  margin: 0;
  padding: 0;
}

.chzn-container-multi .chzn-drop .result-selected {
  display: list-item;
  color: #ccc;
  cursor: default;
}

/* @end */
/* @group Active  */
.chzn-container-active .chzn-single {
  border: 1px solid #5897fb;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.chzn-container-active.chzn-with-drop .chzn-single {
  border: 1px solid #aaa;
  -moz-border-radius-bottomright: 0;
  border-bottom-right-radius: 0;
  -moz-border-radius-bottomleft: 0;
  border-bottom-left-radius: 0;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
  background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
  background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
  background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
  background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
  box-shadow: 0 1px 0 #fff inset;
}

.chzn-container-active.chzn-with-drop .chzn-single div {
  border-left: none;
  background: transparent;
}

.chzn-container-active.chzn-with-drop .chzn-single div b {
  background-position: -18px 2px;
}

.chzn-container-active .chzn-choices {
  border: 1px solid #5897fb;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.chzn-container-active .chzn-choices li.search-field input[type=text] {
  color: #111 !important;
}

/* @end */
/* @group Disabled Support */
.chzn-disabled {
  opacity: 0.5 !important;
  cursor: default;
}

.chzn-disabled .chzn-single {
  cursor: default;
}

.chzn-disabled .chzn-choices .search-choice .search-choice-close {
  cursor: default;
}

/* @end */
/* @group Right to Left */
.chzn-rtl {
  text-align: right;
}

.chzn-rtl .chzn-single {
  overflow: visible;
  padding: 0 8px 0 0;
}

.chzn-rtl .chzn-single span {
  margin-right: 0;
  margin-left: 26px;
  direction: rtl;
}

.chzn-rtl .chzn-single-with-deselect span {
  margin-left: 38px;
}

.chzn-rtl .chzn-single div {
  right: auto;
  left: 3px;
}

.chzn-rtl .chzn-single abbr {
  right: auto;
  left: 26px;
}

.chzn-rtl .chzn-choices li {
  float: right;
}

.chzn-rtl .chzn-choices li.search-field input[type=text] {
  direction: rtl;
}

.chzn-rtl .chzn-choices li.search-choice {
  margin: 3px 5px 3px 0;
  padding: 3px 5px 3px 19px;
}

.chzn-rtl .chzn-choices li.search-choice .search-choice-close {
  right: auto;
  left: 4px;
}

.chzn-rtl.chzn-container-single-nosearch .chzn-search,
.chzn-rtl .chzn-drop {
  left: 9999px;
}

.chzn-rtl.chzn-container-single .chzn-results {
  margin: 0 0 4px 4px;
  padding: 0 4px 0 0;
}

.chzn-rtl .chzn-results li.group-option {
  padding-right: 15px;
  padding-left: 0;
}

.chzn-rtl.chzn-container-active.chzn-with-drop .chzn-single div {
  border-right: none;
}

.chzn-rtl .chzn-search input[type=text] {
  padding: 4px 5px 4px 20px;
  background: white url("images/chosen-sprite.25b9acb1b504.png") no-repeat -30px -20px;
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat -30px -20px, -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat -30px -20px, -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat -30px -20px, -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat -30px -20px, -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
  background: url("images/chosen-sprite.25b9acb1b504.png") no-repeat -30px -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
  direction: rtl;
}

.chzn-rtl.chzn-container-single .chzn-single div b {
  background-position: 6px 2px;
}

.chzn-rtl.chzn-container-single.chzn-with-drop .chzn-single div b {
  background-position: -12px 2px;
}

/* @end */
/* @group Retina compatibility */
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
  .chzn-rtl .chzn-search input[type=text],
  .chzn-container-single .chzn-single abbr,
  .chzn-container-single .chzn-single div b,
  .chzn-container-single .chzn-search input[type=text],
  .chzn-container-multi .chzn-choices .search-choice .search-choice-close,
  .chzn-container .chzn-results-scroll-down span,
  .chzn-container .chzn-results-scroll-up span {
    background-image: url("images/chosen-sprite@2x.cb0d09c93b99.png") !important;
    background-size: 52px 37px !important;
    background-repeat: no-repeat !important;
  }
}
/* @end */
/** END CHOSEN PLUGIN **/