/* 
    Created on : Nov 19, 2016, 1:59:23 AM
    Author     : Miki
*/

/*

    ALL DEFAULT VALUES SHOULD BE DEFINED HERE, AND OVERRIDEN IF NECESSARY

*/

body
{
    /*max-width: 1000px;*/
    height:100%;
    margin: auto;
    background-color: whitesmoke;
    font-family:FrutigerNextPro-Regular, Arial,Helvetica, sans-serif;
    font-size:14px
}
a, a:visited
{
    color: #0e82b8;
    text-decoration: none;
}
.a_link, .a_link:visited
{
    color: #0681b7;     
    text-decoration: none;
}
.a_link:hover
{
    text-decoration: underline;
}

#image_viewer_container
{
    display:none;
    position: fixed;
    width:100%;
    height:100%;
    background-color: rgba(0,0,0,0.7);
    top:0;
    left:0;
    z-index: 1000;
    cursor: pointer;
}
#image_viewer
{
    margin:auto;
    max-width: 80%;
    cursor:pointer;
}
#video_player_container
{
    display:none;
    position:fixed;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.7);
    top:0;
    left:0;
    z-index: 1000;
}
#order_container
{
    display:none;
    position:fixed;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.7);
    top:0;
    left:0;
    z-index: 1000;
    justify-content: center;
}
#video_player
{
    margin:auto;
    max-width:90%;
    max-height:90%;
    display:flex;
    align-self: center;
    vertical-align: central;
}

#close_image
{
    /*border:1px solid white;*/
    position:absolute;
    right:5px;
    top:5px;
    width:60px;
    height:60px;
    color:gray;
    margin:auto;
    font-size:40px;
}
#close_image:hover
{
    color:white;
    cursor:pointer;
}
.viewed_image
{
    cursor: pointer;
}

video
{
    width:100%;
}


.arrow-down {
  width: 0; 
  height: 0; 
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  
  border-top: 5px solid black;
  display:inline-block;
  vertical-align: middle;
}


/* HEADER */
#header_container
{
    /*height:100px;*/
    display:flex;
    flex-direction:column;
}
#header_container *
{
    /*user-select : none;*/
}
#header_top_track
{
    /*width:100%; 
    height:25px; 
    background-color:rgb(14, 130, 184) ;
    flex: 0 0 auto;*/
    
     height: 40px;
    background-color: #0e82b8;
    z-index: 2; /* Logo shadow doesn't go in front of this track. */
    color:white;
    display:flex;
    justify-content: space-between;
    
}
#header_logo_container
{
    background-color:#edf1f5;
    /*height:100%;*/
    flex:0 0 auto;
    display:flex;
}
#header_logo_container img
{
    width:80%;
    margin:auto;
}
#header_content_container
{
    display:flex;
    flex:1 1 auto;
    height:100%;
}
#header_data_container
{
    width:100%; 
    height:100%; 
    background-color:white; 
    justify-content: center; 
    font-size: 1.5em;
    color: rgba(0,0,0,0.7);
    position:relative;
}
#header_data_container>p
{
    margin-left:15px;
    margin-top:24px;
    margin-bottom: 5px;
}
.header_data_info
{
    margin-left:15px;
    font-size: 0.6em;
    
}
.header_data_info>div
{
    display:flex;
}
#log_out_button
{
    border:1px solid #eee;
    border-radius:5px;
    position:absolute;
    right:15px;
    top:20px;
    height:30px;
    width:60px;
    display:flex;
    user-select:none;
}
#log_out_button p
{
    margin:auto;
    vertical-align: middle;
    font-size: 0.6em;
    
}
#log_out_button:hover
{
    background-color:rgb(14, 130, 184);
    color:white;
    cursor:pointer;
}
#log_out_button:active
{
    transform: translateY(2px);
}

.header_top_group
{
    display:flex;
    height: 100%;
}
.header_top_group_icon
{    
    height: 15px;
    padding: 0 10px 0 0;
    align-self: center;
}
.header_top_group_text
{    
    color:white;
    align-self: center;
    font-family: Calibri;
    padding-right: 4px;
}
.header_top_group_text:hover
{
    color:#84c3f1;
}
/***** SEARCH *****/
.search
{
    position:relative;
}
.search *
{
    height:100%;
    align-self: center;
    border:none;
}

