﻿/* NG-CLOAK */
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
    display: none !important;
}

/* BOOTSTRAP CORRECTIONS */
.item.breadcrumb {
    padding: 0;
}
/*on annule l'effet bootstrap sur le css dnn pour le decalage de la navbar*/



/* TITRES */
h4 {
    color: #555;
    font-weight: bold;
}

h5 {
    color: #555;
    font-weight: bold;
}

/* columns of same height styles : http://www.gekode.co.uk/bootstrap-3-responsive-columns-of-same-height/ */

.row-full-height {
    height: 100%;
}

.col-full-height {
    height: 100%;
    vertical-align: middle;
}

.row-same-height {
    display: table;
    width: 100%;
    /* fix overflow */
    table-layout: fixed;
}

.col-xs-height {
    display: table-cell;
    float: none !important;
}

@media (min-width: 768px) {
    .col-sm-height {
        display: table-cell;
        float: none !important;
    }
}

@media (min-width: 992px) {
    .col-md-height {
        display: table-cell;
        float: none !important;
    }
}

@media (min-width: 1200px) {
    .col-lg-height {
        display: table-cell;
        float: none !important;
    }
}

/* vertical alignment styles */

.col-top {
    vertical-align: top;
}

.col-middle {
    vertical-align: middle;
}

.col-bottom {
    vertical-align: bottom;
}

/* CHRONOGRAMME */
#chronoAdmin {
    margin-bottom: 30px;
    overflow: hidden;
    /*CSS counters to number the steps*/
    counter-reset: step;
    text-align: center;
    z-index: 0;
}

    #chronoAdmin li {
        list-style-type: none;
        color: white;
        text-transform: uppercase;
        font-size: 9px;
        width: 15%;
        float: left;
        position: relative;
        z-index: 0;
        margin-top: 19px;
    }

        #chronoAdmin li a:hover {
            text-decoration: none;
            cursor: default;
        }

        /*chronoAdmin connectors*/
    
        #chronoAdmin li:before {
            content: '';
            width: 50%;
            height: 2px;
            background: #C0C0C0;
            position: absolute;
            left: 5px;
            top: 25px;
            z-index: -1; /*put it behind the numbers*/
        }
        #chronoAdmin li:after {
            content: '';
            width: 50%;
            height: 2px;
            background: #C0C0C0;
            position: absolute;
            right: 5px;
            top: 25px;
            z-index: -1; /*put it behind the numbers*/
        }
        /* Rmove connectors for first and last child */
        #chronoAdmin li:nth-last-child(1):after, .hide-connector:nth-child(1):before {
            content: '';
            display: none !important
        }

        #chronoAdmin li p span {
            color: #3262a1;
        }

        #chronoAdmin li p {
            color: #555555;
            font-size: 10px;
            cursor: default;
            margin-bottom: 0;
        }

        #chronoAdmin li.etapFinal:after {
            width: 0;
        }

        #chronoAdmin li p.etapMoteur {
            display: none;
        }
        /*marking active/completed steps green*/
        /*The number of the step and the connector before it = green*/
        #chronoAdmin li.active:before, #chronoAdmin li.active:after {
            background: #27AE60;
            color: white;
        }

.signup_menuchrono input, .signup_menuchrono textarea {
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    font-family: montserrat;
    color: #2C3E50;
    font-size: 13px;
    z-index: 10;
}

.glyphicon.withMargin {
    margin-right: 5px;
}
.fas.withMargin {
    margin-right: 5px;
}
#chronoAdmin {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* NG-DIALOG */

.signup-modal .alert-form-ngdialog {
    line-height: 16px !important;
}

.signup-modal .form-checkbox {
    margin-top: 8px !important;
}

.signup-modal .email-alert {
    width: 200px !important;
}

/* GENERAL */
body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/*** BOOSTRAP FORMULAIRES***/

.form-group label {
    font-size: 12px !important;
    color: #606060 !important;
    text-align: left !important;
    font-weight: bold;
}

.form-group label.cTxtRight {    
    text-align: right !important;    
}

.form-group span {
    font-size: 12px !important;
    font-weight: bold;
    text-align: left !important;
    /*padding: 0px 5px;*/
}

.form-group {
    margin-bottom: 5px !important;
}

