.exist-solution {
  color: #fff;
  padding: 1px 7px;
  padding-top: 0;
  background: #ff9900;
  border-radius: 20px;
  white-space: nowrap;
}

.student {
  margin: 0 2px 5px 2px;
  border: 1px solid #ddd;
  border-radius: 10px;
  padding-bottom: 5px;
  height:200px;
}

.student:hover {
  border-color: #aaa
}

.top-bg {
  background: url(/assets/img/bg-banner-3.jpg);

}

.green-white {
  background: rgb(44, 219, 17);
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(44, 219, 17, 1) 0%, rgba(255, 255, 255, 1) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(44, 219, 17, 1) 0%, rgba(255, 255, 255, 1) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(44, 219, 17, 1) 0%, rgba(255, 255, 255, 1) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2cdb11', endColorstr='#299a0b', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.green-green {

  background: rgb(44, 219, 17);
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(44, 219, 17, 1) 0%, rgba(41, 154, 11, 1) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(44, 219, 17, 1) 0%, rgba(41, 154, 11, 1) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(44, 219, 17, 1) 0%, rgba(41, 154, 11, 1) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2cdb11', endColorstr='#299a0b', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.color-example {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 1px solid #999;
  border-radius: 3px
}

.enjoyhint_skip_btn {
  width: 150px
}

.task-resolved {
  color: #fff;
  padding: 1px 7px;
  padding-top: 0;
  background: #00c400;
  border-radius: 20px;
  white-space: nowrap;
}

.return-solution {
  color: #fff;
  padding: 1px 7px;
  padding-top: 0;
  background: #910101;
  border-radius: 20px;
  white-space: nowrap;
}

.task-overdue {
  color: #fff;
  padding: 1px 7px;
  padding-top: 0;
  background: #b40300;
  border-radius: 20px;
  margin-right: 3px;
  white-space: nowrap;
}

.task-no-overdue {
  color: #fff;
  padding: 1px 7px;
  padding-top: 0;
  background: #337ab7;
  border-radius: 20px;
  margin-right: 3px;
  white-space: nowrap;
}

.user-info .input-group {
  width: 100%
}

.user-info .input-group-addon {
  width: 150px
}

.w100 {
  width: 100%
}

.note-cnt {
  border-top: 1px solid #bbb;
  padding: 5px 0;
  margin-top: 5px
}

.task-content {
  border-left: 3px solid #bbb;
  background: #f5f5f5;
  padding: 10px;
  border-radius: 3px
}

.task {
  white-space: pre-line;
}

.home-work-item {
  border: 3px solid #ddd;
  border-radius: 7px;
  padding: 20px;
  margin-top: 20px;
  margin-bottom: 20px
}

.lesson_name {
  font-size: 130%;
  border-bottom: 1px solid #bbb
}

.home-work-btn.add-home-work:before,
.home-work-btn.add-home-work2:before {}

.home-work-btn.edit-home-work:before,
.home-work-btn.edit-home-work2:before {}

.home-work-btn.edit-home-work {
  content: "E";
  width: 120px;
  height: 30px
}

.table .row.head {
  font-weight: bold
}

.photo {
  width: 80%;
  height: 200px;
  border: 1px solid #aaa;
  border-radius: 3px;
  margin-bottom: 20px;
  background-size: cover;
}

.hw-box {
  border: 1px solid #bbb;
  border-radius: 10px;
  padding: 15px
}

.hw-box h4 {
  margin-top: 0;
  padding-bottom: 10px;
  border-bottom: 1px solid #999
}

.tt-plus:hover .hint {
  display: block
}

.hint {
  display: none;
  position: absolute;
  left: 15px;
  width: 140px;
  z-index: 10;
  background: #ffa;
  padding: 10px;
  border-radius: 5px;
  border: 1px solid #bbb
}

.tt-plus {
  position: relative;
  min-width:1000px
}

.virtual-button {
  height: 9px;
  cursor: pointer
}

.virtual-button:hover {
  background: #444;
}

.btn-timetable-plus {
  position: absolute;
  right: 0;
  display: none
}

.lesson-container {
  position: relative
}

.lesson:hover .btn-timetable-plus {
  display: block
}

.lesson {
  z-index: 10;
  opacity: 0.7;
  text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff
}

tr:hover .lesson,
.lesson:hover {
  opacity: 0.9;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, .5)
}

.lesson:hover .edit-timetable-plus
{z-index:100}

.col-day,
.lesson {
  width: 145px
}

.tt-plus .active td {
  border-top: 1px solid red !important
}

.tt-plus tr:hover {
  background: #eee
}

.times strong {
  top: -13px
}

.times small {
  top: -9px
}

.times * {
  background: #fff;
  position: relative;
  border-right: 1px solid #bbb;
  border-left: 1px solid #bbb;
  padding: 3px;
  width: 60px;
  display: inline-block;
  border-radius: 100px;
}

.times {
  text-align: center;
}

.lesson {
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
}

.tt-plus td,
.tt-plus th {
  border: 1px solid #ddd;
  border-top: 0;
}

.tt-plus td {
  height: 7px;
  padding: 0;
  margin: 0;
  vertical-align: top;
}

.tt-plus tr.active td {}

.tt-plus th {
  text-align: center
}

.tt-plus {
  margin: 20px 0px
}

.today-tt-day h4 {
  color: red
}

.tt-day.today-tt-day {
  background: #fffcf2;
  border: 3px solid #bbb
}

.tt-day h4 {
  margin-top: 0
}