#search_text
{
    padding-left: 7px;
    margin-right:2px;
    height:20px;
    border-radius: 4px 0 0 4px;
}
#search_button
{
    padding-right:7px;
    border-radius: 0 4px 4px 0;
    height:22px;
    cursor:pointer;
    background-color: #6fa1cc;
}
#search_button:hover
{
    background-color: #b2c8e2;
}
#search_button:active
{
    border:0;
}


/* CONTENT */
#main_container
{
    background-color: white;
    max-width:1000px;
    margin:auto;
}
.menu_width
{
    width:240px;
}
#content_container
{
    display:flex;
    background-color: #edf1f5;
}
#menu_container *
{
    user-select:none;
}
#menu_container
{
    flex:0 0 auto;
    background-color:#4F5467;
}
#content
{
    flex:1 1 auto;
    padding:10px;
}

/* START PAGE */
#start_page_container
{
    background-color:#edf1f5;
    height:100%;
    width:100%
}


/* LOGIN */
#login_page
{
    background-color:rgba(0,0,0,0.7);
    position: relative;
    min-height: 700px;
    left:0;
    top:0;
    display:flex;
    width:100%;
    height:100%;
    justify-content: center;
}
#login_page p
{
    /*margin:0;*/
}
#login_container
{
    display: block;
    /*height:320px;*/
    width:330px;
    background-color:white;
    align-self: center;
    border-radius: 10px;
    overflow: hidden;
}
#login_header
{
    background-color: #0e82b8;
    color:white;
    height:40px;
    display:flex;
    justify-content: center;
}
#login_header p
{    
    font-size:1.5em;
    display:block;
    align-self: center;
}

