/*
 * Copyright (c) 2018
 * Author: <arnaud.lewandowski@gmail.com>
 */

body {
    margin: 0;
}

h3 {
    margin-top: 0px;
    font-size: 22px;
}
#logo-title {
    position: absolute;
    float: left;
    left: 15px;
    top: 0;
    z-index: 999;
    width: 80px;
    height: 80px;
    background-color: #7FC0DB;
    color: white;
    text-align: center;
    font-family: Arial;
    font-size: 34px;
    text-decoration: none;
}

#left-logo {
    position: absolute;
    float: left;
    left: 25px;
    top: 0;
    color: #373433;
    font-family: Arial;
    font-size: 34px;
    text-decoration: none;
}

#global-div {
    font-family: Arial;
    font-size: 14px;
    color: #333;
}

#menu_div {
    background-color: #373433;
    height: 42px;
    width: 100%;
    position: absolute;
    float: left;
    top: 50px;
    z-index: 5;
}

#menu_client {
    float: left;
    margin-top: 18px;
    margin-left: 80px;
    list-style-type: none;
    font-size: 12px;
}

#menu_client li {
    float: left;

}

#menu_client li a, #menu_client_right li a {
    color: white;
    text-decoration: none;
    padding: 10px 14px 10px 14px;
    background-color: #373433;
}

#menu_client li a.active, #menu_client li a:hover.active {
    background-color: #7FC0DB;
    text-decoration: none;
}

#menu_client li a:hover, #menu_client_right li a:hover {
    background: #272423;
    text-decoration: none;
}

#menu_client_right {
    float: right;
    margin-top: 18px;
    margin-right: 30px;
    list-style-type: none;
    font-size: 12px;
}

#nom_client_menu {
    color: #75716f;
    position: absolute;
    text-align: right;
    right: 40px;
    /*top: 105px;*/
    top: 10px;
    font-family: Arial;
    font-weight: normal;
    font-size: 12px;
}

#nom_client_menu a {
    visibility: hidden;
}

#content {
    position: relative;
    top: 110px;
    margin-left: 20px;
    margin-right: 20px;
}

#content.content-right {
    position: absolute;
    padding-top: 15px;

    left: 190px;
    right: 0;
    top: 100px;
}

#scrollable-content {
    overflow: auto;
}

#left-menu {
    position: absolute;
    float: left;
    width: 150px;
    top: 90px;
    bottom: 0px;
    z-index: 2;
    border-right: dotted 1px #bbb;
    padding: 30px 20px;
}

#left-menu .left-menu-title {
    font-size: 16px;
    color: #555555;
}

#left-menu ul {
    font-size: 13px;
    float: left;
    padding-left: 20px;
    margin-top: 5px;
    list-style: none;
}

#left-menu li:before, #left-menu li.active:before {
    content: "";
    border-color: #333333;
    border-style: solid;
    border-width: 3px; /*0 0.35em 0.45em;*/
    display: block;
    height: 0;
    width: 0;
    left: -1em;
    top: 0.8em;
    position: relative;
}

#left-menu li.active:before {
    border-color: transparent #74b3c6;
    border-style: solid;
    margin-top: -4px;
    border-width: 5px 0 5px 6px;
    top: 0.9em;
}

#left-menu li a, a.reset {
    color: #6096a9;
    text-decoration: none;
}

#left-menu li a:hover, #left-menu li.active a:hover, a.reset:hover {
    text-decoration: underline;
    cursor: pointer;
}

label.login_form {
    display: block;
    width: 150px;
    float: top;
    margin-top: 20px;
    font-weight: bold;
}

#subcontent-connexion {
    margin: 0 auto 0 auto;
    display: block;
    width: 350px;
    text-align: left;
}

#subcontent-account {
    padding: 10px 0 0 10px;
    display: block;
    width: 450px;
    text-align: left;
}

.account-form label, .settings-form label {
    display: block;
    width: 120px;
    float: left;
    margin-top: 3px;
}

.account-form div, .settings-form div {
    margin: 20px 0;
}

.settings-form label {
    width: 150px;
}

input.submit {
    background-color: #7FC0DB;
    color: white;
    padding: 7px 12px;
    font-size: 16px;
    -moz-border-radius: 2px 2px 2px 2px;
    -webkit-border-radius: 2px 2px 2px 2px;
    border-radius: 2px 2px 2px 2px;
}

input, select, textarea {
    font-size: 14px;
    padding: 2px;
}

textarea {
    width: 100%;
}

#password label {
    width: 200px;
}

#message-ok, #message-err {
    padding: 15px;
    margin: 0px 2px 15px 2px;
    border: 1px #bbb dotted;
    background-color: #fee;
    color: #e22;
}

#message-ok {
    background-color: #d4fde2;
    color: #11a523;
}

