/**
 * Mise en page :
 */
html, body {
        min-height: 100%;
}
body {
        font-size: 12px;
        background: linear-gradient(178deg, var(--primary-background-color), var(--ganesh-core-background-color));
        background-attachment:fixed;
        font-family:'Open sans', sans-serif;
        position:relative;
        overflow-y: scroll;
}
body .bg-img {
        content:'';
        position:absolute;
        top:0;
        left:0;
        bottom:0;
        right:0;
        background-size:cover;
        background-attachment: fixed;
        opacity:.15;
        /* z-index:-1; */
        pointer-events: none;
}
body > .bg-img {
        opacity: 0;
}
body.masquerade,
body.masquerade #top-bar{
        background: repeating-linear-gradient(135deg, var(--primary-background-color), var(--primary-background-color) 10px, var(--primary-background-focus) 10px, var(--primary-background-focus) 20px);
        background-attachment: fixed;
}
body.readonly-db {
        background: repeating-linear-gradient(135deg, transparent, transparent 10px, rgba(239, 5, 221, .07) 10px, rgba(239, 5, 221, .07) 20px);
}
body.readonly-db #content{
        padding-left:60px;
}
body.resizing *{
        transition: none !important;
}
body.dragging,
body.dragging * {
        cursor:grabbing !important;
}
section.full-page {
        padding: 20px;
}
.left-col {
        width: 298px;
        float: left;
}
.right-col,
#plugin_acl.right-col {
        width: calc(100% - 340px);
        padding-left:40px;
        margin-left:0;
}
.right-col-left {
        float:left;
        width:calc(75% - 30px);
        margin-right:30px;
}
.right-col-right {
        float:left;
        width:25%;
}
.right-col-right + * {
        clear:both;
}
#right-col-inner {
        background: #fff;
        padding: 25px;
        border-radius: 4px;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
        position:relative;
        z-index:1;
}
/* lorsqu'on veut uniquement des panels, sans le fond de couleur de #right-col-inner */
#right-col-inner-panels {
        position:relative;
        z-index:1;
}
#right-col-inner:before,
#right-col-inner:after {
        content: " ";
        display: table;
}
#right-col-inner:after {
        clear:both;
}
#right-col-inner + .panel,
#right-col-inner + .row,
#right-col-inner + fieldset,
#right-col-inner + .rules-form {
        margin-top:30px;
}
#page, 
.page-container {
        position: relative;
}
#content-footer {
        position: absolute;
        bottom: 0;
        left: 0;
        height: 0;
}
.readonly-db-warning {
        position: fixed;
        top: 22px;
        left: 5px;
        transform-origin: bottom left;
        transform: rotate(90deg);
        font-size: 33px;
        font-weight: 900;
        font-family: 'Montserrat';
        color: #b77eb0;
        text-transform: uppercase;
        opacity:.7;
}

body > pre {
        position: relative;
        z-index: 1031 !important;
        top: 82px;
        left: 266px;
        max-width: 900px;
        width: 100%;
}
#version {
        position: fixed;
        right: 10px;
        bottom: 5px;
        color: #fff;
        font-size: 12px;
}
#version a {
        color:inherit;
}
#cc-link {
        position:fixed;
        top:5px;
        right:10px;
        display:block;
}
#mysql-dump h3 {
        color: #fff;
        font-size: 11px;
        text-transform: uppercase;
        cursor: pointer;
        padding: 6px;
        padding-right: 21px;
        background: url(../img/tree_bullet_opened_tab.png) no-repeat right 6px top 9px;
        background-color: #2e2f33;
        display: inline-block;
        position: fixed;
        bottom: 4px;
        left: 5px;
        border-radius: 5px;
        margin: 0;
}
#mysql-dump.opened h3 {
        background: url(../img/tree_bullet_closed_tab.png) no-repeat right 6px top 8px;
        background-color: #2e2f33;
}
#mysql-dump .cake-sql-log {
        display:none;
}
#mysql-dump.opened .cake-sql-log {
        display: table;
        margin: 5px 20px 20px 20px;
        background: #fff;
        margin-left:284px;
        color: #000;
}
#mysql-dump.opened .cake-sql-log caption {
        color: #fff;
        font-weight: bold;
        font-size: 10px;
        margin-bottom: 5px;
        text-align: right;
}
#mysql-dump.opened .cake-sql-log th,
#mysql-dump.opened .cake-sql-log td {
        padding: 10px;
        border: solid 1px #ccc;
        font-size:11px;
}
#masquerade-info {
        position: fixed;
        right: 10px;
        top: 9px;
        background: #007596;
        padding: 5px 10px;
        border-radius: 5px;
        color: #fff;
        z-index:10;
        box-shadow:0 0 4px 0 rgb(1, 63, 81);
        z-index:9999;
}
#masquerade-info a {
        color:#fff;
        font-size:11px;
        margin-left:2px;
}
#modal-ganesh-infos .modal-dialog {
        width: 460px;
}
#modal-ganesh-infos .modal-body {
        text-align:center;
        font-size:13px;
}
#modal-ganesh-infos .modal-body p {
        margin-bottom:20px;
}
#modal-ganesh-infos .modal-body p:last-child {
        margin-bottom:0;
}
#modal-ganesh-infos .modal-body .logo img {
        width:60px;
}
#modal-ganesh-infos .modal-body .ganesh-title {
        font-size:16px;
        text-transform:uppercase;
        opacity:.7;
        font-weight:bold;
}

.modal-dialog.modal-tag {
        width: 460px;
}

#optin {
        position: fixed;
        right: 272px;
        bottom:-1000px;
        z-index: 999999999999;
        text-align: center;
        padding-bottom: 10px;
        opacity:0.5;
        transition:all .5s;
}
#optin.optin-active {
        opacity:1;
        bottom:10px !important;
}
#optin:after {
        content: '';
        position: absolute;
        bottom: 0;
        right: 10px;
        height: 0;
        width: 0;
        border-top: 10px solid #2499B8;
        border-left: 17px solid transparent;
}
#optin-inner {
        min-height: 65px;
        background: #2499B8;
        padding: 13px 13px 13px 70px;
        border-radius: 0px;
        text-align: right;
        font-size:14px;
        box-shadow: 0 -3px 9px rgba(0, 0, 0, 0.25);
        position:relative;
}
#optin-inner .ganesh-logo {
        position: absolute;
        left: 13px;
        top: 12px;
        /* opacity: 0.7; */
        margin-bottom: 10px;
        width: 44px;
}
#optin, #optin a {
        color:#fff;
}
#optin .optin-title {
        margin-top:0;
        margin-bottom:0;
        font-weight:600;
        font-size:15px;
}
#optin .optin-subtitle {
        margin-top:5px;
        text-transform: none;
        font-weight: 100;
}
#optin .optin-content {
        margin-top:13px;
}
#optin .optin-choices .optin-choice {
        text-transform: uppercase;
        border: solid 1px rgba(255, 255, 255, 0.5);
        padding: 1px 5px;
        margin-left: 10px;
        font-weight: bold;
        text-decoration: none;
}
#optin .optin-choices .optin-choice.yes {
        background: #D2EDF5;
        color: #007596;
}
#optin .optin-choices .optin-choice.no {
        font-weight: normal;
}

/* 
 * Affichage des messages d'erreurs JS
 */
#js-errors {
        position: fixed;
        bottom: 10px;
        left: 10px;
        display: flex;
        flex-direction: column-reverse;
        z-index: 99998;
        row-gap: 5px;
}
#js-errors .js-error {
        display: block;
        position: relative;
        width: 250px;
        padding: 10px 40px 10px 10px;
        background: #d91717;
        color: #fff;
        box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, .2);
        border-radius: 4px;
        cursor:default;
}
#js-errors .js-error .glyphicon {
        position:absolute;
        top:10px;
        right:10px;
        text-decoration:none;
        color:#fff;
}
#js-errors .js-error .detail {
        display:none;
}
#js-errors .js-error.detail-opened {
        width:650px;
}
#js-errors .js-error.detail-opened .msg {
        display:none;
}
#js-errors .js-error.detail-opened .detail {
        display:block;
}

.modal-btn {
        cursor:pointer;
}

/**
 * Balises standard :
 */
hr {
        height: 0;
        width: 100%;
        /*width : 80%;*/
        border-top: 1px solid rgb(218, 218, 218);
        margin-left: 0;
        text-align: left;
}
.modal hr {
        border-top: 1px solid #cccccc;
}
h1, h2, h3 {
        font-family:Open sans;
        font-weight:900;
}
h2 {
        font-size: 16px;
        text-transform: uppercase;
}
h3 {
        font-size:14px;
        text-transform:uppercase;
}
h3 {
        font-size:14px;
        text-transform:uppercase;
}
h2:first-child,
h3:first-child,
h4:first-child {
        margin-top:0;
}
.form-control > option[disabled=disabled] {
        color: #aaa;
        font-style: italic;
}
h3 small,
h4 small {
        /* pour afficher un sous-titre, ou une description du titre */
        font-size:12px;
}
select,
input {
        border:1px solid #ccc;
}
select:focus,
option:focus,
input:focus,
textarea:focus {
        outline:1px solid #777;
}
select:disabled,
select.disabled,
option:disabled,
option.disabled,
input:disabled,
input.disabled,
textarea:disabled,
textarea.disabled {
        opacity:.7;
}
a:focus {
        outline:none;
}
a.disabled,
label.disabled {
        opacity:.5;
        cursor: not-allowed;
        pointer-events: none;
}
p:last-child {
        margin-bottom:0;
}
ins {
        background:#e6ffe6;
}
del {
        background:#ffe6e6;
}

/**
 * Classes utilitaires :
 */
.clear {
        clear: both;
}
.relative {
        position:relative;
}
.warning {
        background: url('../img/warning.png') no-repeat;
        padding-left: 20px;
        font-weight: bold;
}
strong,
.strong {
        font-weight: bold;
}
.force-strong {
        font-weight:bold !important;
}
strong.medium,
.strong.medium {
        /* opacity:.75; */
        font-weight:600;
}
.btn.strong {
        font-weight:600;
}
.em {
        font-style: italic;
}
.normal,
.alert.normal {
        font-weight:normal;
}
.centered,
.text-centered {
        text-align:center;
}
.righted {
        text-align:right;
}
.lefted {
        text-align:left;
}
.caps,
.uppercase {
        text-transform:uppercase;
}
.text-normal {
        text-transform:none;
}
.nota-bene {
        font-style: italic;
}
.semi-transparent {
        opacity:.5;
}
.nowrap { 
        white-space:nowrap; 
}
.underline{
        text-decoration: underline !important;
}
.pointer {
        cursor:pointer;
}
.author-info {
        font-size: 10px;
        color: #999;
        line-height: 1.1;
        display: inline-block;
}
a.full-size-link {
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
}
.ui-state-highlight {
        /* style utilisé pour les listes sortable (ligne de remplacement) */

        background: #8B8D97 !important;
        border: none !important;
}
.datepicker-wrapper {
        /*font-family: 'Glyphicons Halflings';*/
        position: relative;
}
.datepicker-wrapper .glyphicon-calendar {
        position: absolute;
        right: 7px;
        top: 50%;
        font-size: 1.2em;
        color: var(--ganesh-core-background-color);
        transform: translateY(-50%);
        margin-top: -2px;
}
.datatable-custom-filters .datepicker-wrapper .glyphicon-calendar {
        top: 4px;
}
.xdsoft_datetimepicker {
        border-color: #ddd;
        box-shadow: 1px 2px 8px rgba(0, 0, 0, .2);
        border-radius: 4px;
        padding-bottom: 4px;
        padding-top: 0;
        font-family:inherit;
}
.xdsoft_datetimepicker .xdsoft_label {
        font-family: 'Montserrat'; 
        font-weight: 500;
        text-transform: uppercase;
        color:var(--ganesh-core-background-color);
}
.xdsoft_datetimepicker .xdsoft_label i {
        display: none;
}
.xdsoft_datetimepicker .xdsoft_year {
        margin-left:0;
}
.xdsoft_datetimepicker .xdsoft_next, .xdsoft_datetimepicker .xdsoft_prev, .xdsoft_datetimepicker .xdsoft_today_button {
        opacity:.25;
}
.xdsoft_datetimepicker .xdsoft_next:hover, .xdsoft_datetimepicker .xdsoft_prev:hover, .xdsoft_datetimepicker .xdsoft_today_button:hover {
        opacity:.5;
}
.xdsoft_datetimepicker .xdsoft_calendar table th {
        font-weight: 500 !important;
        background: #dbdbdb !important;
        color: #777;
}
.xdsoft_time_box {
        border-color:#ddd;
}
.toggler > * {
        display: none;
        margin-top: 0 !important;
}
.toggler.opened > * {
        display: block;
}
.toggler .btn {
        padding: 6px 12px;
}
.toggler .btn-xs {
        padding: 3px 6px;
}
.toggler > .active {
        cursor: pointer;
        display: block;
        padding-right: 17px;
        background-image: url('../img/toggler-btn.png');
        background-repeat: no-repeat;
        background-position: right;
}
.toggler.disabled > .active {
        cursor: default;
        background-image:none;
        box-shadow:none;
        padding-right:12px;
}
.toggler.status-switcher > .active {
        background-position: right 3px top 12px;
}
.toggler.status-switcher > .btn-xs.active {
        background-position: right 3px top 8px;
}
.toggler-inline {
        display:inline-block;
}
.blue {
        color: #2499b8 !important;
}
.red {
        color: #C72121 !important;
}
.white {
        color: white !important;
}
.green {
        color: #39a03c !important;
}
.grey {
        color:#bbb !important;
}
.alert a {
        color: inherit;
}
.alert-danger a {
        color: black !important;
}
.alert-warning a {
        color: black !important;
}
.no-padding {
        padding: 0 !important;
}
.no-margin{
        margin: 0 !important;
}
.no-transition {
        transition:none !important;
}
.page-bottom-btn,
.page-top-btn {
        display:none !important; /* !important temporaire le temps de mettre les nouveaux */
}
.page-bottom-btn {
        width: 30px;
        height: 30px;
        position: absolute;
        top: 0px;
        right: -44px;
        cursor: pointer;
        background: url(../img/btn-page-bottom.png) no-repeat;
        transition: .08s linear;
        box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, .2);
}
.page-bottom-btn:hover {
        background:url('../img/btn-page-bottom-hover.png') no-repeat;
        top:6px;
}
.page-top-btn {
        width: 30px;
        height: 30px;
        position: absolute;
        right:-44px;
        bottom: 0px;
        cursor: pointer;
        background: url('../img/btn-page-top.png') no-repeat;
        transition: .08s linear;
        box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, .2);
        z-index:1;
}
.page-top-btn:hover {
        background: url('../img/btn-page-top-hover.png') no-repeat;
        bottom:6px;
}
.table-wrapper {
        position:relative;
}
.table-wrapper .page-bottom-btn,
.table-wrapper .page-top-btn { /* mis dans un div.table-wrapper, les boutons peuvent être en absolute @todo remplacer toutes les vues avec ce système... */
        position:absolute;
}
.table-wrapper .page-bottom-btn {
        top:0;
}
.table-wrapper .page-top-btn {
        bottom:0;
        top:auto;
}
.oops {
        margin-top: 40px;
}
.oops img {
        display: block;
        float: left;
        width: 300px;
}
.oops .oops-message {
        display: block;
        float: left;
        width: 500px;
        font-weight: bold;
        font-size: 20px;
        text-transform: uppercase;
        margin-left: 30px;
        margin-top: 15px;
}
.help-block {
        /*font-style:italic;*/
}
.tooltip {
        z-index:9999;
}
.tooltip-inner {
        max-width: 300px;
        padding: 3px 8px 4px 8px;
        color: #fff;
        text-align: center;
        text-decoration: none;
        background-color: var(--ganesh-core-background-color);
        border-radius: 4px;
        line-height: 1.25;
}
.tooltip.right {
        min-width:250px;
}
.tooltip.top .tooltip-arrow {
        border-top-color:var(--ganesh-core-background-color);
}
.tooltip.right .tooltip-arrow {
        border-right-color: var(--ganesh-core-background-color)
}
.light-tooltip + .tooltip .tooltip-arrow {
        border-top-color:#ddd;
        border-bottom-color:#ddd;
}
.light-tooltip + .tooltip > .tooltip-inner {
        background-color:#eee;
        color:#333;
}
.tooltip p:last-child {
        margin-bottom:0;
}
.tooltip-inner ul {
        padding-left: 18px;
        text-align: left;
        margin-bottom: 1px;
        margin-top: 5px;
}
.tooltip-inner ul li:not(:last-child) {
        margin-bottom: 0.5em;
}
.legend {
        font-size:11px;
        font-style:italic;
}
.input + .legend {
        line-height: 1.3;
        display: block;
        margin-top:-5px; /* remplace la marge inf. du champ */
        margin-bottom:10px;
}
.form-control + .legend {
        margin-top:5px;
}
.two-cols {
        column-count:2;
}
.three-cols {
        column-count:3;
}
.locked {
        position:relative;
}
.locked #btn-unlock-edit-mode {
        width:18px;
        height:100%;
        background-image:url('../img/btn-unlock-evaluation.png');
        background-repeat:no-repeat;
        background-position:center;
        cursor:pointer;
        position:absolute;
        top:0;
}
.unlocked #btn-unlock-edit-mode {
        display:none;
}
.right {
        float:right;
}
.left {
        float:left;
}

.flex{
        display: flex;
        gap: 10px;
}
.flex-column{
        flex-direction: column;
}
.flex-row{
        flex-direction: row;
}

.flex.space-between{
        justify-content: space-between;
}

.inline-flex{
        display: inline-flex;
}
.table-header label {
        font-weight: bold;
        background-color: #d2edf5;
        padding: 0 5px;
        color: #000;
        font-size: 12px;
}
textarea.single-line {
        height:30px;
}
.caret {
        border-top-color: rgba(255, 255, 255, 0.5) !important;
        border-bottom-color: rgba(255, 255, 255, 0.5) !important;
}
.stripped {
        background-image: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0.05) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.05) 50%, rgba(0, 0, 0, 0.05) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(0, 0, 0, 0.05) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.05) 50%, rgba(0, 0, 0, 0.05) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 10px 10px;
        color: rgba(0, 0, 0, 0.7) !important;
}
img.glyphicons {
        display:none; /* affiché en JS après la transformation en SVG */
}
svg.glyphicons-basic {
        width:21px;
}
#content .glyphicons path {
        fill:#fff;
}
.btn .glyphicons {
        width:16px;
}
fieldset {
        margin-bottom: 20px;
        padding-bottom:10px;
        background: #fff;
        border-radius:4px;
        overflow:hidden;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
}
.modal fieldset {
        /*box-shadow:none;*/
        background:none;
        margin-bottom:20px;
}
fieldset legend {
        color: #FFF;
        background: #2499b8;
        border: none;
        padding: 10px 20px;
        font-size: 10px;
        text-transform: uppercase;
        font-weight: bold;
        position: relative;
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
}
.modal fieldset legend {
        background: #2499b8;
}
fieldset legend + * {
        margin-top: 0;
}
fieldset legend small {
        text-transform: none;
        font-weight: normal;
        font-size: 100%;
}
.modal fieldset legend .right {
        position:absolute;
        top:10px;
        right:10px;
}
.modal fieldset legend .right .glyphicon {
        top:-1px;
}
.modal fieldset legend .right a {
        color:#fff;
}
.modal fieldset h2:first-child {
        margin-top:0;
}
fieldset .row {
        padding: 0 20px;
}
fieldset .row .row {
        padding: 0;
}
fieldset .row .col-md-12 > .table {
        margin-top:0;
}
.two-cols {
        column-count:2;
}
.three-cols {
        column-count:3;
}
label input[type=checkbox] {
        vertical-align:bottom;
}
.text-alt{
        color: #b15ebb;
}
.btn-alt {
        background: #b15ebb;
        border-color: #9b51a5;
        color:#fff !important;
}
.btn-alt:hover, .btn-alt:focus, .btn-alt:active, .btn-alt.active, .open .dropdown-toggle.btn-alt {
        background: #9b4fa5;
        border-color: #833f8c;
        color:#fff !important;
}
.btn-danger-alt {
        background: #ca3c3c;
        border-color: #b9312d;
        color: #fff !important;
}
.btn-danger-alt:hover, .btn-danger-alt:focus, .btn-danger-alt:active, .btn-danger-alt.active, .open .dropdown-toggle.btn-danger-alt {
        background: #ad2323;
        border-color: #8c1916;
        color: #fff !important;
}

.alert-alt {
        background: #cba1e0;
        border-color: #af86c3;
        color: #fff;
}
.btn-draft {
        background-color: #eee;
        background-image: repeating-linear-gradient(
                135deg,transparent,transparent 5px,#fff 5px,#fff 10px);
        color: #333333;
        border: solid 1px #ccc;
}
.alert-draft {
        background-color: #eee;
        background-image: repeating-linear-gradient(
                135deg,transparent,transparent 5px,#fff 5px,#fff 10px);
        border-color: #e9e9e9;
        color: #757575;
}
.alert-default {
        background:#fff;
        border: solid 1px #ddd;
        color: #888;
}
.alert-success .alert-success,
.alert-info .alert-info,
.alert-warning .alert-warning,
.alert-danger .alert-danger {
        background:#fff; /* alert dans une alert : passe le bg en blanc pour le faire ressortir */
}
.alert-alt .alert-alt {
        color:#cba1e0;
        background:#f8f1fb;
}
.form-control.alert-success:focus {
    border-color: #baceb1;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(192 210 185);
}
.form-control.alert-alt:focus {
    border-color: #b070d0;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(148 111 167 / 68%);
}
.form-control.alert-warning:focus {
    border-color: #d2caa8;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(214 209 184);
}
.form-control.alert-danger:focus {
    border-color: #d4b4b4;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 8px rgb(218 188 188);
}
.tags {
        overflow: hidden;
        font-size: 9px;
        font-weight: 500;
        color: #555;
        margin-bottom:-5px;
}
.tags .tags-title {
        float:left;
        padding: 3px 5px;
}
.tags .tag {
        float: left;
        padding: 3px;
        background: #6ec1d8;
        border-radius: 4px;
        color: #fff;
        margin-right:5px;
        margin-bottom:5px;
}
.panel .panel-body-inner .tag {
        line-height: 1.1;
}
.input.has-translations label {
        height:15px;
        white-space:nowrap;
}
.translations-buttons {
        position:absolute;
        top: -1px;
        right:4px;
        display: flex;
        gap:5px;
        z-index: 2;
}
.translations-buttons .btn-lang {
        font-size:0;
        cursor:pointer;
        padding: 5px 8px 5px 8px;
        background: #eee;
        border: solid 1px #ddd;
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
        position: relative;
        border-bottom: solid 1px #C0C0C0;
}
.translations-buttons .btn-lang * {
        pointer-events:none;
}
.translations-buttons .btn-lang,
.translations-buttons .btn-lang * {
        transition:.2s;
}
.translations-buttons .btn-lang.active {
        cursor:default;
        background: #f0f0f0;
        border: solid 1px #c0c0c0;
        border-bottom: none;
}
.translations-buttons .btn-lang .lang-flag {
        width:16px;
        position: relative;
}
.translations-buttons .btn-lang:not(.active):before {
        content: '';
        height: 2px;
        position: absolute;
        left: -1px;
        right: -1px;
        bottom: 0;
        background: linear-gradient(0deg, rgba(0, 0, 0, .05) 0%, rgba(0, 0, 0, 0) 100%);
}
.translations-buttons .btn-lang:not(.active) * {
        opacity: .5;
}
.translations-buttons .btn-lang.pending,
.translations-buttons .btn-lang.refused {
        padding-right: 23px;
        position: relative;
}
.translations-buttons .btn-lang.pending:after,
.translations-buttons .btn-lang.refused:after,
#catalog-edit ul.nav li.catalog-tab.pending a:after,
#catalog-edit ul.nav li.catalog-tab.refused a:after {
        content: '';
        background-image: url(../img/glyphicons/print.php?icon=638-triangle-alert&color=ffffff);
}
.translations-buttons .btn-lang:after,
#catalog-edit ul.nav li.catalog-tab a:after{
        background-position: center 0px;
        background-repeat: no-repeat;
        background-size: 12px 12px;
        display: inline-block;
        position: absolute;
        border-radius: 4px;
        width: 14px;
        height: 13px;
}
.translations-buttons .btn-lang:after {
        top: 4px;
        right: 3px;
}
#catalog-edit ul.nav li.catalog-tab a:after{
        top: 50%;
        right: 6px;
        transform: translateY(-50%);
}

.translations-buttons .btn-lang.pending:after,
#catalog-edit ul.nav li.catalog-tab.pending a:after{
        background-color: #f0ad4e;
}
.translations-buttons .btn-lang.refused:after,
#catalog-edit ul.nav li.catalog-tab.refused a:after{
        background-color: #d9534f;
}
#catalog-edit ul.nav li.catalog-tab.validated a:after{
        background-color: #5cb85c;
}
#catalog-edit .btn-change-text-statuses {
        padding-left: 30px;
        background-image: url(../img/glyphicons/print.php?icon=153-square-checkbox&color=ffffff);
        background-repeat: no-repeat;
        background-size: 19px;
        background-position: left 7px top 4px;
}
#catalog-edit .input-description {
        margin-top:5px;
}
#catalog-edit .has-revisions .input-description {
        float:left;
}
#catalog-edit .module-datum-text-instructions {
        margin-top: -5px;
}
#catalog-edit .has-revisions .module-datum-text-instructions {
        margin-top: -15px;
        margin-bottom: 30px;
}
#modal-change-all-text-statuses .modal-dialog {
        width: 400px;
}

/*.translations-buttons .btn-lang.refused .lang-flag {*/
/*        border:solid 2px red;*/
/*}*/
.translations-buttons:not(.mce-field) .btn-lang.active .lang-flag {
        border: solid 1px;
}
.translations-buttons.mce-field .btn-lang.active {

}
.input.has-revisions {
        margin-bottom:50px;
}
.input.has-revisions .revisions-btn.btn {
        margin-left: 0px;
        margin-top: 4px;
        opacity: 1;
        color: #999 !important;
        font-size: 9px;
        display: inline-flex;
        align-items: center;
        position: absolute;
        top: 100%;
        right: 0px;
        padding: 1px 5px;
}
.input.has-revisions .revisions-btn img {
        width:12px;
        opacity: 0.4;
        margin-right: 2px;
}
.input.has-revisions .revision-status-switcher {
        position: absolute;
        top: 100%;
        right: 102px;
        margin-top: 4px;
        text-align: center;
        z-index: 3;
}
.input.has-revisions .revision-status-switcher .btn {
        padding-top: 0px;
        padding-bottom: 0px;
        font-size: 10px;
        min-width: 90px;
}
.input.has-revisions .revision-status-switcher .btn.active {
        background-position: right 5px center;
}
.input.has-revisions:not(.wysiwyg)  .revisions-btn.btn {
        top: 48%;
        right: 10px;
}
.input.has-revisions:not(.wysiwyg) .revision-status-switcher {
        top: 48%;
        right: 112px;
}
.input.has-revisions:not(.wysiwyg) {
        margin-bottom:15px;
}
#revisions-modal .modal-dialog {
        width:850px;
}
/*.revisions-list tr.revision-detail td {*/
/*        max-height:90px;*/
/*        overflow-x:auto;*/
/*        overflow-y:auto;*/
/*        background:#e4f1ff;*/
/*}*/
.revisions-list {
        width:100%;
}
.revisions-list table {
        margin:0;
}
.revisions-list .revisions-list-cell {
        padding:0;
        width:400px;
}
.revisions-list .revisions-list-cell .revisions-list-inner,
.revisions-list .revision-preview .preview {
        height:500px;
        overflow-y:scroll;
}
.revisions-list .revisions-list-cell .revisions-list-inner table {
        margin:0;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr td {
        transition:background .2s;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr:hover td {
        background:#e4f1ff;
        cursor:pointer;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr td.revision-item {
        position:relative;
        display:flex;
        gap:20px;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr td.revision-item .revision-info {
        flex-grow: 1;
        line-height: 1.2;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr td.revision-item .revision-status {
        align-self: center;
        order: -1;
        width: 90px;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr td.revision-item .revision-status .alert {
        margin: 0;
        font-size: 10px;
        padding-top: 2px;
        padding-bottom: 3px;
        font-weight: normal;
        width: 100%;
        text-align: center;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr td.revision-item .btn-view-revision {
        /*position:absolute;*/
        /*right:10px;*/
        /*top:50%;*/
        /*transform:translateY(-50%);*/
        opacity:.2;
        transition:opacity .2s;
        align-self: center;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr:hover td.revision-item .btn-view-revision {
        opacity:.4;
}
.revisions-list .revisions-list-cell .revisions-list-inner tr.active td.revision-item .btn-view-revision {
        opacity:.7;
}
.revisions-list .revision-preview {
        padding:0;
        position:relative;
}
.revisions-list .revision-preview .preview {
        padding:10px;
}
.revisions-list .revision-preview .revision-actions {
        position:absolute;
        bottom:10px;
        left:10px;
        right:10px;
        text-align: center;
}
/*.revisions-list .revision-value {*/
/*        white-space:nowrap;*/
/*        overflow:hidden;*/
/*        text-overflow:ellipsis;*/
/*        font-style:italic;*/
/*}*/
/*.revisions-list .btn-apply-revision,*/
/*.revisions-list .btn-close-revision {*/
/*        display:none;*/
/*}*/
/*.revisions-list tr.active .btn-apply-revision,*/
/*.revisions-list tr.active .btn-close-revision {*/
/*        display:inline-block;*/
/*}*/
/*.revisions-list tr.active .btn-view-revision {*/
/*        display:none;*/
/*}*/
.revisions-list tr.active td:first-child {
/*.revisions-list .revision-detail td:first-child {*/
        border-left:solid 2px #5bc0de;
}
/*.revisions-list .revision-date {*/
/*        width: 135px;*/
/*}*/
/*.revisions-list .revision-actions {*/
/*        width: 145px;*/
/*}*/
/*.revision-detail {*/
/*        position:relative;*/
/*        padding-right:150px;*/
/*}*/
/*.revision-actions {*/
/*        position: absolute;*/
/*        right: 10px;*/
/*        top: 50%;*/
/*        transform: translateY(-50%);*/
/*}*/
/*#revisions-modal .modal-body .revisions-list,*/
/*#revisions-modal .modal-body .revision-preview {*/
/*        width:50%;*/
/*        height:400px;*/
/*}*/
/*#revisions-modal .modal-body .revisions-list tbody {*/
/*        overflow:scroll;*/
/*}*/
/*#revisions-modal .modal-body .revision-preview {*/
/*        overflow:scroll;*/
/*} */
.text-display-wrapper {
        position: relative;
        margin-top: 10px;
        margin-bottom: 40px;
}
.text-display-wrapper label{
        position: static;
        width: 100%;
        /*flex-direction: row-reverse;*/
        border-bottom: 1px solid #ddd;
        padding-bottom: 4px;
        margin-bottom: 10px;
}
.text-display-wrapper .translations-buttons {
        position: absolute;
}
.text-display {
        padding: 10px 20px;
        margin: 0 0 20px;
        /*border-left: 5px solid #eee;*/
}
.text-display h1:first-child,
.text-display h2:first-child {
        margin-top: 0;
}
.text-display-wrapper.has-translations .translations-buttons {
        top:-3px;
}
.text-display-wrapper.has-translations .translations-buttons .btn-lang {
        border-bottom: solid 1px #e3e3e3;
}

.ganesh-loading {
        display: inline-block;
        position: relative;
        width: 80px;
        height: 80px;
}
.ganesh-loading div {
        position: absolute;
        width: 20.3125%;
        height: 20.3125%;
        border-radius: 50%;
        background: #013F51;
        animation: ganesh-loading 1.2s linear infinite;
}
.ganesh-loading div:nth-child(1) {
        top: 9.375%;
        left: 9.375%;
        animation-delay: 0s;
}
.ganesh-loading div:nth-child(2) {
        top: 9.375%;
        left: 40.625%;
        animation-delay: -0.4s;
}
.ganesh-loading div:nth-child(3) {
        top: 9.375%;
        left: 70.3125%;
        animation-delay: -0.8s;
}
.ganesh-loading div:nth-child(4) {
        top: 40.625%;
        left: 9.375%;
        animation-delay: -0.4s;
}
.ganesh-loading div:nth-child(5) {
        top: 40.625%;
        left: 40.625%;
        animation-delay: -0.8s;
}
.ganesh-loading div:nth-child(6) {
        top: 40.625%;
        left: 70.3125%;
        animation-delay: -1.2s;
}
.ganesh-loading div:nth-child(7) {
        top: 70.3125%;
        left: 9.375%;
        animation-delay: -0.8s;
}
.ganesh-loading div:nth-child(8) {
        top: 70.3125%;
        left: 40.625%;
        animation-delay: -1.2s;
}
.ganesh-loading div:nth-child(9) {
        top: 70.3125%;
        left: 70.3125%;
        animation-delay: -1.6s;
}
@keyframes ganesh-loading {
        0%, 100% {
                opacity: 0.5;
        }
        50% {
                opacity: 0.2;
        }
}
/* .modal-dialog .ganesh-loading{
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: calc(50% - 64px);
        z-index: 99999;
} */
.modal-dialog .ganesh-loading{
        margin-left:auto;
        margin-right:auto;
        display:block;
}

/*
 * Loader
 */
#loader-overlay {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(45, 45, 45, 0.7);
        z-index: 999999;
}
#loader-overlay-progress {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 20px;
        background: #2499b8;
        border-radius: 12px;
        box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.2);
}
#loader-overlay-progress .title {
        color: #fff;
        font-weight: 700;
        font-size: 16px;
        pointer-events: none;
        padding: 0 20px;
        text-align: center;
}
#loader-overlay-progress .progress {
        border-radius: 12px;
        height: 26px;
        box-shadow: 2px 2px 60px 4px rgba(0, 0, 0, 0.1);
        margin-bottom: 0;
        margin-top: 11px;
}
#loader-overlay-progress .progress .progress-bar.progress-bar-striped.active {
        background-color: #2499b8;
        background-image: -webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
        background-image: -o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
        background-image: linear-gradient(45deg,rgba(255,255,255,.7) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.7) 50%,rgba(255,255,255,.7) 75%,transparent 75%,transparent);
        -webkit-background-size: 40px 40px;
        background-size: 40px 40px;
        animation: progress-bar-stripes 2s linear infinite;
}
#loader-overlay-progress .progress .progress-bar.progress-bar-striped.active.undeterminate {
        width: 100%;
}


/**
 *  Redéfinition des styles de bootstrap :
 */
pre {
        font-family:inherit;
}
.form-control {
        font-size: 11px;
        height: 30px;
        line-height:30px;
}
input[type="file"].form-control{
        line-height: normal;
}
.btn {
        font-size: 11px;
        white-space: normal;
        outline: none !important;
        font-weight:600;
}
.btn-sm {
        padding: 2px 10px;
}
.btn-xs .glyphicon {
        font-size:10px;
}
.btn.inactive {
        cursor:auto;
        cursor:not-allowed;
}
.btn-primary {
    color: #fff;
    background-color: #2499b8;
    border-color: #1a819c;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
        background-color: #1a86a2;
        border-color: #14758e;
}
.btn-lg, .input-lg {
        font-size:13px;
}

h1 small {
        font-size: inherit;
        color: #2499b8;
        font-size: 0.65em;
}
h2 small, .h2 small {
        font-size: 14px;
        color: #999;
}
.btn-default,
.modal a.btn.btn-default {
        color: #5B5F6D !important;
}
.column-filters-btn .glyphicon,
td.actions .glyphicon,
.column-actions .glyphicon {
        font-size: 14px;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control,
.form .chosen-container.chosen-disabled .chosen-single {
        background-color: #F5F5F5 !important;
        font-weight: bold;
        opacity: 1 !important;
        cursor: not-allowed;
}
select[readonly]{
        pointer-events: none;
        cursor: not-allowed;
}
.form .chosen-disabled.chosen-container a{
        color: #555 !important;
}
.right-col.form .form-control input[type="checkbox"] {
        margin-right:10px;
}
.right-col.form .form-control input[type="checkbox"] + label {
        position:relative;
        top:-2px;
}
.submit .btn-success {
        text-transform:uppercase;
}
label small {
        font-weight:normal;
        font-size:12px;
}
.input-description {
        font-style: italic;
        display: block;
        font-size: 11px;
        color: var(--ganesh-core-background-color);
}
label .input-description {
        margin-top: 3px;
}
.input + .input-description {
        margin-top:-10px;
        margin-bottom:10px;
}
.input-description .glyphicon {
        font-size: 12px;
}
div.input:has(+ .input-message)
{
        margin-bottom: 2px;
}
.input-message{
        font-size: 11px;
        color: #777;
}
.input-message .glyphicon {
        font-size: 11px;
}
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
        margin:1px 0 0 -21px;
}
.radio input[type="radio"],
.radio-inline input[type="radio"] {
        margin:1px 0 0 -19px;
}
.radio-inline.disabled{
        cursor: not-allowed;
        opacity: 0.7;
}
#content .checkbox-inline {
        padding-top:0;
        vertical-align:top;
        line-height:1.75;
}
#content .checkbox-inline input[type="checkbox"] {
        width:14px;
        height:14px;
        background-size: 80% 80%;
        position: relative;
        top: 1px;
}
#content .modal label.checkbox-inline input[type="checkbox"] {
        top: 0px;
}
.radio,
.checkbox {
        margin-top:0;
        margin-bottom:15px; /* same as .input */
        padding-left:23px;
}
.radio:last-child,
.checkbox:last-child {
        margin-bottom:0;
}
#content .dropdown-toggle::after,
.modal .dropdown-toggle::after {
        display: inline-block;
        width: 0;
        height: 0;
        margin-left: .255em;
        vertical-align: .255em;
        content: "";
        border-top: .3em solid;
        border-right: .3em solid rgba(0, 0, 0, 0);
        border-left: .3em solid rgba(0, 0, 0, 0);
}
span.glyphicon.glyphicon-eye-open,
span.glyphicon.glyphicon-print {
        margin: 0 2px;
}
.form-control[type=time] {
        padding-left: 5px;
        padding-right: 5px;
        text-align: center;
}
.input-sm {
        height: 22px;
        padding: 5px 5px;
}
select.input-sm {
        height: 22px;
        padding: 0px 5px;
}
.form-inline label {
        margin-right: 5px;
}
.input-group-addon {
        border-left: 0;
        height: 30px;
        padding: 0 6px;
        background-color: #fff;
}
input[type="checkbox"],
input[type="checkbox"].form-control {
        width: 16px;
        height: 16px;
        -webkit-appearance: none;
        -moz-appearance: none;
        -o-appearance: none;
        appearance: none;
/*        background: url(../img/checkbox.svg);
        background-size: 100% 100%;
        background-repeat: no-repeat;*/
        box-shadow: none;
        border-radius:4px;
        background: #fff;
        background-repeat: no-repeat;
        background-position: 1px 1px;
        transition:background .2s;
}
input[type="checkbox"]:checked,
input[type="checkbox"].form-control:checked {
        background-color:#2499b8;
        background-image:url(../img/checkbox-tick.svg);
        /*background-size:80% 80%;*/
}
/*input[type="checkbox"]:focus
input[type="checkbox"].form-control:focus {
        background:url(../img/checkbox-focus.svg);
}*/
input[type="checkbox"],
input[type="checkbox"]:checked,
input[type="checkbox"]:focus,
input[type="checkbox"].form-control,
input[type="checkbox"].form-control:checked,
input[type="checkbox"].form-control:focus {
        border: solid 1px #2499b8;
        box-shadow: 1px 1px 4px -1px rgba(0, 0, 0, 0.2);
        outline:none;
}
input[type="checkbox"]:indeterminate,
input[type="checkbox"].form-control:indeterminate {
        border-color:#c09853;
        background-color:#fcf8e3;
        background-image:url(../img/checkbox-indeterminate.svg);
}
input[type="radio"] {
        -webkit-appearance: none;
        -moz-appearance: none;
        -o-appearance: none;
        appearance: none;
        border: solid 1px #2499b8;
        width: 13px;
        height: 13px;
        border-radius: 50%;
        position:relative;
        cursor:pointer;
}
input[type="radio"]:checked:after {
        content:'';
        position:absolute;
        width: 7px;
        height: 7px;
        left: 2px;
        top: 2px;
        border-radius:50%;
        overflow:hidden;
        background: #2499b8;
}
input[type="radio"],
input[type="radio"]:checked,
input[type="radio"]:focus,
input[type="radio"].form-control,
input[type="radio"].form-control:checked,
input[type="radio"].form-control:focus {
        border: solid 1px #2499b8;
        box-shadow: 1px 1px 4px -1px rgba(0, 0, 0, 0.2);
        outline:none;
}
.alert {
        padding: 10px;
        font-weight: bold;
}
.alert.alert-xs{
        /*width: 100%;*/
        margin-top: 10px;
        margin-bottom: -5px;
        font-size: 10px;
        padding: 4px 8px;
}
.alert.alert-xxs {
        padding: 1px 4px;
        font-size:10px;
}
select.alert {
        padding: 0 10px;
}
p + .alert {
        margin-top:15px;
}
.alert:last-child {
        margin-bottom:0;
}
.alert ul {
        padding-left:20px;
}
.alert ul li:not(:last-child) {
        margin-bottom:10px;
}
.alert.alert-inline {
        display:inline-block;
        padding: 4px 7px 5px;
}
.modal {
        text-align: center;
}
@media screen and (min-width: 768px) { 
        .modal:before {
                display: inline-block;
                vertical-align: middle;
                content: " ";
                height: 100%;
        }
}
.modal-dialog {
        display: inline-block;
        text-align: left;
        vertical-align: middle;
        padding: 0;
}
.modal .modal-header .status-wrapper {
        position: absolute;
        top: 20px;
        right: 20px;
}
.modal .modal-header .status-wrapper .alert {
        padding: 7px 15px;
}