.control-span {
    padding-top: 7px !important;
}

.form-group-input {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
}

    .form-group-input label {
        padding-top: 8px !important;
    }

.form-group-input-span {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 10px !important;
    padding-bottom: 8px !important;
}


    .form-group-input-span label {
        padding-top: 0px !important;
    }

.control-span-inputType {
    padding-top: 8px !important;
    padding-bottom: 5px !important;
}

/*.form-group-input-span {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

.form-group-input-span  label {
    padding-top: 2px !important;
}*/

/* BOOSTRAP FORMULAIRES : Exemples 

 1 - Label + span : taille ninimale (classe "control-span")

    <div class="cBorderBot"></div><!-- Ligne de séparation -->
    <div class="form-group">
	    <label class="col-sm-3 control-label">Teneur de compte</label>
	    <div class="col-sm-9 control-span">
		    <span>John</span>
	    </div>
    </div>


2 - Label + span : taille input (classe "form-group-input-span")

    <div class="cBorderBot"></div><!-- Ligne de séparation -->
    <div class="form-group form-group-input-span">
	    <label class="col-sm-3 control-label">Teneur de compte</label>
	    <div class="col-sm-9">
		    <span>John</span>
	    </div>
    </div>


3 - Label + input (classe "form-group-input")

    <div class="cBorderBot"></div><!-- Ligne de séparation -->
    <div class="form-group form-group-input">
	    <label class="col-sm-3 control-label">Teneur de compte</label>
	    <div class="col-sm-9">
            <input type="text" class="form-control input-sm" ng-model="detail.entete.teneurNomComplet"/>
	    </div>
    </div>

4 - Label + span et/ou input (classe "form-group-input" et "control-span-inputType")
    <div class="form-group form-group-input">
        <label class="col-sm-2 control-label">Chef de groupe</label>
        <div class="col-sm-3" ng-if="detail.edit.blockDetail">
            <input id="inputChefGroup" type="text" class="form-control autoComplete input-sm" ng-model="detail.chefGroup"
                uib-typeahead="user as user.nomComplet for user in detail.listUsers | filter:$viewValue" typeahead-select-on-blur="true" required />
        </div>
        <div class="col-sm-3 control-span-inputType" ng-if="!detail.edit.blockDetail">
            <span>{{detail.chefGroup.nomComplet}}</span>
        </div>
    </div>
*/

/* CHECKBOX */
.form-checkbox {
    margin-top: 1px !important;
}

/* TABLEAU */
.tableNoPaddingLeft tr, .tableNoPaddingLeft th, .tableNoPaddingLeft td {
    padding-left: 0px !important;
}

.tableNoPaddingLeft .row,
.tableNoPaddingLeft [class^="col-"] {
    padding-left: 0px !important;
    margin-left: 0px !important;
}

table thead {
    font-size: 13px !important;
}

table tbody {
    font-size: 12px !important;
}

table .row-separation {
    margin-top: 2px;
    margin-bottom: 2px;
}

    table .row-separation > div span {
        vertical-align: middle !important;
    }

    table .row-separation td span {
        vertical-align: middle !important;
    }

/* Tableaux avec sous-tableaux */
.table-bloc {
    display: table;
    width: 100% !important;
}

.table-bloc-row {
    display: table-row;
}

.table-bloc-column {
    display: table-cell;
    padding-top: 3px;
    padding-bottom: 3px;
    vertical-align: middle;
    padding-right: 5px;
}

.table-bloc-column-end {
    display: table-cell;
    padding-top: 3px;
    padding-bottom: 3px;
    vertical-align: middle;
}

.key-column {
    padding-right: 10px !important;
}

    .key-column span {
        display: inline-block;
        margin-top: 4.5px;
    }

.size30 {
    width: 30%;
}

.size40 {
    width: 40%;
}

.size60 {
    width: 60%;
}

.size100 {
    width: 100%;
}

/* Ng-Table avec tri sur les titres*/
table.tri-titre tr:first-child th:hover {
    background-color: #E0E0E0;
    border-radius: 4px;
    cursor: pointer;
}

table.tri-titre tr:first-child th.no-hover:hover {
    background-color: #FFF;
    cursor: default;
}