.tt-day {
  border: 1px solid #ccc;
  padding: 20px;
  margin: 20px 0;
  border-radius: 7px;
  opacity: 0.6
}

.active-tt-day {
  box-shadow: 5px 5px 15px rgba(0, 0, 0, .5);
  opacity: 1
}

.myModal .free-input .for-btn {
  width: 30px;
  padding: 0;
  border: 0
}

.myModal .free-input .for-btn .btn {
  width: 32px
}

.myModal .free-input .input-group-addon {
  padding: 1px
}

.myModal .free-input .input-group-addon input {
  text-align: center;
  height: 30px
}

.avatar {
  border: 1px solid #bbb;
  box-shadow: inset 2px 2px 10px rgba(0, 0, 0, .5);
  width: 96px;
  height: 96px;
  margin: 10px auto;
  border-radius: 96px;
  background-size: 100%;
}

.btn-hidden,
.timetable .input-group.active:hover .btn-hidden {
  display: none
}

.timetable .input-group .form-control,
.timetable .input-group.active:hover .form-control {
  border-radius: 0 4px 4px 0 !important
}

.timetable .input-group:hover .form-control {
  border-radius: 0 !important
}

.timetable .input-group:hover .btn-hidden {
  display: table-cell
}

.red {
  color: red
}

.timetable .glyphicon {
  top: 0
}

.vert {
  margin-top: 0;
  margin-bottom: 0px;
  padding-top: 20px;
  display: inline-block;
  width: 1.5em;
  line-height: 1.5;
}

.vert span:after {
  content: "";
  border: 1px solid transparent;
  float: left;
  margin-top: 100%;
}

.upper-case {
  text-transform: uppercase;
}

.vert span {
  display: inline-block;
  white-space: nowrap;
  position: absolute;
  font-size: 1em;
  font-weight: bold;
  -webkit-transform: translate(0, 100%) rotate(-90deg);
  -moz-transform: translate(0, 100%) rotate(-90deg);
  -ms-transform: translate(0, 100%) rotate(-90deg);
  -o-transform: translate(0, 100%) rotate(-90deg);
  transform: translate(0, 100%) rotate(-90deg);
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  -o-transform-origin: 0 0;
  transform-origin: 0 0;
}

.timetable {
  border: 1px solid #bbb;
  margin: 20px 0 0 0;
  padding: 0 10px;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  border-radius: 3px;
  margin-bottom: 20px;
}

.one-col {
  padding-bottom: 20px
}

.one-day:last-child {
  padding: 0;
  border: 0
}

.one-day {
  border-bottom: 2px dashed #eee;
  padding-bottom: 15px;
}

.one-col:last-child {
  border-left: 2px dashed #eee
}

.vector-list {
  list-style: none;
  margin: 0;
  padding: 0 20px
}

.vector-list>li {
  margin: 0 0 20px 0;
  border: 1px solid #bbb;
  border-radius: 5px;
  padding: 10px
}

.vector-list h4 {
  margin-top: 0
}

#upload_form {
  visibility: hidden
}

.myModal .input-group.w100 .input-group-addon {
  display: block;
  width: 100%;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  text-align: left;
  border-right-color: rgb(204, 204, 204);
  border-right-style: solid;
  border-right-width: 1px;
}

.myModal .input-group.w100 .form-control {
  border-radius: 0 0 4px 4px !important;
}

.myModal .input-group {
  margin: 5px 0
}

.input-group {
  margin-bottom: 5px
}

.check-container {
  max-height: 300px;
  padding: 6px;
  overflow-y: auto
}

.myModal .check-container label {
  font-weight: normal;
  margin-bottom: 0;
  display: block;
}

.myModal .check-container label:hover {
  background: #eee;
}

.myModal input[type=checkbox] {
  margin-right: 10px
}

.myModal .input-group {
  width: 100%
}

.myModal .input-group-addon {
  width: 160px
}

.loop_label {
  margin-left: 10px;
  padding-left: 10px;
  border-left: 3px solid #aaa;
}

.loop_label div {
  margin-left: 50px
}

.loop_label:before {
  display: block;
  float: left;
  font-size: 40px;
  color: #aaa;
  content: "\e030";
  font-family: 'Glyphicons Halflings';
}

/* ******************************** LOADER ****************************************** */
/* WebKit и Opera */
@-webkit-keyframes spinner {
  from {
    -webkit-transform: rotateY(0deg);
  }

  to {
    -webkit-transform: rotateY(-360deg);
  }
}

/* Все остальные браузеры */
@keyframes spinner {
  from {
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    transform: rotateY(0deg);
  }

  to {
    -moz-transform: rotateY(-360deg);
    -ms-transform: rotateY(-360deg);
    transform: rotateY(-360deg);
  }
}

#spinner {
  width: 450px;
  height: 100px;
  background: url('/assets/img/smartj.png') no-repeat center center;
  background-size: contain;
  text-align: center;
  color: #fff;
  margin: 0 auto;
  -webkit-animation-name: spinner;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-duration: 2s;
  animation-name: spinner;
  /* указываем на ключевые кадры анимации с названием "spinner" */
  animation-timing-function: linear;
  /* функция синхронизации, с помощью которой будут происходить преобразования */
  animation-iteration-count: infinite;
  /* количество повторов анимации. "infinite" - значит бесконечно */
  animation-duration: 2s;
  /* длительность анимации */
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  transform-style: preserve-3d;
  /* указываем что это 3D преобразование */
}