/*
 * Panels
 */
.panel {
        color: #333;
        margin-bottom: 20px;
        border:none;
        box-shadow:0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
}
#right-col-content > .panel {
        position:relative; /* concerne les panels placés directement dans la page, sans #right-col-inner / sert au positionnement des boutons .page-title-side-btns */
}
.panel-heading {
        padding: 9px 15px 7px 15px;
        color: #ffffff;
        background: var(--primary-bright-background-color);
        font-weight: 500;
        text-transform: uppercase;
        font-family:Montserrat;
        position:relative;
}
.panel.active .panel-heading {
        background: #2499b8;
}
.panel-heading a {
        color:inherit !important;
        text-decoration:none;
}
.panel-heading small {
        text-transform: none;
        opacity: .75;
        /*display: block;*/
}
.panel-footer {
        padding: 10px 15px;
        background-color: #e2e2e2;
        border-top: 1px solid #ccc;
        color: #555;
}
.modal .panel,
.modal fieldset {
        box-shadow:none;
        border: none;
        border-right: solid 1px #ddd;
        border-radius:0;
        border-bottom: none;
        margin-bottom: 0px;
        padding-bottom: 10px;
        overflow:visible;
}
.modal .panel-heading {
        padding-left:35px;
        /*        font-size: 10px;
        padding: 9px 15px 6px 15px;*/
        /* background: #777; */
        /*background:#9c9c9e;*/
        border-radius:0 !important;
        position: relative;
        z-index: 2;
}
.modal .panel-sm .panel-heading {
        padding-left: 15px;
        padding-top: 8px;
        padding-bottom: 6px;
}
.panel-heading .active {
        font-weight: bold;
        color: #6ec1d8;
}
.panel-heading .active em {
        font-weight: 100;
}
.modal .panel-heading.inactive,
.modal fieldset legend.inactive {
        background:#ddd;
        color:var(--ganesh-core-background-color);
        font-weight:600;
}
.panel-heading .right > * {
        display:block;
        float:left;
        margin-left:10px;
        padding-left:10px;
        border-left:solid 1px rgba(255, 255, 255, .5);
        font-size:10px;
        font-weight:bold;
        line-height: 2.1;
        vertical-align: middle;
        height: 20px;
}
.panel-heading .right {
        position: relative;
        top: -1px;
}
.panel-heading .right > *:first-child {
        border-left:none;
}
.panel-heading .right a {
        text-decoration:none;
}
.panel-heading .right label {
        margin-bottom:0;
}
.panel-heading .right .glyphicon {
        font-size:12px;
        font-weight:normal;
}
.panel-heading .right input[type="checkbox"] {
        width:14px;
        height:14px;
        vertical-align:top;
        position: relative;
        top: 2px;
        margin-right: 2px;
}
.panel-heading .right .btn {
        padding-top: 0;
        line-height: 1.9;
}
.panel-heading.warning {
        background-color:#e6b854;
}
.panel-heading.warning .right input[type="checkbox"] {
        border-color: #ca8019;
}
.panel-heading.warning .right input[type="checkbox"]:checked {
        background-color: #ca8019;
}
.panel-title {
        text-transform: uppercase;
        font-family: Montserrat;
        font-size: 13px;
        font-weight: 400;
}
.panel-title .glyphicon {
        font-size: 13px;
        margin-right: 3px;
        line-height:0;
}
.panel-body-inner {
        padding:10px;
}
.panel-body-inner > .input:last-child {
        margin-bottom:0;
}
.modal .panel-body-inner {
        padding-left: 20px;
        padding-right: 20px;
}
.panel-heading .right input[type="checkbox"],
.panel-heading .right input[type="radio"] {
        margin-top:0;
}
.panel.disabled .panel-heading {
        opacity:.5 !important;
}
.panel.collapsible .panel-heading {
        cursor:pointer;
        user-select:none;
        padding-right: 35px;
        transition:all .3s;
}
.panel.collapsible .panel-heading > * {
        transition:opacity .3s;
}
.panel.collapsible.collapsed .panel-heading {
        opacity:.78;
}
.panel.collapsible.collapsed .panel-heading.warning {
        opacity:.85;
}
.panel.collapsible .panel-heading:before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 2px;
        background: #5c5c67;
        background-size: 100% 100%;
        transition: opacity .3s;
        opacity: 0;
}
.panel.collapsible .panel-heading.warning:before {
        background: #d4a540;
}
.panel.collapsible.collapsed .panel-heading:before {
        opacity:.5;
}
.panel.collapsible.collapsed .panel-heading:hover:before {
        opacity:0;
}
.panel.collapsible.collapsed .panel-heading:hover {
        opacity:1;
}
.panel.collapsible .panel-heading:after {
        content: '';
        position: absolute;
        top: 14px;
        right: 12px;
        background: url(../img/toggler-btn-reverse-light.png);
        width: 8px;
        height: 5px;
        mix-blend-mode: color-dodge;
}
.panel.collapsible.collapsed .panel-heading:after {
        top:14px;
        background:url(../img/toggler-btn-light.png);
}
/*.panel.collapsible .panel-heading:before {
        content: '';
        position: absolute;
        top: 15px;
        left: 12px;
        background: url(../img/toggler-btn-reverse.png);
        width: 8px;
        height: 5px;
}
.panel.collapsible.collapsed .panel-heading:before {
        top:16px;
}
.panel.collapsible.collapsed .panel-heading:before {
        background:url(../img/toggler-btn.png);
}*/
.panel.collapsible .panel-body {
        padding:0;
}
.panel.collapsible .panel-body-inner {
        padding:10px 20px;
}
.modal .panel.collapsible .panel-body-inner {
        padding:20px 35px;
}
.panel.collapsible.collapsed .panel-body {
        /*padding:0;*/
        height:0;
        overflow:hidden;
}
.panel.collapsible.collapsing {
        height:auto;
        overflow:visible;
}
.panel.collapsible.collapsing .panel-body {
        overflow:hidden;
}
.panel ul.panel-list {
        list-style: none;
        padding: 0;
        margin:0;
        position:relative; /* pour calcul de la position des enfants en JS */
}
.panel ul.panel-list li a {
        padding: 7px 10px 6px 15px;
        border-bottom: solid 1px #dadada;
        display: block;
        text-decoration: none;
        font-size: 11px !important;
        color:var(--ganesh-core-background-color) !important;
        transition:background .2s;
}
.panel ul.panel-list li:last-child a {
        border-bottom:none;
}
.panel ul.panel-list li:not(.active) a:hover {
        background-color:#d7e5ea;
}
.panel ul.panel-list li.active a {
        background:#2499b8;
        color:#fff !important;
}
.panel ul.panel-list li.before-active a {
        background:#e4f1ff;
}
/*.panel ul.panel-list li.before-active a:hover {
        background:#d7e5ea;
}*/
textarea.form-control {
        line-height:20px; /* pour aligner sur la hauteur des input:text */
        padding-top: 4px;
        padding-bottom: 4px;
        resize:vertical;
}
.panel-stripped {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 10;
}


/**
 * TinyMCE :
 */
.mce-container.mce-statusbar {
        display:none;
}
.mce-container .mce-i-insert.ganesh_dynamic_data {
        color: #007596;
}
.modal .mce-btn button {
        padding: 0px 8px;
}
.mce-btn .mce-txt {
        font-size:12px !important;
}


/**
* Chosen
*/
.form .chosen-container .chosen-choices{
        min-height: 30px !important;
        border-radius: 4px;
}
.form .chosen-container-multi .chosen-choices li.search-field input[type=text]{
        height: 26px !important;
}
.chosen-container-multi .chosen-choices {
        border-color:#CCC;
}
.modal .chosen-container .chosen-choices{
        border-radius: 4px;
}
#content .chosen-container-single .chosen-default{
        color: #999;
        font-size: 12px;
        font-weight: normal;
        text-transform: none;
}
.form .chosen-container-single .chosen-single,
.modal-content .chosen-container-single .chosen-single,
#content .modal-content .chosen-container-single .chosen-single{
        display: block;
        width: 100%;
        height: 30px;
        padding: 6px 12px;
        font-size: 12px;
        line-height: 1.428571429;
        color: #555;
        vertical-align: middle;
        background: none;
        border: 1px solid #ccc;
        border-radius: 4px;
        -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
        box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
        -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
        transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.modal-content .chosen-container-single .chosen-single{
        background-image: none !important;
}
.form .chosen-container .chosen-single{
        background-color: white !important;
}

#content .chosen-container-active.chosen-with-drop .chosen-single{
        background-image: none;
}

.modal-content .chosen-container-active.chosen-with-drop .chosen-single div b,
#content .chosen-container-active.chosen-with-drop .chosen-single div b {
        background-position: -18px 9px;
}
.modal-content .chosen-container-single .chosen-single div b,
#content .chosen-container-single .chosen-single div b {
        background-position: 0 6px;
}
.chosen-container .chosen-results li.highlighted {
        background: #2499b8 !important;
}

/**
* Context menu
*/
.context-menu-list .context-menu-item {
        padding: 2.4px 24px 3.4px 24px;
}
.context-menu-item.context-menu-disabled {
        color: #999;
        cursor: default;
        background-color: #fff;
        font-weight: 600;
}
.context-menu-item.context-menu-icon-selected {
        background-color: #ddd !important;
        color: #777 !important;
}
.context-menu-list .context-menu-item.context-menu-hover {
        background:#2499b8;
}
.context-menu-list .context-menu-separator {
        padding:0;
}
.context-menu-list .context-menu-list .context-menu-separator {
         margin: .2em 0;
}
.context-menu-list li.context-menu-item.context-menu-html:first-child { /* = libellé du contextMenu */
        background: #d4d4d4;
        color: #747474;
        margin-top: -0.25em;
        margin-bottom: 0.25em;
        padding-bottom: 0.5em;
        padding-top: 0.45em;
        text-transform: uppercase;
        font-weight: 600;
        border-bottom: solid 1px #ccc;
        box-shadow: inset 0px -10px 4px -10px rgb(0 0 0 / 15%);
        font-size: 11px;
}
.context-menu-list .context-menu-icon::before {
        color: #2499b8;
        font-size: 11px;
        width: auto;
        top: 9px;
        left: 7px;
        font-family: "Glyphicons Halflings";
        position: absolute;
}
.context-menu-list .context-menu-icon.grey-icon:before {
        color:#888;
}
.context-menu-list .context-menu-icon.context-menu-hover.grey-icon:before {
        color:#fff;
}
.context-menu-list .context-menu-icon-edit:before {
        content:"\e065";
}
.context-menu-list .context-menu-icon-eye-open:before {
        content:"\e105";
}
.context-menu-list .context-menu-icon-message:before {
        content:"\2709";
}
.context-menu-list .context-menu-icon-print:before {
        content:"\e045";
}
.context-menu-list .context-menu-icon-eye-close:before {
        content: "\e106";
        top: 10px;
}
.context-menu-list .context-menu-icon-briefcase:before {
        content: "\1f4bc";
}
.context-menu-list .context-menu-icon-list-alt:before {
        content: "\e032";
        font-size: 12px;
        left: 6px;
}
.context-menu-list .context-menu-icon-share-alt:before {
        content: "\e095";
}
.context-menu-list .context-menu-icon-share:before {
        content: "\e066";
}
.context-menu-list .context-menu-icon-user:before {
        content: "\e008";
}
.context-menu-list .context-menu-icon-picture:before {
        content: "\e060";
}

/**
 *  Menu gauche :
 */
#left-menu {
        position: fixed;
        top: 43px;
        bottom: 30px;
        height: auto;
        padding: 0;
        padding-left: 20px ;
        overflow:auto;
        z-index:1;
}
#left-menu:after {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        height: 100%;
        width: 7px;
        background: url('../img/left-menu-shadow.png') repeat-y top right;
        z-index: 10;
        display: none;
}
#left-menu,
#sidr-left {
        font-family:'Montserrat', sans-serif;
}
#left-menu.mCS_no_scrollbar:after {
        right:0;
}
#left-menu:after {
        right: 5px;
}
#left-menu h5 {
        margin: 0;
}
#left-menu label {
        font-weight:500;
}
#left-menu-mobile-toggler {
        display:none;
}
#left-menu-mobile-toggler svg{
        fill: var(--primary-background-color);
}
/* #left-menu .mCSB_inside > .mCSB_container {
        margin-right: 5px;
        padding-bottom:5px;
} */
#left-menu.mCS_no_scrollbar .mCSB_inside > .mCSB_container {
        margin-right: 0;
        overflow: initial;
}
#left-menu .mCSB_scrollTools {
        width:5px;
        opacity:0.45;
        right:0px;
        transition-duration: .3s;
        top:20px;
        bottom:20px;
}
#left-menu .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
        background: var(--primary-color);
}
#left-menu .mCSB_inside > .mCSB_container {
        margin-right: 0px;
}
#sidr-left .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
    margin-right: 0;
}
#left-menu .mCSB_scrollTools .mCSB_draggerRail,
#sidr-left .mCSB_scrollTools .mCSB_draggerRail {
        background:none;
        border-radius:0;
}
#left-menu .mCSB_scrollTools .mCSB_draggerContainer {
        top:0px;
        bottom:0px;
}
#sidr-left .mCSB_scrollTools .mCSB_draggerContainer {
        top: 10px;
        bottom: 10px;
}
#left-menu .mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
#left-menu .mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,
#left-menu .mCustomScrollBox:hover > .mCSB_scrollTools,
#left-menu .mCustomScrollBox:hover ~ .mCSB_scrollTools,
#left-menu .mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
#left-menu .mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools {
        opacity:.75;
}
#sidr-left .mCSB_scrollTools {
        opacity: 0.35;
}
#sidr-left .mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
#sidr-left .mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,
#sidr-left .mCustomScrollBox:hover > .mCSB_scrollTools,
#sidr-left .mCustomScrollBox:hover ~ .mCSB_scrollTools,
#sidr-left .mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
#sidr-left .mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools {
        opacity:0.55;
}
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
        background-color:#2e2f33;
}
.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
        background-color:#2499b8;
}


/**
 *  Colonne de contenu :
 */
#content .right-col,
#right-col-content {
        margin-left: 319px;
        padding-top: 20px;
        padding-left: 0;
        padding-bottom: 20px;
        border-bottom:solid 2px white;
        border:none;
        position:relative;
        padding-right: 0;
}
#full-width-content {
        padding-left: 40px;
}

/**
 * Contenu principal :
 */
 #content {
        position: relative;
        margin: 45px 10px 1px 170px;
        background-color: #EBF0F3;
        border-radius: 4px;
        color: #2e2f33;
        /* box-shadow:0 1px 7px 0 rgba(0,0,0,.15), 0 2px 8px -1px rgba(0,0,0,.15), 0 9px 10px 0 rgba(0,0,0,0.1); */
        min-height: calc(100vh - 56px); /* 56px equivaux au total entre la barre supérieur et la partie apparante du footer */
        transition: margin var(--hover-transition-duration);
}
#content.loading{
        max-height: calc(100vh - 56px);
        pointer-events:none;
}
#content #content-inner{
        opacity: 1;
        transition: opacity .2s ease-out;
}
#content.loading #content-inner {
        opacity: 0;
}
#content > .ganesh-loading {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 999;
}
#content-overlay {
        /*background: rgba(1, 63, 81, 0.8);*/
        background: rgba(197, 197, 197, .75);
        visibility:hidden;
        opacity:0;
        transition:visibility 0s linear 0.2s,opacity 0.2s linear;
        position: absolute;
        top: 0px;
        right: 0px; /* pour responsive */
        left: 0;
        bottom: 0;
        z-index: 4;
}
#content-overlay.visible {
        visibility:visible;
        opacity:1;
        transition-delay:0s;
}
.anchor { /* à ajouter aux ancres pour passer en dessous du menu (+20px) */
        display:block;
        position:relative;
        top:-79px;
        visibility:hidden;
}
a {
        text-decoration:underline;
}
.nav a,
.btn a,
a.btn,
a.tree-item-inner,
#home-actions-list a, 
#home-message-list a,
.table td a {
        text-decoration:none;
}
#content .table td a {
        font-weight:600;
        color: #555;
}
.table td a:hover {
        text-decoration:underline;
}
.table td a.btn:hover {
        text-decoration:none;
}
/*#content a {*/
/*        color: #2e2f33;*/
/*}*/
/*#content a.btn-success,*/
/*#content a.btn-primary,*/
/*#content a.btn-warning,*/
/*#content a.btn-danger,*/
/*#content a.btn-info {*/
/*        color:#fff !important;*/
/*}*/
#content .dropdown-menu>li>a,
#content .chosen-container a {
        color:#333; /* rétablit la couleur des items dans les menus dropdown et dans les select chosen */
}
#content > section.col-md-10 {
        /*background-color: #fff;*/

        min-height: 100%;
        padding-top: 20px;
        padding-left: 30px;
}
#content > section.col-md-12 {
        min-height: 100%;
}
.page-title {
        font-size: 30px;
        color: #2e2f33;
        text-transform: uppercase;
        border-bottom: solid 2px white;
        margin-bottom: 25px;
        padding-bottom: 10px;
        font-weight: 100;
        margin-bottom: 5px;
        border: none;
        padding-top: 0;
        margin-top:0px;
        /*text-shadow: 1px 1px 7px rgba(0, 0, 0, .2);*/
        font-family:Montserrat;
}
.page-title strong {
        font-weight: 400;
}
.page-title small strong {
    font-weight: 500;
}
.page-title .glyphicon {
        top:0;
        font-size: 24px;
}
.page-title .page-title-right {
        margin-top: 2px;
        font-size: 19.5px;
        text-transform: none;
        display: inline-block;
}
.page-title .page-title-right:before {
        content:' - ';
}
.page-title .page-title-right small {
        font-size: 10px;
        text-transform: lowercase;
}
.page-title .page-title-under { 
        font-size: 0.65em; 
        text-transform: none; 
        display:block; 
        margin-top: 5px;
}
.page-title .author-info {
        font-size: 12px;
        color: #777;
        margin-top: 5px;
        text-transform: none;
}
#page-title-side-btns-toggler{
        display: none;
        position: absolute;
        top: 19px;
        right: 35px;
        padding: 3px 4px 0px 4px;
        background: #fff;
        border-radius: var(--ganesh-border-radius);
        box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
        cursor: pointer;
        z-index: 2;
}
.show-actions-toggler #page-title-side-btns-toggler{
        display: block;
}
#page-title-side-btns-toggler svg{
        width: 24px;
        fill: #2e2f33;
}
.page-title-side-btns {
        position: absolute;
        top:24px;
        right: 0px;
        font-weight: bold;
        font-size: 0;
}
.page-title-side-btns .alert {
        font-size:12px;
}
section.full-page .page-title-side-btns {
        top: 20px;
        right: 20px;
}
#right-col-inner .page-title-side-btns,
#right-col-inner-panels .page-title-side-btns {
        top: -44px;
        color:#2e2f33;
}
.show-actions-toggler .page-title-side-btns{
        display: none;
        flex-direction: column;
        z-index: 4;
        right: 38px;
}
.show-actions-toggler .page-title-side-btns.show-side-btns{
        display: flex;
}
.show-actions-toggler .page-title-side-btns .btn {
        border-radius: 0;
        text-align: left;
        margin-left: 0;
}
.show-actions-toggler .page-title-side-btns .btn .glyphicon {
        padding-right: 8px;
}
.show-actions-toggler .page-title-side-btns .btn:first-of-type {
        border-top-left-radius: var(--ganesh-border-radius);
        border-top-right-radius: var(--ganesh-border-radius);
}
.show-actions-toggler .page-title-side-btns .btn:last-of-type {
        border-bottom-left-radius: var(--ganesh-border-radius);
        border-bottom-right-radius: var(--ganesh-border-radius);
}

.page-title-side-btns label {
        font-size:12px;
        position: relative;
        top: 2px;
        margin-right: 5px;
}
.page-title-side-btns .btn {
        font-weight: bold;
        text-transform: uppercase;
        padding: 6px 10px 7px 10px;
        /*min-height: 31px;*/
        min-height: 29px;
        /* border-bottom: solid 1px #eee;         */
        /* border-bottom-left-radius: 0; */
        /* border-bottom-right-radius: 0; */
        position:relative;
        line-height: 1.5;
        margin-left: 10px;
        text-decoration:none;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
}
.page-title-side-btns .btn:not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-primary):not(.btn-info):not(.btn-alt) {
        background: #fff;
        color:#2e2f33;
}
.page-title-side-btns .btn.btn-alt {
        background-color: #6ec1d8;
        color: #fff !important;
        border-color: #63b3ca;
}
.page-title-side-btns .btn .glyphicon {
        padding-right: 4px;
        font-size:12px;
        line-height: 0;
}
.page-title-side-btns .btn .glyphicons {
        height: 16px;
        margin-bottom:1px;
}
#content .page-title-side-btns .btn .glyphicons path {
        fill:#2e2f33;
}
.page-title-side-btns .btn.icon-only {
        width: 26px;
        min-height: 0;
        height: 26px;
        line-height: 26px;
        vertical-align: middle;
        padding: 0;
}
.page-title-side-btns .btn.icon-only .glyphicon {
        padding: 0;
        line-height: inherit;
        top: -2px;
}
.page-title-side-btns .action-buttons,
.page-title-side-btns .submit-buttons {
        display:inline-block;
}

.submit-buttons .btn-save.invalid-form{
        background-color: #fff;
        border-color: #888;
        color: #999;
        cursor: not-allowed;
}

/**
 * Barre de navigation :
 */
#left-menu {
        /* padding: 0; */
}
#left-menu #accordion {
        margin-top: 10px;
}
#left-menu .panel-group .panel,
#sidr-left .panel-group .panel {
        border-radius: 0px;
        margin-bottom: 0px;
        background-color: #fff;
        border: 0px;
        -webkit-box-shadow: 0 0px 0px rgba(0, 0, 0, 0.05);
        box-shadow: 0 0px 0px rgba(0, 0, 0, 0.05);
}
#left-menu .panel,
#sidr-left .panel {
        overflow:hidden;
}
#left-menu .panel:last-child,
#sidr-left .panel:last-child {
        margin-bottom:0;
}
/*#left-menu .panel-title {
        font-size: 14px;
        font-weight: bold;
}*/
#left-menu .panel-default>.panel-heading,
#sidr-left .panel-default>.panel-heading {
        color: #999;
        background-color: #222;
        border-color: transparent;
        border-top-right-radius: 0px;
        border-top-left-radius: 0px;
        border-bottom: 1px solid #080808;
}
#left-menu .panel-body,
#sidr-left .panel-body {
        padding: 0;
}
nav #accordion .nav li a {
        color: #222;
}
.standard-blue-color {
        color: #3a87ad;
}
.standard-yellow-color {
        color: white;
        /* anciennement jaune ENSA */
}
#actions {
        padding-left: 35px;
        padding-top: 20px;
}

/**
 * Tableaux :
 */
table {
        margin: 10px 0;
        clear: both;
}
table a {
        color: #999;
}
.table {
        margin-bottom: 10px;
/*        border-radius: 4px;
        overflow:hidden;*/
        background: #fff;
        border-collapse: separate;
        border:none;
}
.table thead tr:first-child > th:first-child,
.table.headless tbody tr:first-child > td:first-child {
        border-top-left-radius: 4px;
}
.table thead tr:first-child > th:last-child,
.table.headless tbody tr:first-child > td:last-child {
        border-top-right-radius: 4px;
}
.table tbody tr:last-child > td:first-child,
.table tbody tr:last-child > th:first-child {
        border-bottom-left-radius: 4px;
}
.table tbody tr:last-child > td:last-child,
.table tbody tr:last-child > th:last-child {
        border-bottom-right-radius: 4px;
}
.table.headless > tbody > tr:first-child > th,
.table.headless > tbody > tr:first-child > td {
    border-top: solid 1px #e9e9e9;
}
table.dataTable:not(.DTCR_clonedTable) { /* .DTCR_clonedTable = classe ajoutée par le plugin colReorder de datatable */
    width: 100% !important;
}
.modal .table,
.panel.table-panel table {
        font-size: 11px;
}
.modal .table {
        box-shadow: 1px 1px 5px -1px rgba(0, 0, 0, .2);
}
.modal .table th {
        line-height: 1;
        padding-top: 9px;
        padding-bottom: 8px;
        padding-left: 10px;
}
/*.table-bordered {
        box-shadow: 0 1px 1px 0 rgb(219, 219, 219), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
}*/
.table.table-no-filter {
        margin-top: 0;
}
.table-bordered{
        /* border: 1px solid #ddd; */
        /*border-collapse: collapse;*/
}
.table-bordered tbody th {
        background:#6ec1d8;
        color:#fff;
}
.table-bordered>thead>tr>th,
.table-bordered>tbody>tr>th,
.table-bordered>tfoot>tr>th,
.table-bordered>thead>tr>td,
.table-bordered>tbody>tr>td,
.table-bordered>tfoot>tr>td {
        border:none;
        border-top: 1px solid #fff;
}
#datatable_wrapper {
        position:relative;
        clear:both;
        overflow-x: auto;
        overflow-y: visible;
}
#datatable.loading{
        min-height: 500px;
}
/*#datatable_wrapper.dt-bootstrap {
        overflow:hidden;
}*/
div.dataTables_length {
        float: left;
        /*width: 150px;*/
}
div.dataTables_length label {
        width: 100px;
        float: left;
        text-align: left;
        font-weight:bold !important;
        white-space: normal !important;
}
div.dataTables_length select {
        width: 75px;
        margin-bottom: 20px;
}
div.dataTables_filter {
        width: 184px;
        float: right;
        min-height: 65px; /* utile quand pas de pagination ni autres filtres */ 
}
div.dataTables_filter label {
        float: right;
        width: 184px;
        font-weight:bold !important;
        white-space: normal !important;
}
#datatable_wrapper div.dataTables_filter input {
        margin-left:0 !important;
        width:184px;
        /*border: solid 1px #767676;*/
        border-radius: 2px;
        margin-top:3px;
}
div.dataTables_info {
        padding-top: 8px;
        width: 200px;
        float: left;
}
div.dataTables_paginate {
        float: right;
        margin: 0;
        text-align: right;
}
div.dataTables_paginate a {
        /*color:#4388cc !important;*/

        color: #5B5F6D !important;
        font-weight: bold;
        font-size: 10px;
}
.dataTables_wrapper.processing:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 190px;
        background: rgba(255, 255, 255, 0.6);
}
.bulk-actions-title {
        font-weight:bold;
}
#bulk-actions:invalid {
        color:#ccc;
}
#bulk-actions option[value="empty"][disabled] {
        display:none;
}
#bulk-actions option {
        color:#555;
}

.pagination>li>a:hover,
.pagination>li>span:hover,
.pagination>li>a:focus,
.pagination>li>span:focus {
    background-color: #dbdbdb;
}
.pagination>.active>a,
.pagination>.active>span,
.pagination>.active>a:hover,
.pagination>.active>span:hover,
.pagination>.active>a:focus,
.pagination>.active>span:focus {
    background-color: #2499b8;
        border-color: #FFF;
        cursor: default;
}
.pagination-sm>li:first-child>a, .pagination-sm>li:first-child>span, .pagination-sm>li:last-child>a, .pagination-sm>li:last-child>span {
        border-radius: 0;
}
div.dataTables_paginate li.active a {
        color: white !important;
}
div.dataTables_paginate ul.pagination {
        margin: 8px 0;
}
.table-bordered tr.disabled {
        background: #eee;
        font-weight: 600;
        color: #777;
}
.table-bordered tr.disabled .actions-column * {
        pointer-events:none;
        opacity:.7;
}
.table thead>tr>th, .table tbody>tr>th, .table tfoot>tr>th, .table thead>tr>td, .table tbody>tr>td, .table tfoot>tr>td {
        vertical-align: middle;
        padding:8px 8px 7px 8px;
}
.table-bordered>thead>tr>th {
        border:none;
        border-right: solid 1px #fff;
}
/* table.dataTable thead>tr>th.sorting_asc,
table.dataTable thead>tr>th.sorting_desc,
table.dataTable thead>tr>th.sorting {
        padding-right:0px;
} 
.new-datatable table thead>tr>th.sorting_asc,
.new-datatable table thead>tr>th.sorting_desc,
.new-datatable table thead>tr>th.sorting {
        padding-right:8px !important;
}*/
.new-datatable table thead>tr>th.sorting_asc > .inner,
.new-datatable table thead>tr>th.sorting_desc > .inner,
.new-datatable table thead>tr>th.sorting > .inner {
        /* padding-right: 12px !important; */
        overflow: hidden;
        text-overflow: ellipsis;
}
.table-bordered>thead>tr>th:focus {
        outline:none;
        background-color:#6ec1d8 !important;
}
.new-datatable table thead>tr th .inner {
        position:relative;
        top:0;
        display: inline-block;
        transition:top .3s;
}
.new-datatable .select-column{
        text-align: center;
}
.new-datatable table thead>tr th.has-hidden-filter .inner {
        top: -6px;
}
.new-datatable table thead>tr th.has-hidden-filter .hidden-filter-value {
        position: absolute;
        color: #ffffff;
        bottom: 5px;
        left: 8px;
        font-size: 7px;
        background: #f4bb73;
        padding: 1px 4px 0px 4px;
        border-radius: 4px;
        max-width: 80%;
        text-overflow: ellipsis;
        overflow: hidden;
}
.table-bordered {
        border-collapse: separate !important;
}
.table-bordered > tbody > tr > td,
.table.dataTable.table-bordered > tbody > tr > td {
        border:none;
        border-bottom: solid 1px #dbdbdb;
        border-right: solid 1px #dbdbdb;
}
.table-bordered > tbody > tr > td:first-child,
.table.dataTable.table-bordered > tbody > tr > td:first-child {
        border-left: solid 1px #dbdbdb;
}
.table-bordered > tbody > tr.skip-first-cell > td:first-child {
        border-left:none;
}
.table.dataTable.table-bordered > tbody > tr.selected > td {
        background:#e4f1ff;
}
table th {
        font-family:'Montserrat', sans-serif;
        font-weight: 500;
}
table th a {
        color:inherit;
}
table .sticky-header {
        position:sticky;
        top:44px;
}
table thead tr th:not(.custom-bg) {
        color: #fff;
        text-transform: uppercase;
        background-color: #2499b8 !important;
        white-space: nowrap;
}
table thead tr + tr th:not(.custom-bg), /* deuxième ligne d'entête */
table thead tr.row-2 th:not(.custom-bg) { /* deuxième ligne d'entête (sticky-header) */
        background: #6ec1d8 !important;
        border-top:solid 1px #fff !important;
}
table thead tr th:last-child {
        border-right: solid 1px #2499b8;
}
table.fixed-cols-clone thead tr th:last-child {
        border-right-color:#fff; /* colonnes fixes */
}
table thead tr + tr th:last-child,
table thead tr.row-2 th:last-child {
        border-right: solid 1px #6ec1d8;
}
table thead tr th.strong {
        font-weight: 500;
}
.table ul {
        margin: 0;
        padding: 0;
        list-style-position: inside;
}
.table .sorting,
.table .sorting_asc,
.table .sorting_desc {
        background-image: url('../img/sort_both.png');
        background-repeat:no-repeat;
        background-position:center right;
        cursor: pointer;
}
.table .sorting_asc {
        background-image: url('../img/sort-asc.png');
}
.table .sorting_desc {
        background-image: url('../img/sort-desc.png');
}
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting:after {
        display:none !important;
        content:none !important;
}
.table.row-reordering .sorting {
        background: none;
        cursor: default;
}
.table .weight-cell {
        max-width:50px;
}
#datatable tr > .row-checkbox {
        max-width: 40px !important;
        /* padding: 10px; */
        text-align: center;
}

th.row-checkbox input[type=checkbox] {
        border-color: #0485a7;
        margin-left: 1px;
        border-width: 1px;
        position: relative;
        top: -1px;
}
tr.inactive td, tr.inactive td * {
        color: #aaa;
}
tr.inactive td .picture {
        opacity:.5;
}
tr.canceled td {
        text-decoration: line-through;
        opacity: .8;
}
.row_selected {}/* Pour masquer les filtres personnalisés avant l'affichage du tableau
   Attention : nécessite d'implémenter le callback "fnDrawCallback" pour réafficher les filtres
*/
.datatable-custom-filters {
        display: none;
        float: left;
        /*overflow: hidden;*/
}
.datatable-custom-filters label {
        margin-right:20px;
        margin-bottom: 20px;
        display: block;
        float: left;
}
.datatable-custom-filters label * {
        font-weight:normal;
        font-size:12px;
}
.datatable-custom-filters label select {
        min-width: 120px;
}
.dataTables_length label select,
.datatable-custom-filters label select {
        margin-top:3px;
        border-radius: 2px;
}
.datatable-custom-filters label label.radio-inline {
        margin-right:0;
        margin-top: 5px;
        margin-bottom: 0;
}
.datatable-custom-filters .chosen-container {
        display:block;
        margin-bottom: 20px;
}
.datatable-custom-filters .chosen-container .chosen-choices {
        border-radius:0;
        width:220px !important;
}
.datatable-custom-filters .chosen-container-multi .chosen-choices li.search-field input[type=text] {
        height:18px;
}
.datatable-custom-filters .chosen-container-multi .chosen-choices li.search-choice {
        padding-top:0;
        padding-bottom:1px;
        margin-top:2px;
}
.datatable-custom-filters .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
        top: 2px;
        right: 1px;
}
.datatable-custom-filters .chosen-container strong {
        font-weight: bold;
}
.datatable-custom-filters .chosen-container small {
        font-size:90%;
}
.datatable-custom-filters #select-jury {
        min-width:100px;
}
.datatable-custom-info {
        position: absolute;
        right: 0;
        top: 58px;
        font-weight: bold;
        background-color: #d2edf5;
        padding: 0 5px;
        color: #000;
        font-size: 12px;
        text-align: left;
}
.table-params {
    float:right;
}

/*
 * Mini tableaux
 */
.table.table-sm {
        font-size: 11px;
        margin-top:0;
}
.table.table-sm tr th,
.table.table-sm tr td {
        font-size: 11px;
}
.table.table-sm tr th {
        padding: 4px 8px 1px 8px;
        background-color: #6ec1d8 !important;
        color: #fff !important;
}
.table.table-sm tr th small {
        text-transform: none;
        font-size: 10px;
}
.table.table-sm tr th:last-child {
        border-color:#6ec1d8;
}
.table.table-sm tr td {
        padding: 6px 8px 5px 8px;
}
.table-sm input.form-control {
        height: 22px;
        line-height: 22px;
        padding: 6px;
}
.table-sm .btn {
        height: 22px;
        padding-top: 2px;
        padding-bottom: 2px;
}
.table-sm .chosen-container {
        height: 22px!important;
}
.table-sm .chosen-container .chosen-single{
        height: 100%;
        padding-top: 1px;
        padding-bottom: 1px;
}
.table-sm .chosen-container-single .chosen-single div b{
        background-position-y: 1px;
}
.table-sm .chosen-container-active.chosen-with-drop .chosen-single div b{
        background-position-y: 2px;
}