/* ANIMATIONS */
.animate-repeat.ng-move,
.animate-repeat.ng-enter,
.animate-repeat.ng-leave {
    transition: all linear 0.15s;
}

    .animate-repeat.ng-leave.ng-leave-active,
    .animate-repeat.ng-move,
    .animate-repeat.ng-enter {
        opacity: 0;
        max-height: 0;
    }

        .animate-repeat.ng-leave,
        .animate-repeat.ng-move.ng-move-active,
        .animate-repeat.ng-enter.ng-enter-active {
            opacity: 1;
            max-height: 40px;
        }


/* FORMULAIRES */
.element-gris {
    color: #888888;
}

.required-red::after {
    content: " *";
    color: red;
}

.required-red-pl3::after {
    content: "*";
    color: red;
    padding-left: 3px;
}

.required-input-red {
    display: table-cell;
}

    .required-input-red::before {
        content: "i";
        padding-top: 6px;
        padding-bottom: 6px;
        display: table-cell;
        background-color: red;
        color: red;
        border-radius: 2px;
    }

    .required-input-red input {
        display: table-cell;
    }

.required-input-container {
    display: table;
}

    .required-input-container > input {
        display: table-cell;
    }

    .group-btn-select {
        width: 100%;
        text-align: left !important;
    }

    .group-btn-select .caret {
        position: absolute;
        right: 10px;
        top: 45%;
    }

    .group-btn-select .dropdown-menu {
        width: 100%;
    }

    .btn-radio {
        padding-top: 5px !important;
        padding-bottom: 0px !important;
    }

    .btn-radio > input:hover {
        padding-top: 5px !important;
        padding-bottom: 0px !important;
        cursor:pointer;
    }

    .alert-form {
        padding: 5px 10px !important;
        margin-bottom: 0px !important;
        margin-top: 0px !important;
    }

    /* Encadrer les inputs en rouge */
    .form-group-input .ng-invalid.ng-dirty {
        border-color: rgba(255, 0, 0, 0.68);
        outline-color: rgba(255, 0, 0, 0.68);
    }

    /** intl-tel-input **/

    .intl-tel-input {
        display: inherit !important;
        width: 100% !important;
    }
        
    .intl-tel-input input[type="text"] {
        border-bottom-left-radius: 0 !important;
        border-top-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
        border-top-right-radius: 0 !important;
    }

    .intl-tel-input .country-list {
        z-index: 100 !important;
    }

    .selected-flag {
        z-index: 50 !important;
    }

    .highlight {
        font-size: inherit !important;
    }

    ul.dropdown-menu li.signup-dropdown-item:hover {
        cursor: pointer !important;
        background-color: rgba(209,209,209,0.5);
    }

    .no-padding-left {
        padding-left: 0px !important;
    }

    .no-padding-right {
        padding-right: 0px !important;
    }

    .date-xs {
        min-width:150px;
    }

/*** BOOTSTRAP CORRECTIONS ***/

.text-warning.c-text-warning {
    color: #f0ad4e !important;
}


/*** BOOTSTRAP BUTTON ***/

/* group-button non cliquable*/
.btn-no-click .btn:hover {
    cursor: default !important;
}

.btn-no-click .btn-danger:hover {
    background-color: #d9534f;
}

.btn-no-click .btn-success:hover {
    background-color: #5cb85c;
}

.btn-no-click .btn-default:hover {
    background-color: #FFF;
}

.icone-miroir {
    -moz-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    filter: FlipH;
    -ms-filter: "FlipH";
} 

/*** BOOTSTRAP ALERT ***/

div.alerteDate div.alert div.alertSmall {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-bottom: 0px !important;
}

/*** UPLOAD BUTTON ***/
.fileUpload {
    position: relative;
    overflow: hidden;
    margin-top: 3px;
    margin-bottom: 3px;
    min-width: 57px;
    max-width: 109px;
}

    .fileUpload input.input-upload {
        position: absolute;
        top: 0;
        right: 0;
        margin: 0;
        padding: 0;
        font-size: 20px;
        cursor: pointer;
        opacity: 0;
        filter: alpha(opacity=0);
    }

    .fileUpload .visible-upload-btn {
        background-color: #E8E8E8;
    }