#message-ok ul, #message-err ul {
    margin: 0;
    -webkit-margin-before: 0;
    -webkit-padding-start: 20px;
}

fieldset {
    border: 1px solid #cecece;
    padding: 0px 20px;
}

legend {
    font-size: 20px;
}

#only1spot {
    font-size: 16px;
    font-weight: bold;
    width: 100%;
    /*text-align: center;*/
    margin: 0 0 -5px 0;
}

.spot-select {
    font-size: 20px;
    font-family: Arial;
    font-weight: bold
}


.submit_month {
    background: none !important;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit;
    /*border-bottom:1px solid #444;*/
    cursor: pointer;
}

.other_month, .current_month {
    padding: 10px 14px 10px 14px;
    float: left;
}

.current_month {
    background-color: #373433;
    color: white;
}

.submit_month:hover {
    text-decoration: underline;
}

.other_month:hover {
    background-color: #ddd;
}

td.slot {
    font-size: 12px;
    text-align: center;
    -moz-border-radius: 2px 2px 2px 2px;
    -webkit-border-radius: 2px 2px 2px 2px;
    border-radius: 2px 2px 2px 2px;
    width: 90px;
    height: 35px;
    color: #333;

    /* to prevent text selection: */
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.week_cell {
    width: 80px;
    font-size: 12px;
    background-color: #eee;
    font-weight: bold;
    vertical-align: top;
    padding: 10px 5px;
}

.too_much {
    background-color: #D95252;
}

.day_cell, .slot_cell {
    text-align: center;
    width: 100px;
    font-size: 12px;
    background-color: #858689; /*7FC0DB; 373433;*/
    color: #f1f1f1;
    font-weight: bold;
    /*height: 25px;*/
}

.slot_cell {
    white-space: nowrap;
    height: 25px;
}

td.slot .participant, td .participant_last {
    height: 30px;
    display: flex;
    white-space: nowrap;
    /*width: 100px;*/
}

td.slot .participant {
    border-bottom: #fff dotted 1px;
}

td.slot .participant div, td .participant_last div {
    margin: auto;
}

td.empty {
    background-color: #D95252;
    color: white;
}

td.full {
    background-color: #B0DE78;
    color: #4a4a4a;
}

td.notfull {
    background-color: sandybrown;

}

td.reserved {
    background-color: #6BA66B;
    color: white;
}

/*td.closed {*/
    /*background: repeating-linear-gradient(*/
            /*-45deg,*/
            /*transparent,*/
            /*transparent 13px,*/
            /*#d6d6d6 13px,*/
            /*#d6d6d6 15px*/
    /*);*/
/*}*/

td.already.empty {
    background: repeating-linear-gradient(
            -45deg,
            #D95252,
            #D95252 13px,
            #d6d6d6 13px,
            #d6d6d6 15px
    );
}

td.already.notfull {
    background: repeating-linear-gradient(
            -45deg,
            sandybrown,
            sandybrown 13px,
            #d6d6d6 13px,
            #d6d6d6 15px
    );
}


.hidden {
    display: none;
}

.qtip-content {
    padding: 1px;
}

.action {
    text-align: center;
    padding: 10px 10px;
    min-height: 100%;
    height: 100%;
    font-family: Arial;
    font-size: 16px;
    font-weight: bold;
    color: #497483;
    cursor: pointer;
}

.not-clickable {
    cursor: unset;
}

.disabled {
    color: #818a95;
    cursor: default;
}

.filter {
    opacity: 0.33;
}

table {
    color: #333;
}
table.admin {
    font-size: 13px;
    text-align: left;
    border-spacing: 0;
    border-collapse: separate;
}

table.admin tr {
}

table.admin th {
    background-color: #4a4a4a;
    color: white;
}

table.admin th, table.admin td {
    padding: 3px 5px;
    width: auto;
    white-space: nowrap;
    /*border: #4a4a4a dotted 1px;*/
}

table.admin input {
    min-width: 10px;
    max-width: 100%;
    width: 100%;
}

table.admin input.checkbox {
    min-width: unset;
    max-width: unset;
    width: unset;
}

a.selector {
    cursor: pointer;
}

table.admin th.sortable {
    cursor: pointer;
}

table.admin form, table form {
    margin-bottom: 0px;
}

table.admin .selected {
    background: #c7c8cb;
}

.spot-active, .spot-inactive {
    display: flex;
    cursor: pointer;
    line-height: 25px;
    color: #11a523;
    font-weight: bold;
}

.spot-inactive {
    color: #D95252;
}

.edit {
    /*display: flex;*/
    cursor: pointer;
    line-height: 25px;
    margin-left: 5px;
}

.week_reservations_list {
    white-space: nowrap;
}

.anterior_cell {
    opacity: 0.55;

}