/*.daterangepicker .range_inputs {
        position:absolute;
        right:15px;
        bottom:15px;
}
.daterangepicker .ranges ul {
        width: 237px !important;
        columns: 2;
}
.daterangepicker .calendar th, .daterangepicker .calendar td {
        font-size:12px;
}
.daterangepicker .ranges li:nth-child(9) {
        break-after:column;
}*/
.date-range-input {
        padding-left:32px;
        font-size: 11px;
        font-weight: bold;
        color: var(--ganesh-core-background-color);
        margin-top: 3px;
        height: 22px;
}
.date-range-filter {
        margin-left:20px;
}
.date-range-input-wrapper {
        position:relative;
}
.date-range-input-wrapper .glyphicon {
        position: absolute;
        top: 6px;
        left: 11px;
        color: #999;
        font-size: 13px;
}
.date-range-input-wrapper.filled .glyphicon {
        color: var(--ganesh-core-background-color);
}
.view-switcher {
        overflow:hidden;
        margin-bottom:30px;
        margin-top:-30px;
}
.view-switcher .view-link {
        text-transform:uppercase;
        float:left;
        position:relative;
        margin-right:13px;
        font-size:11px;
}
.view-switcher .view-link.active {
        font-weight:bold;
        cursor:default;
        border-bottom:solid 1px;
}
.view-switcher .view-link:not(:last-child):after {
        content:'';
        position:absolute;
        top:2px;
        right:-7px;
        height:13px;
        width:1px;
        background:#fff;
}
#content tr.table-footer th {
        padding-top:4px;
        padding-bottom:4px;
        /*background: #2499b8;*/
        background: #013f51;
}

.panel.table-panel .panel-body {
/*        padding-left:0;
        padding-right:0;
        padding-top:0;*/
        overflow: hidden;
}
/*.panel.table-panel .panel-body-inner {
        padding-top:0;
        padding-left:0;
        padding-right:0;
}*/
.panel.table-panel .panel-body-inner {
        padding-bottom:0;
}
.panel.table-panel .panel-body-inner table {
        margin-top: -25px;
        margin-left: -36px;
        width: calc(100% + 73px);
        max-width: none;
        box-shadow:none;
        border-radius:0;
}
.panel.table-panel.collapsible .panel-body-inner table {
    margin-top: -20px;
}
.modal .panel.table-panel .panel-body-inner table th:first-child,
.modal .panel.table-panel .panel-body-inner table td:first-child {
        padding-left:36px;
}
.modal table th,
.panel.table-panel .panel-body-inner table th {
        color: #222;
        font-weight: 500 !important;
        background:#dbdbdb !important;
}
.modal .table-bordered>thead>tr>th:last-child {
        border-right-color:#dbdbdb !important;
}
.modal .panel.table-panel .panel-body-inner table th:last-child {
        border-right:0;
}
/*.panel.table-panel .panel-body-inner > *:not(table) {
        margin-left:20px;
        margin-right:20px;
}*/

.sticked-header {
        position:fixed;
        z-index:5;
}
.sticked-header:after {
        content:'';
        position:absolute;
        background:#fff;
        left:0;
        right:0;
        top:-30px;
        height: 40px; /* pour passer au dessus du header original et préserver les border radius du sticked-header */
        z-index: -1;
}
.sticked-header:before {
        content:'';
        position:absolute;
        bottom:-5px;
        left:0;
        right:0;
        height:5px;
        background:url(../img/table-overflow-y-shadow.png) repeat-x;
        opacity:0;
}
.sticked-header.scrolled:before {
        opacity:1;
}
.sticked-header .sticked-header-inner {
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        overflow:hidden;
}
.sticked-header table.dataTable {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        table-layout: fixed;
        margin:0 !important;
        width:auto !important;
}
.sticked-header table + table {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
}
.sticked-header table th {
        padding-right:0;
        overflow:hidden;
        text-overflow:ellipsis;
}
.sticked-header.has-fixed-cols table {
        border-top-left-radius:0;
}
.sticked-header table tr.row-1 th.fixed {
        border-top-left-radius:4px;
}
.sticked-header #datatable_length {
        position: absolute;
        top: -83px;
        float: none;
}

.table-overflow-x-shadow {
        position:absolute;
        top:10px;
        bottom:0;
        width:5px;
        background:url(../img/table-overflow-x-shadow.png) repeat-y;
        opacity:0;
        transition:opacity .5s;
}
.table-overflow-x-shadow.visible {
        opacity:1;
}
.table-overflow-x-shadow.table-overflow-x-shadow-before {
        left:0;
        transform:rotate(180deg);
}
.dragscroll {
        cursor:move;
        cursor:grab;
}
.dragscroll:active {
        cursor:grabbing;
}


/**
 *  Modals :
 */
.modal.loading .modal-body {
        min-height:200px;
}
.modal .modal-hidden {
        display:none !important;
}
body.modal-open {
        overflow: hidden;
}
#modal-student > .modal-dialog,
.modal-add-edit-module > .modal-dialog,
.modal.with-tabs > .modal-dialog {
        width: 70%;
        min-width:920px;
}
#modal-teacher > .modal-dialog,
#modal-workplacement .modal-dialog {
        width: 60%;
        min-width:800px;
}
.modal-body, .modal-header, .modal-footer {
        position: relative;
}
/* .modal {
        color: black;
} */
.modal-footer {
        margin-top: 0;
        padding-top:30px;
        border-top: 1px solid #ddd;
}
#modal-student > .modal-dialog > .modal-content > .modal-footer {
        padding-bottom:10px;
}
.modal-footer .alert {
        text-align:left;
}
.modal-footer .submit-buttons .alert {
        margin-bottom: 0;
}

.modal-footer .submit {
        margin-top:0;
}
.modal .modal-separator {
        height:1px;
        background:#e5e5e5;
        display:block;
        margin:20px 0;
        border:none;
}
.modal a.btn {
        color: white !important;
}

.modal-header{
        font-family: "Open Sans";
}
.modal-header h2,
.modal-header h3 {
        position:relative;
        display: inline-block;
        text-transform:none;
        font-size: 26px;
        font-weight:400;
        margin-top: 0;
}
.modal-header h2 {
        font-size:24px;
}
.modal-header h3 {
        font-size: 18px;
}
.modal-header h4,
.modal-header .subtitle{
        font-weight:600;
        color:#777;
        font-size: 14px;
        margin-top: 10px;
}
.modal-header h2:last-child,
.modal-header h3:last-child,
.modal-header h4:last-child {
        margin-bottom: 0;
}
.modal-header h2 .name{
        text-transform:uppercase;
}
.modal-header h2 .surname,
.modal-header h2 .surname {
        font-weight:100;
}
#modal-student .modal-header .subtitle .student-cursus-section {
        margin-bottom: 5px;
}
.modal-header h4 small {
        font-weight:400;
        font-size: 13px;
        color:inherit;
}
.subtitle .student-groups{
        margin-top: 4px;
        font-weight: 400;
        color:inherit;
}
.subtitle .student-cursus-section{
        margin-top: 4px;
        font-weight: 600;
}
.modal-footer .modal-modified-date,
.modal-footer .author-info{
        position:absolute;
        right: 20px;
        top: 5px;
}
.modal-header .alert {
        margin-bottom: 0;
}
#modal-student > .modal-dialog > .modal-content > .modal-header,
.modal.with-tabs > .modal-dialog > .modal-content > .modal-header {
        border-bottom: none;
        padding-left: 20px;
}
#modal-student > .modal-dialog > .modal-content > .modal-header,
#modal-teacher > .modal-dialog > .modal-content > .modal-header {
        min-height: 110px;
        padding-bottom: 0px;
}
.student-photo,
.teacher-photo {
        position:relative;
}
.modal-header .student-photo,
.modal-header .teacher-photo {
        width: 80px;
        height: 80px;
        overflow: hidden;
        position: absolute;
        top: 10px;
        right: 21px;
        border-radius:4px;
        background-size:cover;
        background-position:top center;
}
.student-photo img,
.teacher-photo img {
        object-fit: cover;
        width: 100%;
}
.student-photo.editable,
.teacher-photo.editable {
        cursor: pointer;
}
.student-photo .edit-icn,
.teacher-photo .edit-icn {
        position: absolute;
        content: '';
        height: 13px;
        width: 13px;
        bottom: 0px;
        right: 0px;
        background: #2499b8;
        padding-left: 15px;
        transition: width .5s;
        color: #ffffff;
        font-size: 9px;
        text-transform: uppercase;
        overflow: hidden;
        line-height: 1.5;
        font-family: Montserrat;
        white-space: nowrap;
}
.student-photo:hover .edit-icn,
.teacher-photo:hover .edit-icn {
        width:100%;
}
.student-photo .edit-icn .glyphicon,
.teacher-photo .edit-icn .glyphicon {
        position: absolute;
        top: 1px;
        left: 4px;
        font-size: 8px;
}
#modal-document .modal-header h2{
        max-width: 420px;
}
#modal-document .modal-header .status-select{
        position: absolute;
        top: 20px;
        right :20px;
        width: 120px;
}

/*#modal-student .modal-header .student-nav {
    float: left;
    margin-right: 10px;
    position: relative;
    top: -1px;
}*/
#modal-student .modal-header .student-nav,
.modal .modal-header .modal-nav{
        position: absolute;
        right: -29px;
        top: 0px;
}

#modal-student .modal-header .student-nav > .student-nav-btn,
.modal .modal-header .modal-nav > .modal-nav-btn{
        display: block;
        width: 27px;
        height: 27px;
        background: #fff;
        border-radius: 4px;
        font-size: 18px;
        margin-bottom: 2px;
        vertical-align: middle;
        line-height: 22px;
        text-align: center;
        cursor:pointer;
}
/*#modal-student .modal-header .student-nav .btn-previous-student,
#modal-student .modal-header .student-nav .btn-next-student {
    float:left;
    cursor:pointer;
}
/*#modal-student .modal-header .student-nav .btn-previous-student {
    margin-right: 3px;
}*/
#modal-student  > .modal-dialog > .modal-content > .modal-header ul {
        border: none;
        height: 23px;
}
.modal.with-tabs  > .modal-dialog > .modal-content > .modal-body {
        padding: 0px 0 10px 0;
        height:525px;
}
#modal-student .modal-body:before,
.modal.with-tabs .modal-body:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        margin-left: 1px;
        right: 0;
        height: 1px;
        background: #dddddd;
        z-index: 1;
}
#modal-student .modal-body .ganesh-loading {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
}
#modal-student .modal-footer .loading-text {
        font-weight: 600;
        /*        font-size: 13px;
                display: block;
                text-align: center;
                text-transform: uppercase;
                color: #999;*/
}
/*#modal-student .modal-body .row {
        margin-left: 0;
        margin-right: 0;
}
#modal-student .modal-body .row .row .row {
        margin-left:-15px;
        margin-right:-15px;
}*/
#modal-student .modal-body .col-md-2.modal-left-col,
.modal.with-tabs .modal-body .col-md-2.modal-left-col {
        width:20%; /* hack pour agrandir un peu la colonne */
        padding: 20px;  /* hack pour cohérence avec le reste de la fenêtre (15% par défaut) */
        padding: 0 !important;  /* hack pour réduire l'écart avec l'autre colonne */
        /* border-right: solid 1px #ddd; */
        /* margin-top: 20px; */
        z-index:3;
}
#modal-student .modal-body .modal-left-col:after,
.modal.with-tabs .modal-body .modal-left-col:after {
        content: '';
        position: absolute;
        top: 0;
        right: -5px;
        bottom: 0;
        width: 5px;
        background: url(../img/shadow-right.png) repeat-y;
        z-index: 2;
        background-size: 100% auto;
        opacity: 0.8;
}
.action-edit .menu-select-mobile,
.action-view .menu-select-mobile,
.modal.with-tabs .menu-select-mobile {
        padding: 15px 15px;
        display: none;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .panel-body {
        padding:0;
}
.modal.with-tabs .modal-body .col-md-10.tab-content {
        width:79.7%; /* hack pour agrandir un peu la colonne / -0.3% pour détacher la barre de scroll */
        padding: 0;  /* hack pour cohérence avec le reste de la fenêtre (15% par défaut) */
        padding-top: 0;
        position:relative;
        height: 524px;
        overflow-y: scroll;
}
.modal.with-tabs .modal-body .col-md-10.tab-content .panel {
        border-right:none;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills {
        position:relative;
        height: 100%;
        overflow-y: auto;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li {
        border-bottom: 1px solid #eeee;
        margin-top: 0;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li:first-child {
        overflow:hidden;
        border-top:solid 1px #ddd;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li.active:first-child {
        border-top-color: #2499b8;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li>a {
        border-radius: 0px;
        padding: 8px 15px 8px 20px;
}
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li.error>a:not(.red) {
        color: darkorange !important;
}
#modal-student .modal-body .new-document-file{
        z-index: 999;
}
#modal-student .modal-body .username {
        margin-bottom:7px;
}
#modal-student .modal-body .no-account-message {
        font-weight:bold;
}
#modal-student .modal-body .no-account-message .create-user-account {
        margin-top: 10px;
}
#modal-student #tabs_fiche {
        width: 100%;
        margin-bottom: 30px;
        padding-left: 0;
}
#modal-student #tabs_fiche .nav.nav-tabs {
        width: 100%;
}
#modal-student #tabs_fiche .nav-tabs>li {
        margin-left: 10px;
}
#modal-student .modal-footer input,
.modal-footer .btn {
        text-transform: uppercase;
}
#modal-student .modal-footer input[type="submit"],
.modal-footer .btn-success {
        font-weight: bold;
}
.inactive-overlay {
        position:absolute;
        left:0;
        top:0;
        bottom:0;
        right:0;
        background:white;
        opacity:0.6;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index:10;
}
.modal .inactive-overlay{
        z-index:1051;
}
.inactive-overlay.full-screen-overlay {
        position:fixed;
        z-index:9999;
}
.modal .modal-header .inactive-overlay {
        border-top-left-radius:4px;
        border-top-right-radius:4px;
}
.modal .modal-body .inactive-overlay {
        border-radius:4px;
}
/*.btn-imprimer-fiche-etudiant {
        margin: 10px 0;
        bottom: -50px;
        position: absolute;
        width: 100%;
}
.btn-imprimer-fiche-etudiant > button {
        display: block;
        width: 100%;
        float:none !important;
        text-transform: uppercase;
        font-weight: bold;
        background: #fff;
        box-shadow: none;
        border: solid 1px #ccc;
        color: #333;
}*/
.btn-imprimer-fiche-etudiant > ul.dropdown-menu {
        float:none;
        width:100%;
}
.btn-imprimer-fiche-etudiant > ul.dropdown-menu li {
        border-bottom:solid 1px #dedede;
}
.btn-imprimer-fiche-etudiant > ul.dropdown-menu li:last-child {
        border:none;
}
.btn-imprimer-fiche-etudiant > ul.dropdown-menu li a {
        padding:4px 20px;
}
.modal-footer .left-buttons {
        float:left;
}
#modal-student .modal-footer .left-buttons input,
#modal-student .modal-footer .left-buttons .btn-group {
        margin-left:0 !important;
        margin-right:5px;
}
/*#modal-student .btn-change-student-section,
#modal-student .btn-archive-student,
#modal-student .btn-delete-forever,
#modal-student .btn-back-in-scolarity,
#modal-student .btn-back-in-subscriptions,
#modal-student .btn-change-archive-type {
        float:left;
}*/
.modal .chosen-container {
        width:100% !important;
}
.well .well-actions {
        float:right;
        margin-left:10px;
}
#content .well {
        color:#000;
}
.well a {
        color:inherit !important;
}
.well .well-actions > * {
        cursor:pointer;
}


/**
 * Home :
 */
body.home {
        overflow-x:hidden;
}
.home section {
        margin: 0;
        padding: 20px;
}
.index .btn-lg {
        font-size: 14px;
}
.widget-messages .panel-body,
.widget-orders .panel-body{
        max-height:350px;
}

/* temporaire, a enlever quand gridstack sera activé sur l'espace étudiant */
.widget-messages ul,
.widget-orders ul{
        /* height: calc(100% - 78px); */
        /* max-height: 306px; */
        /* overflow-y: scroll; */
        height:100%;
        position:relative;
}

.widget-messages a:not(.btn),
#content .panel-body a:not(.btn),
#sidr-left .panel-body a:not(.btn) {
        color:#2e2f33;
        font-size:12px;
        text-decoration:none;
}
.widget-messages li,
.widget-orders li{
        position: relative;
        color: black;
        margin-bottom: 10px;
        margin-right: 10px;
        padding-bottom: 10px;
        border-bottom: solid 1px #ddd;
}
.widget-messages li.info {
        color: black;
}
.widget-messages li.erreur {
        color: red;
}
.widget-messages li.chrono {
        color: #383F5A;
}

.widget-orders .invoice-link .glyphicon{
        font-size: 12px;
}
.widget-orders .order-action{
        margin-left: 8px;
}

.widget-messages li:last-child,
.widget-orders li:last-child{
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
}
.widget-messages .message-header {
        font-size:10px;
        text-transform:uppercase;
        color: var(--primary-bright-background-color);
        opacity: .8;
}
.widget-messages .message-header .message-author {
        font-weight: 600;
}
.widget-messages li.message .message-text,
.widget-orders .payment-status{
        font-weight:600;
}

.home .panel {
        /*min-height: 190px;*/
        color:var(--ganesh-core-background-color);
        overflow: hidden !important; /* prevents gridstack overflow */
        /* A retirer après la maj home */
        margin-bottom: 0;
        position: relative;
}
.home.prefix-professors .panel {
        margin-bottom: 20px;
}
.home .panel .panel-body {
        overflow-y:auto;
        width:100%;
}
.home .panel-body > h5 {
        margin-top:0;
}
.home .panel-body ul {
        margin:0;
        padding:0 0 0 18px;
}
.home .panel-body ul.list-unstyled {
        padding:0;
}
.home .panel-body .chrono-etape-actions {
        min-height:96px;
}
.home .panel.table-panel .panel-body {
        padding-bottom:0;
}
.home .panel.table-panel .panel-body table {
        margin-bottom:0;
}
.home .panel .panel-heading {
        background: var(--primary-color);
        color:#fff;
        font-weight:600;
}
.home .panel .panel-heading .right > * {
        line-height:normal;
        height:auto;
}
.home .panel .panel-heading .panel-title {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
}
.home .panel .panel-footer {
        padding:5px 15px;
}
.home .panel input#search-student-input {
        height: 31px;
}
.home.has-bg-img .panel {
        background:rgba(255, 255, 255, .8);
}
.home .row > * {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex:1 1 auto;
        flex-direction: column;
}
.home .panel-actions {
        margin-top:10px;
}
.home #btn-customize-display {
        position: fixed;
        right: 10px;
        top: 50%;
        display: flex;
        flex-direction: row;
        align-items: center;
        color: #999;
        padding: 4px 15px 8px 7px;
        background: rgba(255, 255, 255, .8);
        border-radius: 4px;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        transition: all .3s;
        cursor: pointer;
        box-shadow: 1px 0 15px 0 rgba(0, 0, 0, 0.15);
        z-index: 2;
}
.home #btn-customize-display.editing {
        color: #2499b8;
}
.home #btn-customize-display .editing-label {
        display:none;
        position: relative;
        top: 2px;
        margin-left: 10px;
        margin-right: 3px;
        font-weight: bold;
        text-transform: uppercase;
        font-family: 'Montserrat';
        user-select: none;
}
.home #btn-customize-display.editing .editing-label {
        display:inline;
}
.home .last-connections li {
        margin-bottom:3px;
}
body.home.modal-open #btn-customize-display {
        right:12px;
        transition:none;
}
.home #btn-customize-display:hover {
        background: #fff;
        padding-right: 20px;
}
.home #btn-customize-display .glyphicon {
        font-size:21px;
}
.home .search-student-autocomplete {
        position:fixed;
        background:#fff;
        border:solid 1px #ccc;
        box-shadow:1px 2px 4px 0px rgba(0, 0, 0, .15);
        display:none;
        z-index: 10;
}
.home .search-student-autocomplete:after {
        content:'';
        background:#fff;
        position:absolute;
        left:0;
        top:-3px;
        right:0;
        height:3px;
}
.home .search-student-autocomplete .result {
        padding:5px 10px;
        border-top:solid 1px #ddd;
        background:#fff;
        transition:all .15s;
        display:block;
        text-decoration:none;
}
.home .search-student-autocomplete .result:hover,
.home .search-student-autocomplete .result:focus {
        background:#eee;
        color:#000;
        outline:none;
}
.home .search-student-autocomplete .no-result {
        padding:5px 10px;
        font-style:italic;
        display:block;
        border-top:solid 1px #ddd;
}
#modal-customize-display .choose-bg-img {
        margin-top:10px;
}
.chronology-panel .table {
        background:none;
        overflow:auto;
        /*border-top: solid 1px #dbdbdb;*/
        border-radius: 0;
        margin-top: -10px;
}
.chronology-panel .table tr:not(:first-child) td {
        position:relative;
}
.chronology-panel .table tr:not(:first-child) td:not(:first-child) {        
        background: rgba(255, 255, 255, 0.45);
}
.chronology-panel .table .first-row td {
        font-weight:bold;
        text-align:center;
        border:none;
        background: none;
}
.chronology-panel .table .first-row td {
        border-bottom:solid 1px #dbdbdb;
}
.chronology-panel .table .first-row td:first-child {
        border-bottom: none;
}
.chronology-panel .name {
        text-align:right;
        border-left: none !important;
        border-bottom: none !important;
}
.chronology-panel .cursus-params {
        font-weight: bold;
}
/*.chronology-panel .cursus-params .name,
.chronology-panel .current-semestre.is-current-semestre {
        font-weight:bold;
}*/
.chronology-panel .current-semestre,
.chronology-panel .params {
        text-align:center;
}
.chronology-panel td.is-current-semestre:before {        
        content:'';
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        z-index:0;
        background: rgba(36, 153, 184, .33);
}
.chronology-panel .year-params td.is-current-semestre:before {
        background: rgba(36, 153, 184, .15);
}
.chronology-panel .not-current-semestre {
        color: #999;
}
/*.chronology-panel .params {
        width:150px;
}*/
.chronology-chart {
        display:inline-block;
        vertical-align: middle;
}
.chronology-panel .year-params .is-current-semestre .chronology-chart {
        opacity: .5;
}
/*.chronology-chart:first-child {
        margin-right:20px;
}*/
/*.chronology-chart.inactive {
        opacity:.5;
}*/
.chronology-chart .chronology-chart-item {
/*        width: 13px;
        height: 13px;
        border-radius: 50%;
        background: #ccc;
        position: relative;
        border: solid 1px #ccc;
        z-index: 2;*/
        float: left;
        position: relative;
        color:#ccc;
        margin-right: 8px;
        z-index: 2;
}
.chronology-chart .chronology-chart-item:last-child {
        margin-right:0;
}
.chronology-chart .glyphicon {
        color:#ccc;
}
.semestre-chart.active .chronology-chart .glyphicon {
        color: #999;
}
.chronology-chart .active .glyphicon {
        color: lightgreen !important;
}
.chronology-panel .is-current-semestre .glyphicon {
        color: #aaa;
}
.tree-item.active .semestre-chart .chronology-chart .glyphicon {
        opacity:.75;
}
.tree-item.active .semestre-chart.active .chronology-chart .glyphicon {
        color:#fff;
        opacity:1;
}
.chronology-panel .is-current-semestre .active .glyphicon {
        color: #2dc779 !important;
}
/*.chronology-chart .chronology-chart-item.active {
        background:#2499b8;
        background:lightgreen;
}*/
.chronology-chart .chronology-chart-item:nth-child(n+2):before {
        content: '';
        position: absolute;
        z-index: 1;
        height: 1px;
        width: 8px;
        left: -8px;
        top: 8px;
        background: #ddd;
}
.chronology-chart .tooltip-inner {
        width: 170px;
}
.tree-item .chronology-charts {
        margin-top:5px;
        display:flex;
        max-width:340px;
}
.tree-item .chronology-charts .chronology-chart {
        /*margin-right:18px;*/
}
.tree-item .chronology-charts .semestre-chart {
        /*float:left;*/
        flex-grow:1;
}
.tree-item .chronology-charts .num-semestre {
        position: relative;
        top: 1px;
        margin-right: 3px;
        color:#999;
}
.index-tree li.tree-item.active .num-semestre {
        color:#fff;
}
.tree-item .chronology-charts .semestre-chart:not(.active) .num-semestre {
        color:#ccc;
}
.tree-item .chronology-charts .num-year-overrides {
        position:relative;
        top:1px;
        font-weight: bold;
        color: #ccc;
        flex-basis:25px;
        flex-grow:0;
}
.home .tree-item .chronology-charts .semestre-chart.active .num-semestre,
.home .tree-item .chronology-charts .num-year-overrides {
        font-weight:bold;
        opacity:.7;
        color:#999;
}
.home .chronology-panel .tree-branch {
        list-style:none;
        margin:0;
        padding:0;
}
.home .chronology-panel .tree-item {
        font-weight: 500;
        text-transform: uppercase;
        font-family: 'Montserrat', sans-serif;
        border-bottom:solid 1px #ccc;
        margin-bottom:7px;
        padding-bottom:7px;
}
.home .chronology-panel .tree-item:last-child {
        margin-bottom:0;
        border-bottom:0;
        padding-bottom:0;
}
.home #content .chronology-panel .tree-item a {
        color: #2499b8;
        display:block;
}
.home #content .chronology-panel .tree-item a:hover {
        text-decoration:none;
}
.home #content .chronology-panel .tree-item a:hover > span {
        text-decoration:underline;
}
.home .chronology-panel .tree-item .chronology-chart {
        /*margin-right:30px;*/
}
.chronologie-switch .btn {
        opacity:.5;
}
.chronologie-switch .btn.active {
        opacity:1;
}


/**
 * Liste des étudiants :
 */
.students .datatable-custom-filters label {
        max-width:200px;
}
.students .datatable-custom-filters label select {
        width:100%;
}
.students .student-id {
        white-space: nowrap;
}
.students #datatable td{ 
        height:55px; /* height = min-height pour les TD... permet de normaliser la hauteur des lignes */
}
.table .student-warnings,
.students #datatable td.actions,
.students #datatable .workplacement-type {
        white-space: nowrap; /* on veut tous les pictos sur la même ligne */
}
.table .cursus-section .cursus-name {
        font-size:11px;
        font-weight:600;
}
.table td.student-cell,
.table td.teacher-cell {
        min-width:180px;
        position:relative;
}
.students td.student-cell,
.subscriptions td.student-cell,
.evaluations td.student-cell,
.teachers td.teacher-cell {
        cursor:pointer;
}
.students td.student-cell:hover .student-name,
.subscriptions td.student-cell:hover .student-fullname,
.subscriptions td.student-cell:hover .student-name,
.subscriptions td.student-cell:hover .student-surname,
.evaluations td.student-cell:hover .student-name,
.teachers td.teacher-cell:hover .teacher-name {
        text-decoration:underline;
}
.table td.student-cell.small {
        min-width:0;
}
.table .student-cell .picture,
.table .teacher-cell .picture {
        float:left;
        margin-right:10px;
        width:40px;
        height:40px;
        background-size:cover;
        background-position:top center;
        border-radius: 50%;
        box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.2);
}
.table .student-cell.small .picture {
        width:30px;
        height:30px;
}
.table .student-cell.large-photo .picture { 
        width:60px; 
        height:60px; 
        border-radius: 0%; 
} 
/*.table .student-cell .student-picture {
        width:auto;
        height:40px;
        border-radius:50%;
}
.table .student-cell.small .student-picture {
        height:30px;
}*/
.table .student-cell .student-full-name,
.table .teacher-cell .teacher-full-name {
        float:left;
        word-wrap: break-word;
}
.table .student-cell .student-name,
.table .student-cell .student-surname ,
.table .teacher-cell .teacher-name,
.table .teacher-cell .teacher-surname {
        display:block;
        max-width:128px;
}
.table .student-cell .user-account-icon {
    position: absolute;
    left: 36px;
    top: 9px;
    color: #2499b8;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    font-size: 9px;
    background: #e4f1ff;
    text-align: center;
    line-height: 14px;
    vertical-align: middle;
    box-shadow: 1px 1px 4px 0px rgb(0 0 0 / 30%);
}
.subscriptions .student-cell .student-name,
.subscriptions .student-cell .student-surname {
        display:inline-block;
        max-width:none;
}
.table .student-cell .inline .student-name,
.table .student-cell .inline .student-surname {
        display:inline;
        font-weight:600;
}
.table .student-cell .student-name,
.table .teacher-cell .teacher-name {
        text-transform:uppercase;
        font-weight:600;
        padding-top: 7px;
        line-height: 1.2;
}
.table .student-cell.small .student-name,
.table .student-cell.small .student-surname {
        display:inline-block;
        padding-top:7px;
        font-weight:normal;
}
.table .student-warnings {
        margin-top:11px;
        float:right;
}
td .warning {
        display: inline-block;
        width: 17px;
        height: 17px;
        background-repeat:no-repeat;
        background-size:auto;
        margin-left: 4px;
        position: relative;
        top: 3px;
        padding-left:0;
        color: var(--primary-color);
}

td.student-cell .student-warning {
        display: inline-block;
        width: 20px;
        height: 20px;
        margin-left: 4px;
        position: relative;
        top: 3px;
        border-radius: 50%;
        padding: 2px;
        background:var(--primary-color);
        transform: scale(.85);
}
.student-cell.small .student-warning {
        top: 0;
}

td.student-cell .student-warning>svg {
        width: 100%;
        height: auto;
        fill: #fff;
}
/*td .warning-admin,
td .warning-speciality {
        background-image: url('../img/icn-warning-docs.png');
}
td .warning-compta {
        background-image: url('../img/icn-warning-compta.png');
}
td .warning-workplacement {
        background-image: url('../img/icn-warning-workplacement.png');
}
td .warning-mobility-out {
        background-image: url('../img/icn-warning-mobility-out.png');
}
td .warning-off-school {
        background-image: url('../img/icn-off-school.png');
}
td .warning.warning-notes {
        margin-left: 7px;
}
td .warning-mobility-in {
        background-image: url('../img/icn-warning-mobility-in.png');
}

td.student-cell .student-warning>svg {
        width: 100%;
        height: auto;
        fill: #fff;
}
td .warning-disability {
        background-image: url('../img/icn-warning-disability.png');
}
.mobility-in-expired{
        background: rgba(156, 65, 173, 0.1);
        background-image: -webkit-linear-gradient(-45deg, rgba(156, 65, 173, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(156, 65, 173, 0.1) 50%, rgba(156, 65, 173, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(156, 65, 173, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(156, 65, 173, 0.1) 50%, rgba(156, 65, 173, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 10px 10px;
}*/

.table .actions {
        text-align:center;
}


/**
 *  Résumé étudiant :
 */
#student-digest {
        position:absolute;
        right: -7px;
        top: 50%;
        /*transform:translateX(100%) translateY(-50%);*/
        transform:translateY(-50%);
        display:none;
        width:370px;
        filter: drop-shadow(0px 0px 7px rgba(0, 0, 0, 0.25));
        z-index:1;
}
#student-digest,
#student-digest a {
        color:var(--ganesh-core-background-color);
}
#student-digest a { 
        text-decoration:none; 
}
#student-digest .inner {
        border-radius:6px;
        overflow:hidden;
        background:#fff;
}
#student-digest .student-photo {
        float:left;
        width:130px;
}
#student-digest .student-photo img {
        width:100%;
        height:auto;
}
#student-digest .student-info {
        float:left;
        width:calc(100% - 130px);
        padding:12px 12px 0 20px;
        position:relative;
}
#student-digest .student-info h2 {
        margin-top: 0;
        max-width:none;
        margin-bottom:0;
}
#student-digest .student-info h2 .student-name {
        font-weight:600;
        display:inline-block;
}
#student-digest .student-info h2 .student-surname {
        font-weight:400;
        display:inline-block;
        text-transform:none;
}
#student-digest .student-info h2 .student-actions {
        float: right;
}
#student-digest .student-info .student-section {
        font-weight: 600;
        font-size: 12px;
        margin-top: 2px;
        margin-bottom: 10px;
        color: #999;
}
#student-digest .student-info p {
        margin-top:0;
        margin-bottom:3px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
}
#student-digest .student-info p .glyphicon {
        margin-right:4px;
        font-size:12px;
}
#student-digest .student-info p.student-eval {
        margin-top:10px;
}
#student-digest .ganesh-loading {
        pointer-events:none;
        position:absolute;
        left:50%;
        top:37px;
        width: 64px;
        height: 64px;
        transform:translateX(-50%);
}
#student-digest .loaded {
        display:none;
}
#student-digest .left-arrow {
        position: absolute;
        left: -14px;
        top: 50%;
        transform: translateY(-50%);
        display : inline-block;
        height : 0;
        width : 0;
        border-top : 15px solid transparent;
        border-right : 14px solid #fff;
        border-bottom : 15px solid transparent;
}



/**
 *  Fiche étudiant :
 */
.students.view label,
.modal label,
.modal label *,
#modal-student .modal-body .col-md-2 .nav-pills>li>a,
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li>a {
        font-size: 10px !important;
        text-transform: uppercase;
        font-weight: bold;
}
#modal-student .modal-body .col-md-2 .nav-pills>li>a,
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li>a {
        font-size: 12px !important;
        font-family: Montserrat;
        font-weight: 500;
        padding-left: 20px;
}
#modal-student .modal-body .col-md-2 .nav-pills>li.active>a,
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li.active>a {
        background-color:#2499b8;
}
#modal-student .modal-body .col-md-2 .nav-pills>li>a:not(.red),
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li>a:not(.red) {
        color: #2499b8 !important;
}
#modal-student .modal-body .col-md-2 .nav-pills>li>a:hover,
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li>a:hover {
        background-color: #e4f1ff;
} 
#modal-student .modal-body .col-md-2 .nav-pills>li.active>a,
.modal.with-tabs .modal-body .col-md-2.modal-left-col .nav-pills>li.active>a {
        color: #fff !important;
        background-color:#2499b8;
}
.students.view .btn,
.modal .btn.important {
        text-transform: uppercase;
        font-weight: bold;
}

.students.view .toggler .btn {
        text-transform:none;
        font-weight:normal;
}
#student-current-subscription-admission .cvec-field-container,
#student-subscriptions .cvec-field-container{
        position: relative;
}

#student-current-subscription-admission .cvec-field-container .cvec-check,
#student-subscriptions .cvec-field-container .cvec-check{
        position: absolute;
        top: 3px;
        right: 40px;
}
#student-current-subscription-admission .cvec-field-container .cvec-check-api,
#student-subscriptions .cvec-field-container .cvec-check-api {
        cursor: pointer;
}
#student-current-subscription-admission .cvec-field-container .cvec-check-api.disabled,
#student-subscriptions .cvec-field-container .cvec-check-api.disabled {
        cursor: none;
        background-color: #F5F5F5 !important;
}
#student-current-subscription-admission .cvec-field-container .cvec-check span.glyphicon,
#student-subscriptions .cvec-field-container .cvec-check span.glyphicon{
        top: 4px;
}
#student-cursus .btn-change-student-section {
        opacity:.4;
        margin-left:5px;
        font-size:12px;
        cursor:pointer;
        transition:opacity .3s;
}
#student-cursus .btn-change-student-section:hover {
        opacity:.8;
}
#student-cursus h3 {
        display: inline-block;
        margin-top: 0;
        line-height: 1;
}
#student-cursus h3 div {
        font-size: 11px;
        text-transform: uppercase;
        border-bottom: solid 1px #000;
        padding-bottom: 2px;
        line-height: 1;
}
#student-cursus h3 + ul {
        margin-bottom: 20px;
}
#student-cursus .current-semestre > div:last-child ul,
#student-cursus .past-semestre > div:last-child ul {
        margin-bottom: 0px;
}
#student-cursus ul {
        list-style: none;
}
#student-cursus li {
        margin-bottom:2px;
}
#student-cursus li:last-child {
        margin-bottom:0;
}
#student-cursus li .module-teachers {
        color:#999;
}
#student-cursus li.required .module-name:after {
        content:' *';
}
#student-cursus .first-of-speciality {
        margin-top:13px;
}
#student-cursus li.module-group {
        margin-bottom:15px;
}
#student-cursus li.module-group h4 {
        color:#2499b8;
}
#student-cursus li.module-group .module-group-modules {
        border-color:#6ec1d8;
        padding-left:6px;
}
#student-cursus li.module-group .module-group-modules li {
        line-height:1;
}
#student-cursus .add-other-module {
        float:right;
        position:relative;
        z-index:3;
}
#student-cursus .add-other-module select,
#content #student-cursus .add-other-module .chosen-container {
        width:250px !important;
        font-size:12px;
}
#content #student-cursus .add-other-module .chosen-container .chosen-single {
        height: 26px;
        padding: 3px 12px;
}
#content #student-cursus .add-other-module .chosen-container .chosen-single div b {
        background-position:0 3px;
}
#content #student-cursus .add-other-module .chosen-container-active.chosen-with-drop .chosen-single div b {
        background-position: -18px 3px;
}
#student-cursus .add-other-module select + .btn,
#student-cursus .add-other-module .chosen-container + .btn {
        position:relative;
        top:-1px;
        padding:2px 5px;
}
#student-cursus .add-other-module .chosen-container .chosen-results li {
        padding:3px 3px;
}
#student-cursus .add-other-module .chosen-container .chosen-results li.group-option {
        padding-left:15px;
}
#student-cursus .add-other-module .chosen-single {
        height:auto;
        padding:3px  5px;
        line-height:auto;
}
#student-cursus .missing-credits,
#student-cursus li.module-group.missing-credits h4 {
        color:#e6b854;
        font-weight: bold;
}
#student-cursus .missing-credits input[type="checkbox"] {
        border-color:#ed9c28;
}
#student-cursus .missing-credits input[type="checkbox"]:checked {
        background-color:#ed9c28;
}
#student-cursus li.module-group.missing-credits .module-group-modules {
        border-color:#ed9c28;
}
#student-cursus .panel-heading .missing-credits-warning {
        background-image:url(../img/icn-warning-ajac-headings.png);
        background-repeat:no-repeat;
        background-position: top 3px right 0;
        /*background-position:center right;*/
        display:block;
        width:25px;
        height:20px;
        /*margin-left: 6px;*/
        /*position: relative;*/
        /*top: 2px;*/
        /*border:none;*/
}
#student-workplacements .new-workplacement {
        display: none;
}
#student-workplacements .add-document-container {
        display: none;
}
#student-workplacements #btn-cancel-new-workplacement {
        float: right;
        cursor: pointer;
}

#workplacement-agreement .generate-agreement .dropdown-menu{
        width: 100%;
}

#workplacement-agreement .generate-agreement .dropdown-menu a,
#student-workplacements .generate-agreement .dropdown-menu a{
        display: block;
        padding: 0 5px;
        color: #5B5F6D !important;
        text-decoration: none;
}
#ContactEditForm .well{
        color: #333;
        margin-bottom: 10px;
}
.note.well .created{
        font-style: italic;
        margin-top: 5px;
        color: #999;
        text-align:right;
        font-size:11px;
}
.authoring-info {
        font-size: 10px;
        margin-top: 10px;
}
#edit-note-btn{
        display: none;
}

