html                            { overflow: hidden; }
body                            { font: 14px 'Open Sans', arial, sans-serif; font-weight: 300; background-color: #265075; color: #606060; -webkit-tap-highlight-color: transparent; width: 100%; height: 100%; padding: 0px; margin: 0px; overflow: hidden; }
input                           { font: 14px 'Open Sans', arial, sans-serif; color: #606060; }
select                          { font: 14px 'Open Sans', arial, sans-serif; color: #606060; }
textarea                        { font: 14px 'Open Sans', arial, sans-serif; color: #606060; display: block; }
h1                              { position: relative; z-index: 2; height: 40px; margin: 0px; font-size: 20px; font-weight: normal; padding: 5px 10px 10px 10px; background-color: #265075; color: #FFFFFF; box-sizing: border-box; }
input:focus, select:focus, textarea:focus, button:focus { outline: none; }

.fl                             { float: left; }
.fr                             { float: right; }
.center                         { text-align: center; }
.body                           { background-color: #F0EFF4; height: 100vh; }

.all                            { position: absolute; width: 100%; top: 40px; -webkit-transition: all 0.3s ease-in-out; }
.insert                         { position: relative; background-color: #282F3C; padding: 10px; box-sizing: border-box; box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75); }
.insert:after                   { bottom: 100%; left: 50%; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; z-index: 3; pointer-events: none; border-bottom-color: #282F3C; border-width: 8px; margin-left: -8px; }
.insert_date                    { color: #FFFFFF; font-size: 20px; padding-bottom: 10px; height: 25px; }
.hide                           { top: -237px; -webkit-transition: all 0.3s ease-in-out; }

.textarea_full                  { width: 100%; height: 50px; border: none; margin: 0 0 10px 0; padding: 5px; font-size: 15px; box-sizing: border-box; border-radius: 5px; }
.button_green                   { background-color: #15CD8E; display: inline-block; line-height: 30px; padding: 0px 40px; margin: 0; color: #FFFFFF; cursor: pointer; border: none; border-radius: 5px; font-weight: 400; }
.button_red                     { background-color: #BC1B1B; display: inline-block; line-height: 30px; padding: 0px 40px; margin: 0; color: #FFFFFF; cursor: pointer; border: none; border-radius: 5px; font-weight: 400; }
.button_blue                    { background-color: #228BE6; display: inline-block; line-height: 30px; padding: 0px 40px; margin: 0; color: #FFFFFF; cursor: pointer; border: none; border-radius: 5px; font-weight: 400; }

label span                                  { display: inline-block; }
label span:before                           { content: ""; display: inline-block; width: 30px; height: 30px; margin-right: 15px; vertical-align: -9px; }

input[type=radio]                           { display: none; }
input[type=radio] + span:before             { background: url("../_img/radio.png"); background-size: 60px 30px; background-repeat: no-repeat; }
input[type=radio]:checked + span:before     { background-position: -30px 0; }
input[type=radio]:disabled + span:before    { background-position: -60px 0; }

input[type=checkbox]                        { display: none; }
input[type=checkbox] + span:before          { background: url("../_img/checkbox.png"); background-size: 60px 30px; background-repeat: no-repeat; }
input[type=checkbox]:checked + span:before  { background-position: -30px 0; }
input[type=checkbox]:disabled + span:before { background-position: -60px 0; }

.rec                            { animation: REC 1s infinite; }
@keyframes REC                  { 0%, 49% { background-color: #15CD8E; } 50%, 100% { background-color: #BC1B1B; } }

.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.inputfile + label {
    display: inline-block;
}

/* ------------------------------------------ Kalendář ------------------------------------------ */
table.calendar                  { width: 100%; border-collapse: collapse; position: relative; z-index: 1; }
table.calendar th               { height: 19px; text-align: center; font-weight: normal; padding-bottom: 5px; background-color: #265075; color: #FFFFFF; }
table.calendar td               { height: 50px; text-align: right; border: 2px solid #FFFFFF; padding: 5px 10px; box-sizing: border-box; position: relative; }
table.calendar td.cell-not      { background-color: #FFFFFF; }
table.calendar td.cell-act      { background-color: #F9FAFB; }
table.calendar td.cell-act:hover{ background-color: #C6DCF0; }
table.calendar td.cell-selected { background-color: #C6DCF0; }
table.calendar td.cell-today    { background-color: #E1E4E6; }
table.calendar td.cell-weekend  { }
//#E1E4E6

/* -------------------------------------------- Login ------------------------------------------- */
.login_container                            { margin: 40px auto 0 auto; max-width: 500px; }
.login_message                              { margin: 0px 20px 15px 20px; text-align: center; font-size: 16px; }
.login_error                                { margin: 25px 20px; text-align: center; font-size: 16px; padding: 10px; background-color: #F7F8FA; border: 1px solid #BBBCC2; border-radius: 7px; }
.login_main                                 { margin: 0px 20px 15px 20px; background-color: #F7F8FA; border: 1px solid #BBBCC2; border-radius: 7px; }
.login_input                                { border-bottom: 1px solid #D7D7D7; padding: 8px 15px; }
.login_input:last-child                     { border-bottom: none; }
.login_input i                              { display: block; float: left; width: 42px; margin-top: 3px; padding-left: 5px; font-size: 20px !important; box-sizing: border-box; }
.login_input div                            { overflow: hidden; }
.login_input input                          { width: 100%; vertical-align: bottom; border: none; font-size: 17px; font-weight: 300; background-color: transparent; box-sizing: border-box; }
.login_checkbox                             { margin: 0px 20px 15px 20px; color: #828282; overflow: hidden; font-size: 17px; font-weight: 300; }
.login_checkbox label                       { max-width: none; width: 100%; }
.login_checkbox span                        { color: #FFFFFF; }
.login_submit                               { margin: 0px 20px 15px 20px; }
.login_submit input                         { width: 100%; vertical-align: bottom; border: none; padding: 10px 10px 8px 10px; margin-bottom: 15px; cursor: pointer; color: #FFFFFF; font-size: 17px; font-weight: 300; text-transform: uppercase; background: linear-gradient(to bottom, rgb(79, 129, 229) 0%, rgb(96, 141, 232) 100%); box-sizing: border-box; border-radius: 7px; }