/*** CALENDAR ***/
a.event-item-edit i.glyphicon {
    color: white;
}

a.event-item-delete i.glyphicon {
    color: white;
}

/*** BOOTSTRAP Datepicker ***/

/* Colorer les week-end */
table.uib-daypicker td:nth-last-child(2) button {
    background-color: #c4f2ff;
}

table.uib-daypicker td:nth-last-child(1) button {
    background-color: #c4f2ff;
}

table.uib-daypicker td:nth-last-child(2) button.btn-info {
    background-color: #5bc0de;
}

table.uib-daypicker td:nth-last-child(1) button.btn-info {
    background-color: #5bc0de;
}

table.uib-daypicker td:nth-last-child(2) button:hover {
    background-color: #79e1ff;
}

table.uib-daypicker td:nth-last-child(1) button:hover {
    background-color: #79e1ff;
}

.ng-invalid-date,.ng-invalid-date ~ .input-group-btn .btn {
    border-color: #a94442 !important;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}

.has-error .input-group-btn .btn {
    border-color: #a94442 !important;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}

.has-error .ng-invalid {
    border-color: #a94442 !important;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
}


.alert-danger {
    height:auto !important;
}

/*  message d'erreur dans les tableaux */
.alertTable {
    position: absolute;
    z-index:10;
}

.alert {
    position: relative;
}

.alertTable .alert:before {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-bottom-color: #f2dede;
    border-width: 11px;
    margin-left: -11px;
}

.alertTable .alert {
    margin-bottom: 0 !important;
    padding: 5px 5px !important;
}


/*** Visionneuse ***/

.visionneuse-open {
    overflow-y: hidden;
}

.visio-block-document {
    padding-left: 2%;
    padding-right: 2%;
    height: 75%;
    text-align: center;
}

.block-invisible {
	visibility: hidden;
	position:absolute;
	opacity: 0;
	width: 0%;
	height: 0%;
}

.lightbox {
    visibility: visible;
    position:fixed;
    padding:0px;
    margin:0px;
    top:0px;
    left:0px;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.7);
    opacity: 1 !important;
    -webkit-transition: opacity 1s ease;
    -moz-transition: opacity 1s ease;
    -o-transition: opacity 1s ease;
    transition: opacity 1s ease;
    overflow: hidden;
    z-index:1010;
}

a.lightbox-open-form {
    display: block;
    width:30px; /*50*/
    height:30px; /*50*/
    box-sizing: border-box;
    background: white;
    color: black;
    text-decoration: none;
    position: absolute;
    top: -80px;
    right: 32px;
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
}


a.lightbox-close-all {
    display: block;
    width:30px; /*50*/
    height:30px; /*50*/
    box-sizing: border-box;
    background: white;
    color: black;
    text-decoration: none;
    position: absolute;
    top: -80px;
    right: 0;
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
}

a.lightbox-tools {
    display: block;
    width:30px; /*50*/
    height:30px; /*50*/
    box-sizing: border-box;
    background: black;
    color: white;
    text-decoration: none;
    position: absolute;
    right: -15px;
    top: -80px;
    z-index: 1020;
    /*
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
    */
    transition: 0.1s ease;
}

a.lightbox-tools i, a.lightbox-close-all i, a.lightbox-open-form i {
    text-align: center;
    width: 100%;    
    font-size: 17px;
    padding: 6px;
}


.lightbox a.lightbox-close-all, .lightbox a.lightbox-open-form, .lightbox a.lightbox-tools {
    top: 0px;
}

a.lightbox-tools-2 {
    top: 31px !important;
}


.carrousel {
    padding-top: 20px;        
}

.carrousel-image {
    margin: auto;
    /*position: absolute;*/
    top: 0;
    left:0;
    right:0;
    bottom: 0;
    border: 3px solid white;    
    box-sizing: border-box;    
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease;
}
.carrousel-image:hover {
    border: 3px solid #5bc0de;
    cursor: pointer;
}


slick { height: 100%; }
.slick-slide {max-height: 155px;} /* 120 % */
.slick-slide img{max-height: 120px; max-width: 120px;}
.slick-slide img.slick-loading{border:0 }
.slick-slider{margin:10px auto 50px;}
.slick-slide:focus {outline:0;}

.visionneuse-formulaire-actif {
	width: 50%;
	-webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
}


.visionneuse-formulaire-actif .visionneuse {
	width: 50%;
    left: auto;
    right: 0px;
	-webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
    z-index: 100;
}

.visio-document-container {
    display: table-cell; /* comportement visuel de cellule */
    vertical-align: middle;     
}

.visio-document { 
    height: 100%;
}
.visio-document-bgrnd-black { 
    background-color: black;
}


.img-full-height {
    width: auto;
	height: 100%;
}

.img-full-width {
    width: 100%;
	height: auto;
}

.visio-document-image-container {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    overflow: auto;
}

.visio-document-image {
    margin: auto;
}

.vignette-active {
    opacity: 0.3;
    cursor: default !important;
}

.vignette-titre {
    text-align: center;
    word-wrap: break-word;
}
.vignette-titre div {
    /*background-color: white;*/
    color: white;
    width: 150px;
    margin: auto;
}

.vignette-error {
    background: #fff;
    color: #808080;
    font-size: 50px;
    line-height: 90px;
    text-align: center;
    max-height: 120px;
    max-width: 120px;
    margin: auto;
    padding-top: 10px;
    border: 3px solid white;       
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease;
}

.vignette-error:hover {
    border: 3px solid #5bc0de;
    cursor: pointer;
}


.visio-document-error {
    color: white;
    font-size: 40px;
    line-height: 60px;
    margin: auto;
    text-align: center;
}
.visio-document-error i {
    color: white;
    font-size: 100px;
    line-height: 150px;
    text-align: center;
}
.visio-document-error div {
    margin: auto;
}

.visio-document-error-download {
    margin-top: 30px !important;
}
.visio-document-error-download i{
    width: 50px;
    line-height: 50px;
    font-size: 35px;    
}


/* Si aucun fichier */
.no-file {
    
}

.vignette-loaded .no-file{
    visibility: hidden;
    width: 0px;
    height: 0px;
    padding-top: 0px;
    border: 0px;
}

.vignette-loading .carrousel-image{
    visibility: hidden;
    width: 0px;
    height: 0px;    
    border: 0px;
}

.vignette-loading .no-file {
    visibility: visible;
    background: #fff;
    color: #808080;
    font-size: 50px;
    line-height: 90px;
    text-align: center;
    max-height: 120px;
    max-width: 120px;
    margin: auto;
    padding-top: 10px;
    border: 3px solid white;       
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease;    
}

.vignette-invisible {
    visibility: hidden;
    padding-top: 0px;
    width: 0px;
    height: 0px;    
    border: 0px;
}

/*** FORMULAIRE TYPE BLOC ***/
    .border-container {
        border-style: solid !important;
        border-width: 1px;
        border-color: grey;
        border-radius: 5px;
        margin-top: 10px;
        margin-bottom: 20px;        
    }

    .border-container-body {
        padding: 1rem!important;
    }

    .border-container-head {
        /*background-color: rgba(209,209,209,0.5);*/
        border-width: 1.5px;
        padding-right: 5px;
        padding-left: 5px;
        width: auto !important;
        display:flex;
        flex-direction:row;
    }

    .border-container-legend {
        margin-bottom: -17px !important;
        margin-top: -4px !important;
        margin-left: -25px !important;
        margin-right: 25px !important;
        padding-top: 10px;
    }
    
    .border-container-legend > legend {        
        color: rgb(0, 0, 0);
        font-size: 12px !important;                
        border: hidden !important;        
    }
    
    .border-container-legend > legend > span:hover {        
        cursor: pointer !important;
    }

/*** NG-TAG-INPUT ***/
/*
tags-input.ng-invalid .tags {
    border-color: #CCC !important;
}
*/
/*
tags-input.ng-invalid .tags .ng-dirty {
    border-color: rgba(255, 0, 0, 0.68) !important;
}
*/
tags-input.ng-invalid .tags {
    border-color: rgba(255, 0, 0, 0.68) !important;
}


/*** NG DROPDOWN MULTISELECT ***/
.ng-invalid-ng-dropdown-multiselect button.dropdown-toggle {
    border-color: rgba(255, 0, 0, 0.68) !important;
}