ul.document-list,
ul.form-fields-config {
        padding: 0;
        list-style: none;
}
.contact-list-item,
.add-document-container,
ul.form-fields-config li {
        display: grid;
        grid-template-columns: 47% 47% 1fr;
        align-items: center;
        padding: 10px;
        margin: 0;
        border: solid 1px #CCC;
        border-radius: 4px;
        margin-bottom: 5px;
        overflow:hidden; /* clearfix */
}
.contact-list-item a,
.document-list li a {
        text-decoration:none;
        display: grid;
        grid-template-columns: 1fr 70% 21%;
        align-items: center;
}
.contact-list-item a:hover,
.document-list li a:hover {
        text-decoration:none;
}
.contact-list-item a .name,
.document-list li a .name {
        text-transform: uppercase;
        font-size:12px;
        position: relative;
        color: #2e2f33;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        margin-right: 8px;
}
.contact-list-item a:hover .name,
.document-list li a:hover .name {
        text-decoration:underline;
}
.document-list li a .weight {
        font-size:10px;
        position: relative;
        color: #2e2f33;
        margin-right:3px;
        text-align:right;
}
.document-list li a .glyphicon,
.document-list li a .thumb,
.contact-list-item a .glyphicon {
        width: 15px;
        height: 20px;
        margin-right: 8px;
        display: inline-block;
        vertical-align: bottom;
}
.document-list li a .thumb {
        background-size:cover;
        background-position:center center;
        /*float:left;*/
}
.contact-list-item a .glyphicon,
.document-list li a .glyphicon {
        color:#333;
        text-align:center;
        font-size:16px;
}
.contact-list-item .document-infos,
.document-list .document-infos{
        display: grid;
        grid-template-columns: 55% 1fr;
}
.document-list .document-status {
        /*height: 20px;*/
        flex-shrink: 0;
}
.document-list .document-status select {
        height: 25px;
        line-height: 23px;
        padding-top: 3px;
        padding-left:3px;
        font-weight: 600;
        margin-top: -2px;
        max-width: 160px;
}
.document-list .document-invalidity-reason {
        /*height: 21px;*/
        /*line-height: 23px;*/
        margin-top: 5px;
}
.document-list .author {
        color: #999;
        font-size: 10px;
        margin-right: 15px;
        float: right;
        text-transform: uppercase;
        position: relative;
        top: 4px;
}
.document-list .author .author-name {
        font-weight:bold;
}
.document-list .author.is-student .author-name {
        color: #2499b8;
}
.contact-list-item .description,
.document-list .description {
        margin-left:23px;
        color: #777;
        display: inline-block;
        font-size: 12px;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        vertical-align: bottom;
        line-height: 18px;
        padding-right: 10px;
        flex-grow: 1;
}
.document-list .edit-doc-fieldset {
        margin-top: 15px;
        grid-column-start: 1;
        grid-column-end: 3;
        width: 100%;
}
.contact-list-item .document-actions,
.document-list .document-actions,
.form-field-config .field-config-actions {
        height: 20px;
        display: flex;
        justify-content: flex-end;
        position:relative;
}
.contact-list-item .document-actions > *,
.document-list .document-actions > *,
.form-field-config .field-config-actions > * {
        /*display:inline-block;*/
        float:left;
        font-size: 14px;
        margin-left: 2px;
        cursor: pointer;
}
.contact-list-item .document-actions .glyphicon,
.document-list .document-actions .glyphicon {
        color: var(--ganesh-core-background-color);
}
.contact-list-item .document-actions .glyphicon:hover,
.document-list .document-actions .glyphicon:hover {
        color:#000;
        vertical-align: middle;
}
.document-list .document-actions > .toggler {
        margin-right:20px;
        position: relative;
        min-width: 150px;
}
.pupils-evals{
        list-style:none;
        margin-left:0;
        margin-top: 20px;
}
.pupils-evals .pupils-eval {
        position: relative;
        margin-bottom: 15px;
        padding-bottom: 15px;
        border-bottom: solid 1px #ddd;
}
.pupils-evals .pupils-eval:first-child {
        padding-top:15px;
        border-top:solid 1px #ddd;
}
.pupils-evals .pupils-eval h5 {
        margin: 0;
}
.pupils-evals .pupils-eval a {
        display: block;
        text-decoration: none;
}
.pupils-evals .pupils-eval .glyphicon {
        float: left;
        font-size: 24px;
        color: #aaa;
        margin-right: 10px;
        top: 1px;
}
.pupils-evals .pupils-eval .eval-date {
        display: block;
        font-size: 10px;
        font-weight: normal;
        line-height: 14px;
        margin-top: 1px;
        color: #aaa;
}
.pupils-evals .pupils-eval a:hover {
        text-decoration:none;
}
.pupils-evals .pupils-eval a:hover .eval-label {
        text-decoration:underline;
}
#workplacement-documents .add-document-container,
#student-documents .add-document-container {
        display: none;
        margin-bottom: 10px;
}
#workplacement-documents #btn-upload-document,
#student-documents #btn-upload-document {
        float: right;
}
#WorkplacementAddForm #workplacement-company .workplacement-contacts{
        display: none;
}
#photo-upload,
#photo-upload-index {
        display: none;
}
#subscription-data fieldset {
        margin-bottom: 10px;
}
#subscription-data fieldset.double-margin-bottom {
        margin-bottom:20px;
}
#subscription-data legend {
        margin-bottom: 10px;
}
#subscription-data .inactive_overlay {
        position: absolute;
        left: 0;
        top: 0;
        background: rgba(255, 255, 255, 0.4);
        width: 100%;
        height: 100%;
        z-index: 9999;
}
#student-evaluations .glyphicon {
        font-size:11px;
}
.modal .well {
        margin-bottom:10px;
}
.add-item-col + div {
        /*border-left:solid 1px #ddd;*/
        padding-left:30px;
}
#student-exams .exam-results {
        margin-bottom:10px;
}
#student-exams .exam-results td.module-name {
        vertical-align:top;
}
#student-exams .exam-results a { 
        text-decoration:none; 
} 
#student-exams .student-exams-chart-wrapper {
        height:350px;
        margin-top:30px;
        margin-bottom:20px;
        display:none;
}
#btn-add-prior-course {
        text-transform:uppercase;
        font-weight:600;
        cursor:pointer;
        margin-left:20px;
}
#btn-add-prior-course .glyphicon {
        font-size:12px;
        margin-right:3px;
}
#btn-add-prior-course .t_en {
        display:none; /* forms only */
}
.prior-courses-labels {
        margin-bottom:20px;
        padding-bottom:10px;
        border-bottom:solid 1px #dbdbdb;
}
.prior-courses-labels label {
        /*font-weight:normal;*/
        text-transform:uppercase;
        margin:0;
        display:block;
        text-align:center;
}
.prior-courses-labels,
.prior-courses .prior-course .row {
        padding-right:40px;
}
.prior-courses .prior-course .btn-remove-prior-course {
        float:right;
        position:relative;
        top:5px;
        cursor:pointer;
        margin-right: 10px;
}
.prior-courses .prior-course {
        margin-bottom:20px;
        padding-bottom:20px;
        border-bottom:solid 1px #dbdbdb;
}
.prior-course .input-wrapper .input-placeholder {
        padding:9px 12px;
}
.prior-course .course-options .field {
        float:left;
        padding-right:20px;
}
.prior-course .course-options {
        margin-top:15px;
}
.prior-course .course-options:not(.has-serie2) > div {
        margin-left: 17%;
}
/*.students.single .prior-course .course-options {
        color: rgba(255, 255, 255, 0.8);
}*/
.modal .prior-course .course-options {
        color: #777;
}
.prior-course .course-options .arrow {
        float:left;
        margin-left:5px;
        margin-top:8px;
        margin-right:8px;
        opacity:.8;
        background: url(../../img/down-right-arrow-dark.png);
        background-repeat: no-repeat;
        width: 14px;
        height: 13px;
}
.prior-course .course-options .form-control {
        width:auto;
        display:inline-block;
        /*border-radius:0;*/
        max-width:300px;
        padding: 5px 6px;
        margin-left: 2px;
}
.prior-course .course-options label,
.prior-course .course-options .form-control,
.prior-course .chosen-container-single .chosen-single  {
        font-size:10px;
}
/*.students.single .prior-course .course-options .form-control,
.students.single .prior-course .chosen-container-single .chosen-single {
        background: rgba(255, 255, 255, .85) !important;
        box-shadow:none;
        border:none;
}*/
.prior-course .chosen-container-single .chosen-single div {
        top:-2px;
}
.prior-course .chosen-container-single .chosen-single {
        height: 25px;
}
.prior-course .chosen-container-single .chosen-single div {
        top:-3px;
}
.prior-course .chosen-container-single.chosen-with-drop .chosen-single div {
        top:-7px;
}
.prior-course .chosen-container-single .chosen-single:hover {
        background: rgba(255, 255, 255, .9);
        color:var(--ganesh-core-background-color);
}
.prior-course .chosen-container-single .chosen-single span {
        position:relative;
        top:-1px;
}
.prior-course .course-options input[type=checkbox] {
        opacity: .9;
        position:relative;
        top:1px;
}
.prior-course .input-wrapper {
        position:relative;
}
.prior-course .input-wrapper.error {
        margin-bottom:5px;
}
.prior-course .input-wrapper .input-placeholder {
        position:absolute;
        top:1px;
        left:1px;
        background:none;
        border:none;
        color:#999;
        pointer-events:none;
        font-weight:normal;
        font-size: 11px;
        font-style:italic;
}
.prior-course .year .form-control::-webkit-input-placeholder {
        font-style:italic;
}
.prior-course .input-wrapper .input-placeholder .invisible {
        color:#fff;
        opacity:0;
}
.prior-course .input-wrapper.error input,
.prior-course .input-wrapper.error select {
        border:solid 1px red;
}
.prior-course .input-wrapper .input-error {
        position: absolute;
        left: 0;
        bottom: -16px;
        color: red;
        font-size: 9px;
        font-weight: bold;
        white-space: nowrap;
        padding: 0px 3px;
        background:#fff;
}
.prior-course .serie .chosen-container {
        width:300px !important;
}
.prior-course .has-serie2 .serie .chosen-container,
.prior-course .has-serie2 .serie2 .chosen-container {
        width:210px !important;
}
.prior-course + .alert {
    margin-top: 20px;
}
.modal .prior-courses-labels {
        margin-bottom: 15px;
        padding-bottom: 10px;
        border-bottom: solid 1px rgba(120, 120, 120, .3);
}
.modal .prior-courses .prior-course {
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: solid 1px rgba(120, 120, 120, .3);
}
.modal #btn-add-prior-course {
        padding-top: 3Px;
        padding-bottom: 3px;
}


/**
 * Fiche étudiant (page séparée)
 */
.students.single {
        position:relative;
}
.students.view.single .page-title {
    padding-right: 230px; /* laisse la place pour le bouton enregistrer */
}
.page-title .subtitle{
        font-family: Montserrat;
        font-size: 14px;
        color: #777;
}

/*.students.single .page-title {
        margin-left:265px;
        margin-top:30px;
        position:relative;
        padding-left:40px;
        margin-bottom:20px;
}*/
/*.students.single .page-title:before {
    content:'';
    position:absolute !important;
    top: -26px;
    bottom: -35px;
    left: -265px;
}*/
/*.students.single > form > .row {
        margin:0;
}
.students.single .modal-left-col {
        width:265px;
        background: #2e2f33;
        position: relative;
        border-right: solid 1px #2e2f33;
        padding: 0px;
        margin-top:-79px;
        padding-top:79px;
}
.students.single .modal-left-col {
        width:265px;
        background: #2e2f33;
        position: relative;
        border-right: solid 1px #2e2f33;
        padding: 0px;
        margin-top:-79px;
        padding-top:79px;
}
.students.single .tab-content {
        width:894px;
        padding-top: 31px;
        padding-left:40px;
        padding-right:0;
}*/
/*.students.single .nav-pills {
    margin-left: 15px;
    margin-top: 0px;
    background-color:#007596;
}
.students.single .nav-pills>li>a {
     border-radius:0;
     padding: 15px 10px 15px 10px;
     border-bottom: solid 1px #2e2f33;
}*/
/*.students.single .nav-pills {
        margin-top: 31px;
        background:none;
        position:relative;
}*/
.left-col .nav-pills>li {
        background:#fff;
}
.left-col .nav-pills>li>a {
        text-transform:uppercase;
        font-weight:bold;
        font-size:10px !important;
        color:#47474a !important;
        border-radius:0;
        padding: 12px 10px 10px 20px;
        border-bottom: solid 1px #dbdbdb;
}
/*.students.single .nav-pills>li>a:before {
        content: '';
        background: url(../img/tree-bullet.png) no-repeat 5px 4px;
        margin-right: 5px;
        padding-left: 10px;
}*/
/*.students.single .nav-pills>li.active>a, .students.single .nav-pills>li>a:hover, .students.single .nav-pills>li>a:focus {
    background-color:#2499B8;
}*/
.left-col .nav-pills>li.active>a,
.left-col .nav-pills>li>a:hover,
.left-col .nav-pills>li>a:focus {
        background-color:#D2EDF5;
}
.students.single #submit-container {
        position: absolute;
        top: 25px;
        right: 0;
}
.students.teachers.professors.single #submit-container{
        position: static;
}

/*.students.single #submit-container .btn-change-student-section,*/
.students.single #submit-container .btn-delete-student,
.students.single #submit-container .btn-archive-student,
.students.single #submit-container .btn-save-and-stay,
.students.single #submit-container .btn-imprimer-fiche-etudiant {
        display:none;
}
.left-col #submit-container .btn {
        font-size:13px;
}
.left-col #submit-container .btn-default {
        display:none;
}
.left-col .nav-stacked>li+li {
        margin-top:0;
}
/*.students.single .index-tree {
        position: absolute;
        left: 0;
        top: -26px;
        width: 264px;
        z-index:1;
}*/
/*.students.single .nav-pills > a {
    display:block;
    background:#2e2f33;
    padding-top:20px;
    padding-right:20px;
    padding-left:20px;
}
.students.single .btn-imprimer-fiche-inscription {
    position:static;
    margin:0;
}*/
.left-col .nav-pills > a {
        display:block;
        background:#007596;
        position:relative;
        padding-top:1px;
        padding-left:17px;
}
.left-col .nav-pills > a:before {
        position: absolute;
        top: 0;
        left: 0;
        content: '';
        width: 100%;
        height: 100%;
        background: url(../img/tree-item-bg.png) repeat-x;
        background-size: auto 100%;
        transition: opacity .1s linear;
        z-index: 1;
}
.left-col .nav-pills > a:hover:before {
        opacity:0;
}
.left-col .nav-pills > a:hover {
        text-decoration:none;
}
.students.single .btn-imprimer-fiche-etudiant {
        position: relative;
        top: auto;
        left: auto;
        bottom: auto;
        margin: 0;
        background: rgba(0, 0, 0, 0);
        border: none;
        text-align: left;
        color: inherit;
        font-size: inherit;
        z-index: 2;
        display:block;
        margin:20px 10px;
        width:auto;
}
.students.single .nav-pills > a:after {
        content: "\e045";
        font-family: 'Glyphicons Halflings';
        font-style: normal;
        font-weight: 400;
        line-height: 1;
        display: inline-block;
        -webkit-font-smoothing: antialiased;
        position: absolute;
        top: 8px;
        left:10px;
        z-index:2;
}
.students.single #student-cursus h3 div {
        border-color:white;
}
#document-list {
        /* padding-left: 15px; */
        /*margin-top: 15px;*/
}
#document-list li {
        display: block;
        padding: 10px 15px;
        border: 1px solid #c4c4c4;
        border-radius: 4px;
        margin-bottom: 5px;
        overflow: hidden;
}
#document-list li .document-infos {
        display: flex;
        column-gap: 15px;
        align-items: center;
}
#document-list li .document-infos .document-name {
        flex-grow: 1;
        overflow:hidden;
}
#document-list li .document-infos .date,
#document-list li .document-infos .weight {
        flex-shrink: 0;
}
.contact-list-item a, .document-list li a {
        align-items: center;
        text-overflow: ellipsis;
        display: flex;
        flex-grow: 1;
}
.students.single #document-list li > span {
        cursor: pointer;
}
.students.single #document-list li .alert {
        margin: 0;
        display: inline-block;
}
.students.single #document-list .document-infos a span {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
}
.students.single #document-list .document-infos a .thumb {
        display: block;
        background-size: contain;
        background-repeat: repeat-x;
        height: 22px;
}
.students.single #document-list .document-infos a .weight {
        margin-left: 20px;
}
.students.single #document-list .document-infos a .name {
        text-transform: uppercase;
        display: inline-block;
}
.students.single #document-list .document-infos a .name:hover {
        text-decoration: underline;
}
.students.single #document-list .document-actions {
        display: flex;
        justify-content: center;
        column-gap: 5px;
        flex-shrink: 0;
}
.students.single #document-list .document-actions span {
        cursor: pointer;
}
.students.single #document-list .edit-doc-fieldset {
        border-top: 1px solid #eee;
        padding: 15px 0;
        margin-top: 10px;
        flex: 1;
        flex-basis: 100%;
}
#document-list .filename {
        color:#999;
}
#modal-subscription-documents #document-list {
        margin-top:0;
        margin-bottom:0;
}
#modal-subscription-documents #document-list .filename {
        display:none;
}

/**
 *      (?!)
 */
#chronologie {
        margin-bottom: 40px;
}
#identification {
        padding-left: 10px;
}
.td-info-etudiant {
        padding-left: 10px;
}

/**
 *  Formulaire de login :
 */
.form-signin {
        max-width: 330px;
        padding: 15px;
        margin: 0 auto;
        color: #999;
}
.form-signin img {
        display: block;
        margin: 0 auto;
}

/**
 *  Formulaire de recover :
 */
.form-recover {
        max-width: 330px;
        /* padding: 15px; */

        margin: 0 auto;
        color: #999;
}
.form-recover img {
        display: block;
        margin: 0 auto;
}

/**
 *  Styles CAKEPHP :
 */
.cake-sql-log {
        color: #fff;
}
#authMessage {
        padding: 15px;
        margin-bottom: 20px;
        border: 1px solid transparent;
        border-radius: 4px;
        color: #3a87ad;
        background-color: #d9edf7;
        border-color: #bce8f1;
}
div.input {
        margin-bottom: 15px;
        position: relative;
}
div.input:last-child {
        margin-bottom:0;
}
form .row {
        margin-bottom: 10px;
}
form .row:last-child {
        margin-bottom:0;
}
div.submit {
        margin-top: 20px;
        /*width : 120px;*/
}
.tree-btn-group .submit {
        margin-top:0;
}
.panel-body .submit {
        margin-top:10px;
}
.panel-body .submit:first-child {
        margin-top:0;
}

/**
 *  Formulaires :
 */
/*#content table thead,
#content table th {
        background-color: #2e2f33;
        color: white;
}
#content table tbody {
        background-color: white;
        color: #2e2f33;
}
#content table tbody a {
        color: #2E2F33 !important;
}*/
/* commenté car pose des soucis dans les commandes...  a voir */
/*#content table tbody a.btn {
                color:#fff !important;
}*/
.editable-cell {
        margin: 0 !important;
        padding: 0 !important;
        vertical-align: middle;
        position:relative;
}
.editable-cell-inner {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        /*padding:8px;*/
}
.editable-cell-inner div.input {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
}
.editable-cell-inner div.input.select {
        position:static;
}
.editable-cell-inner div.input.select select {
        vertical-align: middle;
        border: none;
        height: 100%;
        width: calc(100% - 6px);
        text-align-last: center;
        background:transparent;
}
.editable-cell-inner input, .editable-cell-inner textarea {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        border: none;
        background: transparent;
        padding: 10px;
}
.editable-cell-inner input {
        text-align: center;
        padding: 0;
}
.editable-cell-inner input {
        text-align: center;
}
.editable-cell-inner input[type=number] {
        padding-left: 10px;
}
/*.editable-cell-inner input[type=number]::-webkit-inner-spin-button,
.editable-cell-inner input[type=number]::-webkit-outer-spin-button {
   opacity: 1;
}*/

.editable-cell-inner textarea {
        resize: none;
}
.two-rows-cell {
        padding: 0 !important;
}
.two-rows-cell-inner {
        position: relative;
}
.two-rows-cell input {
        display: block;
        width: 100%;
        background: transparent;
        padding: 10px;
        border: 0;
}
.two-rows-cell input:first-child {
        padding: 10px 10px 0 10px;
}
.two-rows-cell input:nth-child(2) {
        padding: 0 10px 10px 10px;
}
.two-rows-cell input.empty {
        font-style: italic;
        color: #666;
}
.chosen-container.error {
        border: solid 1px;
}
input.error,
input.invalid,
textarea.error,
textarea.invalid,
select.error,
select.invalid ,
.chosen-container.error {
        border-color: darkorange;
}
.tab-field-required,
input.invalid,
input.error,
textarea.invalid,
textarea.error,
select.invalid,
select.error,
label.error{
        color: darkorange !important;
}
.input-error-message {
        color: darkorange;
}

#UserPasswordChangeForm label.error, #UserAddForm label.error, #UserEditForm label.error {
        background-color: #2E2F33;
        padding: 2px;
        margin: 5px 0;
}
.autocomplete-wrapper {
        position: absolute;
        left: 0;
        width: 100%;
        max-height: 150px;
        z-index: 9999;
        overflow-y: scroll;
        overflow-x: hidden;
        background: white;
        border: solid 1px #CCC;
        box-shadow: 5px 5px 12px -7px #B4B4B4;
        color:#000;
}
.autocomplete-wrapper .autocomplete-item {
        padding: 5px;
}
.autocomplete-wrapper .autocomplete-item:hover {
        color: white;
        background: #666;
        cursor: default;
}

/**
 *  Progress bar :
 *  (styles en + de ceux de bootstrap)
 */
#overlay-progress.progress {
        position: fixed;
        left: 50%;
        top: 50%;
        width: 300px;
        height: 30px;
        margin-left: -100px;
        margin-top: -15px;
        display: none;
        z-index: 1100;
}
#overlay-progress.progress .progress-bar {
        width: 0%;
        -webkit-transition: none;
        -moz-transition: none;
        -ms-transition: none;
        -o-transition: none;
        transition: none;
}
.progress-bar-striped, .progress-striped .progress-bar {
        background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
        background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        -webkit-background-size: 40px 40px;
        background-size: 40px 40px;
}
.progress-bar.active, .progress.active .progress-bar {
        -webkit-animation: progress-bar-stripes 0.4s linear infinite;
        -o-animation: progress-bar-stripes 0.4s linear infinite;
        animation: progress-bar-stripes 0.4s linear infinite;
}

/**
 * Listes arborescentes :
 */
.index-tree {
        color: white;
        /* background: #2e2f33; */
        font-weight: 500;
        text-transform: uppercase;        
        padding-left:0;
        padding-right:12px;
        padding-top: 20px;
        padding-bottom: 20px; 
}
.panel-body.index-tree {
        padding:0;
}
/*.mCustomScrollBox:not(.mCS_y_hidden) .index-tree {*/
/* .mCSB_container:not(.mCS_y_hidden) .index-tree {
        padding-right:15px;
} */
.index-tree .tree-root .tree-root-inner {
        padding: 13px 10px 12px 10px;
        position: relative;
        display: block;
        background: #2499b8;
        color: #fff !important;
        /* border-radius: 5px; */
        /*border: solid 1px rgba(255, 255, 255, .1);*/
        text-align: center;
        line-height: 1.7;
        border-radius: 4px;
        box-shadow:0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
        text-decoration:none;
}
.index-tree .tree-root .tree-root-inner.secondary {
        background: #dedede !important;
        color: #47474a !important;
        border-top: solid 1px #cecece;
        border-left: solid 1px #cecece;
        border-right: solid 1px #cecece;
}
.index-tree .tree-root .tree-root-inner .glyphicon {
        margin-top: -1px; /* évite que le glyphicon rajoute 1px ÃƒÂ  la hauteur du bouton */
}
.index-tree ul.tree-branch {
        margin: 0;
        padding: 0;
        font-style: normal;
        /*font-weight:normal;*/
        background: #fff;
        color: #47474a;
}
#content .index-tree ul.tree-branch,
#content .index-tree ul.tree-branch a,
#sidr-left .index-tree ul.tree-branch,
#sidr-left .index-tree ul.tree-branch a {
        color: #2499b8;
}
.index-tree ul.tree-branch .current-semestre-num {
        color: #999;
        display: block;
        text-transform: none;
        font-weight: 100;
        font-size: 10px;
}
.index-tree ul.tree-branch li.tree-item.active .current-semestre-num {
        color:#fff;
}
#content .index-tree ul.tree-branch li.tree-item.active .tree-item-inner,
#sidr-left .index-tree ul.tree-branch li.tree-item.active .tree-item-inner {
        color:#fff;
        font-size: 12px;
}
.index-tree li.tree-item {
        list-style: none;
        position: relative;
        margin: 0;
        transition: all .2s linear;
}
.index-tree .tree-root.active {
        /* background: #007596; */
}
/*.index-tree > ul.tree-branch > li.tree-item.active, .index-tree > ul.tree-branch > li.tree-item:hover {
        background: #d4ebf1;
}*/
.index-tree .tree-item-bg-wrapper {
        position: relative;
        /* padding-top: 1px; */
        /* background: #ffffff; */
        /* background: linear-gradient(180deg, #fff, #ddd); */
        /*background: linear-gradient(180deg, #3f76ad, #295582);*/
        /* min-height: 40px; */
}
.index-tree .tree-item-bg-wrapper a {
        /*color:#fff !important;*/
        font-weight:500;
}
/*.index-tree li.tree-item:first-child .tree-item-bg-wrapper {
    border-top: solid 1px #2E2F33;
}*/

.index-tree .tree-item.active .tree-item-bg-wrapper, .index-tree .tree-item .tree-item-bg-wrapper:hover {
        background: #007596;
}
/*.index-tree > .tree-branch > .tree-item.active {
border-top:solid 1px #666;
}*/

.index-tree .tree-item-bg-wrapper img.tree-item-bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        transition: opacity .2s linear;
}
.index-tree .tree-item:hover img.tree-item-bg,
.index-tree .tree-item.active img.tree-item-bg,
.index-tree .tree-root:hover img.tree-item-bg,
.index-tree .tree-root.active img.tree-item-bg {
        /*display:none;*/

        transition: opacity 0.2s linear;
        transition-delay: 0s;
        opacity: 0;
}
.index-tree .tree-item .tree-item-inner {
        padding: 9px 10px 9px 15px;
        border-bottom: solid 1px #dbdbdb;
        position: relative;
        z-index: 2;
        /*font-weight: 700;*/
}
.index-tree .cursus-year-menu .tree-item .tree-item-inner {
        padding-top:8px;
        padding-bottom:6px;
}
.index-tree .tree-item.active > .tree-item-inner {
        border-bottom: none;
}
.index-tree .tree-item:last-child .tree-item-inner {
        border-bottom:none;
}
.index-tree .tree-item.current-semestre > .tree-item-inner {
        font-weight:bold;
}
.index-tree a.tree-item-inner  {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
}
.index-tree .tree-item-inner label {
        font-weight: normal;
        font-size: 10px;
}
.index-tree li.tree-item ul.tree-branch li.tree-item .tree-item-inner {
        padding: 8px 10px 8px 15px;
        border-bottom: solid 1px rgba(36, 153,  184, .2);
        background: none;
        text-transform: none;
        color: #999;
}
.index-tree li.tree-item ul.tree-branch li.tree-item:last-child .tree-item-inner {
        border-bottom: none;
}
.index-tree .tree-item-inner .glyphicon-chevron-up, .index-tree .tree-item-inner .glyphicon-chevron-down {
        font-size: 8px;
        position: relative;
        top: 0;
}
.index-tree li.tree-item .tree-item-btn {
        cursor: pointer;
        position: relative;
        padding-top: 1px;
        border-radius:4px;
        overflow: hidden;
        
        background: #fff;
        color: #2499b8;
}
.index-tree li.tree-item.active .tree-item-btn {
        background: #2499b8;
        color:#fff;
}
.index-tree .panel-body li.tree-item .tree-item-btn {
        border-radius:0;
}
.index-tree li.tree-item a.tree-item-inner:before {
        position: absolute;
        top: 0;
        left: 0;
        content: '';
        width: 100%;
        height: 100%;
        background: url('../img/tree-item-bg.png') repeat-x;
        background-size: auto 100%;
        opacity:0;
        transition: opacity .2s linear;
        z-index: 1;
        mix-blend-mode: color;
}
.index-tree li.tree-item a.tree-item-inner:hover:before {
        opacity: .2;
}
.index-tree li.tree-item.active .tree-item-inner:hover:before {
        opacity:.2;
}
#content .index-tree ul.tree-branch .tree-item-btn a,
#sidr-left .index-tree ul.tree-branch .tree-item-btn a {
        color: #2499b8;
        font-weight:500;
        text-decoration:none;
}
#content .index-tree ul.tree-branch .tree-item.active .tree-item-btn a,
#sidr-left .index-tree ul.tree-branch .tree-item.active .tree-item-btn a {
        color:#fff;
}
/*.index-tree li.tree-item.active .tree-item-btn:before {
        opacity: .15;
        transform: rotate(180deg);
}*/
.index-tree li.tree-item .tree-item-btn-medium .tree-item-inner {
        padding: 6px 10px 6px 10px;
        font-weight:normal;
}
.index-tree li.tree-item .tree-item-btn-small .tree-item-inner {
        padding: 5px 10px 5px 10px;
        font-weight:normal;
}
.index-tree li.tree-item .tree-item-btn.closed .tree-item-inner {
        opacity: 0.75;
}
#content .index-tree ul.tree-branch.tree-btn-group,
#sidr-left .index-tree ul.tree-branch.tree-btn-group {
        overflow:hidden;
        border-radius:4px;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
        margin-bottom: 20px;
}
#content .index-tree ul.tree-branch.tree-btn-group.close-to-upper,
#sidr-left .index-tree ul.tree-branch.tree-btn-group.close-to-upper {
        margin-top:-15px;
}
#content .index-tree ul.tree-branch.tree-btn-group .tree-item-btn,
#sidr-left .index-tree ul.tree-branch.tree-btn-group .tree-item-btn {
        border-radius:0; /* c'est le tree-btn-group qui prend le border-radius dans ce cas */
        box-shadow:none; /* c'est le tree-btn-group qui prend le box-shadow dans ce cas */
}
#content .index-tree ul.tree-branch.tree-btn-group li.tree-item.active,
#sidr-left .index-tree ul.tree-branch.tree-btn-group li.tree-item.active {
        border-bottom:none;
}
#content .index-tree ul.tree-branch .tree-item .tree-item-btn a svg {
        fill:#2499b8;
        max-width:15px;
        vertical-align: top;
}
#content .index-tree ul.tree-branch .tree-item.active .tree-item-btn a svg {
        fill:#fff;
}
.index-tree li.tree-item .disabled {
        opacity:0.5;
}
.index-tree li.tree-item.tree-item-toggler {
        cursor: pointer;
}
.index-tree li.tree-item a.tree-item-inner {
        display: block;
        transition:background-color .2s;
        text-decoration:none;
}
/*.index-tree li.tree-item:hover {
        background: #ededed;
}*/
.index-tree li.tree-item.active {
        border-bottom: solid 1px #dbdbdb;
        /* color: #fff; */
}
.index-tree li.tree-item.active,
.index-tree li.tree-item.active:hover {
        background: #2499b8;
}
.index-tree li.tree-item.active li.tree-item.active {
        border-bottom:none;
}
.index-tree li.tree-item.active:last-child {
        border-bottom:none;
}
/*.index-tree li.tree-item.active > .tree-item-inner {
        border-bottom:solid 1px #aaa;
        border-top:solid 1px #ddd;
}*/
.index-tree a:hover,
.index-tree a:focus {
        text-decoration: none;
}
.index-tree li.tree-item ul.tree-branch {
        background: #e4f1ff;
        color: #013F51;
        display: none;
        font-size: 10px;
        /* border-top: solid 1px #aaa; */
}
.index-tree li.tree-item ul.tree-branch .tree-item {
        background:inherit;
}
.index-tree li.tree-item ul.tree-branch .tree-item:after{
        content: '';
        display: none;
        position: absolute;
        top: 50%;
        right: 8px;
        width: 18px;
        height: 18px;
        background-size: contain;
        transform: translateY(-50%);
        opacity: .45;
        transition: opacity .2s;
}
.index-tree li.tree-item ul.tree-branch .tree-item.status-pending:after {
       display: block;
        background-image: url(../img/icn-form-pending.png);
}
.index-tree li.tree-item ul.tree-branch .tree-item.status-completed:after {
        display: block;
        background-image: url(../img/icn-form-complete.png);
}
.index-tree li.tree-item ul.tree-branch .tree-item.status-validated:after {
        display: block;
        background-image: url(../img/icn-validated.png);
}
.page-subscriptions .index-tree li.tree-item.etape-9 ul.tree-branch .tree-item.status-validated:after,
.page-subscriptions .index-tree li.tree-item.etape-11 ul.tree-branch .tree-item.status-validated:after {
        background-image: url(../img/icn-validated-next.png);
}
.index-tree li.tree-item ul.tree-branch .tree-item.status-canceled:after {
        display: block;
        /*background-image: url(../img/icn-canceled.png);*/
        background-image: url(../img/glyphicons/glyphicons-basic-639-octagon-remove-empty.svg);
}
.index-tree li.tree-item ul.tree-branch .tree-item.status-waitlist:after,
.index-tree li.tree-item ul.tree-branch .tree-item.status-waiting:after {
        display: block;
        background-image: url(../img/icn-waiting.png);
}

.index-tree li.tree-item > .tree-item-inner .count {
        position: absolute;
        top: 8px;
        right: 8px;
        font-size: 10.5px;
        font-weight: 700;
        opacity:.7;
}
.index-tree li.tree-item ul.tree-branch .tree-item .count {
        position: absolute;
        top: 9px;
        right: 30px;
        font-size: 11.5px;
}
.index-tree li.tree-item ul.tree-branch a {
        color: #47474a !important;
}
.index-tree li.tree-item.opened ul.tree-branch {
        display: block;
}
.index-tree li.active ul.tree-branch {
        display: block;
}
.index-tree li.tree-item ul.tree-branch li.tree-item .tree-item-inner {
        padding-left: 29px;
}
.index-tree li.tree-item ul.tree-branch li.tree-item .tree-item-inner.overflow-animation:after {
        display:none;
        opacity:0;
}
.index-tree li.tree-item ul.tree-branch .tree-item.active {
        background:#6ec1d8;
}
.index-tree .tree-item-label {
        background: #2499b8;
        font-size: 11px;
        color: #ffffff;
        padding: 11px 0 7px 10px;
        font-weight: normal;
        font-style: italic;
        text-transform: uppercase;
        margin-top: 16px;
        border: solid 1px rgba(255, 255, 255, .1);
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
}
.index-tree .tree-separator {
        height: 15px;
}
.index-tree .tree-separator-double,
.index-tree .tree-separator-20 {
        height:30px;
}
.index-tree .tree-item-label + .tree-separator {
        height: 0px;
}
.index-tree .tree-spacer {
        height: 5px;
        background: #2e2f33;
}
.index-tree .tree-spacer-10 {
        height: 10px;
}
.index-tree .tree-spacer-20 {
        height: 20px;
}
.index-tree .bloc-infos {
        font-style: normal !important;
        font-size: 12px;
        font-weight:normal;
        text-transform: none;
}
.index-tree .bloc-infos .more-btn {
        text-align: center;
        cursor: pointer;
        font-size: 10px;
        background: #ddd;
        color: #777;
        border-radius: 4px;
        display: inline-block;
        padding: 0 5px;
}
/*.index-tree .bloc-infos .more-btn img {
        max-width: 100%;
        border-radius: 2px;
}*/
.index-tree .bloc-infos .more {
        display: none;
}
.index-tree .tree-item-inner.help-row {} .index-tree .tree-item-inner h5 {
        font-weight: bold;
        font-size: 13px;
}
.index-tree .tree-item-unclickable {
        background: #2499B8;
        color: #D2EDF5;
}
.index-tree ul.tree-branch li.tree-item-tabbed:hover {
        background: none;
}
.index-tree .tree-item-tab {
        float: left;
        width: 50%;
        text-align: center;
        border-right: solid 1px #115A6E;
        cursor: default;
}
.index-tree .tree-item-tab.closed {
        cursor: pointer;
        position: relative;
}
.index-tree .tree-item-tab:nth-child(2) {
        border-right: 0;
}
.index-tree .tree-item-tab.closed > * {
        position: relative;
        z-index: 2;
}
/*.index-tree .tree-item-tab.closed:before {
    position:absolute;
    top:0; left:0;
    content:'';
    width:100%;
    height:100%;
    background: url('../img/tree-item-bg.png') repeat-x;
    transition:opacity .1s linear;
}
.index-tree .tree-item-tab.closed:hover:before {
    opacity:0;
}*/

.index-tree .tree-item-tab.opened {
        background: #2499B8;
        font-style: italic;
}
.index-tree .tree-item-tab.opened:before {
        position: absolute;
        left: 0;
        bottom: -1px;
        content: '';
        width: 100%;
        height: 1px;
        background: #2499B8;
}
.index-tree li.tree-item-tabbed .tree-tab-content {
        display: none;
        clear: both;
}
.index-tree li.tree-item-tabbed .tree-tab-content.opened {
        display: block;
}
.index-tree .submenu {
        padding:6px 10px 6px 6px;
}
.index-tree .submenu-inner {
        /*border:solid 1px #013f51;*/
        border:solid 1px rgba(1, 63, 81, 0.5);
        border-right:solid 1px rgba(1, 63, 81, 0.7);
        border-bottom:solid 1px rgba(1, 63, 81, 0.2);
}
.index-tree .tooltip {
        text-transform:none;
}
.index-tree .glyphicon.glyphicon-question-sign {
        opacity:0.7;
        transition:.2s;
        top:1px;
}
.index-tree .glyphicon.glyphicon-question-sign:hover {
        opacity:1;
}
.index-tree li.tree-item .glyphicon.opened,
.index-tree li.tree-item .glyphicon.closed {
        font-size:15px;
        top:-2px;
        opacity: 1;
        margin-right:2px;
}
.index-tree li.tree-item.active .glyphicon.opened,
.index-tree li.tree-item.active .glyphicon.closed {
        opacity:1;
}
.index-tree li.tree-item .tree-item .glyphicon.opened,
.index-tree li.tree-item .tree-item .glyphicon.closed {
        /*font-size:15px;*/
        opacity:1;
        /*margin-right:4px;*/
}
.index-tree li.tree-item .glyphicon.opened,
.evaluations-description .opened {
        color:lightgreen;
}
.index-tree li.tree-item .glyphicon.closed,
.evaluations-description .closed {
        color:#ccc;
}


/**
 *  Inscriptions :
 */
.subscriptions.index button.btn.active {
        /*border: solid 1px rgba(0, 0, 0, 0.5);*/
        /*font-weight: 600;*/
        /*color: black;*/
}
.status-control ul li {
        display: none;
        list-style-type: none;
}
#bulk-actions,
#formactions {
        padding: 0;
        position: relative;
        z-index: 2;
}
/*.toggler.concours-date.opened > .active {
    display:none;
}*/

