/*
bleu de base    :2980b9
bleu -10        :2f92d4
bleu +10        :236fa1
bleu +20        :1e5d87
*/
@font-face {
    font-family:"FontAwesome";
    src:url("../../../webfonts/fa-solid-900.eot");
    src:url("../../../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../../../webfonts/fa-solid-900.woff2") format("woff2"), url("../../../webfonts/fa-solid-900.woff") format("woff"), url("../../../webfonts/fa-solid-900.ttf") format("truetype"), url("../../../webfonts/fa-solid-900.svg#fontawesome") format("svg");
}

/*
///////////////////////////////////////////
SQUELETTE
///////////////////////////////////////////
*/
body { background:#f0f2f2; margin:0; font-family:Calibri, Arial, sans-serif; color:#4e5659; /*overflow-y:scroll;*/ line-height:1.35; }
body, a, .btn, #breadcrumb ul li, .box-tab li, .form-control, select, textarea { font-size:13px; }
a { color:#2f92d4; color:#2573a6; text-decoration:none !important; }
a:hover { color:#67a8d2; }
a:focus, .form-control, .dataTables_wrapper input, .dataTables_wrapper select { outline:none !important; }

.text-primary { color:#1175b8!important; }
.text-danger { color:#CD6155!important; }
hr { margin:30px 0!important; }

.fl { float:left !important; }
.fr { float:right !important; }
.fixed { position:fixed !important;}
.absolute { position:absolute !important; }
.block { display:block !important; }
.min20 { width:1px !important; white-space:nowrap !important; padding-left:20px !important; padding-right:20px !important; }
.text-purple { color:#de0aaf !important; }
.block-custom { background:#f9f9f9; padding:6px; }
hr, .hr50, .hr20 { margin:30px 0!important; }
.hr50 { width:50%; margin-left:25%!important; }
.hr20 { width:20%; margin-left:40%!important; }
.border-primary { border:solid 1px #1e5d87 !important; }
.pointer { cursor:pointer !important; }
label { margin:0; }
.noselect {
    -webkit-touch-callout:none; /* iOS Safari */
    -webkit-user-select:none; /* Safari */
    -khtml-user-select:none; /* Konqueror HTML */
    -moz-user-select:none; /* Old versions of Firefox */
    -ms-user-select:none; /* Internet Explorer/Edge */
    user-select:none; /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}
.small { font-size:11px; color:#999; }

main { opacity:1; padding-left:0; }
main { opacity:0; }
/*body { opacity:0; }*/
main.open { padding-left:220px; }
header { position:fixed; z-index:10; width:100%; padding:0; height:50px; background:#2980b9; color:#fff; }
#logo { float:left; width:70px; height:50px; line-height:50px; background:rgba(0, 0, 0, .1); text-align:center; font-weight:bold; font-size:14px; }
#logo.open { width:220px; }
#logo a { color:#fff; height:50px; line-height:50px; display:block; }
#logo a:hover { color:#daf0ff; }
#header-content { padding:0; float:left; }
#hamburger { float:left; height:50px; line-height:50px; padding:0 20px; cursor:pointer; }
#hamburger:hover { background:rgba(255, 255, 255, .1);}
#header-menu { float:right; color:#fff; }
#header-menu ul, #header-menu li { list-style:none; }
#header-menu li { float:left; }
#header-menu a, #header-menu span { height:50px; line-height:50px; color:#fff; padding:0 15px; display:block; cursor:pointer; }
#header-menu *:hover { background:rgba(255, 255, 255, .05); }

#software-search { float:left; margin:0 0 0 15px; height:28px; line-height:28px; padding:11px 0; position:relative; }
#software-search-icon { float:left; width:28px; height:28px; line-height:28px; text-align:center; padding:1px 0 0 0; margin:0; }
#software-search-icon:hover { background:#2573a6; }
#software-search-icon .spinner-border { width:15px; height:15px; border-width:2px; }
#software-search-content { float:left; }
#software-search-text { border:none; background:rgba(255, 255, 255, .05); width:200px; color:rgba(255, 255, 255, .5); border:solid 1px rgba(255, 255, 255, .1); height:28px; line-height:28px; color:#fff; }
#software-search-text:focus { border-color:rgba(255, 255, 255, .3); }
#software-search-text::placeholder { color:#fff; color:rgba(255, 255, 255, .5); font-size:12px; }
#software-results { position:absolute; top:51px; z-index:10; width:500px; /*height:200px;*/ background:#fff; box-shadow:0 2px 2px rgba(0, 0, 0, 0.1); color:#4e5659; }
#software-results #search-result-nb { padding:0 10px; background:#2980b9; color:#fff; height:39px; line-height:39px; border-bottom:solid 1px #eee; }
#software-results .search-result { margin:0 10px; border-bottom:solid 1px #eee; }
#software-results .search-result a { padding:4px; display:block; }
#software-results .search-result a div { color:#999; font-size:12px; }
#software-results .search-result a:hover { background:#f3f3f3; }

nav { position:fixed; z-index:3; left:-220px; width:220px; height:100%; padding:50px 0 15px; top:0; background:#fbfbfb; }
nav.open { left:0; }
#nav-user { padding:15px; /*border-bottom:solid 1px #eee;*/ background:#fbfbfb; }
#nav-user-name { font-size:14px; font-weight:bold; }
#nav-user-function { color:#999; font-size:12px; }
#nav-user-logout { font-size:12px; }
#nav-content { }
#nav-content-title { padding:15px; border-bottom:solid 1px #f3f3f3; border-top:solid 1px #f3f3f3; font-weight:bold; }


/* NAV 1er niveau */
#nav-menu { padding:0; /*height:500px;*/ background:#fbfbfb; }
#nav-menu ul, #nav-menu li { list-style:none; margin:0; padding:0; }
#nav-menu a { padding:12px 10px 12px 15px; display:block; color:#4e5659; font-weight:bold; border-right:solid 2px transparent;}
#nav-menu a:hover { background:#f6f6f6; border-right:solid 2px #2980b9; border-right:solid 2px #ccc; }
#nav-menu li.open a { background:#f0f0f0; border-right:solid 2px #ccc; }
#nav-menu li.open ul a { background:none; border-right:none; }
#nav-menu li.active a { background:#f3f3f3; border-right:solid 2px #2980b9; background:#2980b9; color:#fff; }
#nav-menu a i { margin:0 10px 0 0; font-size:14px; }
/*#nav-menu a .arrow { font-size:10px; padding:5px 0 0; content:'\f104'; font-family:"FontAwesome", sans-serif; }*/
#nav-menu a .arrow:before { content:'\f104'; font-family:"FontAwesome", sans-serif; font-size:12px; float:right; }
#nav-menu li.active a .arrow:before { content:'\f107'; font-family:"FontAwesome", sans-serif; font-size:12px; float:right; }


/* NAV 2ème niveau */
#nav-menu li.active ul, #nav-menu li.open ul { display:block; background:#fff; }
#nav-menu li.open ul { display:block; }
#nav-menu li ul { display:none; }
#nav-menu li.active ul a { background:#fff; border-right-color:transparent; }
#nav-menu li ul, #nav-menu li ul li { list-style:none; margin:0; padding:0; }
#nav-menu li ul a, #nav-menu li.active ul a { padding:4px 10px 4px 25px; color:#7b888c; font-weight:normal; border-bottom:none; }
#nav-menu li ul li ul a, #nav-menu li.active ul li ul a { padding-left:40px; }
#nav-menu li ul a:hover { background:#f9f9f9; background:none; border-right:solid 2px #2980b9; border-right:solid 2px #ddd; color:#333; }
#nav-menu li ul li.active a { background:none; font-weight:bold; border-right:solid 2px #2f92d4; color:#333; }
#nav-menu li ul li.active a:before { font-family:"FontAwesome", sans-serif; content:'\f061'; font-size:8px; margin:0 5px 0 0; color:#333; }

/*#nav-menu li.open ul li:last-child a { border-bottom:solid 1px #f3f3f3; }*/
#nav-menu ul ul { border-bottom:solid 1px #f3f3f3; padding:4px 0; }

#breadcrumb { top:50px; height:50px; line-height:50px; width:100%; background:#fff; box-sizing:border-box; position:fixed; z-index:2; border-bottom:solid 1px #e9e9e9; }
#breadcrumb-content { padding:0 15px 0 15px; float:none; clear:both; }
#breadcrumb-content.open { padding-left:235px; }
#module-name { float:left; margin:0 30px 0 0; }
/*#module-name:after { content:'\\'; margin:0 0 0 2px; }*/
#breadcrumb ul { float:left; display:inline; margin:0; padding:0; font-size:0; }
#breadcrumb ul li { display:inline; padding:0; }
#breadcrumb ul li:first-child:before { font-family:"FontAwesome", sans-serif; content:'\f015'; margin:0 8px 0 0; font-size:11px; }
#breadcrumb ul li:after { content:'\00203A'; margin:0 8px; }
#breadcrumb ul li:last-child { font-weight:bold; }
#breadcrumb ul li:last-child:after { content:none; }
#breadcrumb-explain { float:left; text-align:right; margin:0 0 0 30px; color:#7b888c; font-size:12px; }
/*#breadcrumb-explain:before { content:'\\'; margin:0 2px 0 0; }*/
/*#breadcrumb-explain:after { content:'_'; margin:0 0 0 2px; }*/
#breadcrumb-buttons { float:right; }

main { padding:100px 0 0 0; position:relative; }
#main-content { padding:30px 30px 0; }

#loading-main { width:100%; height:100%; top:0; left:0; position:fixed; background:#f0f2f2; z-index:1; }


#sidebar {
    position:fixed;
    top:100px;
    right:0;
    z-index:9;
    width:300px;
    height:0;
    background:#fff;
    background:#fbfbfb;
    border-left:solid 1px #e9e9e9;
    /*box-shadow:-1px 0px 2px rgb(255 255 255 / 100%);*/
}


/*
///////////////////////
HAMBURGER fermé
///////////////////////
*/
body.nav-close nav { left:-220px; }
body.nav-close #logo { width:70px; }
body.nav-close #header-content { left:-220px; }
body.nav-close #breadcrumb-content { padding-left:15px; }
body.nav-close main { padding-left:0; }


/*
///////////////////////////////////////////
BOX
///////////////////////////////////////////
*/
.box { background:#fff; margin:0 0 30px; box-shadow:0 1px 2px rgba(0, 0, 0, 0.1); }
.box-header { padding:10px 15px; font-weight:bold; font-size:13px; line-height:20px; background:#fafcfc; position:relative; }
.box-header-right, .box-header-options, .box-options { float:right; color:#bbb; position:absolute; top:8px; right:8px; }
.box-header-right i { font-size:12px; line-height:20px; }
.box-body { border-top:solid 1px #eee; padding:20px; }
.box-footer { padding:10px; border-top:solid 1px #eee; }

/*
///////////////////////////////////////////
BOX MAXIMISE
///////////////////////////////////////////
*/
.box-fullscreen { position:fixed; z-index:20; box-shadow:0 2px 2px rgba(0, 0, 0, 0.1); }


/*
///////////////////////////////////////////
BOX TAB
///////////////////////////////////////////
*/
.box-tab { background:#fff; margin:0 0 30px; box-shadow:0 1px 2px rgba(0, 0, 0, 0.1); }
.nav-tab { }
.nav-tab ul { position:relative; font-size:13px; height:40px; }
.nav-tab ul div { font-size:13px; }
/* crée un espace entre chaque btn */
.nav-tab ul, .nav-tab li { list-style:none; margin:0; padding:0; }
.nav-tab ul { padding:0; font-size:0; background:#fafcfc; }
.nav-tab li { display:inline-block; }
.nav-tab li a { color:#4e5659; display:inline-block; padding:10px 15px; cursor:pointer; border-right:solid 1px #eee; font-weight:bold; font-size:13px; line-height:20px; background:#fafcfc; }
.nav-tab li a:hover { background:#f6f6f6; }
.nav-tab li a.active { border-bottom:solid 1px #fff; background:#fff; color:#2573a6; position:relative; }
.nav-tab li a.active:hover { }
.nav-tab li a.active:after { font-family:"FontAwesome", serif; content:'\f078'; content:'\f107'; content:'\f063'; font-size:10px; position:absolute; width:50%; text-align:center; left:50%; margin-left:-25%; top:30px; }
.nav-tab-content { min-height:300px; border-top:solid 1px #eee; padding:20px; }
.nav-tab-pane { display:none; }
.nav-tab-pane.active { display:block; }

.nav-tab-pane-title { padding:0 0 15px; margin:0 0 10px; border-bottom:solid 1px #eee; font-weight:bold; font-size:13px; line-height:20px; }
.nav-tab-pane-title-right { float:right; color:#bbb; }

.box-body, .nav-tab-content { padding:30px; }


/*
///////////////////////////////////////////
BTN
///////////////////////////////////////////
*/
.btn { padding:4px 8px; }
.btn, .btn:active, .btn:visited, .btn:focus { line-height:normal; background:#fff; border:solid 1px #ddd; color:#4e5659; color:#666 !important; }
.btn:hover { color:#fff !important; }

.btn:active { box-shadow:inset 0 1px 2px rgba(0, 0, 0, .25) !important; }

/*
.btn-primary { background:#5499C7; border-color:#3e7294!important; color:#fff!important; }
.btn-success { background:#45B39D!important; border-color:#328070!important; color:#fff!important; }
.btn-danger { background:#CD6155!important; border-color:#99483f!important; color:#fff!important; }
.btn-warning { background:#f6b93b!important; border-color:#c28c34!important; color:#fff!important; }
.btn-info { background:#9fbfd1!important; border-color:#78909e!important; color:#fff!important; }
.btn-default { background:#bbbdc4!important; border-color:#8a8c91!important; color:#fff!important; }
*/

.btn-primary { border-color:#5499C7 !important; }
.btn-success { border-color:#45B39D !important; }
.btn-danger { border-color:#CD6155 !important; }
.btn-warning { border-color:#f6b93b !important; }
.btn-info { border-color:#d19fc6 !important; }
.btn-default { border-color:#bbbdc4 !important; }

.btn-primary:hover { background:#5499C7; border-color:#3e7294 !important; color:#fff !important; }
.btn-success:hover { background:#45B39D !important; border-color:#328070 !important; color:#fff !important; }
.btn-danger:hover { background:#CD6155 !important; border-color:#99483f !important; color:#fff !important; }
.btn-warning:hover { background:#f6b93b !important; border-color:#c28c34 !important; color:#fff !important; }
.btn-info:hover { background:#d19fc6 !important; border-color:#9e7896 !important; color:#fff !important; }
.btn-default:hover { background:#bbbdc4 !important; border-color:#8a8c91 !important; color:#fff !important; }
.btn-xs { padding:1px 4px; }
.btn-sm { padding:2px 6px; font-size:12px; }
.btn-md { padding:3px 8px; }


/*
///////////////////////////////////////////
TABLE
///////////////////////////////////////////
*/
.table { margin:0; padding:0; color:#4e5659; /*overflow-x:auto!important; display:block; width:100%; min-width:100%; white-space:nowrap;*/ }
.table>:not(:first-child) { border:none; }
.table thead, .table tbody, .table tfoot, .table tr { width:100%; white-space:nowrap; }
.table-striped tbody tr:nth-of-type(odd) { background:#f9f9f9; }
.table th, .table td { padding:8px; vertical-align:middle; box-shadow:none; }
/*.table th { padding:10px 8px; }*/
.table.table-hover tbody tr:hover th, .table.table-hover tbody tr:hover td { background:#f0f0f0; }
.table th, .table td { border:solid 1px #eee; }
.table tr:last-child th, .table tr:last-child td { border-bottom:solid 1px #eee; }
.table.table-action th:last-child, .table.table-action td:last-child { width:1px; white-space:nowrap; text-align:right; }
.table th:first-child, .table td:first-child { white-space:nowrap; }
.table.table-simple, .table.table-simple th, .table.table-simple td { border:none !important; }
.table.table-min-height th, .table.table-min-height td { height:45px; }
.table thead th { border-bottom-color:#ddd !important; color:#333 !important; }

/*
///////////////////////////////////////////
DATATABLE
///////////////////////////////////////////
*/
/*.dataTables_info, .dataTables_paginate { margin-top:10px!important; }*/
.dataTables_paginate { text-align: right;}
.dataTables_paginate a.paginate_button { cursor:pointer; margin-left:5px; background:#f9f9f9; border:solid 1px #ced4da; padding:3px 10px; color:#4e5659 !important; display:inline-block; }
.dataTables_paginate a.paginate_button:hover { background:#e9e9e9 !important; border-color:#bbb !important;/*color:#fff !important;*/ }
.dataTables_paginate a.paginate_button.current,
.dataTables_paginate .paginate_button.current:hover { background:#2980b9 !important; border-color:#5499C7 !important; color:#fff !important; cursor:default; }
.dataTables_paginate a.paginate_button.disabled,
.dataTables_paginate a.paginate_button.disabled:hover { background:#f9f9f9 !important; border:solid 1px #bbbdc4 !important; color:#4e5659 !important; cursor:default !important; opacity:.5 !important; }

/*
///////////////////////////////////////////
LOADER
///////////////////////////////////////////
*/
/*.loader { position:fixed; width:100%; height:100%; top:0; left:0; z-index:997; background:rgba(0, 0, 0, .2); }*/
/*.loader-content { width:300px; height:200px; margin:-100px 0 0 -150px; box-shadow:0 2px 2px rgba(0, 0, 0, .1); background:#fff; padding:20px; position:fixed; top:50%; left:50%; z-index:999; text-align:center; !*border-radius:100px;*! }*/
/*.loader-icon { font-size:20px; text-align:center;  color:#2980b9; margin:45px auto 15px; border-width:2px; }*/
/*.loader-text { font-size:14px; color:#4e5659; }*/

/*
///////////////////////////////////////////
DEBUG
///////////////////////////////////////////
*/
pre { margin:0; padding:0; }
pre.debug, .debug-pre { background:#222; color:#eee; font-family:Consolas, monospace; padding:10px; }
pre.debug .comm, .debug-comment { color:#45B39D !important; }


.debug { background:#222; }
.debug pre { background:none; border:none; color:#fff; }
.debug-commentaire { color:#4ec2a8; }


/*.debug-block {  }*/


.company { font-weight:bold; color:#da2128; }
.pole { font-weight:bold; color:#000; }
.poles, .agencies { margin:0 0 0 20px; }
.pole, .agency { margin:10px 0 0; }


/*
///////////////////////////////////////////
FORMULAIRE
///////////////////////////////////////////
*/
select { border-color:#ced4da !important; width:100% !important; height:32px !important; /*appearance:initial;*/ padding:0 8px !important; }
select, select > * { outline:none !important; }
.form-control, .btn { box-shadow:none !important; }
.form-control { padding:4px 8px; height:32px; }
.form-control::placeholder { color:#bbb; font-size:12px; }
.form-control, select, textarea, select.form-control, .select2, .select2-selection { border-radius:0 !important; }
.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single { padding:0 !important; height:32px !important; border-color:#ced4da !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height:26px; }
.form-check { margin:0; padding:0; }
.select2-dropdown, .select2-search__field { border-radius:0 !important; outline:none !important; border-color:#ced4da !important; border-radius:0 0 4px 4px !important; }
.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single { padding:0 8px; height:32px; line-height:30px; outline:none !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height:22px; line-height:22px; outline:none !important; }
.select2-container--focus, .select2-container--focus *, .select2-container--focus > *, .select2-container--default.select2-container--focus .select2-selection--multiple, .select2-container--default.select2-container--focus .select2-selection--single, .select2-container--default.select2-container--open .select2-selection--multiple, .select2-container--default.select2-container--open .select2-selection--single {border-color:#ced4da !important; box-shadow:0 0 0 0 #fff !important;border-radius:0 !important; outline:none !important; }
.select2-search, .select2-container--default .select2-search--dropdown .select2-search__field { border-radius:0 !important; padding:4px; box-shadow:0 0 0 0 #fff !important; outline:none !important; }
.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single { height:calc(2.25rem + 2px); padding:0; line-height:calc(2.25rem + 2px); outline:none !important;}
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height:32px; padding:0 8px; height:32px; outline:none !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { top:6px; right:6px; outline:none !important;}
.select2-results__option { padding:4px; color:#212529; }
.select2-container--default .select2-results__option[aria-selected=true] { background:#f9f9f9; font-weight:bold; }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background:#2980b9 !important; background:#e9e9e9 !important; color:#212529; }
.select2-container--default .select2-results__option--highlighted[aria-selected]:last-child { border-radius:0 0 4px 4px !important; }

.border-danger, .select2-selection.border-danger { border:solid 1px #b8463a !important; }

.loader { width:100%; height:100%; z-index:9998; background:rgba(0, 0, 0, .4); position:fixed; top:0; left:0; }

.loader-content {
    position:fixed;
    top:50%;
    left:50%;
    width:360px;
    height:170px;
    padding-top:0px;
    box-shadow:rgba(0, 0, 0, 0.3) 0px 5px 10px;
    margin:-85px 0px 0px -180px;
    border-radius:5px;
    border:none;
    text-align:center;
    color:#666;
    background:#fff;
    cursor:default;
}
.loader-content i { margin:35px 0 5px 0px; font-size:40px; }
.loader-content .glyphicon { margin:30px 0 5px 0px; font-size:40px; }
.loader-message {
    font-size:13px;
    padding:10px;
    color:#666;
}
.loader-message span {
    font-size:15px;
    font-weight:400;
    color:#444;
}

.child {
    float:left;
    font-size:12px;
    line-height:14px;
    padding:3px 5px;
    margin:0 5px 5px 0;
    background:#fff;
    border:solid 1px #ddd;
}


/***************************************************************
 RECHERCHE VILLE ***********************************************
 **************************************************************/
.css-city-results-header { padding:0 !important; background:#fff !important; }
.css-city-results-header-text { padding:10px; }
.css-city-results-close { padding:1px 7px; cursor:pointer; }
.css-city-results-close:hover { background:#eee; overflow:hidden; border-radius:5px; }
.css-city-results-body { padding:0 !important; }
.css-city-results-body-content { width:100%; height:150px; overflow:auto; }
.css-city-choose { padding:5px 10px; cursor:pointer; overflow:hidden; }
.css-city-choose:nth-child(even) { background:#f9f9f9; }
.css-city-choose:hover { background:#f0f0f0; color:#000; }

.dataTables_length label, .dataTables_filter label { width:100%; display:inline-block!important; }
.dataTables_filter label { text-align:right!important; }
.dataTables_length label *, .dataTables_filter label > * { display:inline-block!important; }

table.dataTable thead .sorting, table.dataTable thead .sorting_asc, table.dataTable thead .sorting_desc, table.dataTable thead .sorting_asc_disabled, table.dataTable thead .sorting_desc_disabled {
    cursor: pointer;
    cursor: hand;
    background-repeat: no-repeat;
    background-position: center right;
}
table.dataTable thead .sorting {
    background-image: url('../img/datatable/sort_both.png');
}
table.dataTable thead .sorting_asc {
    background-image: url('../img/datatable/sort_asc.png');
}
table.dataTable thead .sorting_desc {
    background-image: url('../img/datatable/sort_desc.png');
}
table.dataTable thead .sorting_desc {
    background-image: url('../img/datatable/sort_desc.png');
}
table.dataTable thead th:not(.nosort).sorting,
table.dataTable thead th:not(.nosort).sorting_asc,
table.dataTable thead th:not(.nosort).sorting_desc {
    padding-right:20px!important;
}

.dataTables_wrapper { width:100%!important; }

.table-responsive {
    overflow-x:auto!important;
}

.dataTables_paginate span.ellipsis { padding-left:4px; }
.dataTables_paginate .paginate_button { border-radius:3px; }

.astuce { font-size:12px; color:#999; }
.astuce:before { content:'/ '}
.astuce:after { content:' /'}