#login_credentials
{
    padding-top: 30px;
    padding-left: 20px;
    height:150px;
    position:relative;
}
#login_register_button
{    
    position: absolute;
    left:20px;
    bottom: 10px;
}
#login_button
{    
    position: absolute;
    right:20px;
    bottom: 10px;
}
.login_button_class
{
    width: 100px;
    height: 35px;
    border-radius: 5px; 
    border: none; 
}
.login_button_class:focus
{
    outline:none;
}
.login_button_class:active
{
    transform: translateY(2px);
}
.login_button_class:hover
{
    background-color:#0e82b8;
    color:white;
    cursor:pointer;
}
.login_single
{
    display:flex;
    height:40px;
}
.login_single p
{
    width:80px;
    margin:5px 0;
}
.login_single input
{
    height:1.5em;
}
#login_remember
{
    padding-left: 160px;
    transform: translateY(-10px);
    font-size: 0.8em;
    cursor:pointer;
    user-select:none;
    display:block;
}
#password_reset
{
    /*display:flex;*/
    display: none;
    border-bottom:1px solid #cccccc;
    margin-bottom:10px;
    padding:10px 10px;
    width:100%;
    box-sizing:border-box;
}
#password_reset>*
{
    margin:0px 5px;
    align-self: center;
}
#password_reset span
{
    flex:1 1 auto;
}
#login_footer
{
    padding-left:20px;
    position:relative;
}
#login_footer a
{
    display:block;
    margin-bottom: 10px;
    color:rgba(0,0,0,0.5);
}
#login_footer a:hover
{
    text-decoration: underline;
    cursor: pointer;
    color:black;
}
#login_footer img
{    
    max-width: 120px;
    position:absolute;
    right:10px;
    bottom: 0;
}
/* WAITING DIALOG */
#waiting_dialog_fullscreen
{
    position:fixed;
    top:0;
    background:rgba(0,0,0,0.8);
    display:none; 
    justify-content: center;
    height:100%;
    width:100%;
    z-index: 5000;
}
#waiting_dialog_fullscreen button
{
    margin:auto;
}
#waiting_dialog_animation_container
{
    align-self: center;
}
#waiting_dialog_animation_container p
{
    margin:auto;
    padding-top:20px;
    font-size: 2em;
    color:white;
}
.waiting_dialog_animation
{
    margin:auto;
    border: 8px solid #f3f3f3; /* Light grey */
    border-top: 8px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 2s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
#waiting_dialog_notification_container
{
    display:none;
    flex-direction: column;
    align-self: center;    
}
#waiting_dialog_notification_container p
{
    font-size:1.5em;
    color:white;
}

/* REGISTER */
#password_reset_notification
{    
    display:none;
    flex-direction: column;
    align-self: center; 
}

#password_reset_notification p
{
    font-size:1.5em;
    color:white;
}    
#register_container
{
    display: block;
    max-width: 600px;
    /*height:320px;*/
    /*width:330px;*/
    background-color:white;
    align-self: center;
    border-radius: 10px;
    overflow: hidden;
}
#register_credentials
{
    /*padding-top: 20px;*/
    padding-left: 20px;
    padding-right: 20px;
    /*height:150px;*/
    position:relative;
    /*padding-bottom: 40px;*/
}
#register_credentials p
{    
    /*text-align: right;*/
    /*padding-right: 10px;*/
}
.register_privacy
{
    color:black;
    text-align: left;
}
.register_single
{
    display:flex;
    height:30px;
}
.register_single p
{
    width:80px;
    margin:0;
    color:#7d7d7d;
    text-align: right;
    align-self: center;
    padding-right:10px;
}
.register_single input
{
    height:1.1em;
    align-self: center;
    padding-left:5px;
}
.register_single span
{
    color:red;
}
.register_main_data
{
    
}
.register_main_data .register_single p
{
    width: 140px;
}
.register_additional_data
{
    display:flex;
}
.register_personal_data
{
    flex:1 1 50%;
}
.register_company_data
{
    flex:1 1 50%;
}
#register_credentials button
{
    width: 100px;
    height: 30px;
    border-radius: 5px; 
    border: none; 
}
#register_credentials button:focus
{
    outline:none;
}
#register_credentials button:active
{
    transform: translateY(2px);
}
#register_credentials button:hover
{
    background-color:#0e82b8;
    color:white;
    cursor:pointer;
}
#register_button_container
{
    display:flex;
    justify-content: flex-end;
    margin-top: 10px;
    margin-bottom:10px;
}
#register_button_container button
{
    /*position: absolute;*/
    right:20px;
    bottom: 10px;
    align-self: flex-end;
    margin-left: 30px;
}
#register_survey
{
    display:flex;
    justify-content: flex-end;
    align-items: baseline;
}
#register_survey select
{
    padding:5px;
    margin:0 10px;
}
.data_error
{
    display:inline;
    color:red;
    font-size:1.8em;
    padding-left: 10px;
    text-align: left !important;
    width:160px !important;
}
.captcha_error
{
    width: 10px !important;
    padding-right:20px;
    color:red;
    font-size:3em;
    margin:0;
    align-self: center;
}
.data_login_error
{
    display:inline;
    color:red;
    font-size:1.8em;
    margin-top:0 !important;
    padding-left: 10px;
    text-align: left !important;
    width:10px !important;
}

/* COMPANY */
#user_list_container
{
    padding:0;
    border:1px solid black;
    max-width:600px;
}
.user_list_item
{
    border-bottom:1px solid black;
    display:flex;
    height:30px;    
}
.user_list_item:hover
{
    background-color: white;
}
.user_list_item div
{
    display: flex;
}
.user_list_item p
{
    align-self: center;
    margin:0;
    padding-left:10px;
}
.user_list_item_id
{
    flex:0 0 40px;
    border-right:1px solid #cccccc;
}
.user_list_item_name
{
    flex:1 0 10px;
    border-right:1px solid #cccccc;
}
.user_list_item_mail
{
    flex: 2 0 10px;
    
}
.user_list_item_delete
{
    flex: 0 0 50px;
    display:flex;
    justify-content: center;
}
#new_user
{
    max-width: 400px;
    border:1px solid #cccccc;
    margin-top: 20px;
    padding:10px;
}
.new_user_single
{
    display:flex;
    height:30px;
}
.new_user_single_name
{
    width:100px;
    margin:0;
    color:#7d7d7d;
    text-align: right;
    align-self: center;
    padding-right:10px;
}
.new_user_single input
{
    height:1.1em;
    align-self: center;
    padding-left:5px;
    width:120px;
}
.error_p
{
    display:inline;
    color:red;
    font-size:1.8em;
    padding-left: 10px;
    text-align: left !important;
    width:30px !important;
    margin:0;
}
.display_single
{
    display:flex;
    height:30px;
}
.display_single p
{
    width:80px;
    margin:0;
    color:#7d7d7d;
    text-align: right;
    align-self: center;
    padding-right:10px;
}
.display_single input
{
    height:1.1em;
    align-self: center;
    padding-left:5px;
    width:220px;
}
#activation_key_container
{
    border:1px solid black;
    border-radius:5px;
    padding:10px;
    display:none;
}
#activation_key_container p
{
    margin:0 10px 0 10px;
    width:90px;
}
.activation_key_pair > div
{
    display:flex;
    margin:5px 0 5px 0;
}