.subscriptions.index .concours-date {
        cursor: pointer;
}
.subscriptions.index .concours-date:hover {
        text-decoration: underline;
}
#BufferSubscription0Notes {
        height: 80px;
}
#select-subscription-speciality {
        max-width:150px;
}
select.changeable-options.subscription-speciality {
        max-width: 130px;
}
.subscriptions td .validate_compta {
        margin-bottom: 4px;
}
.subscriptions td .subscription-gateway-name,
.subscriptions td .num-documents {
        font-size: 9px;
        font-weight: 600;
        line-height: 1;
        text-align: center;
        margin-top:4px;
}
.subscriptions td.subscription-exam-results .subscription-exam-result {
        margin-bottom:10px;
        font-size:11px;
}
.subscriptions td.subscription-exam-results .subscription-exam-result:last-child {
        margin-bottom:3px;
}
.subscriptions td.subscription-exam-results .subscription-exam-result .exam-name {
        white-space: nowrap;
        max-width: 230px;
        overflow: hidden;
        text-overflow: ellipsis;
}
.subscriptions td.subscription-exam-results .subscription-exam-result .select-jury {
        /*background:transparent;*/
        width:100%;
}
/*.subscriptions td.subscription-exam-results .subscription-exam-result .select-jury.has-note {
        background:transparent;
}*/
.subscriptions td.subscription-exam-results .subscription-exam-result .note {
        font-weight:bold;
}
.subscriptions td.subscription-exam-results .changeable-label {
        display:inline-block;
        border: solid 1px #ccc;
        width: 100%;
        padding-left: 3px;
        padding-top: 1px;
}
.subscriptions td.subscription-exam-results .changeable-label.closed {
        display:none;
}
.subscriptions td.subscription-exam-results .select-jury,
.subscriptions td.subscription-exam-results .changeable-label {
        margin-top: 3px;
        line-height:15px;
        font-size:10px;
}
.subscriptions td.subscription-exam-results .changeable-label:after {
        opacity:.6;
}

/**
 * Inscriptions - statuts :
 */
.subscriptions.index tr.status-0 td, /* pré-inscriptions - en attente de pièces */
.subscriptions.index tr.status-4 td, /* concours - convocation à  envoyer */
.subscriptions.index tr.status-11 td, /* concours - en attente de passage */
.subscriptions.index tr.status-7 td, /* admissions - dossier à  envoyer */
.subscriptions.index tr.status-13 td { /* ré-inscriptions - en attente de pièces */
        background: white;
}
/*.subscriptions.index tr.status-1 td,  pré-inscriptions - en attente de pièces compta */
/*.subscriptions.index tr.status-2 td,  pré-inscriptions - en attente de pièces admin */
.subscriptions.index tr.partly-validated td,  /* pré-inscriptions - en attente mais un des curseur validé (compta ou admin) */
.subscriptions.index tr.status-5 td, /* concours - liste complémentaire */
.subscriptions.index tr.status-12 td, /* admissions - en attente de pièces *
.subscriptions.index input.btn[data-status="11"],    * bouton "en attente de passage - concours" *
.subscriptions.index input.btn[data-status="5"] {    * bouton "liste complémentaire - concours" */
.subscriptions.index tr.status-18 td, /* ré-inscriptions - mise en attente */
.subscriptions.index tr.status-19 td { /* ré-inscriptions - dossier complété */
        
        background: #fffca2;
        border-color:#fff !important;
}
.subscriptions.index tr.status-3 td, /* pré-inscriptions - annulée */
.subscriptions.index tr.status-6 td, /* concours - échec */
.subscriptions.index tr.status-8 td, /* admissions - annulée */
.subscriptions.index input.btn[data-status="6"], /* bouton "échec - concours" */
.subscriptions.index tr.status-16 td, /* ré-inscriptions - démission */
.subscriptions.index tr.status-17 td { /* ré-inscriptions - radiation */
        background: #ffd5b0;
        border-color:#fff !important;
}
.subscriptions.index tr.status-9 td, /* admissions - validée */
.subscriptions.index.etape-9 tr.status-4 td, /* tableau préinscription + concours - convocation à  envoyer */
.subscriptions.index.etape-11 tr.status-7 td, /* tableau concours + admissions - dossier à  envoyer */
.subscriptions.index tr.status-15 td, /* ré-inscriptions - fin de cursus */
.subscriptions.index tr.status-14 td { /* ré-inscriptions - validée */
        background: #bdffb1;
        border-color:#fff !important;
}
tr td .changeable-options, 
tr td .changeable-label.closed {
        display: none;
}
tr td .changeable-label {
        position:relative;
        padding-right: 20px;
}
tr td .changeable-label:after {
        content:'';
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        background-image: url('../img/toggler-btn.png');
        background-repeat: no-repeat;
        background-position: right 5px center;
}
tr td .changeable-options.opened {
        display: block;
}
/*.subscriptions.index .changeable-label .glyphicon {
    font-size:11px;
    margin-left:3px;
}*/
tr td.parcoursup-ranking-cell .rank-value{
        position: relative;
        padding-right: 22px;
        display: inline-block;
}
tr td.parcoursup-ranking-cell .rank-value .glyphicon {
        position: absolute;
        right: 0;
        color: #6ec1d8;
        right: 0px;
        top: 1px;
        color: #6ec1d8;
        font-size: 12px;
        opacity: .5;
        transition: opacity .3s;
        cursor: pointer;
}
tr td.parcoursup-ranking-cell input {
        display:none;
        max-width:50px;
}

/**
 * Changement de section :
 */
ul.modal-cursus-tree, ul.modal-cursus-tree ul, ul.modal-cursus-tree li {
        list-style: none;
        margin-left: 0;
        padding: 0;
        position: relative;
}
li.modal-cursus-branch:first-child {
        padding-left: 0;
}
li.modal-cursus-branch, li.modal-cursus-branch ul {
        padding-left: 40px;
}
li.modal-cursus-branch button {
        width: 150px;
}
/*ul.modal-cursus-branch > li:first-child {
    padding-left:0;
}
ul.modal-cursus-branch li {

}
ul.modal-cursus-branch li:before {

}
ul.modal-cursus-branch li button {
    width:150px;
}*/

li.modal-cursus-branch li.modal-cursus-branch:not(:last-child):after {
        content: '';
        position: absolute;
        width: 1px;
        background: #CCC;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 2;
}
li.modal-cursus-branch li.modal-cursus-branch {
        padding-left: 20px;
        padding-top: 10px;
}
li.modal-cursus-branch li.modal-cursus-branch:before {
        content: '';
        position: absolute;
        width: 1px;
        background: #CCC;
        height: 24px;
        top: 0;
        left: 0;
        z-index: 2;
}
li.modal-cursus-branch li.modal-cursus-branch button:before {
        content: '';
        position: absolute;
        height: 1px;
        width: 20px;
        background: #CCC;
        z-index: 2;
        top: 24px;
        left: 0;
}
li.modal-cursus-branch button {
        font-weight: bold;
}
li.modal-cursus-branch button.logical-section {
        background: #D2EDF5;
}
li.modal-cursus-branch button.selected-section {
        border-width: 2px;
        border-color: #007596;
}
.modal-cursus-tree h4 {
        margin-top: 30px;
}

/**
 *  Trombinoscopes :
 */
#trombi-items {
        position: relative;
}
#trombi-items #right-col-inner { 
        min-height:80px; 
        position:relative; 
} 
#trombi-items-inner {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 20px;
}
.trombi-item {
        float: left;
        margin-bottom: 40px;
        text-align: center;
        margin-bottom: 0;
        flex: 1 1 140px;
        width: 100%;
        max-width: 140px;
        max-height: 245px;
}
.trombi-item-photo img {
        /* height: 100%; */
        width: 100%;
        height: 100%;
        margin-left: 50%;
        transform: translateX(-50%);
        box-shadow: 1px 1px 4px -2px rgba(0, 0, 0, 0.6);
        border-radius: 4px;
        object-fit:cover;
}
.trombi-item-title {
        font-weight: bold;
        font-size: 14px;
        /* height: 0; */
        margin-top: 5px;
}
#trombi-progress {
        display: none;
        position: absolute;
        top: 30px; 
        left: 30px; 
        right:30px; 
        opacity: 0;
}

/**
 *  Chronologie :
 */
#chronologie-inscriptions, #chronologie-scolarite {
        position: relative;
        clear: both;
}
#chronologie ul {
        list-style-position: inside;
        margin: 0;
        padding: 0;
        font-size: 0.8em;
}
#chronologie #chronologie-inscriptions {
        width: 656px;
        color: white;
        margin: 30px auto 30px auto;
        padding-bottom: 100px;
}
#chronologie #chronologie-inscriptions li {
        float: left;
        list-style: none;
        text-transform: uppercase;
        position: relative;
        top: 3px;
        background: url('../img/puce_chronologie.png') no-repeat;
        width: 14px;
        height: 20px;
        margin-left: 120px;
}
#chronologie #chronologie-inscriptions li > div {
        position: absolute;
        top: 20px;
        left: -210px;
        width: 200px;
        text-align: right;
        transform-origin: right top;
        -moz-transform-origin: right top;
        -webkit-transform-origin: right top;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
}
#fleche-inscriptions, #fleche-inscriptions-bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
}
#fleche-inscriptions-bg, #chronologie #chronologie-inscriptions li:nth-child(n+3) {
        opacity: 0.4;
}
#fleche-inscriptions .corps-fleche, #fleche-inscriptions-bg .corps-fleche {
        background: rgba(58, 135, 173, 0.5);
        width: 622px;
        height: 20px;
}
#fleche-inscriptions .pointe-fleche, #fleche-inscriptions-bg .pointe-fleche {
        width: 34px;
        height: 50px;
        top: -15px;
        right: 0;
        position: absolute;
        background: url('../img/pointe_fleche_chrono.png') no-repeat;
}
#fleche-inscriptions .corps-fleche {
        width: 197px;
}
#fleche-inscriptions .pointe-fleche {
        left: 197px;
}
#chronologie #titre-scolarite {
        margin-top: 30px;
        margin-bottom: 0;
}
#chronologie #chronologie-scolarite {
        margin: 0 auto 40px auto;
        width: 220px;
        /*padding:30px;
        background:#6b6f7b;
        border:solid 1px #2e2f33;*/
}
#chronologie #chronologie-scolarite li {
        float: left;
        clear: both;
        margin-bottom: 20px;
        background: #333;
        list-style: none;
        color: white;
        text-transform: uppercase;
        cursor: default;
        padding: 5px;
        font-size: 11px;
        /*box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.25);*/

        border: solid 1px transparent;
        position: relative;
}
#chronologie #chronologie-scolarite li:nth-child(-n+6):after {
        content: '';
        position: absolute;
        bottom: -21px;
        left: 106px;
        width: 6px;
        height: 20px;
        background-color: #e0e1e4;
}
#chronologie #chronologie-scolarite li:last-child {
        margin-bottom: 0;
}
/*#chronologie #chronologie-inscriptions li.current-etape,*/

#chronologie #chronologie-scolarite li.current-etape {
        background: #3a87ad;
        /*border:solid 1px #555;*/
        font-weight: bold;
        font-size: 1.1em;
}
/*#chronologie #chronologie-inscriptions li.before-current,*/

#chronologie #chronologie-scolarite li.before-current {
        background: #91bed5;
        color: black;
}
/*#chronologie #chronologie-inscriptions li.after-current,*/

#chronologie #chronologie-scolarite li.after-current {
        background: white;
        color: black;
}
/*#chronologie #chronologie-inscriptions li.next-etape,*/

#chronologie #chronologie-scolarite li.next-etape {
        cursor: pointer;
        font-weight: bold;
        transition: all .1s linear;
}
/*#chronologie #chronologie-inscriptions li.next-etape:hover,*/

#chronologie #chronologie-scolarite li.next-etape:hover {
        background: #3a87ad;
        color: white;
}
/*#chronologie #chronologie-inscriptions li > div,*/

#chronologie #chronologie-scolarite li > div {
        display: table;
}
/*#chronologie #chronologie-inscriptions li > div > div,*/

#chronologie #chronologie-scolarite li > div > div {
        display: table-cell;
        vertical-align: middle;
        height: 40px;
        text-align: center;
}
#chronologie #chronologie-scolarite li > div > div {
        width: 220px;
}
#chronologie .todo-list, #chronologie #next-etape-comments {
        font-style: normal;
        text-transform: none;
}
#chronologie .todo-list h6 {
        margin-top: 0;
        margin-bottom: 10px;
        text-transform: uppercase;
}
/*
#chronologie #todo-list h4 {
    margin-top:20px;
    font-weight:bold;
    font-size:13px;
}
#chronologie #todo-list {
    font-size:12px;
}*/

#chronologie .right-col.chronologie h5 {
        margin-top:20px;
        font-weight:bold;
        font-size:13px;
        margin-bottom: 10px;
}


#chronologie .right-col.chronologie #generatepassword{
        width: 290px;
        font-weight:bold;
        font-size:13px;
        margin-left:0;
}

#chronologie .right-col.chronologie #generatepassword span{

}

.params fieldset h3 {
        margin-top:0;
}
.params .toggle.btn {
        min-height:0;
}
.params table .toggle.btn {
        min-width:100px;
}
.params .reinstatement-btn.inactive {
        opacity:.5;
}
/*.chronologie-table th span {
        font-weight:normal;
        text-transform:uppercase;
        font-size:11px;
}*/
.chronologie-table + h3 {
    margin-top: 50px;
}
.chronologie-table th span {
        color:#bad6ea;
}
#content .chronologie-table tr td {
        position:relative;
        transition:background-color .5s;
}
/*.chronologie-table tr td.col-s1 {*/
.chronologie-table tr td.other-semestre {
        background-color: #d9edf7;
}
/*.chronologie-table tr td.col-s2 {*/
.chronologie-table tr td.current-semestre {
        background-color: #bad6ea;
}
#content .chronologie-table tr td:after {
        content:'';
        position:absolute;
        bottom:0;
        left:-1px;
        right:-1px;
        height:4px;
        background:#5cb85c;
        opacity:0;
        transition:opacity .5s;
}
#content .chronologie-table tr td.current-semestre:after {
        opacity:1;
}
/*.chronologie-table tr td.other-semestre {
        opacity:.5;
}
.chronologie-table tr td.current-semestre {
        background:#bad6ea;
        opacity:1;
}*/
#content .chronologie-table thead th {
    position: relative;
}
#content .chronologie-table thead tr th:after {
    content: '';
    position: absolute;
    bottom: 1px;
    left: 1px;
    right: 1px;
    height: 4px;
    background: #5cb85c;
    opacity: 0;
    transition: opacity .5s;
}
/*#content .chronologie-table tr td,
#content .chronologie-table tr th {
    border-bottom: solid 8px #007596;
}*/
#content .chronologie-table tr td {
        padding-top:14px;
        padding-bottom:14px;
}
.chronologie-table tr td.right-separator {
    /*border-right: solid 1px #92b8ca;*/
    border-right: solid 1px #a9c9d8;
}
/*.chronologie-table tr th:nth-child(2),
.chronologie-table tr th:nth-child(5),
.chronologie-table tr th:nth-child(8) {
    border-right: solid 1px #5691ad;
}*/
/*.chronologie-table .evaluation-s1-teachers-opened-param,
.chronologie-table .evaluation-s2-teachers-opened-param {
        opacity:.4;
        pointer-events:none;
        transition:opacity .3s;
}*/
/*.chronologie-table .evaluation-s1-teachers-opened-param.active,
.chronologie-table .evaluation-s2-teachers-opened-param.active {
        opacity:1;
        pointer-events:all;
}*/
#content .chronologie-table tr td .toggle-off {
        font-size:0;
}
.chronologie-table .chronologie-switch {
        margin: 0 20px 0 0;
        width: 100%;
        float:left;
}
.chronologie-table .chronologie-switch .btn {
        width: 50%;
        font-weight: bold;
}
.chronologie-table .chronologie-switch .btn:not(.active) {
        color: rgba(255, 255, 255, 0.5);
        opacity: 0.5;
}
.chronologie-table .reinstatement-btn {
        transition: opacity .5s;
}
#content .chronologie-table .chronologie-bulk-switches td {
        /*background: #d9edf7;*/
        text-align:center;
        /*padding:8px;*/
}
#content .chronologie-table .chronologie-bulk-switches td:first-child {
        background:#fff;
        text-align:right;
        font-weight:bold;
        text-transform:uppercase;
}
#content .chronologie-table .chronologie-bulk-switches td:last-child {
        background:#fff;
}
#content .chronologie-table .chronologie-bulk-switches td .reinstatements-btn {
        font-size:12px;
}
.toggle.middle .toggle-group {
        left:-50% !important;
}
.toggle.middle .toggle-group .btn {
        font-size:0;
}

.params.chronologie hr {
        opacity:.5;
}

.params.subscriptions .panel-heading .glyphicon {
        margin-right:5px;
        font-size:12px;
        color:#ccc;
}
.params.subscriptions .panel-heading .glyphicon-time {
        color:lightskyblue;
}
.params.subscriptions .panel-heading .glyphicon.opened {
        color:lightgreen !important;
}
.subscription-params .subscription-param-dates {
        cursor:pointer;
}
.subscription-params .subscription-param-dates:hover .subscription-param-dates-status {
        text-decoration:underline;
}
.subscription-params .cursus-section,
.subscription-params .direct-link {
        height:23px;
        white-space:nowrap;
}
.subscription-params .cursus-section {
        position:relative;
        padding-right:25px;
}    
.subscription-params .preview-link {
        position: absolute;
        right: 0;
        top: 0;
}
.subscription-params .preview-link a svg {
        width:15px;
        fill:var(--primary-color);
        position: relative;
        top: 2px;
}
.subscription-params .direct-link {
        position: relative;
        top: 1px;
}
#modal-add-edit-subscription-param .subscriptions-documents table {
        margin-top: 5px;
}
#modal-add-edit-subscription-param .subscriptions-documents table th {
        padding-top: 5px;
        padding-bottom: 3px;
}
#modal-add-edit-subscription-param .subscriptions-documents .required-col {
        width:30px;
}
#modal-add-edit-subscription-param .subscriptions-documents .type-col {
        width:400px;
        max-width: 400px;
}
#modal-add-edit-subscription-param .subscriptions-documents .type-col .document-type-label{
        flex-grow: 1;
        flex-shrink: 0;
        max-width: 350px;
}
#modal-add-edit-subscription-param .subscriptions-documents .type-col .document-type-data {
        font-style: italic;
}
#modal-add-edit-subscription-param .subscriptions-documents .type-col .document-type-label,
#modal-add-edit-subscription-param .subscriptions-documents .type-col .document-type-data{
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
}
#modal-add-edit-subscription-param .subscriptions-documents .delete-col {
        width:30px;
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col {
        padding-right:25px;
        position:relative;
        font-size:10px;
}
#modal-add-edit-subscription-param .subscriptions-documents td.required-col input {
        margin: auto;
        display: block;
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col .edit-document-description-btn,
#modal-add-edit-subscription-param .subscriptions-documents td.type-col .edit-document-type-btn {
        color: #999;
        font-size: 12px;
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col .edit-document-description-btn{
        position:absolute;
        right:8px;
        top: 50%;
        transform: translateY(-50%);
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col .edit-document-description-btn:hover,
#modal-add-edit-subscription-param .subscriptions-documents td.type-col .edit-document-type-btn:hover{
        color:var(--ganesh-core-background-color);
        cursor:pointer;
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col .document-description-preview * {
        color: inherit !important;
        background: none !important;
        font-size: inherit !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        line-height: inherit !important;
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col .document-description-preview p {
        margin-bottom:0;
}
#modal-add-edit-subscription-param .subscriptions-documents td.description-col .document-description-preview img {
        max-width:60px;
        height:auto !important;
}
#modal-add-edit-subscription-param .nav-pills li.disabled a {
        text-decoration:line-through;
}

/*
 * Paramètres d'évaluations
 */
.params.evaluations #content-overlay {
        top: 24px;
        left: 29px;
        right: -10px;
        bottom: 15px;
        border-radius: 4px;
        display: flex;
        align-items: start;
        justify-content: center;
        padding-top: 300px;
}
.params.evaluations #content-overlay .overlay-message {
        text-align:center;
        padding:20px;
        border-radius:4px;
        box-shadow:0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
        max-width:390px;
}
.params.evaluations #content-overlay .overlay-message .alert {
        margin-bottom:0;
}
.params.evaluations #content-overlay .overlay-message .btn {
        margin-top:20px;
}
.params.evaluations .panel.override .panel-heading {
        background-image: linear-gradient(315deg, rgb(124 124 126) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(124 124 126) 50%, rgb(124 124 126) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 40px 40px;
}
.params.evaluations .tree-item.has-override:not(.active),
.params.evaluations .tree-item.override {
        background-image: linear-gradient(315deg, rgb(238 238 238) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(238 238 238) 50%, rgb(238 238 238) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 40px 40px !important;
}
.params.evaluations .tree-item.override.active {
        background-image: linear-gradient(315deg, rgb(63 164 191) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
}
.params.evaluations .panel.active.override .panel-heading {
/*.params.evaluations .tree-item.active.has-override {*/
        background-image: linear-gradient(315deg, rgb(63 164 191) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
}
.params.evaluations li.tree-item ul.tree-branch .tree-item.override {
        background-image: linear-gradient(315deg, rgb(215 238 255) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(215 238 255) 50%, rgb(215 238 255) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 40px 40px !important;
}
.params.evaluations li.tree-item ul.tree-branch .tree-item.active.override {
        background-image: linear-gradient(315deg, rgb(120 202 225) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(120 202 225) 50%, rgb(120 202 225) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
}
.params.evaluations .cursus-menu .panel .panel-heading .override-icon,
.params.evaluations .cursus-menu li > a .override-icon {
        display:block;
        width:15px;
        height:15px;
        position:absolute;
        right:10px;
        top:50%;
        transform:translateY(-50%);
        background-image:url('../img/btn-override-off.png');
        background-size:15px;
        background-repeat:no-repeat;
}
.params.evaluations .cursus-menu li > a .override-icon {
        opacity:.6;
}
.params.evaluations .cursus-menu .panel .panel-heading .override-icon {
        background-image:url('../img/btn-override-off-white.png');
}
/*.params.evaluations .cursus-menu .panel.has-override .panel-heading .override-icon {
        background-image:url('../img/btn-override-children-white.png');
        height: 16px;
}*/
.params.evaluations .cursus-menu li.has-override > a .override-icon {
        background-image:url('../img/btn-override-children.png');
        height: 16px;
}
/*.params.evaluations .cursus-menu .panel.has-override.override .panel-heading .override-icon {
        background-image:url('../img/btn-override-children-on-white.png');
        height: 16px;
}*/
.params.evaluations .cursus-menu li.has-override.override > a .override-icon {
        background-image:url('../img/btn-override-children-on.png');
        height: 16px;
}
.params.evaluations .cursus-menu .panel.override .panel-heading .override-icon {
        background-image:url('../img/btn-override-on-white.png');
        height: 15px;
}
.params.evaluations .cursus-menu li.override > a .override-icon {
        background-image:url('../img/btn-override-on.png');
        height: 15px;
}
.params.evaluations .cursus-menu .panel.override .panel-heading,
.params.evaluations .cursus-menu li.override > a {
        font-weight:bold;
}

/* .params.evaluations .left-col .panel.override .panel-heading:after,
.params.evaluations .left-col li.override a:after {
        content: '';
        position: absolute;
        right: 10px;
        top: 50%;
        height: 17px;
        width: 17px;
        border-radius: 50%;
        transform: translateY(-50%);
}
.params.evaluations .left-col li.override a:after {
        border: solid 1px #2499b8;
}
.params.evaluations .left-col .panel.override .panel-heading:after,
.params.evaluations .left-col li.active.override a:after {
        border: solid 1px #fff;        
}
.params.evaluations .right-col.override .panel-heading,
.params.evaluations .left-col .panel.override .panel-heading:after,
.params.evaluations .left-col li.override a:after
{
        background: #2499b8;
        background-image: linear-gradient(315deg, rgb(63 164 191) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 40px 40px;
}
.params.evaluations .left-col .panel.override .panel-heading:after,
.params.evaluations .left-col li.override a:after {
        background-size: 10px 10px;
} */
.params.evaluations .right-col.override .panel .panel-heading
{
        background: #2499b8;
        background-image: linear-gradient(315deg, rgb(63 164 191) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 40px 40px;
}
.params.evaluations .index-tree ul.tree-branch .current-semestre-num {
        display:none;
}
.params.evaluations h3 small {
        color:inherit;
}
#evaluation-param-columns .table {
        margin-top:0;
        margin-bottom:40px;
}
#evaluation-param-columns .table thead th {
        background-color: var(--primary-color) !important;
        color:#fff !important;
        font-weight:500;
}
#evaluation-param-columns .table thead th:first-child {
        background: #6c6c6f !important;
        color: #fff;
        border-right: solid 1px #ddd !important;
        padding-left:15px;
}
#evaluation-param-columns .table tbody tr:last-child th:first-child {
        border-bottom-left-radius: 4px;
}
#evaluation-param-columns .table tbody th:first-child {
        background: #ededed !important;
        border-right: solid 1px #ddd;
        border-left: solid 1px #ddd;
        width: 330px;
        padding-left:15px;
}
#evaluation-param-columns .table tbody tr:last-child th:first-child,
#evaluation-param-columns .table tbody tr:last-child td {
        border-bottom: solid 1px #ddd;
}
#evaluation-param-columns .table tbody td:last-child {
        border-right: solid 1px #ddd;
}
#evaluation-param-columns .table tbody tr:last-child td:last-child {
        border-bottom-right-radius: 4px;
}
#evaluation-param-columns .table .checkbox-inline {
        margin-right:0;
}
#evaluation-param-columns .table .glyphicon-question-sign {
        font-size:12px;
        margin-left:3px;
}
.params.evaluations .override-params-label {
        display:none;
}
.params.evaluations .right-col.override .override-params-label {
        display:block;
}
.params.evaluations .right-col.override .default-params-label {
        display:none;
}


/*
 * Chronologie : new
 */
.panel.chronology-param .toggle.btn {
        min-height:0;
        width:100% !important;
}
.chronology-param-widgets {
        display:flex;
        flex-wrap:wrap;
}
.chronology-param-widgets > * {
        width:20%;
        padding-left: 10px;
        padding-right: 10px;
}
.chronology-param-widgets .col-current-semestre {
        width:100%;
}
.chronology-year-params {
        margin-left: 20px;
        padding-left: 20px;
        padding-top:2px;
        padding-bottom:5px;
        border-left: solid 2px #ddd;
}
.chronology-year-params h2 {
        margin-top:0;
        margin-bottom:20px;
        font-weight:600;
        color: #777;
}
.chronology-year-params .panel.chronology-param.year-param:last-child {
        margin-bottom:0;
}
.panel.chronology-param.year-param {
        margin-bottom:12px;
        margin-left:0px;
}
.panel.chronology-param.year-param .panel-heading {
        padding-top: 6px;
        padding-bottom: 5px;
}
.panel.chronology-param.year-param .panel-heading label {
        font-weight:inherit;
        margin:0;
        cursor:pointer;
        user-select:none;
}
.panel.chronology-param.year-param .panel-heading label input[type=checkbox] {
        margin-right:5px;
        position:relative;
        top:-2px;
        margin-top:0;
        width: 14px;
        height: 14px;
        cursor:pointer;
}
.panel.chronology-param.year-param.closed .panel-heading {
        /*background: #ddd;*/
        background: #e4e4e4;
        color: #777;
}
.panel.chronology-param.year-param.opened .panel-heading {
        background:#2499b8;
        background-image: -webkit-linear-gradient(315deg, rgb(63 164 191) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: -o-linear-gradient(315deg, rgb(63 164 191) 25%, transparent 25%, transparent 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, transparent 75%, transparent);
        background-image: linear-gradient(315deg, rgb(63 164 191) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgb(63 164 191) 50%, rgb(63 164 191) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        -webkit-background-size: 40px 40px;
        background-size: 40px 40px;
}
.panel.chronology-param.year-param.closed {
        height: 29px; /* overflow:hidden plutÃƒÂ´t qu'un display:none, sinon ÃƒÂ§a pose des pb de calcul de hauteur des widgets */
        overflow: hidden;
}
.panel.chronology-param.year-param.closed .panel-heading label input[type=checkbox] {
        border-color: #aaa;
}
/*.panel.chronology-param.year-param.closed .panel-body {
        display:none;
}*/
.panel.chronology-param.year-param .year-override-help {
        display:block;
        float:right;
        font-style:italic;
        opacity:.75;
}
.panel.chronology-param.year-param.opened .year-override-help .no-override {
        display:none;
}
.panel.chronology-param.year-param.closed .year-override-help .override {
        display:none;
}
.panel.chronology-param.year-param.opened .tooltip {
        display:none !important;
}
.panel.chronology-param .col-semestre {
/*        padding-left:40px;
        padding-right:40px;*/
        position:relative;
}
.panel.chronology-param .col-semestre:first-child {
        border-right:solid 1px #ccc;
}
.panel.chronology-param .col-semestre > .row > * {
        opacity:.6;
        transition:opacity .5s;
}
/*.panel.chronology-param .col-semestre:first-child > .row > .input:last-child {
        opacity: 1;
}*/
.panel.chronology-param .col-semestre.is-current-semestre > .row >  * {
        opacity:1;
}
.panel.chronology-param .col-semestre .col-current-semestre {
        text-align:center;
        text-transform:uppercase;
        transition:opacity .25s;
}
.panel.chronology-param .col-semestre .col-current-semestre label {
        font-size:16px;
        margin-top:5px;
        margin-bottom:20px;
        cursor: pointer;
        display: block;
        color:#777;
}
.panel.chronology-param .col-semestre.is-current-semestre .col-current-semestre label {
        color:#2499b8;
}
.panel.chronology-param .col-semestre .col-current-semestre:hover {
        opacity:1;
}
.panel.chronology-param .col-semestre .col-current-semestre input {
        margin-right:5px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: 50%;
        height: 15px;
        width: 15px;
        position: relative;
        top:1px;
        border: solid 1px #777;
}
.panel.chronology-param .col-semestre .col-current-semestre input:checked {
        background: #ffffff;
        padding: 3px;
        border: solid 2px #2499b8;
}
.panel.chronology-param .col-semestre .col-current-semestre input:checked,
.panel.chronology-param .col-semestre .col-current-semestre input:focus {
        outline: none;
}
.panel.chronology-param .col-semestre .col-current-semestre input:checked:after {
        content: '';
        position: absolute;
        width: 7px;
        height: 7px;
        background: #2499b8;
        border-radius: 50%;
        top: 2px;
        left: 2px;
}
.panel.chronology-param .input {
        text-align:center;
}
.panel.chronology-param .input > label {
        display:block;
        color:#777;
        white-space: nowrap;
}
.panel.chronology-param .col-semestre.is-current-semestre label {
        color:inherit;
}
.panel.chronology-param .input > label small {
        display: block;
        text-transform: uppercase;
        font-size: 10px;
        color: #777;
}
.panel.chronology-param .input > label .glyphicon {
        font-size:10px;
}
#content .chronology-open-reinstatements-btn a {
        color: #f0ad4e !important;
        font-weight:bold !important;
}
#content .chronology-change-year-btn a {
        color: #5cb85c !important;
        font-weight:bold !important;
}

.registration-switch-container{
        margin: 30px 0;
}
.registration-switch{
        margin: 0 20px 0 0;
        width: 300px;
}
.registration-switch .btn{
        width: 50%;
        font-weight: bold;
}
.registration-switch .btn:not(.active){
        color: rgba(255, 255, 255, 0.5);
}

#chronologie #modal-etape .modal-etape-name {
        font-weight: bold;
}
#chronologie #modal-etape #etape-comments {
        font-size: 12px;
}
#chronologie #modal-etape .alert-danger {
        margin-top: 20px
}
#chronologie #modal-etape .alert-warning {
        margin-bottom: 0;
}

/**
 *  Points de restauration :
 */
.add-restore-point {
        cursor: pointer;
}
/*#right-col-content .add-restore-point {
        text-transform: uppercase;
        text-decoration: underline;
        text-align: right;
        color: white;
        font-size: 12px;
        font-weight: bold;
        margin-bottom: 20px;
        float: right;
}*/
/*#restore-points {
}
#restore-points li {
    list-style:none;
    clear:both;
    margin-bottom:10px;
    padding:15px 5px 25px 5px;
    cursor:pointer;
    background-color:white;
    position:relative;
    box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.25);
}
#restore-points li:hover {
    background-color:#3a87ad;
    color:white;
}
#restore-points li.after-last-restoration {
    background:#E3E3E3;
    color:#888;
    background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
    background-size: 180px 180px;
}
#restore-points li.after-last-restoration:hover {
    background:#6594AA;
    color:white;
    background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
}
#restore-points li .restore-point-name,
#restore-modal #restore-name,
#delete-modal #delete-name {
    text-transform:uppercase;
    font-size:18px;
    line-height:1.2;
    margin-bottom:5px;
}
#restore-points li .restore-point-date,
#restore-modal #restore-date,
#delete-modal #delete-date {
    font-size:13px;
    font-style:italic;
}
#restore-points li.last-restoration .restore-point-date {
    font-weight:bold;
}
#restore-points li .restore-point-comments,
#restore-modal #restore-comments,
#deletee-modal #delete-comments {
    font-size:12px;
}
#restore-points li .restore-point-type {
    font-weight:bold;
    font-size:9px;
    position:absolute;
    bottom:5px;
    right:7px;
    color:#CCC;
}
#restore-points li.from-system .restore-point-type {
    color:#666;
}
#restore-points li.from-system:hover .restore-point-type {
    color:white;
}
#restore-points li .restore-points-trail {
    position:absolute;
    top:0;
    bottom:-10px;
    background:white;
    left:-20px;
    width:10px;
}
#restore-points li:last-child .restore-points-trail {
    bottom:0;
}
#restore-points li .restore-points-trail .active-trail-inner {
    position:absolute;
    top:50%;
    margin-top:-10px;
    height:10px;
    width:20px;
    background:white;
    }*/

#left-menu.restore-menu .tree-item-inner h5 {
        text-transform: uppercase;
        margin: 0;
}
#left-menu.restore-menu .tree-item-inner {
        font-style: normal !important;
        font-size: 10px;
        text-transform: none;
}
#left-menu.restore-menu .tree-item-inner ul {
        margin-bottom: 10px;
        padding: 0;
        list-style-position: inside;
}
#restore-points .restore-btn, #restore-points .delete-btn {
        font-size: 14px;
        cursor: pointer;
}
#restore-points tr.last-restoration td {
        border-bottom: solid 1px #bbb;
}
#restore-points tr.last-restoration td:first-child {
        font-weight: bold;
}
#restore-points tr.after-last-restoration {
        background: #eee;
        color: #666;
}
#restore-points tr.from-system td:nth-child(2) {
        color: green;
}
#restore-points tr.from-system td:last-child {
        color: inherit;
}

/**
 * Export de listes :
 */
.index-tree li.tree-item.opened ul.tree-branch.export-draggable-list {
        display: none;
}
.export-draggable-list {
        border-bottom: solid 1px #2E2F33;
}
.export-draggable-list li {
        cursor: default;
        padding: 8px 7px 7px 11px;
        border-bottom: solid 1px #4F5055;
        font-size: 11px;
        background: #e4faff;
        color: #47474a !important;
}
.export-draggable-list li:first-child {
        border-top: solid 1px #666;
}
.export-draggable-list li:last-child {
        border-bottom: none;
}
.export-draggable-list li .glyphicon-move {
        margin-right: 7px;
        cursor: move;
        color: black;
        font-size: 9px;
}
.sidr .export-draggable-list li .glyphicon-move {
        margin-right: 7px;
}
.export-draggable-list li .glyphicon-trash,
.export-draggable-list li .glyphicon-edit {
        float: right;
        cursor: pointer;
        color: black;
        font-size: 11px;
}
.export-draggable-list li .glyphicon-trash {
        margin-left:4px;
}
.export-draggable-list li .glyphicon-edit {
        margin-left:20px;
}
.export-draggable-list .ui-state-highlight {
        min-height: 30px;
}
#automatic-requests {
        margin-bottom: 10px;
        max-width: 100%;
}
#automatic-requests option.new-request {
        font-style:italic;
}
#automatic-requests option.template-request {
        font-style:italic;
}
#custom-request-params {
        font-style: normal;
        font-size: 10px;
}
#custom-request-params hr {
        width: 100%;
        margin-top: 5px;
        margin-bottom: 10px;
}
#custom-request-params input {
        width: 100%;
}
#custom-request-params .new-request-from-model-label {
        display:none;
}
#request-actions {
        margin-bottom:-2px;
}
#request-actions .btn {
        margin-bottom:2px;
}
#btn-save-request {
        margin-top: 5px;
        width: 100%;
}
#btn-reinit-request, #btn-delete-request {
        width: 100%;
        display: none;
}
#special-request-info {
        display:none;
}
#query-results td:first-child {
        width: 30px;
}
#request-results img {
        max-width: 100px;
}
label[for="filter-values"] input {
        margin-bottom: 5px;
}
.modal-export label.control-label {
        display:block;
}
.modal-export label.control-label .chosen-container {
        display:block;
        width:100% !important;
        font-weight:normal;
}
.modal-export label.control-label .chosen-container,
.modal-export label.control-label label,
.modal-export label.control-label select,
.modal-export label.control-label .filter-values {
        margin-top:5px;
}
#query-results .num-results {
        float:right;
        text-align:right;
        margin-bottom:10px;
        font-weight:normal;
}
#query-results .num-results-checked {
        font-weight:bold;
}
#remove-duplicates-checkbox {
        float: right;
        margin-right: 10px;
        line-height: 1.7 !important;
        margin-top: -1px;
        padding-right: 10px;
        position: relative;
        display:none;
}
#remove-duplicates-checkbox:after {
        content:'';
        position:absolute;
        right:0px;
        width:1px;
        top:2px;
        bottom:2px;
        background:#ddd;
}
#sql-query {
        text-align:right;
        margin-top:-15px;
}
#sql-query h5 {
        font-size:10px;
        font-weight:bold;
        opacity:0.7;
        text-transform:uppercase;
        cursor:pointer;
        padding-right:13px;
        background: url(../img/tree_bullet_opened_tab.png) no-repeat right 0px top 2px;
        display:inline-block;
        padding-bottom:1px;
}
#sql-query h5:hover {
        border-bottom:solid 1px;
}
#sql-query h5.opened {
        background: url(../img/tree_bullet_closed_tab.png) no-repeat right 0px top 1px;
        border-bottom:solid 1px;
}
#sql-query #sql-query-text {
        display:none;
}


/**
 * Modules :
 */
