.form {
  background-color: #f2f5fd;
  background-image: -webkit-linear-gradient(left, #F2F5FD 0%, #F2FBFE 75%, #F2FBFE 100%);
  background-image: linear-gradient(to right, #F2F5FD 0%, #F2FBFE 75%, #F2FBFE 100%);
  padding: 10px;
  font-family: "Source Sans Pro", sans-serif; }
  .form:after {
    content: "";
    display: table;
    clear: both; }
  .form ::-webkit-input-placeholder, .form :-moz-placeholder, .form ::-moz-placeholder, .form :-ms-input-placeholder, .form ::input-placeholder {
    color: #aab0b7;
    text-overflow: ellipsis;
    font-family: inherit; }
  .form img {
    max-width: 100%;
    height: auto; }
  .form .btn, .form .followbtn {
    margin: 0 auto; }
  .form .error-info {
    display: block;
    position: relative;
    margin-top: 11px;
    padding: 12px;
    background: #d00246;
    color: #fff; }
    .form .error-info:before {
      width: 0;
      height: 0;
      position: absolute;
      left: 14px;
      top: -9px;
      border-style: solid;
      border-width: 9px 0 9px 11px;
      border-color: transparent transparent transparent #d00246;
      content: ''; }
  .form .additional-info {
    display: block;
    font-size: 16px;
    color: #666e7a; }
    .form .additional-info .nowrap {
      white-space: nowrap; }
    .form .additional-info kbd {
      display: inline-block;
      padding: 0 5px;
      background: #7b8594;
      color: #fff;
      font-size: 14px;
      line-height: 21px;
      border-radius: 2px; }
  .form-row {
    margin: 10px 0;
    clear: both; }
    .form-row:after {
      content: "";
      display: table;
      clear: both; }
  .form-centered-btn {
    text-align: center; }
  .form-answer .btn, .form-answer .followbtn {
    margin-right: 5px;
    margin-bottom: 8px; }
    .form-answer .btn:last-child, .form-answer .followbtn:last-child {
      margin-right: 0; }
  .form-required {
    color: #d00246; }
  .form-optional {
    font-size: 16px;
    color: #666e7a; }
  .form input[disabled], .form input[disabled]:hover, .form input[disabled]:active, .form input[disabled]:focus, .form input[disabled] + label:before {
    background: #d5d8db;
    color: #666e7a;
    border-color: #b2b6bc; }
  .form-text label, .form-textarea label, .form-select label {
    display: block;
    padding: 8px 20px 8px 12px;
    line-height: 26px;
    font-size: 20px;
    font-family: inherit;
    color: #393939; }
  .form-text input, .form-textarea input, .form-select input, .form-text textarea, .form-textarea textarea, .form-select textarea, .form-text select, .form-textarea select, .form-select select {
    display: block;
    width: 100%;
    max-width: 100%;
    min-height: 32px;
    padding: 0 12px;
    line-height: 28px;
    font-size: 18px;
    vertical-align: top;
    font-family: inherit;
    color: #80858a;
    font-weight: 400;
    text-align: left;
    background: #fff;
    border: none;
    border-bottom: 2px solid #dae1e3; }
    .form-text input.is-touched, .form-textarea input.is-touched, .form-select input.is-touched, .form-text textarea.is-touched, .form-textarea textarea.is-touched, .form-select textarea.is-touched, .form-text select.is-touched, .form-textarea select.is-touched, .form-select select.is-touched {
      border-bottom-color: #aab0b7; }
    .form-text input:hover, .form-textarea input:hover, .form-select input:hover, .form-text textarea:hover, .form-textarea textarea:hover, .form-select textarea:hover, .form-text select:hover, .form-textarea select:hover, .form-select select:hover {
      border-bottom-color: #aae6ff; }
    .form-text input:active, .form-textarea input:active, .form-select input:active, .form-text input:focus, .form-textarea input:focus, .form-select input:focus, .form-text textarea:active, .form-textarea textarea:active, .form-select textarea:active, .form-text textarea:focus, .form-textarea textarea:focus, .form-select textarea:focus, .form-text select:active, .form-textarea select:active, .form-select select:active, .form-text select:focus, .form-textarea select:focus, .form-select select:focus {
      color: #282d4d;
      border-bottom-color: #00beff;
      outline: none; }
    .form-text input[placeholder], .form-textarea input[placeholder], .form-select input[placeholder], .form-text textarea[placeholder], .form-textarea textarea[placeholder], .form-select textarea[placeholder], .form-text select[placeholder], .form-textarea select[placeholder], .form-select select[placeholder] {
      text-overflow: ellipsis; }
  .form-text textarea, .form-textarea textarea, .form-select textarea {
    width: 100%;
    height: 200px;
    padding: 8px 12px; }
  .form-text input, .form-textarea input, .form-select input, .form-text select, .form-textarea select, .form-select select {
    height: 44px;
    line-height: 42px; }
	.form-text select, .form-textarea select, .form-select select {
		cursor: pointer; }
  .form-text-valid {
    position: relative; }
    .form-text-valid input[type=text], .form-text-valid input[type=email] {
      padding-right: 35px;
      border-bottom-color: #666e7a;
      background: #fff url("assets/images/valid.svg") no-repeat 98% 10px;
      background-size: 24px 24px; }
  .form-text-invalid {
    position: relative; }
    .form-text-invalid input:before {
      display: block;
      width: 20px;
      height: 20px;
      position: absolute;
      right: 12px;
      bottom: 14px;
      content: '';
      border-radius: 20px;
      background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTU5LjUsNDFjLTYuNiwwLTEyLDUuNC0xMiwxMmMwLDYuNiw1LjQsMTIsMTIsMTJzMTItNS40LDEyLTEyQzcxLjUsNDYuNCw2Ni4xLDQxLDU5LjUsNDF6IE02NS4yLDUwLjZsLTcsNy4yYy0wLjEsMC4xLTAuMSwwLjEtMC4yLDAuMWgwYzAsMCwwLDAtMC4xLDAuMWMtMC4xLDAtMC4yLDAuMS0wLjQsMC4xYy0wLjEsMC0wLjIsMC0wLjQtMC4xbC0wLjEtMC4xYzAsMC0wLjEsMC0wLjItMC4xbC0wLjEtMC4xbC0zLjItMy4zYy0wLjItMC4yLTAuMy0wLjQtMC4zLTAuN2MwLTAuMywwLjEtMC41LDAuMy0wLjdjMC40LTAuMywxLTAuMywxLjQsMGwyLjUsMi42bDYuMi02LjRjMC40LTAuNCwxLTAuNCwxLjQsMGMwLjIsMC4yLDAuMywwLjQsMC4zLDAuN0M2NS41LDUwLjEsNjUuNCw1MC40LDY1LjIsNTAuNnoiLz48cGF0aCBpZD0idGVzdCIgZmlsbD0iIzAxQzM1QyIgZD0iTTEyLDBDNS40LDAsMCw1LjQsMCwxMmMwLDYuNiw1LjQsMTIsMTIsMTJjNi42LDAsMTItNS40LDEyLTEyQzI0LDUuNCwxOC42LDAsMTIsMHogTTE3LjcsOS42bC03LDcuMmMtMC4xLDAuMS0wLjEsMC4xLTAuMiwwLjFoMGMwLDAsMCwwLTAuMSwwLjFjLTAuMSwwLTAuMiwwLjEtMC40LDAuMWMtMC4xLDAtMC4yLDAtMC40LTAuMWwtMC4xLTAuMWMwLDAtMC4xLDAtMC4yLTAuMWwtMC4xLTAuMWwtMy4yLTMuM0M2LjEsMTMuMiw2LDEzLDYsMTIuN2MwLTAuMywwLjEtMC41LDAuMy0wLjdjMC40LTAuMywxLTAuMywxLjQsMGwyLjUsMi42bDYuMi02LjRjMC40LTAuNCwxLTAuNCwxLjQsMEMxNy45LDguNCwxOCw4LjYsMTgsOC45QzE4LDkuMSwxNy45LDkuNCwxNy43LDkuNnoiLz48L3N2Zz4=); }
    .form-text-invalid input[type=text], .form-text-invalid input[type=email] {
      padding-right: 35px;
      border: 2px solid #d00246;
      background: #fff url("assets/images/invalid.svg") no-repeat 98% 10px;
      background-size: 24px 24px; }
  .form-select option {
    color: #282d4d;
    border: none;
    line-height: 28px; }
  .form-checkbox label, .form-radio label {
    display: block;
    position: relative;
    cursor: pointer;
    line-height: 28px;
    font-size: 18px;
    font-family: inherit;
    color: #282d4d;
    vertical-align: top;
    padding-left: 30px; }
    .form-checkbox label:before, .form-radio label:before {
      display: inline-block;
      vertical-align: top;
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      margin-top: 4px;
      margin-right: 12px;
      width: 20px;
      height: 20px;
      border: 2px solid #b2b6bc;
      -webkit-transition: border-color 100ms;
      transition: border-color 100ms;
      background: #FFF; }
    .form-checkbox label:hover:before, .form-radio label:hover:before {
      border-color: #666e7a; }
    .form-checkbox label .shape-tick, .form-radio label .shape-tick {
      display: none;
      position: absolute;
      left: 4px;
      top: 9px;
      fill: #00beff; }
  .form-checkbox input, .form-radio input {
    position: absolute;
    visibility: hidden; }
  .form-checkbox input:checked + label:before, .form-radio input:checked + label:before {
    border-color: #00beff; }
  .form-checkbox input:checked + label:hover:before, .form-radio input:checked + label:hover:before {
    border-color: #00a8e2;
    background-position: -22px center; }
  .form-checkbox input:checked + label .shape-tick, .form-radio input:checked + label .shape-tick {
    display: inline-block; }
  .form-radio label:before {
    border-radius: 20px; }
  .form-radio .shape-radio {
    display: none;
    width: 8px;
    height: 8px;
    position: absolute;
    left: 6px;
    top: 10px;
    background: #00a8e2;
    border-radius: 8px; }
  .form-radio input:checked + label .shape-radio {
    display: inline-block; }
  .form-text-invalid label,
  .form-checkbox-invalid label,
  .form-radio-invalid label {
    color: #d00246; }
  .form-checkbox-invalid label:before,
  .form-checkbox-invalid label:hover, .form-radio-invalid label:before,
  .form-radio-invalid label:hover {
    border-color: #d00246 !important; }
  .form-checkbox-invalid .shape-tick, .form-radio-invalid .shape-tick {
    fill: #d00246 !important; }
  .form-checkbox-invalid .shape-radio, .form-radio-invalid .shape-radio {
    background: #d00246 !important; }
  .form-result {
    margin-top: 100px;
    padding: 38px;
    font-size: 18px;
    color: #40444a;
    text-align: center;
    background: #f2fbfe; }
    .form-result .sent-icon {
      display: block;
      width: 48px;
      height: 38px;
      margin: 0 auto 21px auto;
      background: url("assets/images/sent.svg") no-repeat center center; }
    .form-result .big-text {
      display: block;
      margin-top: 11px;
      font-size: 30px; }
  @media (min-width: 480px) {
    .form {
      padding: 20px; } }
  @media (min-width: 640px) {
    .form {
      padding: 31px 83px 34px 20px; }
      .form-row {
        margin: 35px 0; }
      .form-text label, .form-textarea label, .form-select label {
        float: left;
        width: 40%;
        text-align: right;
        padding-left: 0; }
      .form-text input, .form-textarea input, .form-select input, .form-text textarea, .form-textarea textarea, .form-select textarea, .form-text select, .form-textarea select, .form-select select {
        float: left;
        width: 60%;
        max-width: 60%; }
      .form-text-invalid .error-info {
        clear: left;
        float: right;
        width: 60%; }
      .form-radio + .form-radio, .form-checkbox + .form-checkbox, .form-radio + .form-checkbox, .form-checkbox + .form-radio, .form-radio + .form-radio {
        margin-top: -25px; } }
  @media (min-width: 960px) {
    .form-text label, .form-textarea label, .form-select label {
      width: 30%; }
    .form-text input, .form-textarea input, .form-select input, .form-text textarea, .form-textarea textarea, .form-select textarea, .form-text select, .form-textarea select, .form-select select {
      width: 70%;
      max-width: 70%; }
    .form-text-invalid .error-info {
      width: 70%; } }

.form.view-article {
  width: 395px;
  padding: 26px 48px 32px 48px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background: #4b5565;
  -webkit-border-radius: 3px;
  -webkit-border-top-left-radius: 17.5px;
  -moz-border-radius: 3px;
  -moz-border-radius-topleft: 17.5px;
  border-radius: 3px;
  border-top-left-radius: 17.5px; }
  .form.view-article .close-btn {
    width: 15px;
    height: 15px;
    position: absolute;
    left: 10px;
    top: 10px;
    text-indent: -9999px;
    background: url("assets/images/close.svg") no-repeat center center; }
  .form.view-article .form-row {
    margin: 28px 0; }
    .form.view-article .form-row:first-child {
      margin-top: 0; }
    .form.view-article .form-row .form-optional {
      color: #c6cfde; }
  .form.view-article .form-centered-btn {
    margin-bottom: 0; }
  .form.view-article label {
    padding: 0 20px 8px 12px;
    color: #fff; }
  .form.view-article textarea {
    height: 92px; }
  .form.view-article label, .form.view-article input, .form.view-article textarea {
    width: 100%;
    max-width: 100%;
    text-align: left; }
  @media (max-width: 390px) {
    .form.view-article {
      padding: 20px;
      -webkit-border-radius: 0;
      -moz-border-radius: 0;
      border-radius: 0; } }

/* FOR IE8- */
.senile-ie .form input {
	visibility: visible !important;
}

.senile-ie .form label:before {
	display: none;
}

.senile-ie .form .form-checkbox input[type=radio],
.senile-ie .form .form-radio input[type=radio],
.senile-ie .form .form-checkbox input[type=checkbox], .senile-ie .form .form-radio input[type=checkbox] {
	margin-top: 7px;
}

.senile-ie .form .close-btn {
	background-image: url("assets/images/close.png") !important;
}


/* file + date */

.form-file {
	position: relative; }
	
	.form-file input {
		display: none;
	}
	.form-file label {
		position: relative;
		padding-bottom: 52px;
		z-index: 1;
	}

	.form-file label:before {
		width: 100%;
		height: 100%;
		position: absolute;
		left: 0;
		bottom: 0;
		content: '';
		text-align: left;
		height: 44px;
		padding: 0 12px;
		border-bottom: solid 2px #dae1e3;
		cursor: pointer;
		}
	.form-file label:hover:before {
			border-color: #aae6ff;
		}
	.form-file.form-file-invalid label:before {
		border: 2px solid #d00246;
	}
	.form-file.form-file-invalid label {
		color: #d00246;
	}
	.form-file label:after {
		position: absolute;
		right: 5px;
		bottom: 6px;
		z-index: 100;
		padding: 8px 12px;
		color: #fff;
		line-height: 1;
		font-size: 16px;
		content: 'Vyberte soubor';
		background: #0289f1;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		cursor: pointer;
	}
	.form-file label:hover:after {
		background: #0274cc;
	}
	.form-file-text {
		position: absolute;
		left: 0;
		bottom: 2px;
		margin-left: 0;
		font-size: 18px;
		background: #fff;
		border: none;
		height: 42px;
		line-height: 42px;
		width: 100%;
		padding: 0 12px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	@media (min-width: 640px) {
		.form-file label {
			padding-bottom: 10px;
		}
		.form-file label:before {
			width: 233.333%;
			left: 100%;
			top: 0px;
			bottom: auto;
		}
		.form-file label:after {
			right: -233%;
			right: calc(-233% + 5px);
			top: 5px;
			bottom: auto;
		}
		.form-file-text {
			left: 30%;
			width: 70%;
			top: 0;
			bottom: auto;
		}
	}




.form-date {
	position: relative; }
	.form-date input::-webkit-inner-spin-button,
	.form-date input::-webkit-calendar-picker-indicator {
		display: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none; }
	.form-date input[type='date'] {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none; }
	.form-date-holder {
		position: relative; }
	.form-date .shape-calendar {
		position: absolute;
		right: 0px;
		top: 0px; }
.form-date.form-date-invalid label {
	color: #d00246;
}
.form-date-invalid input {
	border: 2px solid #d00246;
}
.form-time-holder {
	position: absolute;
	left: 110px;
	top: 0;
	width: 100px;
}
.form-date-invalid .form-time-holder {
}
.form-date .form-time-holder select {
	padding-left: 0px;
	padding-right: 0px;
	width: 24px;
	max-width: 24px;
	float: left;
	position: relative;
	z-index: 1;
	text-align: center;
	border-width: 0;
	height: 42px;
	line-height: 41.5px;
}
.form-date .form-time-holder select:active,
.form-date .form-time-holder select:focus,
.form-date .form-time-holder select:hover {
	border-width: 2px;
	height: 44px;
	line-height: 43px;
}
.form-date-invalid .form-time-holder select {
	border-bottom-color: #d00246;
	margin-top: 4px;
	height: 38px;
	line-height: 38px;
}
.form-date-invalid .form-time-holder select:active,
.form-date-invalid .form-time-holder select:focus,
.form-date-invalid .form-time-holder select:hover {
	margin-top: 4px;
	height: 40px;
	line-height: 38px;
}
.form-date-invalid .form-date-holder input {
	background: -webkit-linear-gradient(0deg, white, white);
	background: -o-linear-gradient(0deg, white, white);
	background: -moz-linear-gradient(0deg, white, white);
	background: linear-gradient(0deg, white, white);
}
.form-date .form-time-holder select.form-time-holder-gap {
	float: left;
	margin-right: 0;
	width: 10px;
	max-width: 10px;
	border: none !important;
	margin-top: 2px;
	height: 38px;
	line-height: 38px;
}
.form-date-invalid .form-time-holder select.form-time-holder-gap {
	margin-top: 3px;
}

.form-date .form-time-holder select.form-time-hour {
}


.form-date .form-date-clear {
	position: absolute;
	right: 5px;
	top: 5px;
	z-index: 100;
	padding: 8px 12px;
	color: #fff;
	line-height: 1;
	font-size: 16px;
	background: #0289f1;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	cursor: pointer; }
.form-date .form-date-clear {
	display: none; }
.form-date .form-date-clear:hover {
	background: #0274cc; }


/* calendar */

.shape-calendar {
	width: 36px;
	height: 44px;
	padding-top: 9px;
}
.shape-calendar-path {
	fill: #0289F1;
	fill-rule: evenodd;
}
.form-date-invalid .shape-calendar-path {
	fill: #d00246;
}

.form-date .calendar-form {
	position: absolute;
	right: 0;
	top: 86px;
	display: none;
}

.calendar-form {
	clear: both;
	width: 100%;
	z-index: 100;
	top: 100%;
	line-height: 1;
	-webkit-box-shadow: 0px 0px 10px 0px rgba(170, 170, 170, 0.5);
	-moz-box-shadow:    0px 0px 10px 0px rgba(170, 170, 170, 0.5);
	box-shadow:         0px 0px 10px 0px rgba(170, 170, 170, 0.5);
}

.calendar-form ul {list-style-type: none;}


/* Month header */
.calendar-form .header {
	background: #0289f1;
	position: relative;
}

/* Month list */
.calendar-form .header ul {
	margin: 0;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: space-around;
}

.calendar-form .header ul li {
	color: #FFF;
	display: inline-block;
}

.calendar-form .header .today {
	padding: 0;
	position: relative;
	font-size: 16px;
	line-height: 30px;
	cursor: pointer;
}

.calendar-form .header .month, .calendar-form .header .year {
	position: relative;
}
.calendar-form .header .month {
}
.calendar-form .header .year {
	padding-right: 24px;
}
.form-date select::-ms-expand {
	display: none;
}
.calendar-form .header .select select {
	background: none;
	width: 100%;
	max-width: 100%;
	color: #FFF;
	border-bottom: none;
	font-size: 16px;
	max-height: 20px;
	line-height: 20px;
	background-image: url(/program/detail15/assets/images/arrow-down-white.png);
	background-position: right center;
	background-repeat: no-repeat;
	padding-right: 20px;
}
.form-date select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.calendar-form .header .select select option {
	color: #000;
	background: #FFF;
}


.calendar-form .header .calendar-close {
	height: 34px;
	width: 34px;
	position: absolute;
	right: 4px;
	padding: 10px;
	top: 10px;
	cursor: pointer;
}
.calendar-form .header .calendar-close img {
	width: 14px;
	height: 14px;
	float: left;
}

/* Weekdays (Mon-Sun) */
.calendar-form .weekdays {
	margin: 0;
	padding: 10px 0;
	border-bottom: 2px solid #f0f1f2;
	background: #FFF;
}

.calendar-form .weekdays li {
	display: inline-block;
	width: 14.2857%;
	/*color: #40444a;*/
	text-align: center;
	font-size: 14px;
}

/* Days (1-31) */
.calendar-form .days {
	padding: 10px 0;
	background: #FFF;
	margin: 0;
}

.calendar-form .days li {
	list-style-type: none;
	display: inline-block;
	width: 14.2857%;
	text-align: center;
	margin-bottom: 5px;
	font-size:18px;
	/*color:#40444a;*/
	padding: 10px 0;
}
.calendar-form .days li a {
	display: block;
	text-decoration: none;
	border: none;
	margin: -10px 0;
	padding: 10px 0;
	cursor: pointer;
}

/* Highlight the "current" day */
.calendar-form .days li.today {
	font-weight: bold;
}
.calendar-form .days li.selected {
	background: #f0f0f0;
}
.calendar-form .days li.inactive {
	-moz-opacity:0.6;
	-webkit-opacity:0.6;
	filter:alpha(opacity=60);
	opacity:0.6;
}

@media (min-width: 640px) {
	.form-date .calendar-form {
		width: 70%;
		top: 44px;
	}
	.calendar-form .header .today {
		padding: 0;
	}
	.form-time-holder {
		position: absolute;
		left: calc(30% + 120px);
	}
}