.module-charts {
        position: absolute;
        width: 305px;
        padding-left: 30px;
        background: #eee;
        top: 0px;
        right: 0px;
        bottom:0;
        padding-top: 25px;
        border-left: solid 2px #ddd;
        border-top: solid 1px #e4e4e4;
}
.module-charts.fold {
        width:50px;
}
.module-charts .open-charts-btn {
        position: absolute;
        top: 7px;
        left: 8px;
        font-size: 30px;
        color: #6ec1d8;
        pointer-events:none;
        opacity:0;
        transition:opacity .5s;
        transition-delay:0s;
}
.module-charts.fold .open-charts-btn {
        opacity:.7;
        transition-delay:.4s;
        pointer-events:all;
}
.module-charts .module-charts-inner {
        width:100%;
        height:100%;
        overflow:hidden;
}
.module-charts .module-charts-inner .chart {
        opacity:1;
        transition:opacity .4s;
}
.module-charts.fold .module-charts-inner .chart {
        opacity:0;
}
.module-charts .fold-charts-btn {
        position: absolute;
        top: 10px;
        left: 1px;
        cursor:pointer;
        width:25px;
        height:25px;
        transform-origin: left center;
        transition:all .2s;
        transition-delay:.4s;
}
.module-charts.fold .fold-charts-btn {
        transform: scaleX(-1);
        left: -3px;
}
.module-charts .fold-charts-btn:after {
        content:'';
        border-top: 7px solid transparent;
        border-bottom: 7px solid transparent;
        border-left: 7px solid #aaa;
        position:absolute;
        top:5px;
        left:0px;
        transition:all .2s;
}
.module-charts .fold-charts-btn:hover:after {
        border-left-color: #777;
        left:4px;
}
/*ul#modules-units {
        padding: 0;
        width: calc(100% - 305px);
        padding-right: 300px;
}
ul#modules-units.has-transition,
.module-charts.has-transition {
        transition:width .4s;
}
ul#modules-units.full-width {
        width: calc(100% - 30px);
}*/
li.modules-unit {
        list-style: none;
        margin-bottom: 50px;
}
/*h3.unit-name {
        font-size: 15px;
        text-transform: uppercase;
        margin-bottom: 15px;
        font-weight:bold;
}
.unit-name .unit-prefix {
        opacity:0.75;
}
h3.unit-name .glyphicon-edit {
        margin-left: 5px;
}
h3.unit-name .glyphicon {
        font-size: 12px;
        cursor: pointer;
}*/
.modules-catalog.my.is-teacher .unit-name .unit-prefix {
        display:none;
}
.unit-name.panel-heading .right {
}
.unit-name.panel-heading .right .glyphicon {
        font-size:14px;
        cursor: pointer;
}
#edit-module-name, #delete-module-name, #edit-unit-name, #delete-unit-name {
        font-size: 14px;
        text-transform: uppercase;
}
ul.modules,
ul.projects{
        padding: 0;
        padding-right:300px;
        margin-bottom: 10px;
}
.action-index ul.modules li.module{
        cursor: grab;
}
.action-index ul.modules li.module:active{
        cursor: grabbing;
}
ul.equipments {
        padding: 0;
        margin-bottom: 10px;
}
li.module,
ul.modules .ui-state-highlight,
li.project-row,
li.equipment,
ul.equipments .ui-state-highlight {
        margin-bottom: 2px;
        background-color: #d2ecf3;
        padding: 6px;
        list-style: none;
        list-style-position: inside;
        color: #222;
        cursor: pointer;
        font-size: 12px;
        border-radius: 4px;
        box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2);
        /*border-top: solid 1px #eee;*/
        margin-top:5px;
        font-weight: 600;
        border:solid 1px transparent;
        /* transition:all .3s; */
}
li.module{
        flex-wrap: wrap;
}
.legend .optional-modules span {
        background-color: #d2ecf3;
}
li.module[data-module-required="1"],
li.module[data-module-datum-required="1"],
.legend .required-modules span {
        background-color: #6ec1d8;
        /* color: #fff; */
}
li.module.inline-editing {
        margin-top:12px;
        margin-bottom:12px;
        border:solid 1px #b5cdd4;
}
li.module[data-module-datum-required="1"].inline-editing {
        border:solid 1px #629faf;
}
li.module.inline-editing:first-child {
        margin-top:0;
}
li.module.inline-editing:last-child {
        margin-bottom:0;
}
li.project-row {
        background-color: #eee;
        font-style: italic;
        color: #777;
        padding-left: 10px;
        cursor:default;
}
li.module .module-title {
        flex-grow: 1;
        overflow: hidden;
        text-overflow: ellipsis;
}
li.module .module-teachers {
        font-weight: 400;
}
li.module .module-teachers:before {
        content: ' - ';
}
li.module .module-num-data{
        display: flex;
}
li.module .module-num-data .num-students,
li.module .module-num-data .num-credits {
        min-width: 42px;
        background: #fff;
        border-radius: 4px;
        text-align: center;
        box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, .3) inset;
        margin-right: 5px;
        padding-left:5px;
        padding-right:4px;
        padding-top: 1px;
        color:#777;
        font-size: 11px;
        height:17px;
        position:relative;
}
li.module .module-num-data .num-credits.shared-credits {
        padding-left:18px;
        background-image:url('../img/glyphicons/print.php?icon=570-send-to-back&color=999999');
        background-repeat:no-repeat;
        background-size:13px;
        background-position:left 3px top 2px;
}
li.module .module-num-data .num-students .glyphicon {
        font-size: 9px;
        color: #999;
        top:0px;
}
.action-index li.module .num-students {
        cursor:pointer;
        padding-right: 14px;
}
.action-index li.module .num-students:after {
        content: '';
        position: absolute;
        top: 6px;
        right: 2px;
        font-size: 9px;
        border-top: 4px solid #b5cdd4;
        border-right: 4px solid transparent;
        border-left: 4px solid transparent;
        transition:border .2s;
}
li.module .num-students:hover:after {
        border-top: 4px solid #6ec1d8;
}
.anterior-year li.module .num-students {
        padding-right:4px;
        min-width:0;
        cursor:default;
}
.posterior-year li.module .num-students {
        display:none;
}
.anterior-year li.module .num-students:after,
.posterior-year li.module .num-students:after {
        display:none;
}
li.module.inline-editing .num-students:after {
        top:5px;
        transform:scaleY(-1);
}
li.module .num-credits {
        font-weight: 700;
        margin-right: 5px;
        padding-bottom: 0px;
        color: #555;
        background: #bddff1;
}
li.module .num-credits .credits-suffix {
        font-size: 8px;
}
li.module .module-color {
        flex-shrink: 0;
        width: 22px;
        height: 17px;
        border-radius: 4px;
        border: solid 1px #fff;
        position:relative;
        cursor:pointer;
        background: #6ec1d8;
}
li.module .module-color.unit-no-color {
        display: none;
}
li.module[data-module-datum-required="0"] .module-color {
        background:#d2ecf3;
}
li.module[data-module-datum-required="0"] .module-color.no-color {
        border: solid 1px #aaa;
        color:#aaa;
}
li.module .module-color.no-color:after {
        content: '?';
        position: absolute;
        top: -1px;
        font-weight: bold;
        left: 7px;
        font-size: 11px;
}
li.module[data-module-datum-required="1"] .module-color.no-color:after {
        color:#fff;
}
li.module .module-infos,
li.equipment .equipment-infos{
        display: flex;
        justify-content: space-between;
        gap: 8px;
        white-space:nowrap;
}
li.equipment .equipment-infos{
        flex-grow: 1;
}
ul.modules .ui-state-highlight,
ul.equipments .ui-state-highlight {
        min-height: 24px;
}
li.module .glyphicon-move,
li.equipment .glyphicon-move {
        margin-right: 5px;
        font-size: 9px;
        cursor: move;
}
.module-actions,
.equipment-actions {
        display: flex;
        gap: 3px;
        margin-top: -1px;
}
.module-actions span,
.equipment-actions span {
        cursor: pointer;
}
li.module {
        position:relative;
        justify-content: space-between;
}
/*li.module.teacher-can-edit:after {*/
/*        content:'';*/
/*        position:absolute;*/
/*        top:0;*/
/*        left:-1px;*/
/*        right:-1px;*/
/*        height:8px;*/
/*        border-top-left-radius: 4px;*/
/*        border-top-right-radius: 4px;*/
/*        background:var(--primary-color);*/
/*}*/
li.module.last-of-speciality {
        margin-bottom: 15px;
}
li.module.first-of-speciality {
        margin-top: 15px; /* marge appliquée en dessous et au dessus pour ne pas avoir de "saute" quand on déplace les modules */
}
li.module .module-speciality {
        position: absolute;
        right: -10px;
        top: 0px;
        color: #2499b8;
}
li.module .module-speciality .module-speciality-inner {
        position:absolute;
        top:0;
        left:0;
        /*width:255px;*/
        white-space: nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
        background:rgba(255, 255, 255, .8);
        display: inline-block;
        border-radius: 4px;
        padding:5px;
}
li.module .module-students {
        width: 100%;
        height: 180px;
        overflow-y: scroll !important;
        margin-top:5px;
        margin-bottom:8px;
        border:solid 1px #ddd;
}
li.module .module-students .module-students-inner {
}
li.module .module-students table {
        margin:0;
}
li.module .module-students .student-name,
li.module .module-students .student-surname {
        display:inline;
}
li.module .module-students input[type="checkbox"].form-control {
        width: 14px;
        height: 14px;
        background-size: 80% 80%;
}
/*li.module .module-datum-statuses {*/
/*        display: flex;*/
/*        gap: 2px;*/
/*        height: 17px;*/
/*}*/
li.module .module-datum-status {
        display: flex;
        width: 21px;
        height: 17px;
        align-self: center;
        padding: 1px 3px;
        border-radius: 5px;
        cursor: pointer;
}
li.module .module-datum-status:after {
        font-size: 11px;
        color: #fff;
        width: 0;
        /*transform: scaleX(0);*/
        overflow: hidden;
        transition: all 1s;
}
li.module .module-datum-status:hover:after {
        width: 100%;
        /*transform: scaleX(1);*/
}
li.module .module-datum-status .status-label {
        display:none;
}

li.module .module-datum-status .icon svg {
        height: 100%;
        flex-shrink: 0;
        width: auto;
        fill: #fff;
}
li.module .module-datum-status.btn-default svg {
        fill: #7f9aa1;
}
li.module .module-datum-status.btn-default {
        background: #ffffffde;
}
li.module .module-datum-status.btn-default:after {
        color: #7f9aa1;
}

li.module .warning-speciality {
        vertical-align:top;
        top:1px;
        display:inline-block;
        width:13px;
        height:13px;
        position:relative;
        margin-left:2px;
        background:url('../img/warning-yellow.png') no-repeat;
        background-size:contain;
}
li.module-group {
        margin:8px 0 15px 0px;
        list-style:none;
}
li.module-group .module-group-name {
        text-transform:uppercase;
        font-size:10px;
        margin-top:5px;
        margin-bottom:5px;
        opacity:0.75;
        transition:opacity linear .2s;
}
li.module-group .module-group-name .glyphicon {
        font-size:9px;
        margin-left:1px;
        cursor:pointer;
        opacity:0;
        visibility:hidden;
        transition:visibility 0.3s linear,opacity 0.3s linear;
}
li.module-group .module-group-name .glyphicon:first-child {
        margin-left:4px;
}
li.module-group .module-group-name:hover .glyphicon {
        visibility:visible;
        opacity:1;
}
li.module-group .module-group-name .glyphicon-edit {
        font-size:10px;
}
li.module-group > ul {
        margin: 5px 0 5px 2px;
        padding: 0px 0 0px 5px;
        border-left: solid 5px rgb(36, 153, 184, .3);
        /*min-height: 24px;*/
}
.panel.dragged,
li.modules-unit.dragged,
li.module.dragged,
li.module-group.dragged {
        position:absolute;
        z-index:999;
}
.panel.placeholder,
li.placeholder {
        /* z-index:999; */
        background: var(--primary-bright-background-color) !important;
        color:#fff !important;
        opacity:.5;
        /* border: none !important; */
        /* list-style:none; */
        /* height:25px; */
        /* border-radius: 2px; */
        /* margin-bottom:2px; */
        /* box-shadow: 0 1px 1px 0 rgba(0,0,0,0.14), 0 2px 1px -1px rgba(0,0,0,0.12), 0 1px 3px 0 rgba(0,0,0,0.2); */
}
/*li.module-group > ul.empty {
        min-height:48px;
}*/
li.module-group > ul > li:last-child {
        margin-bottom:0;
}
#modal-pre-add-module .semestre-name,
#modal-add-module .semestre-name,
#modal-pre-add-module .section-name,
#modal-add-module .section-name {
        font-weight: bold;
}
#modal-pre-add-module .unit-name,
#modal-add-module .unit-name {
        font-style: italic;
}
.num-occurrences {
        font-weight: bold;
}
.module-related-semestres {
        display: none;
        color: #4388CC;
        font-size: 0.9em;
        font-style: normal;
}
#btn-assign-modules-wrapper {
        margin-top:20px;
}
#btn-assign-modules,
#btn-clone-year-modules {
        float: left;
        margin-right: 20px;
}
#btn-assign-modules,
#btn-assign-modules .glyphicon{
        font-size:13px;
}
.btn-add-module, .btn-add-module-group {
        /*margin-top: 15px;*/
        display: inline-block;
}
#assign-modules-warning,
#clone-year-modules-warning {
        float: left;
        margin-top: 0;
        padding: 7px 10px;
        font-weight:normal;
}
#modal-pre-add-module .alert-danger,
#modal-add-module .alert-danger,
#modal-add-unit .alert-danger {
        display: none;
}
/*#modal-add-module .modal-dialog,
#modal-edit-module .modal-dialog,*/
#modal-pre-add-module .modal-dialog,
#modal-add-section .modal-dialog,
#modal-edit-section .modal-dialog {
        width:700px;
}
/*#content .modules fieldset {
        padding: 15px 30px 5px 30px;
        border: solid 1px #CCC;
        margin-top: 20px;
}

#content #modal-edit-module fieldset:first-child,
#content #modal-edit-unit fieldset:first-child {
        margin-top:0;
}*/
/*#content .modules legend {
        font-size: 12px;
        border: none;
        padding: 0 10px;
        margin: 0;
        margin-left: 5px;
        color: #4388CC;
        width: auto;
        background:none;
        text-transform:none;
}
#content .modules fieldset > .checkbox, .modules fieldset > .radio {
        margin-top: 0;
}*/
.modules hr:not(.visible) {
        background: #CCC;
        border: none;
}
/*li.module[data-module-required="0"] {
        background-color:#fff !important; /* si moduledatum=1 mais que module=0, c'est module qui a la priorité (spécifique) *
}
li.module.has-overrides,
.legend .overridden-modules span {
        background-image: linear-gradient(315deg, rgba(255, 255, 255, .5) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, .5) 50%, rgba(255, 255, 255, .5) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        -webkit-background-size: 40px 40px;
        background-size: 40px 40px;
}
li.module.has-overrides[data-module-required="1"],
li.module.has-overrides[data-module-datum-required="1"],
.legend .overridden-modules span {
        background-image: linear-gradient(315deg, rgba(255, 255, 255, .2) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, .2) 50%, rgba(255, 255, 255, .2) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
}
.legend .overridden-modules span,
.legend .required-modules span {
        display:inline-block;
        width:35px;
        height:15px;
        margin-right:5px;
        border-radius: 2px;
        position:relative;
        top:2px;
        margin-top:10px;
}
.legend .required-modules {
}
.legend .overridden-modules span {
        background-color:#fff;
        background-image: -webkit-linear-gradient(315deg, rgba(178, 138, 103, 0.35) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(178, 138, 103, 0.35) 50%, rgba(178, 138, 103, 0.35) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: -o-linear-gradient(315deg, rgba(178, 138, 103, .15) 25%, transparent 25%, transparent 50%, rgba(178, 138, 103, .15) 50%, rgba(178, 138, 103, .15) 75%, transparent 75%, transparent);
        background-image: linear-gradient(315deg, rgba(178, 138, 103, 0.35) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(178, 138, 103, 0.35) 50%, rgba(178, 138, 103, 0.35) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        -webkit-background-size: 30px 15px;
        background-size: 35px 15px;
}*/
.modules .legend {
        display:flex;
        gap:20px;
}
.modules .legend span {
        display:inline-block;
        width:35px;
        height:15px;
        margin-right:5px;
        border-radius: 2px;
        position:relative;
        top:3px;
        margin-top:10px;
}
li.module[data-module-evaluated="0"] .num-credits,
li.module[data-module-datum-evaluated="0"] .num-credits {
        display:none;
}
/*li.module.has-overrides:after {
    content: '*';
}*/
/*#btn-clone-section,
.btn-add-unit {
        position: absolute;
        right: 0;
        background: #eee;
        border: #fff;
}*/
/*#btn-clone-section {
        top: 25px;
}
.btn-add-unit {
        top:60px;
}*/
.modal .btn-add-unit {
        position:static;
        background:transparent;
        border:none;
        text-decoration:none;
}
#content .modules .modal-body > hr {
        height:1px;
        margin:25px 0;
}
/*#content .modules .modal-body > div:not(.tooltip),*/
#content .modules .modal-body .overridable {
        position:relative;
        margin-bottom:20px;
        padding-right:30px;
}
#content .modules .modal-body > div.disabled:after {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #ffffff8a;
        content: '';
}
#content .modules .modal-body div.overrided,
#content .modules .modal-body div.overrided .override-btn,
#content .modules .modal-body div.overrided input,
#content .modules .modal-body div.overrided .form-control,
#content .modules .modal-body div.overrided .help-block {
        color:orange !important;
}
#content .modules .modal-body div.overrided input,
#content .modules .modal-body div.overrided .form-control {
        border-color:orange;
}
#content .modules .modal-body .override-btn {
        position:absolute;
        right:0px;
        top:33px;
        color:#aaa;
        cursor:pointer;
}
#content .modules .modal-body .checkbox .override-btn {
        top:7px;
}
#content .modules .modal-body .override-btn .override-on,
#content .modules .modal-body .override-btn .override-off {
        width:15px;
        height:16px;
        background-repeat:no-repeat;
        background-size:100%;
        display:inline-block;
}
#content .modules .modal-body .override-btn .override-on {
        background-image:url('../img/btn-override-on.png');
}
#content .modules .modal-body .override-btn .override-off {
        background-image:url('../img/btn-override-off.png');
}
#content .modules .modal-body .override-btn .glyphicon {
        font-size:10px;
}
#content .modules .modal-body .override-btn .glyphicon-star,
#content .modules .modal-body .override-btn .override-on {
        display:none;
}
#content .modules .modal-body div.overrided .glyphicon-star,
#content .modules .modal-body div.overrided .override-on {
        display:inline-block;
}
#content .modules .modal-body div.overrided .glyphicon-star-empty,
#content .modules .modal-body div.overrided .override-off {
        display:none;
}
#content .modules .modal-body div.overrided input[type="checkbox"] {
        position:relative;
}
#content .modules .modal-body div.overrided input[type="checkbox"]:before {
        content: '';
        position: absolute;
        top: 1px;
        left: 1px;
        right: 2px;
        bottom: 2px;
        background: rgba(255, 165, 0, 0.13);
}
.overall-assessment-template h2 {
        font-size:15px;
}
.overall-assessment-template .description {
        font-size:11px;
}
/*.module-students-list .remove-student-btn {
        cursor:pointer;
}*/
.module-students-list .student-has-module {
        width:70px;
        cursor:pointer;
}
.module-students-list .student-has-module input {
        margin:0 auto;
        pointer-events:none;
}
.module-students-list tbody tr td > * {
        opacity:.5;
}
.module-students-list tbody tr.has-module td > * {
        opacity:1;
}
.module-students-list tbody tr:not(.has-module) td.mss-status select {
        display:none;
}
.modal-add-edit-module .farbtastic-picker {
        float: left;
}
.modal-add-edit-module .module-color-value {
        float: left;
        max-width: 370px;
        margin-top: 80px;
        margin-left: 20px;
}
.modal-add-edit-module .manual-color-form {
        overflow:hidden; /* clearfix */
        margin-bottom:20px;
}
#module-color-quick-edit {
        display:none;
        position:absolute;
        top:200px;
        left:200px;
        background:#fff;
        padding:10px;
        border-radius:6px;
        box-shadow:2px 2px 8px 3px rgba(0, 0, 0, .2);
        z-index:2;
}
#module-color-quick-edit .color-picker {
        margin-bottom:10px;
}
#module-color-quick-edit .color-input {
        width:144px;
        float: left;
        margin-right: 10px;
        font-weight: 600;
}
#module-color-quick-edit .color-input + .btn {
        border: solid 1px #aaa;
        height: 33px;
        font-weight: 600;
        color: var(--ganesh-core-background-color);
}
.module-students-list .student-choice-data .student-choice-order {
        margin-bottom:6px;
}
.module-students-list .student-choice-data .student-choice-order .choice {
        margin-right:7px;
}
.module-students-list .student-choice-data .student-choice-order .choice.current-module-choice {
        font-weight:bold;
        color:#2499b8;
}
.module-students-list .student-choice-motivation {
        margin-bottom: 5px;
        padding-bottom: 5px;
        border-bottom: solid 1px #e7e7e7;
}
/*.module-students-list .student-choice-data .student-choice-order .choice:after {
        content: ', ';
}
.module-students-list .student-choice-data .student-choice-order .choice:last-child:after {
        content: none;
        margin: 0;
}*/
.module-students-list .student-choice-data {
        line-height:1.1;
        font-size:11px;
}
li.module .module-students-list .student-choice-data {
        font-size:9px;
}
li.module .module-students-list td {
        padding-top: 4px;
        padding-bottom: 4px;
        color:#333;
        border-radius:0 !important;
}
li.module .module-students-list .student-has-module {
        width:35px;
        border-left:none;
}
li.module .module-students-list .mss-status {
        width: 180px;
}
li.module .module-students-list .student-choice-data  {
        width: 45%;
        padding-top:6px;
        padding-bottom:2px;
}
li.module .module-students-list .student-choice-data .student-other-choices {
        display: none;
}
li.module .module-other-students-list {
        border-top:solid 2px #ddd;
}
li.module .module-other-students-list td {
        background-color:#f9f2d7;
}
.action-catalog li.module .module-actions .btn-delete{
        display:none;
}
.action-catalog li.module-group .module-group-name .actions{
        display:none;
}
.action-catalog .modules-unit .panel-heading .action{
        display:none;
}
.action-catalog .modules-unit .btn-add-module,
.action-catalog .modules-unit .btn-add-module-group{
        display:none;
}
/* Module affichage carte */
ul.modules.card-view {
        gap: 2%;
        padding-right: 0;
        padding-left: 10px;
        padding-right: 10px;
        display:flex;
        flex-wrap: wrap;
}
.modules.card-view li.module{
        width: 23.5%;
        /*display: inline-block;*/
        /*margin-right: 2%;*/
        background: #fff;
        margin-top:10px;
        margin-bottom: 10px;
        border: 0;
        padding-left: 10px;
        padding-right: 10px;
        padding-top: 20px;
        padding-bottom: 15px;
        transition:.3s;
}
.modules.card-view li.module .module-infos {
        flex-direction: column;
        align-items: center;
        padding: 0px;
}

.modules.card-view li.module .module-infos .module-color {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        width: auto;
        height: 17px;
        margin-bottom: 10px;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        border: 0;
        transition:.3s;
}
.modules.card-view li.module:hover {
        background:#f5f5f5;
}
.modules.card-view li.module .module-infos .module-color.unit-no-color {
        display: initial;
}
.modules.card-view li.module .module-infos .module-color.no-color::after {
        display: none;
}
.modules.card-view li.module .module-infos .module-title {
        width: 100%;
        text-align: center;
        margin-bottom: 7px;
        margin-top: 10px;
}
.modules.card-view li.module .module-infos .module-title > *{
        display: block;
        /*white-space: wrap;*/
        /*height: auto;*/
        /*display: -webkit-box;*/
        /*-webkit-line-clamp: 3;*/
        /*-webkit-box-orient: vertical;*/
}
.modules.card-view li.module .module-infos .module-title > .module-teachers {
        white-space: wrap !important;
        font-size: 11px;
        /*font-style: italic;*/
        opacity: .8;
}
.prefix-professors .modules.card-view li.module .module-infos .module-title > .module-teachers {
        display:none;
}
.modules.card-view li.module .module-infos .module-title .module-name {
        position: relative;
        font-size: 13px;
        text-transform: uppercase;
        font-family: 'Montserrat';
        color: #2e2f33;
        margin-bottom:3px;
        overflow:hidden;
        text-overflow:ellipsis;
}
.modules.card-view li.module .module-infos .module-title .module-cursus-section {
        color: #999;
        font-size: 12px;
        display: flex;
        margin: 0 10px;
        align-items: center;
        justify-content: center;
        gap: 7px;
}
.prefix-professors .modules.card-view li.module .module-infos .module-title .module-cursus-section {
        margin-bottom:0;
}
.prefix-professors .modules.card-view li.module .module-infos .module-title .module-cursus-section .module-cursus-section-name {
        overflow:hidden;
        text-overflow:ellipsis;
}
.modules.card-view li.module .cloned-modules-count {
        margin-top: 5px;
        margin-bottom: 3px;
        display: inline-block !important;
        font-size: 10px;
        padding: 0Px 4px !important;
}
.modules.card-view li.module .module-datum-status {
        margin-top: -10px;
        margin-bottom: 5px;
        display: block;
        width:auto;
}
.modules.card-view li.module .module-datum-status span.status-label {
        display:inline-block;
        position: relative;
        top: -4px;
        font-size: 10px;
        margin-right: 2px;
}
.modules.card-view li.module .module-teachers:before {
        display: none;
}
.modules.card-view li.module .module-actions {
        display: none;
        /*position: absolute;*/
        /*bottom: 8px;*/
        /*right: 1px;*/
}

/*.modules.card-view li.module.first-of-speciality,*/
/*.modules.card-view li.module.last-of-speciality {*/
/*        margin: 0;*/
/*}*/
.modules.card-view li.module .module-speciality{
        top: 2px;
        left: 8px;
        font-size: 9px;
        color: inherit;
        font-family: 'Montserrat';
        opacity: 0.8;
}
.modules.card-view li.module .module-speciality .module-speciality-inner{
        padding:0;
        background-color: unset;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
        width: calc(100% - 20px);
}
ul.modules.card-view .module-num-data .num-students,
ul.modules.card-view .module-num-data .num-credits {
        font-size: 10px;
}
.modules.card-view li.module-group {
        display: inline-block;
        margin: 0;
}
.modules.card-view li.module-group > ul {
        border: none;
        padding: 0;
        margin: 0;
}
.modules.card-view li.module-group .module-group-name{
        display: none;
}
/*.modules.card-view li.module-group ul.module-group-modules > li {
        margin-bottom: 2px;
}*/

.btn-assign-edited-module {
        margin-top:20px;
}

.inline-editing-overlay {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, .6);
        z-index: 1;
        pointer-events: none;
        opacity:0;
        transition:opacity .4s;
}
body.inline-editing .inline-editing-overlay {
        opacity:1;
}
body.inline-editing li.module.inline-editing {
        z-index:2;
}
body.inline-editing li.module:not(.inline-editing) .num-students:hover {
        z-index: 2;
        opacity:.7;
}
.close-inline-editing-btn {
        display:none;
}
body.inline-editing .close-inline-editing-btn {
        display: block;
        position: fixed;
        top: 70px;
        right: 20px;
        background: #2499b8;
        z-index: 2;
        font-weight: bold;
        text-transform: uppercase;
        box-shadow: 1px 1px 3px 0px rgb(0 0 0 / 10%);
}
li.module .resize-student-list-btn {
        position:absolute;
        bottom:-1px;
        left:0;
        right:0;
        text-align:center;
        color:var(--ganesh-core-background-color);
        display:none;
        cursor:ns-resize;
}
li.module .resize-student-list-btn span {
        font-size:10px;
        opacity:0;
        transition:opacity .2s;
}
li.module.inline-editing .resize-student-list-btn {
        display:block;
}
li.module.inline-editing .resize-student-list-btn:hover span {
        opacity:1;
}

.btn-unlock-anterior-year img {
        position:relative;
        top:-1px;
}
.modules.readonly .page-title-side-btns .btn:not(.btn-export-catalog),
.modules.readonly .panel-heading .action,
.modules.readonly .panel-body > .btn,
.modules.readonly .module-actions,
.modules.readonly .overall-assessment-template .btn {
        display:none;
}

#modal-pre-add-module .existing-module-search-results {
        display:flex;
        flex-direction:column;
        max-height:300px;
        overflow-y:scroll;
}
#modal-pre-add-module .existing-module-search-results .existing-module-search-result {
        background-color:#fff;
        transition:background-color .3s;
        padding:10px;
        cursor:pointer;
}
#modal-pre-add-module .existing-module-search-results .existing-module-search-result:hover {
        background-color:#ddd;
}
#modal-pre-add-module .existing-module-search-results .module-datum-name {
        font-weight:bold;
}
#modal-pre-add-module .existing-module-search-results .unit-datum-name {
        font-size:10px;
}
#modal-pre-add-module .existing-module-search-results .unit-datum-name i {
        text-transform:uppercase;
        font-weight:600;
        font-style:normal;
}
#modal-pre-add-module .existing-module-search-results .cursus-section {
        text-transform:uppercase;
        font-weight:600;
        font-size:10px;
        color:#999;
}
#modal-pre-add-module .existing-module-search-results .cursus-section .section-name {
        font-weight:400;
}

/**
 * Catalogue de cours (Modules)
 */
#catalog-caracteristiques table th {
        width: 30%;
}
#catalog-documents .document-list li .status-select {
        display: none;
}


/**
 * Évaluations :
 */
#content .opened-row a {
        font-weight: bold;
}
#content .closed-row a {
        color: rgba(255, 255, 255, 0.8);
}
section.evaluations.form .evaluation-actions .input,
section.evaluations.form .evaluation-actions .form-control {
        display:inline-block;
}
section.evaluations.form .submit-buttons {
        text-align:right;
        margin-bottom:20px;
        float:right;
}
section.evaluations.form .submit-buttons div.submit {
        width: auto;
        margin-top: 0px;
        margin-right:5px;
        display: inline-block;
        font-weight: 700;
}
section.evaluations.form .submit-buttons div.submit input {
        text-transform: uppercase;
        font-size:13px;
}
section.evaluations.form table,
section.evaluations.form .non-responsive-table-wrapper {
        margin-bottom: 10px;
}
section.evaluations.form th {
        white-space:normal;
        line-height: 1.25;
}
tr.stage-demande td,
tr.evaluation-en-attente td {
        background: white;
}

tr.stage-en-cours td,
tr.evaluation-validee td {
        background: #bdffb1;
        border-color: #fff !important;
}
tr.evaluation-rattrapage td {
        background: #fffca2;
        border-color: #fff !important;
}
tr.stage-convention td {
        background: #ffdf83;
        border-color: #fff !important;
}
tr.evaluation-echec-s1 td,
tr.evaluation-redoublement td {
        background: #ffd5b0;
        border-color: #fff !important;
}
tr.stage-valide td {
        background: #fffca2;
        border-color: #fff !important;
}
tr.evaluation-demission td,
tr.evaluation-radiation td {
        background: #ffb8b8;
        border-color: #fff !important;
}
tr.stage-attestation td {
        background: #00cc99;
        border-color: #fff !important;
}
tr.stage-termine td {
        background : #009933;
        border-color: #fff !important;
}
tr.evaluation-validee td:first-child,
tr.evaluation-rattrapage td:first-child,
tr.stage-convention td:first-child,
tr.evaluation-echec-s1 td:first-child,
tr.evaluation-redoublement td:first-child,
tr.stage-valide td:first-child,
tr.evaluation-demission td:first-child,
tr.evaluation-radiation td:first-child,
tr.stage-attestation td:first-child,
tr.stage-termine td:first-child {
        border-left-color: #dbdbdb !important;
}
tr.evaluation-validee td:last-child,
tr.evaluation-rattrapage td:last-child,
tr.stage-convention td:last-child,
tr.evaluation-echec-s1 td:last-child,
tr.evaluation-redoublement td:last-child,
tr.stage-valide td:last-child,
tr.evaluation-demission td:last-child,
tr.evaluation-radiation td:last-child,
tr.stage-attestation td:last-child,
tr.stage-termine td:last-child {
        border-right-color: #dbdbdb !important;
}

tr[data-draft="1"],
tr[data-draft="true"],
#content .index .draft td,
#content .index .closed-row td {
        background-image: -webkit-linear-gradient(-45deg, rgba(160, 160, 160, 0.2) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(160, 160, 160, 0.2) 50%, rgba(160, 160, 160, 0.2) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(160, 160, 160, 0.2) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(160, 160, 160, 0.2) 50%, rgba(160, 160, 160, 0.2) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 9px 9px;
}
#content .index .archive td {
        background-image: -webkit-linear-gradient(-45deg, rgba(160, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(160, 0, 0, 0.1) 50%, rgba(160, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(160, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(160, 0, 0, 0.1) 50%, rgba(160, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 9px 9px;
}
#content .index .closed-row td a,
#content .index .closed-row td {
        color: #2e2f33 !important;
        font-weight: 500;
}
#content .index .closed-row .status-switcher {
        pointer-events: none;
        opacity:.7;
}
#content .index .closed-row .status-switcher .active {
        background-image:none;
}
#left-menu .validation-status-wrapper label {
        margin-bottom: 10px;
        font-style: normal;
}
.submit-buttons div.submit, .submit-buttons div.submit input {
        width: 100%;
        margin-top: 0;
        text-transform: uppercase;
}
.top-right-submit-buttons {
        position: absolute;
        top: 0;
        right: 0;
}
.evaluations.form .presence-cell {
        vertical-align: middle;
}
.evaluations.form .presence-cell .presence-selector-bg {
        background: url('../img/presence-selector-bg-small.png') no-repeat;
        width: 59px;
        height: 13px;
        position: relative;
        display: inline-block;
}
.evaluations.form .presence-cell .presence-input {
        background: url('../img/presence-input-empty.png') no-repeat;
        width: 13px;
        height: 13px;
        position: absolute;
        top: 0px;
        cursor: pointer;
}
.evaluations.form .presence-cell .presence-selector-bg.disabled .presence-input {
        cursor: default;
}
.evaluations.form .presence-cell .presence-input:nth-child(1) {
        left: 0;
}
.evaluations.form .presence-cell .presence-input:nth-child(2) {
        left: 23px;
}
.evaluations.form .presence-cell .presence-input:nth-child(3) {
        right: 0;
}
.evaluations.form .presence-cell .presence-input.selected {
        background: url('../img/presence-input-filled.png') no-repeat !important;
}
.evaluations.form .presence-cell input {
        display: none;
}
.evaluations.form .projects-separator td {
        height: 1px;
        background: #DDD;
        padding: 0;
}
.evaluations .teachers-list {
        font-size:10px;
}
.evaluations .speciality-name {
        font-size:10px;
        font-weight:bold;
}
/*.evaluations.form .last-unit-row td,
.evaluations.form .projects-separator td {
    border-bottom: solid 1px #013F51;
}*/
table#evaluation {
    clear:both;
}
table#evaluation tbody td.unit-cell,
table#fiche-evaluation tbody td.unit-cell {
        vertical-align: top;
}
table#fiche-evaluation .presence-cell {
        font-size: 14px;
}
table#fiche-evaluation .presence-header,
table#fiche-evaluation .note-header,
table#fiche-evaluation .presence-cell,
table#fiche-evaluation .note-cell,
table#fiche-evaluation .grade-cell,
table#fiche-evaluation .credits-obtenus-cell,
table#fiche-evaluation .credits-total-cell,
table#fiche-evaluation .th-credits-obtenus {
        text-align: center;
}
/*.evaluations .student-infos {
        margin-bottom: 30px;
        border: solid 1px white;
        padding: 10px;
        min-height:132px;
}*/
/*.evaluations .student-infos img {
        float: right;
        width: 110px;
        height: 110px;
        overflow: hidden;
        text-align: center;
        border: solid 1px white;
        background: white;
}
.evaluations .student-infos .student-picture img {
        max-height: 100%;
}*/
.student-infos {
        position:relative;
}
.student-infos .student-picture img {
        width:100%;
        /*margin-bottom:15px;*/
}
.student-infos .student-view-btn {
        position: absolute;
        top:0;
        right:0;
        padding:5px;
        opacity: .75;
        transition:opacity .3s;
}
.student-infos .student-view-btn:hover {
        opacity:1;
}
.student-infos .student-view-btn .glyphicon {
        color: #fff;
        font-size: 12px;
}
.student-infos .student-name {
        margin-top: 0;
}
.student-infos .student-grant-work {
        margin-top: 5px;
        font-style: italic;
        font-weight:100;
}
.panel.student-infos {
        text-transform:none;
        font-weight:100;
        /* margin-top: -14px; */
}
.panel.alumni-infos{
        margin-top: 0;
}
.alumni-index .table .student-cell .picture{
        width: 40px;
        height: 40px;
}
.alumni-index .table .student-cell .student-full-name{
        padding-left: 5px;
}
.alumni-infos .panel-body-inner{
        min-height: 120px;
}
.alumni-infos .student-picture{
        float: left;
        width: 100px;
}
.alumni-infos .student-infos-details{
        margin-left: 130px;
}
.alumni-infos .alumni-name,
.panel.student-infos .student-name {
        /*margin-top:5px;*/
        margin-bottom:0;
        text-transform:uppercase;
        font-family: inherit;
        font-weight:400;
        font-size: 26px;
}
.alumni-infos .alumni-name .name,
.panel.student-infos .student-name .name {
        font-weight:500;
}
.alumni-infos .alumni-name .surname,
.panel.student-infos .student-name .surname {
        font-weight:100;
}
.alumni-infos .alumni-name .mail,
.alumni-infos .alumni-name .tel,
.panel.student-infos .student-semestre {
        font-size:13px;
        font-weight: 600;
        color: #2499b8;
        margin-top:5px;
}
.alumni-infos .alumni-name .mail,
.alumni-infos .alumni-name .tel{
        font-weight: 400;
        font-size:12px;
}
.alumni-infos .alumni-promo{
        font-size:18px;
        font-weight: 600;
        text-transform: uppercase;
        color: #2499b8;
        margin-top:0px;
}
.prefix-alumni.action-alumni-edit .student-picture{
        max-width: 100%;
        width: 100%;
        position: relative;
}
.prefix-alumni.action-alumni-edit .student-picture .edit-icn {
        position: absolute;
        content: '';
        height: 22px;
        width: 22px;
        top: 0px;
        right: 0px;
        background: #2499b8;
        padding: 2px;
        padding-left: 5px;
        transition: width .5s;
        color: #ffffff;
        font-size: 9px;
        text-transform: uppercase;
        overflow: hidden;
        line-height: 1.5;
        font-family: Montserrat;
        white-space: nowrap;
        cursor: pointer;
}
.prefix-alumni.action-alumni-edit .student-picture .edit-icn .glyphicon-edit{
        padding-right: 4px;
}
.prefix-alumni.action-alumni-edit .student-picture:hover .edit-icn {
        width: 100%;
}
.panel.student-infos .student-speciality {
        font-weight:400;
}
.evaluations .page-title-bottom {
        overflow: hidden;
        margin-bottom: -6px;
        margin-top: 6px;
        color: #555;
}
.evaluations .page-title-bottom .evaluation-pagination {
        float: left;
        font-size: 10px;
        font-weight: 500;
        margin-right: 10px;
        padding-top:1px;
}
.evaluations .page-title-bottom .evaluation-pagination .pagination-title {
        font-size:9px;
        float: left;
        margin-top: 2px;
}
.evaluations .page-title-bottom .evaluation-pagination .num {
        position:relative;
        top:1px;
}
.btn-previous-eval, .btn-next-eval {
        vertical-align: bottom;
        margin: 0 5px;
}
.btn-next-eval {
        margin-right: 0;
}
.pagination-panel .panel-heading .pagination-values {
        float:right;
        margin-right: -8px;
}
.pagination-panel .panel-heading .btn-previous-eval {
        position:absolute;
        left:15px;
        top:12px;
}
.pagination-panel .panel-heading .btn-next-eval {
        position:absolute;
        right:15px;
        top:12px;
}
.pagination-panel .panel-list {
        max-height: 220px;
        overflow: auto;
}
.pagination-panel .student-picture {
        float:left;
        width:20px;
        height:20px;
        background-size:cover;
        border-radius:50%;
        margin-right:10px;
}
.pagination-panel .num-eval {
        float:left;
        margin-right:5px;
        min-width:10px;
}
.pagination-panel .active .student-picture {
        width:50px;
        height:50px;
}
.pagination-panel .student-name {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 200px;
}
.pagination-panel .student-name .name {
        font-weight:500;
}
.pagination-panel .student-name .surname {
        font-weight:500;
        text-transform:none;
        font-weight:400;
}
.pagination-panel .student-name .student-section {
        color:#999;
}
.pagination-panel .active .student-section {
        color:#fff;
}
.pagination-panel li {
        position:relative;
}
.pagination-panel .glyphicon {
        position:absolute;
        right:7px;
        top:7px;
        color:#666;
        margin:0 !important;
}
.pagination-panel .active .glyphicon {
        color:#fff;
}
/*.pagination-panel .active .student-name {
        font-size:15px;
}*/
.th-credits-obtenus {
        border-left-width: 2px !important;
}
.evaluations.form td.col-credits-obtenus {
        background-color: #e4f1ff !important;
}
/* td.col-credits-obtenus, .total-credits-obtenus {
        border-left: solid 2px #D3D3D3 !important;
} */
.evaluations.form td.col-credits-total,
.evaluations.form td.col-credits-obtenus.disabled {
        background-color: #d4e7f2 !important;
        /*background-color: #e4f1ff !important;*/
        /*background-image: -webkit-linear-gradient(45deg, rgba(36, 153, 184, 0.05) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(36, 153, 184, 0.05) 50%, rgba(36, 153, 184, 0.05) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));*/
        /*background-image: linear-gradient(45deg, rgba(36, 153, 184, 0.05) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(36, 153, 184, 0.05) 50%, rgba(36, 153, 184, 0.05) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));*/
        /*background-size: 10px 10px;*/
}
td.col-credits-obtenus,
td.col-credits-total {
        font-weight: 600;
        color: #666;
        text-align: center;
}
td.col-credits-total input {
        font-weight: bold;
        color: #666;
}
.evaluations.form tr.project-row td.col-credits-total {
        background-image: none;
}
tr.module-row td.col-credits-total {
        padding-right: 10px;
}
.total-row {
        background: #eee;
        font-weight: bold;
        text-align: center;
        color: #888;
}
.total-row td {
        border-top-width: 2px !important;
}
.total-row .total-row-label {
        text-align: left;
        padding-right: 15px;
        border-left-width: 1px !important;
}
tr.units-total-row td {
        background: #cacaca !important;
        text-align: center;
        font-weight: 600;
        color: #666;
        padding: 2px 8px !important;
}
tr.units-total-row td.units-total-row-label {
        text-align:right;
}
.left-col .locked {
        background:#eee;
}
.left-col .locked a {
        cursor: default;
        font-style: italic;
        transition:color .2s;
}
.left-col .locked a:after {
        content:'';
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        background:rgba(255, 255, 255, 0.4);
        transition:background linear .1s;
}
.left-col .locked.unlocked {
        background:none;
}
.left-col .locked.unlocked a {
        color: #eda846 !important;
        cursor:pointer;
        font-style: normal;
}
.left-col .locked.unlocked a:after {
        background:rgba(255, 255, 255, 0.2);
}
.left-col .locked #btn-unlock-edit-mode {
        position:absolute;
        right:10px;
        top:0;
        bottom:0px;
}
.overall-assessment {
        position:relative;
}
.overall-assessment .overall-assessment-label {
        font-size: 16px;
        text-transform: uppercase;
        margin-bottom: 12px;
        font-weight: normal;
}
.overall-assessment .buttons {
        position: absolute;
        top: -54px;
        right: 0;
}
.overall-assessment .buttons .btn {
        padding-top: 2px;
        padding-bottom: 3px;
}
.overall-assessment .mce-tinymce {
        margin-bottom:30px;
}
.left-col .submit-buttons .btn-default,
.sidr .submit-buttons .btn-default {
        margin-bottom:10px;
}
.right-col.evaluations .submit-buttons .btn-default {
        margin-right:10px;
}
#btn-reload-recalculate-grades,
#btn-reload-exams-data {
        float:right;
        /*margin-bottom:10px;*/
        padding-top: 2px;
        padding-bottom: 3px;
        position:relative;
        padding-left:22px;
        margin-bottom: 10px;
        margin-left: 5px;
}
#btn-reload-recalculate-grades .glyphicon,
#btn-reload-exams-data .glyphicon {
        position:absolute;
        top:3px;
        left:4px;
        font-size:12px;
}

/**
 * Évaluations - résultats :
 */
.evaluations-results .unregistered-student {
        background:#eee;
}
.evaluations-results thead tr+tr th {
        max-width:120px;
        overflow:hidden;
        text-overflow:ellipsis;
}

/**
 * Évaluations prof :
 */
.evaluations-description {
        max-width:60em;
}
.evaluations.form .teacher-edit {
        border-collapse: collapse; /* règle le pb des bordures doubles sur cours actifs... enlever si pb */
}
.evaluations.form .teacher-edit .module-row td,
.evaluations.form .teacher-edit .project-row .taken-project {
        background-image: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0.05) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.05) 50%, rgba(0, 0, 0, 0.05) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(0, 0, 0, 0.05) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.05) 50%, rgba(0, 0, 0, 0.05) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 10px 10px;
        color: rgba(0, 0, 0, 0.7) !important;
}
.evaluations.form .teacher-edit .module-row td input,
.evaluations.form .teacher-edit .project-row .taken-project input {
        color: rgba(0, 0, 0, 0.6) !important;
}

.evaluations.form #evaluation.teacher-edit td.active-teacher {
        border-top: solid 2px #777;
        border-bottom: solid 2px #777;
        border-right: solid 2px #777;
        border-left: solid 2px #777;
        background: white;
        /*box-shadow:1px 1px 2px 1px rgba(100, 100, 100, 0.5);*/

        position: relative;
        z-index: 999;
        color: black !important;
}
.evaluations.form .teacher-edit .presence-cell .presence-selector-bg.disabled {
        opacity: 0.6;
}
.evaluations.form .teacher-edit .presence-cell.active-teacher .presence-selector-bg {
        opacity: 1;
}
.evaluations.form .teacher-edit .active-teacher .module-name,
.evaluations.form .teacher-edit .teachers-list .current-teacher,
.evaluations.form .teacher-edit .project-name {
        font-weight: bold;
}
.evaluations.form .teacher-edit .teachers-list .current-teacher {
        color: #C72121;
}

/**
 * Statistiques
 */
.statistics.index #charts-results {
        margin-bottom: 20px;
}

/**
 * Inscriptions
 */
.subscriptions-date, .subscriptions-hour {
        height: 25px;
}
.subscriptions-hour {
        width: 40%;
        display: block;
        float: right;
}
.subscriptions #datatable td label:not(.btn) {
        font-size: 10px;
}
#subscription-modal .modal-dialog {
        width: 800px;
}

/**
 * Companies
 */
td.company-name{
        text-transform: uppercase;
        font-weight: 600;
        cursor:pointer;
}
td.company-name:hover {
        text-decoration:underline;
}
.workplacement-add-new-contact,
.embed-add-contact{
        padding-top: 10px;
        padding-bottom: 10px;
        border: 1px solid #CCC;
        border-radius: var(--ganesh-border-radius);
}

/**
 * Stages
 */
#workplacement-add .fake-input {
        font-size: 13px;
}
#workplacement-view h5 {
        padding-left: 15px;
        /*    border-bottom: 1px solid #e5e5e5;*/
        text-decoration: underline;
}
.workplacement_status{
        width: 130px;
        padding: 5px 5px;
}
.workplacement-date{
        font-size: 11px;
}
#companies-add .modal-dialog,
#company-modal .modal-dialog,
#workplacement-edit .modal-dialog,
#workplacement-view .modal-dialog,
#workplacement-add .modal-dialog{
        width: 920px;
        min-width: 920px !important;
}
#companies-add .modal-header,
#company-modal .modal-header,
#workplacement-add .modal-header,
#workplacement-edit .modal-header{
        padding-left: 19px;
        padding-bottom: 0;
}

#workplacement-edit .modal-header .dates{
        font-weight: 600;
}
#modal-workplacement .modal-header h2{
        max-width: 75%;
}
.modal-company .embed-add-contact,
#modal-workplacement .workplacement-add-new-contact,
#modal-workplacement .embed-add-company.container,
.workplacement .workplacement-add-new-contact,
.workplacement .embed-add-company.container {
        background-color: #4f5d6b;
        margin-bottom: 20px;
        border-radius: 4px;
        padding-bottom: 10px;
}
.modal-company .embed-add-contact label,
#modal-workplacement .workplacement-add-new-contact label,
#modal-workplacement .embed-add-company.container label,
.workplacement .workplacement-add-new-contact label,
.workplacement .embed-add-company.container label {
        color:#fff;
}
.modal-company .embed-add-contact h5,
#modal-workplacement .workplacement-add-new-contact h5,
#modal-workplacement .embed-add-company.container h5,
.workplacement .workplacement-add-new-contact h5,
.workplacement .embed-add-company.container h5 {
        color: white;
        text-transform: uppercase;
}
#modal-workplacement .empty-notes > label {
        display:none;
}
#companies-add .modal-body,
#company-modal .modal-body,
#workplacement-add .modal-body,
#workplacement-edit .modal-body{
        overflow-y: scroll;
        max-height: 650px;
}
#companies-add .modal-body .row,
#company-modal .modal-body .row,
#workplacement-add .modal-body .row,
#workplacement-edit .modal-body .row{
        margin: 0;
}
#companies-add .modal-footer input,
#company-modal .modal-footer input,
#workplacement-add .modal-footer input,
#workplacement-edit .modal-footer input{
        text-transform: uppercase;
}
#WorkplacementStatus,
.workplacements .status-switcher .btn {
    font-weight: 600;
    color: #333 !important;
}
#companies-add .modal-footer input[type="submit"] ,
#company-modal .modal-footer input[type="submit"] ,
#workplacement-add .modal-footer input[type="submit"] ,
#workplacement-edit .modal-footer input[type="submit"] {
        font-weight: bold;
}
.companies .tags-edit {
        display: none;
}
#workplacement-add #workplacement-add-company{
        margin-top: 25px;
}
#workplacement-add .add-company-container{
        background-color: #eee;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 10px !important;
        padding: 10px !important;
}
#WorkplacementEditForm #workplacement-company .company-select,
#WorkplacementEditForm #workplacement-company .workplacement-contact-select .select{
        flex-grow: 1;

}

.students.view.single .workplacement-pupils-form .page-title {
        padding-right: 400px;
}
.students.view.single .workplacement-pupils-form .container{
        margin-left: 0;
}
.company-contacts a{
        text-decoration: none;
}
/* .company-contacts a strong{
        display: block;
} */
h5.subtitle{
        font-weight: 600;
        font-size: 12px;
        margin-bottom: 15px;
        text-decoration: underline;
}

/*button.delete-existing-contact,*/
/*button.delete-existing-partnership-contact,*/
/*button.add-existing-partnership-contact,*/
/*button.add-existing-contact{*/
/*        display: inline-block;*/
/*        width: 25px;*/
/*        height: 25px;*/
/*        border-radius: 50%;*/
/*        margin-top: 21px;*/
/*}*/
/*button.delete-existing-contact .glyphicon,*/
/*button.delete-existing-partnership-contact .glyphicon,*/
/*button.add-existing-partnership-contact .glyphicon,*/
/*button.add-existing-contact .glyphicon{*/
/*        vertical-align: middle;*/
/*        top: -5px;*/
/*        left: -7px;*/
/*}*/
/*button.add-existing-partnership-contact .glyphicon,*/
/*button.add-existing-contact .glyphicon {*/
/*        left:-6px;*/
/*}*/
.add-new-contact-button-container{
        margin-top: 25px !important;
        margin-bottom: 25px !important;
}
.add-new-contact-container h5,
#workplacement-add .add-company-container h5{
        font-weight: 600;
        margin-left: 16px;
        margin-top: 0;
        padding-bottom: 4px;
        border-bottom: 1px solid #ccc;
        margin-bottom: 15px;
        font-size: 14px;
}
#content .document-workplacement a{
        color: #4388cc;
}
.document-workplacement{
        border : 1px solid #ccc;
        padding: 10px;
        margin-bottom: 10px;
}

.document-workplacement .actions-document-workplacement{
        display: inline-block;
        float: right;
        font-size: 14px;
}
.document-workplacement .actions-document-workplacement .glyphicon-edit{
        cursor: pointer;
}

.workplacements .datatable-custom-filters select{
        width: 130px;
}

.workplacements .workplacement-date-filter,
.workplacements .workplacement-type-filter{
        margin-left: 30px;
}

#workplacement-add .workplacement-contacts{
        display: none;
}

/*LOG D ERROR */
.cake-error {
        /*position: absolute;
        top: 0;
        left : 0;*/
        position: relative;
        z-index: 999;
        text-transform: none;
}

/*Feedback utilisateur*/
#alertSucces {
        width: 400px;
        position: absolute;
        top: 100px;
        left: 50%;
        margin-left: -200px;
        z-index: 99999;
}
#alertSucces p {
        text-align: center;
        font-size: 14px;
}

.btn-action {
        font-size: 10px;
        border: 1px solid #fff;
        width: 80%;
        padding: 6px 12px;
        margin: 10px 0 10px 10px;
}
.btn-export,
.btn-archives{
        border: 1px solid #fff;
        transition: all .2s linear;
        display:inline-block;
        position:relative;
}
/*.btn-action:hover, .btn-export:hover {
        background-color: rgba(255, 255, 255, 0.5);
}*/
.btn-export:before,
.page-title-side-btns .btn:before{
        position: absolute;
        top: 0;
        left: 0;
        content: '';
        width: 100%;
        height: 100%;
        background: url(../img/tree-item-bg.png) repeat-x;
        background-size: auto 100%;
        opacity: 0;
        transition: opacity .2s linear;
        z-index: 1;
}
.btn-export:hover:before,
.page-title-side-btns .btn:hover:before {
        opacity: .15;
}
.home .panel-heading .btn-export {
        width:25px;
        height:25px;
        display: inline-block;
        margin-right: 5px;
        padding: 3px;
        vertical-align: top;
        position: relative;
        top: -4px;
        border: solid 1px;
        border-radius: 4px;
        border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
        background-image: linear-gradient(to bottom,#fff,#e6e6e6);
        background-repeat: repeat-x;
        cursor:pointer;
}
.home .panel-heading .btn-export svg {
        max-width:100%;
        max-height:100%;
}
.home #content .panel-heading .btn-export path {
        fill: #2499b8;
}

.submit-zone/*, .submit*/
{
        padding-left: 15px;
}
.password-meter {
        margin-bottom: 20px;
}


.flash-message-wrapper {
        position:fixed;
        top:0;
        left:0;
        bottom:0;
        right:0;
        z-index:1051; /* le même que inactive-overlay */
        display:none;
        background: rgba(0, 0, 0, .5);
}
.flash-message {
        text-align: center;
        width: 600px;
        margin: 350px auto;
        font-weight: bold;
        z-index: 1058;
        position: relative;
        border: solid 3px #2499b8;
        background: #FFF;
        box-shadow: 2px 2px 12px 1px rgba(46, 47, 51, 0.3);
        padding: 40px;
        font-size: 14px;
        color: #2499b8;
        border-radius: 7px;

        background-image:url('../img/close-flash.png');
        background-repeat:no-repeat;
        background-position:top 3px right 3px;
}
/* SECTIONS / CURSUS *
.section-select-box {
    width:70px;
    height:43px;
    float:left;
}
.section-select-box .form-control {
    padding:3px;
    font-size:9px;
    font-weight:bold;
    text-transform:uppercase;
}
.section-horizontal-link {
    float:left;
    width:10px;
    height:1px;
    background:white;
    position:relative;
    top:16px;
}
.section-vertical-link {
    width:1px;
    height:25px;
    background:white;
    position:relative;
    left:35px;
}
.section-horizontal-link.invisible,
.section-vertical-link.invisible {
    visibility:hidden;
    opacity:0;
}

.section-horizontal-interyear-link {
    width:35px;
    height:1px;
    margin-left:35px;
    position:relative;
    top:16px;
    float:left;
    background:white;
}*/

/**
 * TEACHERS
 */
 .teachers .teacher-name {
        text-transform:uppercase;
}
#modal-teacher .modal-header #TeacherFileUploadForm {
        display: none;
}




/**
 * SECTIONS / CURSUS
 */
#cursus-tree {
        /*overflow-x:hidden;*/

        overflow: auto;
        padding-bottom: 40px;
}
#cursus-tree-inner {
        width:max-content;
}
.cursus-branch-children.empty {
        display: none;
}
.cursus-branch-children {
        float: left;
        position: relative;
}
.cursus-branch {
        position: relative;
        float: left;
        clear: both;
        width: 100%;
}
.cursus-branch + .cursus-branch {
        margin-top: 59px;
}
.cursus-branch .year-label input,
.cursus-branch .sise-code-diplome input {
        margin-bottom: 6px;
        width: 160px;
        font-size: 10px !important;
        border-radius:4px;
        padding-left:6px;
}
.cursus-branch .year-label input {
        font-weight: 600;
}
.cursus-branch .year-label input::placeholder,
.cursus-branch .sise-code-diplome input::placeholder {
        color:#aaa;
        font-style:italic;
        text-transform:none;
}
.section-item {
        float: left;
        background: white;
        width: 70px;
        height: 28px;
        padding: 3px;
        position: relative;
}
.section-item select {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden;
        font-size: 11px !important;
        font-weight: bold;
        text-transform: uppercase;
        border-radius:4px;
        padding-left:6px;
}
.section-item1 {
        margin-right: 20px;
}
.section-item1:after {
        position: absolute;
        top: 12px;
        right: -20px;
        width: 20px;
        height: 2px;
        background: #ddd;
        content: '';
}
.section-item2 {
        margin-right: 20px;
}
.section-item2 + .cursus-branch-children {
        margin-top: 46px;
        /* .section-item[height] + 20px */
}
.cursus-branch-children > .cursus-branch:after {
        position: absolute;
        left: -66px;
        width: 66px;
        height: 2px;
        top: 60px;
        background: #ddd;
        content: '';
}
.plus-btn {
        position: absolute;
        height: 100%;
        top: 35px;
        left: 103px;
}
.plus-btn img {
        position: absolute;
        bottom: 0;
        z-index: 2;
        cursor: pointer;
        border-radius:4px;
        overflow:hidden;
}
.plus-btn:before {
        position: absolute;
        top: 42px;
        left: 10px;
        width: 2px;
        height: calc(100% - 40px);
        background: #ddd;
        content: '';
}
#js-branch-model {
        display: none;
}
.del-btn {
        cursor: pointer;
        position: absolute;
        left: 170px;
        top: 53px;
}
.notice {
        display: block;
        padding: 9.5px;
        margin: 0 0 10px;
        font-size: 12px;
        line-height: 1.428571429;
        word-break: break-all;
        word-wrap: break-word;
        color: #fff;
}

/*
 * Espace étudiant :
 */
ul.pupil_actions li {
        margin-bottom:10px;
        font-size:14px;
}
#content ul.pupil_actions li a {
        color:black;
}
.pupils-modules-contract .unit-block {
        /*border-bottom: 1px solid rgba(255, 255, 255, 0.5);*/
        margin-bottom: 25px;
        padding-bottom: 20px;
}
.pupils-modules-contract h3 {
        margin-top:0;
        margin-bottom: 5px;
        font-size:20px;
        font-style:italic;
}
.pupils-modules-contract .submit {
        margin-top:0;
}
.pupils-modules-contract h5 {
        margin-top: 5px;
        padding-bottom: 5px;
        font-size: 12px;
        text-transform: uppercase;
        font-weight: 600;
        border-bottom: solid 1px #ccc;
        margin-bottom: 10px;
        color: var(--ganesh-core-background-color);
}
.pupils-modules-contract .optional-modules {
        margin-top:25px;
}
.pupils-modules-contract .required-modules > h5 + div,
.pupils-modules-contract .optional-modules > h5 + div {
        padding: 0px 6px 3px 13px;
}
.pupils-modules-contract .optional-modules .alert {
        margin-top:5px;
        margin-bottom:0;
        padding:10px;
}
/*.pupils-modules-contract .optional-modules-title + div {
        background: rgba(255, 255, 255, 0.85);
        border-bottom: solid 1px #d2edf5;
        color: #555;
}*/
.pupils-modules-contract .unit-instructions {
        font-style: italic;
        padding: 15px 15px;
        user-select: none;
        background-color: #eee;
        transition: background .2s;
        font-weight: bold;
}
.pupils-modules-contract .optional-modules > div > div {
        margin-bottom:5px;
}
.pupils-modules-contract .modules-choice-panel {
        overflow:hidden;
}
.pupils-modules-contract .modules-choice-panel .panel-body {
        padding: 0;
}
.pupils-modules-contract .module {
        /*padding: 15px 15px;*/
        border-bottom:solid 1px #ddd;
        user-select:none;
        background-color: #eee;
        transition:background .2s;
}
.pupils-modules-contract .module:last-child {
        border-bottom: none;
}
.pupils-modules-contract .module.selected {
        background-color: #fff;
}
.pupils-modules-contract .module.selected .module-name {
        font-weight:600;
}
.pupils-modules-contract .module .choice-order span,
.pupils-modules-contract .module .module-detail .module-name {
        opacity:.5;
        transition:opacity .2s;
}
.pupils-modules-contract .module .module-detail .module-name,
.pupils-modules-contract .module .effectif {
        opacity:.65;
        /*text-transform: uppercase;*/
}
.pupils-modules-contract .module .module-name .module-teachers {
        font-weight:400 !important;
        color:#777;
        text-transform:none;
}
.pupils-modules-contract .module .alert {
        display:inline-block;
        padding:0px 10px;
        margin-left:10px;
        margin-bottom:0;
        margin-top:-5px;
        margin-bottom: -3px;
}
.module .module-description-btn {
        position: absolute;
        right: 15px;
        top: 10px;
        color: #777;
        /* top: 5px;
        /* font-size: 15px; */
        /* padding: 5px 10px 5px 6px;
        line-height: 1;
        vertical-align: middle; */
}
.pupils-modules-contract .module.ui-sortable-helper {
        border-top:solid 1px #ddd;
        border-left:solid 1px #ddd;
        box-shadow:1px 1px 5px -1px rgba(0, 0, 0, .15);
}
.pupils-modules-contract .module.ui-sortable-placeholder + .module {
        border-top:solid 1px #ddd;
}
.pupils-modules-contract .module .choice-order {
        position:relative;
        float:left;
        width:34px;
        display:flex;
        align-items:center;
        justify-content:center;
}
.pupils-modules-contract .module .choice-order .module-position {
        position:absolute;
        top:10px;
        font-weight: 700;
        text-align: center;
        margin-bottom: 5px;
        border: solid 1px;
        border-radius: 50%;
        width: 15px;
        height: 15px;
        font-size: 10px;
        line-height: 12px;
        vertical-align: middle;
        color: #999;
        display:none;
}
.pupils-modules-contract .module.selected .choice-order .module-position {
        display:block;
}
.pupils-modules-contract .module.selected .choice-order span,
.pupils-modules-contract .module.selected .module-detail .module-name,
.pupils-modules-contract .module.selected .effectif {
        opacity:1;
}
.pupils-modules-contract .module .module-detail {
        float:left;
        padding:10px 15px;
        width: calc(100% - 34px - 100px);
        border-left:solid 1px #ddd;
        border-right:solid 1px #ddd;
        position:relative;
}
.pupils-modules-contract .student-choice-motivation {
        display:none;
        margin-top:12px;
        margin-bottom:3px;
}
.pupils-modules-contract .student-choice-motivation + .alert {
        margin-top:10px;
}
.pupils-modules-contract .module .effectif {
        float:left;
        width:100px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
}
.pupils-modules-contract .module .effectif label {
        display:block;
        color:#999;
        font-weight:700;
        text-transform:uppercase;
        font-size:10px;
        margin-bottom:0px;
}
.pupils-modules-contract .module .effectif .value {
        font-size:14px;
        font-weight: 600;
        color: #555;
}

/*
 * Espace étudiant Stages :
 */
.pupils-index-workplacements .panel-heading .alert{
        color: #2e2f33;
        margin-bottom: 0;
        text-transform: none;
        padding: 2px 5px 1px;
        margin-right: 5px;
        font-size: 10px;
        position: relative;
        top: -1px;
}
.pupils-index-workplacements .table{
        margin: 0;
}
.pupils-index-workplacements .panel-heading .btn{
        line-height: inherit;
        margin-top: 0;
        padding: 1px 8px 2px;
        height: auto;
        position: relative;
        top: -1px;
}
.pupils-index-workplacements .table tbody th {
        max-width: 70px;
        vertical-align:top;
}

/**
 * Messages :
 */
.right-col.messages.form select#UserUser {
        height: 136px;
}
.messages .message-title {
        font-size:16px;
}
.messages .message-infos {
        font-size:10px;
        background:#eee;
        font-weight:bold;
        color:#666;
}
.messages .message-content {
        padding:10px 0;
}
.messages .message-content p:last-child {
        margin-bottom:0;
}
#content table.messages .btn-mark-as-read span{
        width: 18px;
        height: 18px;
        display: inline-block;
        vertical-align: top;
}
#content table.messages .btn-mark-as-read .glyphicons path{
        fill: #2E2F33 !important;
}
#content table.messages .truncate-message{
        color: #777;
}
#content a.btn-home-dashboard {
        display: inline-block;
        /*margin-top: 5px;*/
        margin-right:5px;

        /* Chrome like button styles : */
        border:solid 1px #929292;
        border-bottom-color:#929292;
        border-right-color:#9b9b9b;
        border-left-color:#9b9b9b;
        border-top-color:#a4a4a4;
        background: #f6f6f6; /* Old browsers */
        background: -moz-linear-gradient(top,  #f6f6f6 0%, #dddddd 100%); /* FF3.6+ */
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f6f6f6), color-stop(100%,#dddddd)); /* Chrome,Safari4+ */
        background: -webkit-linear-gradient(top,  #f6f6f6 0%,#dddddd 100%); /* Chrome10+,Safari5.1+ */
        background: -o-linear-gradient(top,  #f6f6f6 0%,#dddddd 100%); /* Opera 11.10+ */
        background: -ms-linear-gradient(top,  #f6f6f6 0%,#dddddd 100%); /* IE10+ */
        background: linear-gradient(to bottom,  #f6f6f6 0%,#dddddd 100%); /* W3C */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#dddddd',GradientType=0 ); /* IE6-9 */
        padding-bottom: 1px;
        padding-left: 7px;
        padding-right: 6px;
        padding-top: 2px;
        color:black;
        line-height: 1.5;
        display:inline-block;
        border-radius:2px;
}
#content a.btn-home-dashboard:hover {
        border-bottom-color:#6d6d6d;
        border-top-color:#7a7a7a;
        border-right-color:#737373;
        border-left-color:#737373;
}
#content a.btn-home-dashboard:active {
        background: #f6f6f6; /* Old browsers */
        background: -moz-linear-gradient(top,  #dddddd 0%, #f6f6f6 100%); /* FF3.6+ */
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#dddddd), color-stop(100%,#f6f6f6)); /* Chrome,Safari4+ */
        background: -webkit-linear-gradient(top, #dddddd 0%,#f6f6f6 100%); /* Chrome10+,Safari5.1+ */
        background: -o-linear-gradient(top, #dddddd 0%, #f6f6f6 100%); /* Opera 11.10+ */
        background: -ms-linear-gradient(top, #dddddd 0%, #f6f6f6 100%); /* IE10+ */
        background: linear-gradient(to bottom, #dddddd 0%, #f6f6f6 100%); /* W3C */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#f6f6f6',GradientType=0 ); /* IE6-9 */
}
#content a.btn-home-dashboard,
#content a.btn-home-dashboard:hover,
#content a.btn-home-dashboard:visited,
#content a.btn-home-dashboard:active {
        text-decoration:none;
}
#content a.btn-home-dashboard .glyphicon + .btn-label {
        position: relative;
        top: -1px;
}
.messages.form .destinataire{
        margin-bottom: 20px;
}

/**
 * Salles & équipements :
 */
#modal-add-equipment .modal-dialog {
        width:400px;
}
.equipments-row {
        margin-top:10px;
}
.equipments {
        margin-top:0;
}

.equipments li.equipment {
        padding-left:10px;
}

#student-absences table caption{
        background: #4388CC;
        padding: 10px 15px;
        color: #FFF;
        font-size: 10px;
        text-transform: uppercase;
        font-weight: bold;
        margin-bottom: 20px;
        text-align: left;
}


/**
 * Styles d'images
 */
div.framed-picture {
        background-position:center;
        background-size:cover;
        width:600px;
        height:600px;
}
div.framed-picture.size-small {
        width:100px;
        height:100px;
}
div.framed-picture.size-medium {
        width:300px;
        height:300px;
}


/*
 * Épreuves
 */
.exams .module-name {
        font-weight:bold;
}
.exams .section-name {
        color:#999;
        margin-bottom:3px;
        text-transform: uppercase;
        font-size: 11px;
}
.exams .teachers {
        font-size:10px;
        font-weight:bold;
}
.exams .exam-data {
        margin-top:7px;
        width:70%;
        font-size:10px;
}
.exams tr.status-0 {
        /*background-image: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(0, 0, 0, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 10px 10px;*/

        background: rgba(240, 173, 78, .15);
        background-image: -webkit-linear-gradient(-45deg, rgba(156, 65, 173, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(156, 65, 173, 0.1) 50%, rgba(156, 65, 173, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-image: linear-gradient(-45deg, rgba(156, 65, 173, 0.1) 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 50%, rgba(156, 65, 173, 0.1) 50%, rgba(156, 65, 173, 0.1) 75%, rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 0));
        background-size: 9px 9px;
}
.exams tr.status-0.closed-row td {
        background:none !important;
}
.exam.form .locked .input {
        opacity:0.8;
        cursor:not-allowed;
}
.exam.form .locked .input select {
        pointer-events:none;
}
.exam.form #btn-unlock-exam-module {
        background-image:url('../img/btn-unlock-evaluation.png');
        background-repeat:no-repeat;
        background-position:center;
        cursor:pointer;
        position:absolute;
        top:0;
        width:18px;
        height: 78px;
        left:13px;
}
#exams-results-modal .modal-dialog {
        min-width:900px;
}
.exams-results-by-modules table th:nth-child(n+2),
.exams-results-by-modules table td:nth-child(n+2) {
        text-align:center;
}
.modal .exams-results-by-modules table {
        border-left:solid 1px #ddd;
        border-right:solid 1px #ddd;
}
.exams-results-by-modules .module-results h2 {
        position:relative;
        padding-top: 12px;
        border-top: solid 1px #fff;
        border-top: solid 1px rgba(255, 255, 255, 0.5);
        cursor:pointer;
        user-select: none;
        font-size: 14px;
        /*font-weight: bold;*/
}
.exams-results-by-modules .module-results h2 strong {
        opacity:0.6;
}
.modal .exams-results-by-modules .module-results h2 {
        border-top: solid 1px #ccc;
}
.exams-results-by-modules .module-results:first-child h2 {
        border-top:none;
}
.exams-results-by-modules .module-results .table-wrapper {
        display:none;
}
.exams-results-by-modules .module-results .table-wrapper table {
        margin:0;
        margin-bottom:20px;
}
.exams-results-by-modules .module-results.opened .btn-open {
        display:none;
}
.exams-results-by-modules .module-results.closed .btn-open {
        display:block;
}
.exams-results-by-modules .module-results.closed .btn-close {
        display:none;
}
.exams-results-by-modules .module-results .btn-close,
.exams-results-by-modules .module-results .btn-open {
        font-size: 12px;
        margin-left: 10px;
        color: #fff;
        top: 12px;
        right: 5px;
        position: absolute;
}
.modal .exams-results-by-modules .module-results .btn-close,
.modal .exams-results-by-modules .module-results .btn-open {
        color: var(--ganesh-core-background-color);
}
.exams-results-by-modules h2:first-child {
        margin-top:0;
}
.exams-results-by-modules th:not(:last-child),
.exams-results-by-modules td:not(:last-child) {
        border-right: solid 1px rgba(220, 220, 220, 0.6);
}
.exams-results-by-modules tr:nth-child(even) td {
        background:#f5f5f5;
}
.exams-results-by-modules .exam-label {
        font-size:9px;
        text-transform:uppercase;
}
.exams-results-by-modules .exam-date {
        line-height: 1;
        margin-top: 2px;
}
.modal-module-results table {
        margin:0;
}
.modal-module-results .modal-dialog {
        width:1100px;
}
#content .exams-results-by-modules .coefficients-row th,
#content .modal-module-results .coefficients-row th {
        padding-top: 4px;
        padding-bottom: 4px;
        background: #cacaca;
        cursor: default;
        font-size: 11px;
        color: var(--ganesh-core-background-color);
}
.modal-module-results .exams-row th {
        border-bottom:0;
}
.modal-module-results .table th {
        cursor:pointer;
}
#ExamStatementAddForm iframe {
        min-height:200px !important; /* tinyCME */
}
#add-statement-modal .modal-dialog {
        width:800px;
}
.exam-statement tr.empty {
        display:none;
}
.exam-statement td.module {
}
.exam-statement .student-results {
        margin-bottom:40px;
        clear:both;
        overflow:hidden;
}
.exam-statement h1.student-name {
        font-size:20px;
        margin-bottom:20px;
        font-weight:bold;
}
.exam-statement table.modules-results td,
.exam-statement table.modules-results th {
        width:11.6%;
        vertical-align:top;
        text-align:center;
}
.exam-statement table.modules-results td.module,
.exam-statement table.modules-results th.module {
        width:40%;
        text-align:left;
}
.exam-statement table.modules-results td.assessment,
.exam-statement table.modules-results th.assessment {
        width:25%;
}
.exam-statement table.modules-results tr.module-average {
        background:#eee;
        color:#666;
        font-weight:bold;
}
.exam-statement table.modules-results tr.module-average td:first-child {
        text-align:left;
        border-right:none;
}
.exam-statement table.student-summary {
        float:right;
        margin-top:0px;
        font-weight:bold;
        width:38%;
}
.exam-statement table.student-summary th {
        text-align:right;
        background:#eee;
        padding-left:40px;
}
.exam-statement table.student-summary td {
        width:30.53%;
}
.exam-statement .student-assessment {
        clear:both;
        padding-top:50px;
}
.passing-note-input {
        max-width: 50px;
        padding: 2px 3px;
}
/*.pupils-exams .years h2.section-name {
        border-bottom:solid 1px rgba(255, 255, 255, 0.5);
        font-weight:normal;
        font-size:14px;
        padding-bottom:5px;
        cursor:pointer;
        position:relative;
}
.pupils-exams .years h2.section-name .year-name {
        opacity:0.6;
}
.pupils-exams .years .section:first-child h2.section-name {
        border-top:none;
}
.pupils-exams .years .section {
        margin-top:20px;
        position:relative;
}
.pupils-exams .years .section .modules-exams {
        list-style:none;
        padding-left:20px;
        margin-bottom:0;
        display:none;
}
.pupils-exams .years .section:first-child .modules-exams {
        display:block;
}
.pupils-exams .years .section-name .btn-close,
.pupils-exams .years .section-name .btn-open {
        font-size:10px;
        margin-left:5px;
        position:absolute;
        top:2px;
        right:0;
}
.pupils-exams .years .section .btn-close {
        display:none;
}
.pupils-exams .years .section.opened .btn-close {
        display:inline-block;
}
.pupils-exams .years .section.opened .btn-open {
        display:none;
}
.pupils-exams .modules-exams > li {
        padding-bottom:10px;
        position:relative;
}
.pupils-exams .modules-exams > li .module-name,
.pupils-exams .modules-exams > li .exam-note {
        font-weight:bold;
}
.pupils-exams .modules-exams > li .exam-note {
        margin-bottom:-2px;
}
.pupils-exams .modules-exams > li .exam-results > li {
        margin-top:5px;
}
.pupils-exams .modules-exams > li .exam-results > li .exam-date,
.pupils-exams .modules-exams > li .exam-results > li .exam-description{
        opacity:0.7;
        font-weight:normal;
        font-size:11px;
}
.pupils-exams .modules-exams .average {
        font-weight:normal;
        position:absolute;
        top:0;
        right:0px;
}
.pupils-exams .modules-exams .average .note {
        font-weight:bold;
        font-size:12px;
}
.pupils-exams .modules-overall-average {
        position:absolute;
        top:0;
        right:20px;
        opacity:0.6;
        text-transform:uppercase;
        font-size:10px;
        pointer-events:none;
}
.pupils-exams .modules-overall-average .note {
        font-weight:bold;
        font-size:12px;
}*/
.pupils-exams .modules-exams {
        table-layout:fixed;
        border:solid 1px #ddd;
        border-radius:0;
        background: #e4f1ff;
        margin-bottom:15px;
        margin-top:0;
}
.pupils-exams .modules-exams.headings {
        border:none;
        border-top-left-radius:4px;
        border-top-right-radius:4px;
        margin-bottom: 0;
}
.pupils-exams .modules-exams th {
        white-space:normal;
}
.pupils-exams .modules-exams > tbody > tr > td:first-child {
        border-left:none;
}
.pupils-exams .modules-exams > tbody > tr > td:last-child {
        border-right:none;
}
.pupils-exams .modules-exams > tbody > tr:last-child > td {
        border-bottom:none;
}
.pupils-exams .modules-exams .module-name {
        font-weight:bold;
}
.pupils-exams .modules-exams .module-average {
        text-transform:uppercase;
        color:#777;
        font-weight:700;
}
.pupils-exams .class-average {
        /*font-style: italic;*/
        opacity:0.7;
}
.pupils-exams td.class-average {
        background:#eee;
}
.pupils-exams table.averages {
        width:35.4%;
        float:right;
        border: solid 1px #ddd;
}
.pupils-exams table.averages td:first-child {
        width:43.5%;
}
.pupils-exams table.averages td:last-child {
        border-right:none;
}
.pupils-exams .student-exams-chart-wrapper {
        height:400px;
        margin-top:40px;
        margin-bottom:20px;
}
.pupils-exams .exam-description {
        margin-top:2px;
        display:block;
        font-size:11px;
}
.pupils-exams .exam-assessment {
        font-size:11px;
        font-style:italic;
}
.author-panel img {
        width:25px;
        float:left;
        display:block;
        margin-right:6px;
        border-radius: 50%;
}
.author-panel .author-name {
        font-weight:500;
        position:relative;
        top:3px;
        font-size: 16px;
}
.author-panel .author-surname {
        font-weight:100;
        position:relative;
        top:3px;
        font-size:15px;
}


/*
 * Messages
 */
#MessageAddForm .submit-container{
        margin-top: 20px;
        margin-right: 0;
        text-align: right;
        margin-right: -15px;
}
#MessageAddForm .submit-container .btn-primary:hover{
        border-color: #4388cc;
        background-color: #2468ab;
}
#MessageAddForm .destinataire fieldset{
        margin-bottom: 0;
}
#MessageAddForm .message{
        margin-top: 0;
        /*border-top: 1px solid #e5e5e5;*/
}
#MessageAddForm .submit-container .btn{
        font-size: 11px;
        text-transform: uppercase;
}
#MessageAddForm fieldset{
        background-color: transparent;
        box-shadow: none;
        /* padding: 0 15px; */
}
#MessageAddForm #MessageTitle{
        font-size: 13px;
        display: block;
        height: 34px;
        width: 50%;
        padding-left: 4px;
}
#MessageAddForm .destinataire{
        /*margin-left: 0;*/
}
#MessageAddForm fieldset legend{
        padding: 10px 15px;
        color: #FFF;
}
#MessageAddForm .message fieldset{
        margin-bottom: 0px;
}
.messages.index .titre-message{
        /*        font-size: 10px;
                text-transform: uppercase;
                font-weight: bold;*/
}
.messages.index #datatable tr.unread{
        background-color: #f2f5f5;
        font-weight: bold;
}
.messages.index #datatable tr.read{
        background-color: #fff;
}

/*
 * Checkbox

.checkbox{
        text-align: left;
        padding-left: 0px;
}
.checkbox label:after {
        content: '';
        display: table;
        clear: both;
}
.checkbox .cr {
        position: relative;
        display: inline-block;
        border: 1px solid #a9a9a9;
        border-radius: .25em;
        width: 1.3em;
        height: 1.3em;
        float: left;
        margin-right: .5em;
}
.checkbox .cr .cr-icon {
        position: absolute;
        font-size: .8em;
        line-height: 0;
        top: 50%;
        left: 20%;
}
.checkbox label input[type="checkbox"] {
        display: none;
}
.checkbox label input[type="checkbox"]+.cr>.cr-icon {
        opacity: 0;
}
.checkbox label input[type="checkbox"]:checked+.cr>.cr-icon {
        opacity: 1;
}
.checkbox label input[type="checkbox"]:disabled+.cr {
        opacity: .5;
}*/


/*
 * Configurateur de champs
 */
#fantom-field{
        display: none;
}
#form-config,
#form-fields {
        list-style-type: none;
        margin: 0;
        padding: 0;
        width: 100%;
        background: white;
        /*border: 1px solid #013F51;*/
        padding: 5px;
        min-height : 200px;
}
#form-fields li {
        float: left;
        margin: 5px 0px;
        min-height: 40px;
        background-image: none;
}
#form-fields li .field-configs label{
        display: block;
}
#form-fields li .field-configs .row{
        margin-bottom: 10px;
}
#form-fields li .portlet-header {
        /*padding: 0.2em 0.3em;*/
        position: relative;
}
/*#form-fields li .field-configs{
        display: flex;
        flex-direction: row;
        justify-content: center;
}*/
#form-fields li .field-configs .flex-col{
        display: inline-block;
        margin: 10px;
}
#form-configurator .ui-widget-header{
        background: #007191;
        background-image: none;
        border: 0;
}
#form-configurator .ui-state-active, #form-configurator .ui-widget-content .ui-state-active, #form-configurator .ui-widget-header .ui-state-active{
        background: #013f51 !important;
        background-image: none;
}
#form-configurator .ui-state-default, #form-configurator .ui-widget-content .ui-state-default, #form-configurator .ui-widget-header .ui-state-default{
        background: none;
}
#form-configurator.ui-widget-content {
        border: 0;
        background: none;
        color: #222;
}
#form-fields li .portlet-header.ui-widget-header{
        background: none;
        border: none;
        margin-top: 0.5em;
        border-bottom: 1px solid #aaa;
        padding-top: 5px;
        padding-bottom: 5px;
        margin-bottom: 20px;
        cursor: pointer;
}
#form-fields .ui-state-default, #form-fields .ui-widget-content .ui-state-default, #form-fields .ui-widget-header .ui-state-default{
        background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x !important;
}
#form-config{
        padding: 30px;

}
#form-config label{
        display: block;
}
#form-config .row{
        margin-bottom: 20px;
}
#form-configurator .ui-tabs-nav{
        padding-left: 0;
}
.portlet-toggle {
        vertical-align: top;
        display: inline-block;
        margin-right: 5px;
}
.portlet-content {
        display: none;
}
.portlet-placeholder {
        border: 1px dotted black;
        margin: 0 1em 1em 0;
        height: 50px;
}
.new-field{
        display: none;
}
/* #sortable-fields li.col-md-6{
    width: 49%;
    margin-left: 0.5%;
    margin-right: 0.5%;
}
*/
/* #sortable-fields li span {
    position: absolute;
    margin-left: -1.3em;
}  */

/*
 * Footer
 */
#footer {
        display: flex;
        justify-content: end;
        text-align: right;
        padding: 2px 10px 5px 0;
        margin: 0;
        line-height: 1.2;
        gap:3px;
}
#footer > * {
        /* padding: 6px 0 5px 0; */
}
#footer,
#footer a {
        color:#c7cacc;
        font-size: 11px;
        text-decoration:none;
}
#footer .footer-item {
        position:relative;
}
#footer a:hover {
        text-decoration:underline;
}
/* #footer .footer-item:after {
        content: '';
        position: absolute;
        top: 3px;
        bottom: 0;
        right: -5px;
        width: 1px;
        background: #c7cacc;
}
#footer .footer-item:last-child:after {
        content:none;
} */
#footer .logout {
        font-size:10px;
        text-align:center;
}
#footer .logout:focus,
#footer .logout:hover {
        text-decoration:none;
}
#footer .logout .glyphicon {
        font-size:18px;
        display:block;
}

#TeacherProfessorsEditForm{
        margin-top: 20px;
}

/**
 * ACL
 */
#content ul.acl_links li a {
        background: #2499b8;
        color: #FFF;
        font-weight: bold;
        margin-right: 5px;
        padding: 8px 12px;
}

/**
 * Parcoursup
 */
#parcours-sup-modal .modal-body{
        max-height: 500px;
        overflow: auto;
        width: 100%;
}
#parcours-sup-modal table select{
        width: 200px;
}
#parcours-sup-modal .close{
        /*position: absolute;*/
        right: 6px;
        top: 3px;
}
#parcours-sup-modal .num-results{
        float: none;
}
.subscriptions #datatable td > .subscriptions-warnings,
.subscriptions #datatable td > .glyphicon {
        margin-top: 11px;
        float: right;
}
.subscriptions #datatable td > .subscriptions-warnings > * {
        margin-left:5px;
        display:block;
        float:left;
}
.subscriptions #datatable td > .glyphicon {
        margin-left:5px;
}
.subscriptions #datatable td > .subscriptions-warnings .glyphicon-user.inactive {
        opacity:.5;
}
.subscription-has-user {
        color: #007596;
}


/**
 * EntityForms
 */
.entity-form-btn-add-container{
    margin-bottom: 20px;
}
.add-entity-form-field-container{
        margin-top: 20px;
}
.entity-form-field{
    padding-left: 50px;
    margin-bottom: 20px;
    border: 1px solid rgba(255,255,255,0.2);
}
.entity-form-field-params ul{
        list-style-type: none;
}
.entity-form-field-params ul .input{
        margin: 5px 0;
}
.entity-form-field-params h5{
        font-size: 12px;
        display: inline-block;
        margin-bottom: 5px;
        font-weight: bold;
}
.entity-form-field-params .radio-form-field-params-phantom{
        margin: 20px 0;
}
.entity-form-input .radio-wrapper{
        text-align: center;
}
.entity-form-input .radio-wrapper{
        display: inline-block;
        margin: 10px;
        padding: 10px;
        border: 1px solid #013F51;
        text-align: center;
        width: 30% !important;
}
.entity-form-input .radio-wrapper-checked{
        background-color: #eee;
        box-shadow: 5px 10px 8px #888888;
}
.entity-form-input .radio-wrapper input[type="radio"]{
        float: none;

}
.entity-form-input.radio legend{
        border-bottom: none;
        margin: 80px 0;
        /*font-family:grotesque_black !important;*/
        font-size: 18px;
}
.entity-form-input.radio{
        display: flex;
}

/*
 * Subscription exams
 */
/*.table.subscription-exams-results-table tbody td.editable-cell {
        height:40px;
}*/
.table.subscription-exams-results-table tbody td:first-child {
        max-width: 250px;
}
.table.subscription-exams-results-table tbody td:last-child {
        min-width: 250px;
        height: 51px;
}
.table.subscription-exams-results-table tbody td.editable-cell textarea {
        padding:10px;
}
.subscription-exams-results-summary {
        font-weight: bold;
        margin-top: 20px;
}
.subscription-exams-results-left-col .selection-resume {
        font-style: italic;
        background: rgba(143, 143, 143, .15);
        padding: 4px 10px;
        color: #777;
        margin-bottom: 10px;
        border-radius: 4px;
        display:none;
}
.subscription-exams-results-left-col .selection-resume .btn {
        padding: 2px;
        vertical-align: middle;
        margin-left: 5px;
        top: -1px;
        font-size: 9px;
        font-weight: normal;
        line-height: 0;
        margin-top: 1px;
}
.subscription-exams-results-left-col .selection-resume .btn .glyphicon {
        top:-1px;
}
.subscription-exams.results .table tr {
        transition:.15s ease-out;
}
.subscription-exams.results .table tr.active {
        background:#e4f1ff;
        transition:.15s ease-in;
}
.subscription-exams.results .table tr.active td {
        background:none;
}
.subscription-exams.results .table tr.emphasis {
        background:#c8d9f3;
}

/*
 * Règles de visibilité
 */
#visibility-rules-modal .modal-dialog {
        width:900px;
}
/*#visibility-rules-modal .row:not(:last-of-type):after {
    content: 'ou';
    margin-left: 15px;
    margin-bottom: 10px;
    color:#aaa;
    font-weight:bold;
    text-transform:uppercase;
    font-size:10px;
}
#visibility-rules-modal .row > div:not(:last-of-type) .input:after {
    content: 'et';
    position: absolute;
    right: -20px;
    top: 25px;
    color:#aaa;
    font-weight:bold;
    text-transform:uppercase;
    font-size: 10px;
}*/
#visibility-rules-modal fieldset {
        overflow:visible;
}
#visibility-rules-modal fieldset legend {
        margin-bottom:10px;
}
.rules-form fieldset {
        overflow:visible;
}
.rules-summary {
        color:#555;
}
.outside-panel-container {
        margin: 15px;
}
.delete-existing-partnership-contact,
.add-existing-partnership-contact{
        margin-top: 21px;
}

/*
 * Nouveaux datatables
 */
#datatable_wrapper .row {
        margin:0;
}
#datatable_wrapper .col-sm-12,
#datatable_wrapper .col-sm-6,
#datatable_wrapper .col-sm-5,
#datatable_wrapper .col-sm-7 {
        padding:0;
        position: static;
}
.new-datatable .dataTable {
        margin-top: 27px !important;
}
.table-settings {
        position: absolute;
        top: 27px;
        right: 25px;
        display: flex;
        align-items: center;
        gap: 16px;
}
.column-preferences-btn {
        font-size: 0;
        position: relative;
        color:#6ec1d8 !important;
        transition:all .3s;
        z-index: 1;
}
.column-preferences-btn:hover {
        color: #2499b8 !important;
}
.column-preferences-btn:after {
        position: absolute;
        content: '';
        top: 2px;
        bottom: -2px;
        left: -8px;
        background: #6ec1d8;
        width: 1px;
        opacity: 0.25;
}
.column-preferences-btn .glyphicon {
        font-size:15px;
}
.column-filters-btn {
        font-size: 0;
        color: #6ec1d8 !important;
        transition: all .3s;
        z-index: 1;
        opacity:.5;
}
.column-filters-btn:hover,
.column-filters-btn.active {
        opacity:1;
}
.column-filters-btn.active {
        color: #2499b8 !important;
}
#modal-selection-column .list-group {
        border:solid 1px #ddd;
        border-radius:4px;
        margin-bottom: 0;
        overflow:auto;
}
#modal-selection-column .list-group .list-group-item {
        border-left:none;
        border-right:none;
}
#modal-selection-column ul li,
#modal-selection-column ul li label {
        font-weight:600;
}
#modal-selection-column ul li.not-moveable {
        opacity:1;
        background: #eee;
}
#modal-selection-column ul li.not-visible {
        opacity:.65;
}
#modal-selection-column ul li.not-visible .editability {
        pointer-events:none;
}
#modal-selection-column ul li .glyphicon-move {
        margin-right:6px;
}
#modal-selection-column ul li .right {
        margin-left:15px;
        margin-top: -3px;
}
#modal-selection-column ul li .right input {
        margin-left:5px;
}
#modal-selection-column .slow-loading-warning {
        top:2px;
        margin-left:3px;
}
.row-selection-box-wrapper {
        max-width:60px;
}
.dataTables_scrollHeadInner table {
        border-bottom-left-radius:0;
        border-bottom-right-radius:0;
}
.dataTables_scrollBody table.table {
        border-top-left-radius:0;
        border-top-right-radius:0;
        margin-bottom:10px !important;
}
#datatable_wrapper td {
        white-space:normal;
}
.new-datatable  table {
        overflow:visible;
}
.new-datatable .filters th {
        position:relative;
        height:12px;
        text-transform:none;
        font-size: 10px;
}
.new-datatable.sticked-header .filters th {
        height: 28px;
        border-radius:0 !important;
}
.new-datatable .filters th .chosen-container {
        font-size: 11px;
}
.new-datatable .chosen-container-single .chosen-single div b {
        background-image:url('../img/chosen-sprite-blue.png');
}
.new-datatable .filters th select,
.new-datatable .filters th .chosen-container,
.new-datatable .filters th .search-filter-wrapper,
.new-datatable .filters th .date-range-filter-wrapper {
        position: absolute;
        top: 4px;
        left: 4px;
        right: 4px;
        bottom: 4px;
        width: calc(100% - 8px) !important;
        border: none;
}
.new-datatable .filters th select,
.new-datatable .filters th .chosen-container *:not(.result-selected),
.new-datatable .filters th .search-filter-wrapper {
        color: #2499b8;
}
.new-datatable .filters th .chosen-container .highlighted {
        color: #fff;
}
.new-datatable .filters th .chosen-container-multi .chosen-choices {
        border: none;
}
.new-datatable .filters th .chosen-container-multi .chosen-choices li.search-field input[type=text],
.new-datatable .filters th .chosen-container-multi .chosen-results li {
        height:15px;
}
.new-datatable .filters th .chosen-container-multi .chosen-results li {
        padding: 10px 6px;
        line-height: 0px;
}
.new-datatable .filters th .chosen-container .chosen-results li {
        white-space:normal;
}
.new-datatable .filters th .chosen-container-multi .chosen-choices li.search-choice {
        margin: 1px 5px 1px 0;
        padding: 3px 20px 3px 5px;
        line-height: 8px;
}
.new-datatable .filters th .chosen-container-multi .chosen-choices,
.new-datatable .filters th .chosen-container-single .chosen-single {
        background: #fff;
        border-radius:4px;
        border:none;
        height: 19px;
        line-height:20px;
}.new-datatable .filters th .chosen-container-multi .chosen-choice{
        position: relative;
}
.new-datatable .filters th .chosen-container-multi .chosen-choices li.search-choice .search-choice-close{
        top: 2px;
}
.new-datatable .filters th .chosen-container-multi .chosen-choices .search-field,
.new-datatable .filters th .chosen-container-multi .chosen-choices .search-choice{
        float: none;
        display: inline-block;
}
.new-datatable .filters th .chosen-container-single.chosen-container-active .chosen-single {
        border-left:solid 1px #ddd;
        border-right:solid 1px #ddd;
}
.new-datatable .filters th .chosen-container-single .chosen-drop {
        border-color:#ddd;
        top: 16px;
}
.new-datatable .filters th .chosen-container-single div b {
        background-position:0 0 !important;
}
.new-datatable .filters th .chosen-container-single .chosen-single span {
        margin-right:22px;
}
.new-datatable .filters th .chosen-container-single .chosen-single div {
        width: 14px;
}
.new-datatable div.dataTables_filter {
        position: absolute;
        font-size: 0;
        top: 0;
        left: 85px;
}
.new-datatable #datatable_wrapper div.dataTables_filter input {
        border-color: #6ec1d8;
        color: #6ec1d8;
        font-size:12px;
        height: 19px;
        font-family: 'Montserrat';
        font-weight: 500;
        margin-top:0;
}
.new-datatable #datatable_wrapper div.dataTables_filter label{
        position: relative;
}
.new-datatable #datatable_wrapper div.dataTables_filter label:after {
    content: "\e003";
    font-family: 'Glyphicons Halflings';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 4px;
    font-size: 12px;
    color: #6ec1d8;
    display: block;
}
.new-datatable .chosen-container-single .chosen-search input[type=text] {
        border: 1px solid #6ec1d8;
        background-image:url('../img/chosen-sprite-blue.png');
}
.new-datatable .filters th .search-filter-wrapper .glyphicon {
        color: #6ec1d8;
        position: absolute;
        right: 5px;
        top: 2px;
        font-size: 12px;
}
.new-datatable .filters th .search-filter-wrapper .search-filter,
.new-datatable .filters th .date-range-filter-wrapper .date-range-filter {
        border-radius:4px;
        border: none;
        position:absolute;
        top:0px;
        left:0px;
        right:0px;
        bottom:0px;
        width:100%;
        padding-left:5px;
        color: #2499b8;
        margin:0;
}
.new-datatable .filters th .search-filter-wrapper .search-filter {
        padding-right: 20px;
}
.new-datatable .filters th .search-filter-wrapper .search-filter::placeholder {
        font-style: italic;
        color: #aaa;
}
.new-datatable .filters th .date-range-filter-wrapper .date-range-filter:focus,
.new-datatable .filters th .search-filter-wrapper .search-filter:focus {
        outline:none;
}
.new-datatable .filters th .search-filter-wrapper .search-filter .date-range-filter {

}
.new-datatable .filters th .date-range-filter-wrapper .glyphicon {
        position: absolute;
        right: 4px;
        top: 3px;
        color: #6ec1d8;
        font-size: 11px;
}
.new-datatable .filters th .date-range-filter-wrapper .clear-dates-btn {
        position: absolute;
        right: 4px;
        top: 5px;
        /* font-family: unset; */
        background-image: url(../img/chosen-sprite-blue.png);
        font-size: 0;
        width: 9px;
        height: 9px;
        background-position: 9px 0px;
        opacity: .8;
        display:none;
}
.new-datatable .filters th .date-range-filter-wrapper.daterangepicker-active .clear-dates-btn {
        display:block;
}
.new-datatable .filters th .date-range-filter-wrapper.daterangepicker-active .glyphicon {
        display:none;
}
.new-datatable tr td.editable-column .changeable-label {
        background:none;
        position:relative;
}
.new-datatable tr td .changeable-label:after {
        content:none;
}
.new-datatable tr td.editable-column .changeable-label .glyphicon {
        position:absolute;
        right:0;
        color:#6ec1d8;
        right: 1px;
        top: 3px;
        color: #6ec1d8;
        font-size: 12px;
        opacity:.5;
        transition:opacity .3s;
        cursor:pointer;
}
.new-datatable tr td.editable-column:hover .changeable-label .glyphicon {
        opacity:1;
}
.new-datatable  div.dataTables_length label {
        font-size: 0;
        position: absolute;
        left: 0px;
        top: -3px;
}
.new-datatable  div.dataTables_length select {
        width: 61px;
        display: inline-block;
        border-color: #6ec1d8;
        color: #6ec1d8;
        width: 65px !important;
        height: 19px;
        font-family: 'Montserrat';
        font-weight:500;
}
.new-datatable .readonly-status {
        cursor:default;
        box-shadow:none;
        border:none;
}

.new-datatable .dataTable tbody>tr.selected,
.new-datatable .dataTable tbody>tr.selected td,
.new-datatable .dataTable tbody>tr.selected:hover td,
.new-datatable .dataTable tbody>tr>.selected {
    background-color: #e4f1ff !important;
}
.new-datatable tr td label {
        font-weight:600;
        margin-bottom:0;
}









.daterangepicker.ltr .calendar.left {
        margin-right:5px !important;
}
.daterangepicker.ltr .calendar.right {
        margin-left:5px !important;
}
.daterangepicker.ltr .calendar .calendar-table {
        padding: 0 !important;
}
.daterangepicker.ltr .left .daterangepicker_input {
        padding-right:0 !important;
}
.daterangepicker .calendar tbody tr:last-of-type td {
        border-bottom: 1px solid #CCC;
}
.daterangepicker .calendar tbody tr td:first-of-type {
        border-left : 1px solid #CCC;
}
.daterangepicker .calendar tbody tr td:last-of-type {
        border-right : 1px solid #CCC;
}
.daterangepicker .calendar.left .daterangepicker_input,
.daterangepicker .calendar-table {
        padding: 0;
}
.daterangepicker .calendar .fa.glyphicon,
.daterangepicker .calendar td,
.daterangepicker .calendar th {
        border-radius: 0;
        border-right: 0;
        font-size: 11px !important;
        text-align:center;
}
.daterangepicker .calendar .prev.available,
.daterangepicker .calendar tr:first-of-type>th:first-of-type {
        border-top-left-radius: 4px;
        background-color: #2499b8 !important;
        color: #fff;
}
.daterangepicker .calendar .prev.available:hover,
.daterangepicker .calendar .next.available:hover {
        background-color: #1e7d97 !important;
}
.daterangepicker .calendar .next.available,
.daterangepicker .calendar tr:first-of-type>th:last-of-type {
        border-top-right-radius: 4px;
        background-color: #2499b8 !important;;
        color: #fff;
}
.daterangepicker .calendar .month {
        background-color: #2499b8 !important;;
        color: #fff;
}
.daterangepicker .calendar thead tr:last-of-type th {
        color: #fff;
        background: #6ec1d8 !important;
        border-top: solid 1px #fff !important;
}
.daterangepicker td.in-range {
        background-color: #dcecf2 !important;
}
/* .daterangepicker .ranges {
        float:none !important;
        clear:both;
} */
.daterangepicker td.active, .daterangepicker td.active:hover {
        background-color: #2499b8 !important;
        border-color: transparent;
        color: #fff !important;
}
.daterangepicker td.start-date.active {
        border-top-left-radius:4px;
        border-bottom-left-radius:4px;
}
.daterangepicker td.end-date.active {
        border-top-right-radius:4px;
        border-bottom-right-radius:4px;
}
.daterangepicker td.disabled, .daterangepicker option.disabled {
        background: #f3d0d0;
        text-decoration: none;
        font-weight: 600;
}

/*
 * Users
 */
.table .btn-masquerade
{
        float:right;
        margin-top: 9px;
        margin-right: 3px;
        color: #2499b8 !important;
}

.table .btn-masquerade span {
        pointer-events: none;
}

.users .user-cell {
        cursor:pointer;
}
.users .user-cell .user-display-name {
        font-weight: 600;
}
.users .user-cell .user-display-name:hover {
        text-decoration: underline;
}

/*
 * Alumni
 */
#alumni-details-modal table{
        table-layout: fixed;
}
#alumni-details-modal table th{
        width: 30%;
}
#alumni-details-modal .panel-body-inner,
#alumni-details-modal .panel-body{
        /* margin: 0; */
        padding: 0;
}
.alumni-banner{
        margin-bottom: 10px;
}
.alumni-infos .alumni-picture {
        float: left;
}
.alumni-infos .alumni-picture img {
        width: auto;
        height: 150px;
}
.alumni-infos .alumni-datas span.tel,
.alumni-infos .alumni-datas span.mail{
        display: block;
}
.alumni-datas{
        float: left;
        margin-left: 20px;
}
.modal#alumni-details-modal .panel{
        border: none;
}

/*
 * Logs
 */
.logs .user-filter {
        width:180px;
}
.logs td {
        word-wrap:break-word;
}
.logs .user-column,
.logs .url-column,
.logs .controller-column {
        max-width:250px;
        white-space:normal !important;
}
.logs .data-column {
        min-width: 400px !important;
        max-width: 480px !important;
}
.logs .data-column pre.data-json {
        font-size: 11px;
        line-height: 1.3;
        white-space: pre-wrap;
        background: none;
        border: none;
        padding: 0;
        margin: 0;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
}
.logs:not(.show-full-data) .data-column pre.data-json * {
        display: inline !important;
        white-space: nowrap;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden;
        font-size:inherit !important;
        font-weight:inherit !important;
}
.logs:not(.show-full-data) .data-column pre.data-json br,
.logs:not(.show-full-data) .data-column pre.data-json table,
.logs:not(.show-full-data) .data-column pre.data-json img {
        display:none !important;
}
.logs.show-full-data .data-column pre.data-json {
        white-space: break-spaces;
}
#logs-date-range-input .glyphicon {
        top: 3px;
        left: 8px;
}
#logs-date-range-input .glyphicon input {
        padding-left: 28px;
}

/*
 * Documents
 */
td.document-cell .document-cell-content{
        display: flex;
        align-items: center;
}
.icon-file-type {
        position: relative;
        margin-top: 11px;
        margin-right: 7px;
        display: inline-block;
        background-color: #bbb;
        width: 23px;
        height: 18px;
        text-align: center;
        line-height: 15px;
        text-transform: uppercase;
        font-family: 'Montserrat', sans-serif;
        font-weight: bold;
        color: #fff;
        font-size: 7px;
        letter-spacing: 0;
}
.icon-file-type:before {
        content: "";
        width: 23px;
        height: 0;
        position: absolute;
        bottom: 100%;
        top: -10px;
        left: 0;
        border-style: solid;
        border-width: 0 11px 11px 0;
        border-color: transparent;
        border-bottom-color: #bbb;
        background-color: transparent !important;
}
.icon-file-type:after {
        content: "";
        width: 0;
        height: 0;
        position: absolute;
        bottom: 100%;
        right: 0;
        border-style: solid;
        border-width: 5px;
        border-color: transparent;
        border-left-color: #000;
        border-bottom-color: #000;
        opacity: 0.3;
}
.icon-file-type-pdf,
.icon-file-type-pdf:before {
        background-color: #c51e09;
        border-bottom-color: #c51e09;
}
.icon-file-type-psd,
.icon-file-type-psd:before {
        background-color: #002a79;
        border-bottom-color: #002a79;
}
.icon-file-type-doc,
.icon-file-type-doc:before,
.icon-file-type-docx,
.icon-file-type-docx:before,
.icon-file-type-odt,
.icon-file-type-odt:before{
        background-color: #2e6ae4;
        border-bottom-color: #2e6ae4;
}
.icon-file-type-txt,
.icon-file-type-txt:before {
        background-color: #777;
        border-bottom-color: #777;
}
.icon-file-type-jpg,
.icon-file-type-jpg:before,
.icon-file-type-jpeg,
.icon-file-type-jpeg:before,
.icon-file-type-png,
.icon-file-type-png:before {
        background-color: #069173;
        border-bottom-color: #069173;
}
.icon-file-type-xls,
.icon-file-type-xls:before,
.icon-file-type-xlsx,
.icon-file-type-xlsx:before,
.icon-file-type-csv,
.icon-file-type-csv:before {
        background-color: #257037;
        border-bottom-color: #257037;
}
.icon-file-type-zip,
.icon-file-type-zip:before,
.icon-file-type-rar,
.icon-file-type-rar:before,
.icon-file-type-7z,
.icon-file-type-7z:before,
.icon-file-type-tar,
.icon-file-type-tar:before{
        background-color: #d7b74a;
        border-bottom-color: #d7b74a;
}
.icon-file-type-mov,
.icon-file-type-mov:before,
.icon-file-type-avi,
.icon-file-type-avi:before,
.icon-file-type-mpeg,
.icon-file-type-mpeg:before,
.icon-file-type-mp3,
.icon-file-type-mp3:before,
.icon-file-type-mp4,
.icon-file-type-mp4:before{
        background-color: #3f1786;
        border-bottom-color: #3f1786;
}

/* 
 * Evaluations par modules
 */
.evaluation-module-cell {
        cursor:pointer;
         max-width: 300px;
 }
.evaluation-module-cell:hover {
        text-decoration:underline;
}
#left-menu .panel-num-students .panel-body-inner {
        display: flex;
        align-items: flex-end;
        justify-content: center;
        gap: 8px;
}
#left-menu .panel-module-data .panel-body-inner {
        padding: 10px 12px;
}
#left-menu .panel-module-data .panel-body-inner .module-name {
        font-weight:bold;
}
#left-menu .panel-module-data .panel-body-inner .module-speciality {
        font-style: italic;
        margin-top: 5px;
        font-weight: bold;
        opacity: .7;
}
#left-menu .panel-module-data .panel-body-inner .module-teachers {
        font-size: 12px;
        margin-top:5px;
}
#left-menu .panel-teachers-name .teacher-name,
.teacher-name-wrapper .teacher-name {
        text-transform: uppercase;
        font-weight: 600;
}
#left-menu .panel-num-students .panel-body-inner .num-students-wrapper{
        text-align: center;
        font-size: 24px;
        font-weight: 600;
        line-height: 1;
        width: 100%;
}
#left-menu .panel-module-name {
        padding-bottom: 6px;
        font-size: 13px;
        font-weight: bold;
        color: var(--primary-color);
}
#datatable tr.some-required-filled td.student-cell {
        overflow: hidden;
}
#datatable tr.some-required-filled td.student-cell,
#datatable tr.all-required-filled td.student-cell {
        padding-left:15px;
}
#datatable tr.some-required-filled td.student-cell:after,
#datatable tr.all-required-filled td.student-cell:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        width:5px;
}
#datatable tr.some-required-filled td.student-cell:after {
        background: #fffca2;
}
#datatable tr.all-required-filled td.student-cell:after {
        background: #bdffb1;
}

.cell-absences-wrapper{
        display: flex;
        justify-content: center;
        gap: 5px;
}
.cell-absences-wrapper .num-absences{
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 22px;
        padding: 4px 6px 4px;
        font-size: 11px;
        line-height: 1;
        font-weight: 600;
        color: #fff;
        border-radius: 4px;
}
.cell-absences-wrapper .num-absences.absence{
        display: flex;
        background-color: #f0ad4e;
        gap: 3px;
        white-space:nowrap;
}
.cell-absences-wrapper .num-absences.delay{
        background-color: #5bc0de;
}
.cell-absences-wrapper .num-absences.sent-out{
        background-color: #d9534f;
}

#student-evaluation-modal .modal-dialog {
        width:1100px;
        max-width:85%;
}
#student-evaluation-modal .modal-header h2 .glyphicon {
        display:none;
}
#student-evaluation-modal .modal-header h2 .page-title-right {
        display:inline;
}
#student-evaluation-modal .modal-header h2 .page-title-right:before {
        content:' - ';
}
#student-evaluation-modal .modal-header a {
        position:relative;
        z-index:2;
}
#student-evaluation-modal #fiche-evaluation-wrapper,
#student-evaluation-modal #fiche-evaluation-wrapper table {
        margin:0;
}

/* Nouveau tag */
.indicators{
        display: flex;
        justify-content: center;
        gap: 5px;
}
.panel .indicators{
        margin-top: -1px;
}
.panel .indicators.left{
        margin-left: -7px;
        margin-right: 8px;
}
.indicators .indicator{
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 22px;
        padding: 4px 6px 4px;
        font-size: 11px;
        line-height: 1;
        font-weight: 600;
        color: #fff;
        border-radius: 4px;
        cursor: default;
}
.indicators .indicator.warning{
        background-color: #f0ad4e;
}
.indicators .indicator.info{
        background-color: #5bc0de;
}
.indicators .indicator.danger{
        background-color: #d9534f;
}

/* Tableau groupe par semestre */
.page-student-groups .panel{
        position: relative;
}
.page-student-groups .panel .panel-stripped{
        display: none;
        background-color: #ccc;
        opacity: 0.8;
}
.page-student-groups .panel.table-panel .panel-body {
        padding: 0;
}
.page-student-groups .panel.table-panel .table thead tr:first-child th:first-child,
.page-student-groups panel.table-panel .table.headless tbody tr:first-child td:first-child {
        border-left: 1px solid #dbdbdb;
}
.page-student-groups .panel.table-panel .table thead tr:first-child th:last-child,
.page-student-groups .panel.table-panel .table.headless tbody tr:first-child td:last-child {
        border-right: 1px solid #dbdbdb;
}
.page-student-groups .panel.table-panel .panel-body-inner {
        padding: 0;
}
.page-student-groups .panel.table-panel .panel-body-inner table {
        margin-top: 0;
        margin-left: 0;
        width: 100%;
        margin: 0;
}
.page-student-groups .table tbody>tr>th {
        background-color: #dbdbdb;
}
.page-student-groups .panel-heading .right{
        margin-top: -1px;
        margin-right: -7px;
        border-radius: 4px;
}
.page-student-groups .panel-heading .indicators .indicator {
        padding-top: 5px;
        background-color: #fff;
        color: #999;
}
.page-student-groups .panel-heading .indicators .indicator .glyphicon {
        font-size: 10px;
        color: #999;
        margin-right: 4px;
        margin-top: -4px;
}
.page-student-groups .panel-heading .indicators.right{
        margin-right: 7px;
}
.has-users-live .fl-scrolls[data-orientation=horizontal] {
        margin-bottom: 26px;
}

#modal-add-edit-text .modal-dialog {
        width: 1000px;
}
#modal-add-edit-text .mce-container iframe {
        height: 600px !important;
}
.page-texts.action-edit .mce-container iframe,
.page-texts.action-add .mce-container iframe{
        height: 800px !important;
}

/*
 * Sélecteur d'année (évaluations)
 */
.evaluation-years-select {
        position:relative;
        display: inline-block;
}
.evaluation-years-select .evaluation-year-label {
        cursor: pointer;
        padding: 2px;
        margin-left: -2px;
        border-radius: 4px;
        transition: .2s;
}
.evaluation-years-select .evaluation-year-label:hover,
.evaluation-years-select.opened .evaluation-year-label {
        background:#f9f9f9;
}
.evaluation-years-select .evaluation-year-label svg {
        width: 12px;
        opacity: 0.7;
}
.evaluation-years-select .evaluation-year-options {
        position: absolute;
        z-index: 2;
        left: -3px;
        right: 0;
        top: 25px;
        background: #fff;
        box-shadow: 2px 2px 3px rgba(0, 0, 0, .2);
        white-space: nowrap;
        font-size: 14px;
        border-radius: 4px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        display:none;
        overflow:hidden;
        text-overflow:ellipsis;
}
.evaluation-years-select.opened .evaluation-year-options {
        display:block;
}
.evaluation-years-select .evaluation-year-options a {
        text-decoration: none;
        border-top: solid 1px #eee;
        padding: 8px 15px 8px 12px;
        display: block;
}
.evaluation-years-select .evaluation-year-options a:hover {
        background: var(--ganesh-rh-background-color);
        color: #fff !important;
}
.evaluation-years-select .evaluation-year-options a.selected {
        background: var(--primary-color);
        color: #fff !important;
}

.title-select {
        position:relative;
        display: inline-block;
        margin-left: -2px;
        background: none;
        color: var(--primary-background-color);
        border: none;
        border-radius: 3px;
        cursor: pointer;
        transition: .2s;
        font-size:19.5px;
}
.title-select .title-select-label {
        padding: 0px 5px;
        margin-left: -2px;
        border-radius: 3px;
        cursor: pointer;
        transition: .2s;
}
.title-select .title-select-label:hover,
.title-select.opened .title-select-label {
        background:#f9f9f9;
}
.title-select .title-select-label svg {
        width: 12px;
        opacity: 0.7;
}

.title-select .title-select-options {
        position: absolute;
        z-index: 2;
        left: -3px;
        right: 0;
        top: 23px;
        background: #fff;
        box-shadow: 2px 2px 3px rgba(0, 0, 0, .2);
        white-space: nowrap;
        font-size: 14px;
        border-radius: 4px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        display:none;
        overflow:hidden;
        text-overflow:ellipsis;
}
.title-select.opened .title-select-options {
        display:block;
}
.title-select .title-select-options a {
        text-decoration: none;
        border-top: solid 1px #eee;
        padding: 8px 15px 8px 12px;
        display: block;
        position:relative;
}
.title-select .title-select-options a.current-year {
        font-weight:500;
}
.title-select .title-select-options a:hover {
        background: var(--primary-bright-background-color);
        color: #fff !important;
}
.title-select .title-select-options a.selected {
        background: var(--primary-color);
        color: #fff !important;
}
.title-select .title-select-options .glyphicon {
        font-size: 10px;
        margin-left: 5px;
}
.title-select.year-select .title-select-options a .year-indicator {
        position: absolute;
        top: 0;
        right: 0;
        /*background: #EEE;*/
        /*color: #999;*/
        font-weight: bold;
        font-size: 12px;
        padding: 9px 0px 9px 0;
        width: 26px;
        text-align: center;
}
.title-select.year-select .title-select-options a:hover .year-indicator {
        background: var(--primary-hover-bright-background-color);
        color:#fff;
}
.title-select.year-select .title-select-options a.selected .year-indicator {
        background: #6ec1d8;
        color:#fff;
}
.title-select.year-select .title-select-label .year-indicator {
        display:none;
}