/* EXHIBIT A. Common Public Attribution License Version 1.0
 The contents of this file are subject to the Common Public Attribution License
 Version 1.0 (the "License"); you may not use this file except in compliance
 with the License. You may obtain a copy of the License at
 http://www.ypok.com/license. The License is based on the Mozilla Public
 License Version 1.1 but Sections 14 and 15 have been added to cover use of
 software over a computer network and provide for limited attribution for the
 Original Developer. In addition, Exhibit A has been modified to be consistent
 with Exhibit B.
 
 Software distributed under the License is distributed on an "AS IS" basis,
 WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
 the specific language governing rights and limitations under the License.
 
 The Original Code is Y@GRC.
 The Original Developer is the Initial Developer and is Ypok (22, rue de
 Palestro, 75002 Paris - ypok@ypok.com).
 
 All portions of the code written by Ypok are Copyright (c) 2011 Ypok. All
 Rights Reserved.
 Contributors are mentionned in News.txt file.
 
 Alternatively, if the End User would use the Original Code under term
 of other licence (CECILL, EUPL, ...), the End User must obtain specific and
 induvidual written authorization from the the Original Developer.
 Nevertheless, the Original Code stay under CPAL License for any other
 End Users.
 
 EXHIBIT B. Attribution Information
 Attribution Copyright Notice: Copyright 2011 Ypok. All rights reserved.
 Attribution Phrase (not exceeding 10 words): Powered by Y@GRC from Ypok.
 Attribution URL: www.ypok.com
 Graphic Image as provided in the Covered Code, if any.
 Display of Attribution Information is required in Larger Works which are
 defined in the CPAL as a work which combines Covered Code or portions thereof
 with code not governed by the terms of the CPAL.

*/

/*******************************************************
 * Thème par défaut de la GRC V2
 *
 * CETTE FEUILLE DE STYLE NE DOIT JAMAIS ETRE MODIFIEE
 *******************************************************/

/*******************************************************************************
 * Styles généraux */

body {
  background: #ffffff url(/images/front/v2/body_background.png) repeat;
}
#fconnect-profile > a {
  display: inline !important;
}
h2 {
  font-size: 18px;
  border-bottom: 1px dashed #C0C0C0;
  padding-bottom: 6px;
  background-color: #F0F0F0;
  padding: 8px;
}

h2 small, .h2 small {
  font-size: 14px;
}

h3 {
  font-size: 16px;
  font-weight: bold;
}

div.checkbox > div.checkbox {
  margin-left: 20px;
}

#colorbox_loading .modal-body {
  padding: 0 10px;
}

#colorbox_loading .modal-body {
  padding: 5px 10px;
}

.control-label sup {
  color: #F00;
}

.custom-label.label-warning {
  color: #222;
  background-color: #FFD8A0;
}

.help-block ul {
  margin-bottom: 0;
  padding-left: 15px;
}

.hr-recap-approach {
  border-top: 1px dotted #C5C5C5;
  width: 80%;
}

.clickable {
  cursor: pointer;
}



.table thead>tr>th {
  vertical-align: middle;
  background-color: #F1F1F1;
}

.table tfoot.total>tr>td {
  vertical-align: middle;
  background-color: #F1F1F1;
}

.table label {
  display: inline;
}

.marquee {  
  width: 100%;
  overflow: hidden;  
}

input:focus,
select:focus,
textarea:focus,
button:focus,
a:focus,
.btn:focus {
  outline: none !important;
}

.form-inline .form-group {
  margin-left: 0;
  margin-right: 0;
}

/* Styles du widget Pièce jointe */
.widget-attachment .progress {
  margin-bottom: 0;
}

.widget-attachment .widget-attachment-input {
  margin-bottom: 5px;
}

.widget-attachment .widget-attachment-input .widget-attachment-file-list {
  padding-top: 7px;
  padding-left: 16px;
}

/* Flèche pour remonter en haut de page */
#fleche_pied {
  cursor: pointer;
  margin-top: 5px;
}

/* Hack CSS pour corriger les champs groupés pour IE8 */
@media \0screen { 
  .input-group .form-control {
    display: block !important;
  }
}

/* Largeurs fixes */

.width-500 {
  max-width: 500px;
}

/*******************************************************************************
 * Layout uniquement pour faire attendre l'utilisateur pendant un chargement */

#loading_layout_background {
  display: none;
  position: absolute;
  background-color: #333;
  z-index: 1001;
}

#loading_layout_progressbar {
  display: none;
  z-index: 1002;
  width: 100%;
  position: absolute;
  text-align: center;
}

#loading_layout_progressbar .progress-bar-container {
  margin-top: 100px;
  margin-left: auto;
  margin-right: auto;
  width: 300px;
}

/*******************************************************************************
 * Style des autocomplétions (https://github.com/twitter/typeahead.js) */

.twitter-typeahead {
  width: 98%;
  display: block;
  border: none;
}

.twitter-typeahead .tt-query,
.twitter-typeahead .tt-hint {
  margin-bottom: 0;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  border-radius: 4px;
}

.tt-dropdown-menu {
  min-width: 160px;
  margin-top: 2px;
  padding: 5px 0;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0,0,0,.2);
  *border-right-width: 2px;
  *border-bottom-width: 2px;
  -webkit-border-radius: 6px;
     -moz-border-radius: 6px;
          border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2);
     -moz-box-shadow: 0 5px 10px rgba(0,0,0,.2);
          box-shadow: 0 5px 10px rgba(0,0,0,.2);
  -webkit-background-clip: padding-box;
     -moz-background-clip: padding;
          background-clip: padding-box;
}

.tt-suggestion {
  display: block;
  padding: 3px 20px;
}

.tt-suggestion.tt-is-under-cursor {
  color: #fff;
  background-color: #0081c2;
  background-image: -moz-linear-gradient(top, #0088cc, #0077b3);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));
  background-image: -webkit-linear-gradient(top, #0088cc, #0077b3);
  background-image: -o-linear-gradient(top, #0088cc, #0077b3);
  background-image: linear-gradient(to bottom, #0088cc, #0077b3);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0)
}

.tt-suggestion.tt-is-under-cursor a {
  color: #fff;
}

.tt-suggestion p {
  margin: 0;
}

/*******************************************************************************
 * Menu déroulant de la page d'accueil affichant les moments de vie */

#menu-deroulant, #menu-deroulant ul {
    margin:0;
    padding: 0;
    list-style:none;
    text-align:left;
    z-index:999;
}

#menu-deroulant, #menu-deroulant li, #menu-deroulant ul {
    width: 100%;
}

#menu-deroulant ul {
    position: absolute;
}

#menu-deroulant li ul {
    overflow-y: auto;
}

#menu-deroulant li{
    display:inline-block;
    border-radius:8px 8px 0 0;
    position:relative;
}
#menu-deroulant ul li{
    display:inherit;
    border-radius:0;
}
#menu-deroulant ul li:last-child{
    border-radius:0 0 8px 8px;
}
#menu-deroulant ul{
    max-height:0;
    left: 0;
    right: 0;
    overflow:hidden;
    transition: .8s all .3s;
}
#menu-deroulant li:hover ul{
    max-height:15em;
    border-width:1px;
    border-style:solid;
    border-color: black;
    border-bottom-style: double;
    border-bottom-width: 2px;
}
/* background des liens menus */
#menu-deroulant li:first-child{
    background-color: rgba(32, 8, 141, 0.10);
    background-image:-webkit-linear-gradient(top, rgba(96, 114, 204, 0.20) 0%, rgba(96, 114, 204, 0.20) 100%);
    background-image:linear-gradient(to bottom, rgba(96, 114, 204, 0.20) 0%, rgba(96, 114, 204, 0.20) 100%);
}
/* background des liens sous menus */
#menu-deroulant li:first-child li{
    background:#2A2333;
}
#menu-deroulant li:last-child li{
    background:#ffffff;
}
/* les a href */
#menu-deroulant a{
    text-decoration:none;
    display:block;
    padding:8px 15px;
    color: #010101;
}

/* background des liens menus et sous menus au survol */
#menu-deroulant li:first-child:hover, #menu-deroulant li:first-child li:hover{
    background: #95a9fe;
}
#menu-deroulant li:hover li a{
    color: #010101;
    text-transform:inherit;
}
#menu-deroulant li:hover a, #menu-deroulant li li:hover a{
    color:#000;
}

/*******************************************************************************
 * Alertes */

.alert-warning {
  color: #0C540D;
  background-color: #FFFBE5;
}

.alert-success {
  color: #155D16;
  background-color: #EFFFE9;
}

.alert-danger {
  color: #A21F1D;
  background-color: #F8F0F0;
}

.alert-info {
  color: #0B5B83;
  background-color: #F0FAFF;
}

.alert-link {
  text-decoration: underline;
}

table .alert {
  margin-bottom: 0;
}

/*******************************************************************************
 * Le conteneur de Google Maps dans une TP */

.google-map-canvas {
  box-sizing: content-box;
  height: 400px;
  margin-right: 15px;
  margin-left: 15px;
  border: 1px solid #CCC;
  border-radius: 4px;
}

.google-map-canvas * {
  box-sizing: content-box;
}

/*******************************************************************************
 * Header */

#page_header header {
  margin-right: -15px;
  margin-left: -15px;
}

/*******************************************************************************
 * Barre de menu */

.navbar {
  border-radius: 0;
  margin-bottom: 0;
  border-left-width: 0;
  border-right-width: 0;
  border-bottom-width: 0;
  margin-left: -15px;
  margin-right: -15px;
  z-index: 1000;
}

.navbar-default {
  border-top-width: 0;
}

.navbar-default .navbar-nav>li>a {
  color: #428BCA;
  padding-left: 10px;
  padding-right: 10px;
}

.navbar-default .navbar-nav>.dropdown.active>a .caret {
  border-top-color: #fff;
  border-bottom-color: #fff;
}

.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus {
  color: #FFF;
  background-color: #357EBD;
}

.navbar-default .navbar-nav>.dropdown>a .caret {
  border-top-color: #428BCA;
  border-bottom-color: #428BCA;
}

.navbar-default .navbar-nav>.active .badge {
  background-color: #FFF;
  color: #357EBD;
}

.navbar-default .navbar-text {
  margin-right: 15px;
}

.navbar-collapse.affix {
  top: 0;
  width: 1168px;
}

.navbar-collapse {
  padding-left: 0;
  padding-right: 5px;
}

.navbar-default .navbar-header, .navbar-default .navbar-collapse{
  background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ffffff), to(#F0F0F0));
  background-image: -webkit-linear-gradient(top, #ffffff, 0%, #F0F0F0, 100%);
  background-image: -moz-linear-gradient(top, #ffffff 0%, #F0F0F0 100%);
  background-image: linear-gradient(to bottom, #ffffff 0%, #F0F0F0 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffF0F0F0', GradientType=0);
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 10px rgba(0, 0, 0, 0.078);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 10px rgba(0, 0, 0, 0.078);
  border-bottom: 1px solid #E7E7E7;
}

.navbar-default .navbar-form {
  border-width: 0;
}

.navbar-default .navbar-toggle {
  border-color: rgba(0, 0, 0, 0);
  background-color: #428BCA;
}

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
  background-color: #428BCA;
}

.dropdown-menu .no-link {
  padding: 3px 20px;
}

.dropdown-menu .text-danger , .text-danger > li {
  color: #B94A48;
  font-weight: bold;
}

.dropdown-header {
  font-size: 16px;
  font-weight: bold;
  color: #888888;
}

.navbar-right {
  margin-right: 0;
}

/*.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus {
  color:#fff;
  background-color:#357EBD
}*/

/*******************************************************************************
 * Page */

#page_content.container {
  border-left: 1px solid #E7E7E7;
  border-right: 1px solid #E7E7E7;
  border-bottom: 1px solid #E7E7E7;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
  padding-bottom: 15px;
  padding-top: 15px;
  background-color: #ffffff;
}

/*******************************************************************************
 * Fil d'ariane */

.breadcrumb {
  font-size: 19px;
  background-color: transparent;
  border-radius: 0;
  padding-top: 0;
  padding-left: 0;
  padding-bottom: 5px;
  border-bottom: 1px solid #E6E6E6;
  margin-bottom: 15px;
  margin-top: 0;
}

.breadcrumb>.active {
  color: #B94A48;
}

/*******************************************************************************
 * Barre de filtres */

.nav-pills, .nav-pills.nav-filters {
  margin-bottom: 15px;
}

.nav-pills.nav-filters > li > a,
.nav-pills.nav-filters > li.no-link {
  padding: 3px 8px;
}

/*******************************************************************************
 * Message de bienvenue sur la page d'accueil */

#welcome_message {
  margin-bottom: 15px;
}

#welcome_message h1 {
  font-size: 30px;
  margin-top: 10px;
  margin-bottom: 35px;
}

.news-pagination ul {
  margin: 0;
  margin-top: 15px;
}

/*******************************************************************************
 * Page édition / création demande : étapes */

#approach_steps ul {
  margin-bottom: 10px;
}

#approach_steps ul.affix {
  top: 65px;
  width: 262px;
}

#approach_steps ul>li.active>a {
  z-index: 2;
  color: #FFF;
  background-color: #428BCA;
  border-color: #428BCA;
}

#approach_steps ul li {
  margin: 0;
}

#approach_steps ul li a {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #FFF;
  border: 1px solid #DDD;
  border-radius: 0;
}

#approach_steps ul li.active a:hover, #approach_steps ul li.active a:focus {
  z-index: 2;
  color: #FFF;
  background-color: #428BCA;
  border-color: #428BCA;
}

#approach_steps ul li a:hover, #approach_steps ul li a:focus {
  background-color: #F5F5F5;
}

#approach_steps ul li:first-child a {
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}

#approach_steps ul li:last-child a {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

/*******************************************************************************
 * Page édition / création demande : formulaire */

#approach_form .step:first-child {
  padding-top: 0;
  margin-top: 0;
}

#approach_form .step {
  padding-top: 65px;
  margin-top: 0px;
}

/*******************************************************************************
 * Liste des demandes disponibles, page nouvelle demande */

#new_approach_list .panel .panel-body {
  padding: 0;
}

#new_approach_list .panel .panel-body .list-group-item {
  border-left: 0;
  border-right: 0;
  background-color: transparent;
}

#new_approach_list .panel .panel-body .list-group-item:hover, #new_approach_list .panel .panel-body .list-group-item:focus {
  background-color: #F3F3F3;
}

#new_approach_list .panel .panel-body .list-group-item:first-child {
  border-top: 0;
}

#new_approach_list .panel .panel-body .list-group-item:last-child {
  border-bottom: 0;
}

#new_approach_list .panel .list-group {
  margin-bottom: 0;
}

/* Pagination dans les tableaux */
tfoot .pagination {
  margin: 0;
}

/*******************************************************************************
 * Boutons */

.btn-warning {
  color: #222;
}

.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .open .dropdown-toggle.btn-warning {
  color: #222;
}

.btn-default,
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
  text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
}

.btn-default:active,
.btn-primary:active,
.btn-success:active,
.btn-info:active,
.btn-warning:active,
.btn-danger:active,
.btn-default.active,
.btn-primary.active,
.btn-success.active,
.btn-info.active,
.btn-warning.active,
.btn-danger.active {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
          box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}

.btn:active,
.btn.active {
  background-image: none;
}

.btn-default {
  text-shadow: 0 1px 0 #fff;
  background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
  background-image:      -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
  background-image:         linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #dbdbdb;
  border-color: #ccc;
}

.btn-default:hover,
.btn-default:focus {
  background-color: #e0e0e0;
  background-position: 0 -15px;
}

.btn-default:active,
.btn-default.active {
  background-color: #e0e0e0;
  border-color: #dbdbdb;
}
.btn-default:disabled,
.btn-default[disabled] {
  background-color: #e0e0e0;
  background-image: none;
}
.btn-primary {
  background-image: -webkit-linear-gradient(top, #428bca 0%, #2d6ca2 100%);
  background-image:      -o-linear-gradient(top, #428bca 0%, #2d6ca2 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#2d6ca2));
  background-image:         linear-gradient(to bottom, #428bca 0%, #2d6ca2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff2d6ca2', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #2b669a;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #2d6ca2;
  background-position: 0 -15px;
}

.btn-primary:active,
.btn-primary.active {
  background-color: #2d6ca2;
  border-color: #2b669a;
}
.btn-primary:disabled,
.btn-primary[disabled] {
  background-color: #2d6ca2;
  background-image: none;
}
.btn-success {
  background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
  background-image:      -o-linear-gradient(top, #5cb85c 0%, #419641 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));
  background-image:         linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #3e8f3e;
}

.btn-success:hover,
.btn-success:focus {
  background-color: #419641;
  background-position: 0 -15px;
}

.btn-success:active,
.btn-success.active {
  background-color: #419641;
  border-color: #3e8f3e;
}
.btn-success:disabled,
.btn-success[disabled] {
  background-color: #419641;
  background-image: none;
}
.btn-info {
  background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
  background-image:      -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));
  background-image:         linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #28a4c9;
}

.btn-info:hover,
.btn-info:focus {
  background-color: #2aabd2;
  background-position: 0 -15px;
}

.btn-info:active,
.btn-info.active {
  background-color: #2aabd2;
  border-color: #28a4c9;
}
.btn-info:disabled,
.btn-info[disabled] {
  background-color: #2aabd2;
  background-image: none;
}
.btn-warning {
  background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
  background-image:      -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));
  background-image:         linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #e38d13;
}

.btn-warning:hover,
.btn-warning:focus {
  background-color: #eb9316;
  background-position: 0 -15px;
}

.btn-warning:active,
.btn-warning.active {
  background-color: #eb9316;
  border-color: #e38d13;
}
.btn-warning:disabled,
.btn-warning[disabled] {
  background-color: #eb9316;
  background-image: none;
}
.btn-danger {
  background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
  background-image:      -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));
  background-image:         linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #b92c28;
}

.btn-danger:hover,
.btn-danger:focus {
  background-color: #c12e2a;
  background-position: 0 -15px;
}

.btn-danger:active,
.btn-danger.active {
  background-color: #c12e2a;
  border-color: #b92c28;
}
.btn-danger:disabled,
.btn-danger[disabled] {
  background-color: #c12e2a;
  background-image: none;
}
.thumbnail,
.img-thumbnail {
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
          box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}

/*******************************************************************************
 * Sous menus */

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff !important;
  background-color: #357ebd;
  background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#357ebd));
  background-image: -webkit-linear-gradient(top, #428bca, 0%, #357ebd, 100%);
  background-image: -moz-linear-gradient(top, #428bca 0%, #357ebd 100%);
  background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
}

/*******************************************************************************
 * Barres de progression */

.progress {
  background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
  background-image:      -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));
  background-image:         linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
  background-repeat: repeat-x;
}

.progress-bar {
  background-image: -webkit-linear-gradient(top, #428bca 0%, #3071a9 100%);
  background-image:      -o-linear-gradient(top, #428bca 0%, #3071a9 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#3071a9));
  background-image:         linear-gradient(to bottom, #428bca 0%, #3071a9 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0);
  background-repeat: repeat-x;
}

.progress-bar-success {
  background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
  background-image:      -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));
  background-image:         linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
  background-repeat: repeat-x;
}

.progress-bar-info {
  background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
  background-image:      -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));
  background-image:         linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
  background-repeat: repeat-x;
}

.progress-bar-warning {
  background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
  background-image:      -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));
  background-image:         linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
  background-repeat: repeat-x;
}

.progress-bar-danger {
  background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
  background-image:      -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));
  background-image:         linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
  background-repeat: repeat-x;
}

.progress-bar-striped {
  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, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}

/*******************************************************************************
 * Listes groupées */

.list-group {
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
          box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  text-shadow: 0 -1px 0 #3071a9;
  background-image: -webkit-linear-gradient(top, #428bca 0%, #3278b3 100%);
  background-image:      -o-linear-gradient(top, #428bca 0%, #3278b3 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#3278b3));
  background-image:         linear-gradient(to bottom, #428bca 0%, #3278b3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0);
  background-repeat: repeat-x;
  border-color: #3278b3;
}

a.list-group-item {
  color: #428BCA;
}

.list-group-item h4 {
  margin-bottom: 5px;
  margin-top: 0;
}

/*******************************************************************************
 * Onglets  verticaux */

.row.nav-tabs-vertical>div:last-child {
  padding-left: 0;
}

.row.nav-tabs-vertical .nav-tabs {
  border-bottom: none;
}

.row.nav-tabs-vertical .nav-tabs>li {
  float: none;
  margin-bottom: 2px;
}

.row.nav-tabs-vertical .nav-tabs>li>a {
  margin-right: 0;
  border-radius: 4px;
}

.row.nav-tabs-vertical .nav-tabs>li>a:hover {
  border-color: #ddd;
  color: #428BCA;
  background-color: #FAFAFA;
}

.row.nav-tabs-vertical .nav-tabs>li.active>a {
  color: #555;
  border: 1px solid #ddd;
  border-radius: 4px;
  z-index: 4;
  background-color: #E5F5FF;
}

.row.nav-tabs-vertical .tab-content {
  border: 1px solid #DDD;
  border-radius: 4px;
  padding: 5px;
}

.row.nav-tabs-vertical .tab-content .alert, .row.nav-tabs-vertical .tab-content .table{
  margin-bottom: 0;
}

/*******************************************************************************
 * Panels */

.panel {
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}

.panel-default > .panel-heading {
  background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
  background-image:      -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
  background-image:         linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
  background-repeat: repeat-x;
}

.panel-primary > .panel-heading {
  background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%) !important;
  background-image:      -o-linear-gradient(top, #428bca 0%, #357ebd 100%)!important;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#357ebd))!important;
  background-image:         linear-gradient(to bottom, #428bca 0%, #357ebd 100%)!important;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0)!important;
  background-repeat: repeat-x;
  font-size:18px;
}

.panel-success > .panel-heading {
  background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
  background-image:      -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));
  background-image:         linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
  background-repeat: repeat-x;
}

.panel-info > .panel-heading {
  background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
  background-image:      -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));
  background-image:         linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
  background-repeat: repeat-x;
}

.panel-warning > .panel-heading {
  background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
  background-image:      -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));
  background-image:         linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
  background-repeat: repeat-x;
}

.panel-danger > .panel-heading {
  background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
  background-image:      -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));
  background-image:         linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
  background-repeat: repeat-x;
}

/*******************************************************************************
 * Wells */

.well {
  background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
  background-image:      -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));
  background-image:         linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
  background-repeat: repeat-x;
  border-color: #dcdcdc;
  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
          box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
}

.well-agenda {
  padding: 10px;
  margin-left: -10px;
}

/*******************************************************************************
 * Calendriers */

.calendar {
  width: 625px;
  margin: 0 auto;
}

.calendar-v2 {
  margin-bottom: 15px;
}

.calendar.width-75,
.calendar-v2.width-75 {
  width: 75%;
}

.calendar h2, .calendar-v2 h2 {
  background-color: transparent;
  border: none;
  padding: 0;
  margin: 0;
  color: #333333;
}

.fc-event {
  cursor: pointer;
}

.fc-event.fc-event-external {
  background-color: #005396;
  border: 1px solid #005396;
}

.fc-event.fc-event-readonly {
  background-color: #004277;
  border: 1px solid #004277;
}

.fc-day-grid-event .fc-content {
  white-space: normal !important;
}

html .fc, .fc table {
  font-size: 12px;
}

.calendar table {
  margin: 0;
}

.calendar th.fc-widget-header {
  height: 45px;
  vertical-align: middle;
  font-weight: bold;
}

.calendar td.fc-week-number {
  width: 50px;
  font-size: 11px;
}

.nav-calendars {
  max-height: 540px;
  overflow-y: auto;
}

/* Arrondis du calendrier */
th.fc-week-number.fc-first, th.fc-day-header.fc-first {
  border-top-left-radius: 4px;
}

th.fc-day-header.fc-last {
  border-top-right-radius: 4px;
}

tr.fc-week.fc-last td.fc-first {
  border-bottom-left-radius: 4px;
}

tr.fc-week.fc-last td.fc-last {
  border-bottom-right-radius: 4px;
}

/* Couleur des jours non cliquables */
td.fc-mon, td.fc-tue, td.fc-wed, td.fc-thu, td.fc-fri, td.fc-sat, td.fc-sun {
  background-color: #EAEAEA;
}

/* Couleur du jour d'aujourd'hui */
td.fc-today {
  background-color: #F3FFA8;
}

/* Styles des cellules de la colonne de gauche */
.cell_col_left {
  border-bottom: 1px solid #CCCCCC;
  border-left: 1px solid #CCCCCC;
  background-color: #ffffff;
}

/* La div qui contient la colonne de gauche */
.div_col_left {
  margin-left: -50px;
  position: absolute;
  width: 50px;
}

/* Couleur du jour où il y a des réservations possibles */
.td_defined {
  background-color: #C5E4FF !important;
  cursor: pointer;
  color: #000000 !important;
}

.td_undefined {
  background-color: #E5005B !important;
  cursor: pointer;
  color: #000000 !important;
}
/*******************************************************************************
 * Widget calendrier hebdomadaire par créneau horaire */

.timestack-container .timestack-events {
  list-style-type: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.timestack-container .timestack-events li {
  margin-bottom: 6px;
  position: relative;
  text-align: center;
  padding: 3px 0;
  background-color: #EAEAEA;
  border: 1px solid #c1c1c1;
  border-radius: 3px;
  font-weight: bold;
  min-height: 28px;
}

.timestack-container .timestack-events li:hover {
  border: 1px solid #357ebd;
}

.timestack-container .timestack-events li.reserved {
  background-color: #ddeef4 !important;
}

.timestack-container .timestack-events li em {
  font-weight: normal;
  font-size: 0.9em;
}

.timestack-container .intervals {
  list-style-type: none;
  margin: 0;
  display: table;
  width: 100%;
  padding-left: 0;
}

.timestack-container .intervals.intervals-top {
  margin-bottom: 5px;
}

.timestack-container .intervals.intervals-bottom {
  margin-top: 5px;
}

.timestack-container .intervals li {
  border-right: 1px solid #ccc;
  display: table-cell;
  margin: 0;
  padding: 5px 0 5px 5px;
  list-style-type: none;
}

.timestack-container .intervals li:last-child {
  border-right: none;
}

.calendar_hebdobycreneau_container {
  border: 1px solid #ccc;
  border-radius: 3px;
  display: table;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_left {
  width: 80px;
  display: table-cell;
  vertical-align: top;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_left ul {
  margin: 0;
  padding: 0;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_left ul li {
  text-align: center;
  list-style-type: none;
  border-bottom: 1px solid #ccc;
  display: block;
  padding: 8px;
  text-decoration: none;
  cursor: pointer;
  color: #428bca;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_left ul li.active {
  background-color: #428bca;
  color: #fff;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_left ul li:last-child {
  border-bottom: none;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_right {
  width: 100%;
  display: table-cell;
  border-left: 1px solid #ccc;
  padding-left: 3px;
  padding-right: 3px;
  vertical-align: top;
}

.calendar_hebdobycreneau_container .calendar_hebdobycreneau_container_right .calendar_hebdobycreneau_container_message {
  text-align: center;
  margin-top: 80px;
}

/*******************************************************************************
 * Tooltips */

.tooltip-inner {
  max-width: 300px;
}

.tooltip-inner hr {
  padding: 0;
  margin: 3px 0;
}

/*******************************************************************************
 * Footer */

footer {
  padding-top: 15px;
}

/*******************************************************************************
 * Styles spécifiques à l'impression */

@media print {
  .form-group, .panel {
    page-break-inside: avoid;
  }
  
  html, body {
    overflow: hidden;
    background: #FFF;
    font-size: 7.5pt !important;
  }
  
  a[href]:after {
    content:"";
  }

  #page_content.container {
    border: none;
  }
  
  .breadcrumb {
    font-size: 11pt !important;
  }
  
  h1 {
    font-size: 10pt !important;
  }
  
  h2 {
    font-size: 9pt !important;
    padding-left: 0;
  }
  
  .form-group {
    margin-bottom: 0;
    height: auto !important;
  }
  
  .panel-heading {
    padding: 5px;
  }
  
  .panel-body {
    padding: 5px;
  }
  
  .fc-event {
    background: #fff !important;
    color: #000 !important;
  }
	
  .fc-event-bg {
    display: none !important;
  }
	
  .fc-event .ui-resizable-handle {
    display: none !important;
  }
}

/*******************************************************************************
 * Styles spécifiques pour les périphériques 768px et moins */
@media screen and (max-width:768px) {
  .otherPersonTableProcess {
    width: 40px !important;
    height: 40px !important;
  }

  #menu-deroulant {
    padding-top: 15px;
  }
  .fc-view-container .fc-view > table {
    height: 250px;
  }
  .fc-view-container .fc-view {
    overflow-y: scroll;
  }
  .calendar {
    width: 100%;
  }

  .calendar th.fc-widget-header {
    height: auto;
  }

  .calendar td.fc-week-number {
    width: auto;
  }
  
  .navbar-default .navbar-nav .open .dropdown-menu>.active>a, .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover, .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus {
    color: #fff;
  }

  .navbar-collapse {
    padding-left: 15px;
  }
}



@media screen and (max-width:1198px) {
  .navbar-collapse.affix {
    width: 968px;
  }
}
/*******************************************************************************
 * Styles spécifiques pour les périphériques 992px et moins */
@media screen and (max-width:992px) {
  #menu-deroulant {
    padding-top: 15px;
  }
  .navbar-collapse.affix {
    width: 748px;
  }
}

/*******************************************************************************
 * Styles spécifiques pour les périphériques 768px et plus */
@media screen and (min-width: 768px) {
  .modal-dialog {
    width: 850px;
  }
  
  #colorbox_loading .modal-dialog {
    width: 500px;
  }
}

/*******************************************************************************
 * Styles spécifiques pour la sélection d'une ville dans la colorbox */
div#select_city_colorbox span.city {
  font-weight: bold;
  padding: 5px 5px 5px 5px;
}

div#select_city_colorbox span.city:hover {
  cursor: pointer;
  background-color: #f5f5f5;
  border-radius: 5px 5px;
}

div#select_city_colorbox_footer p#select_city_infos {
  float: left;
  font-weight: bold;
  font-style: italic;
  color: grey; 
}

/****************************** PAGINATION TABLE ************************************/
.dataTables_paginate {
  float: right; }
.dataTables_paginate a:hover {
  cursor: pointer !important;
  background-color: #f5f5f5 !important; }
.dataTables_paginate a.current {
  background-color: #afd9ee; }
.dataTables_paginate span a {
  margin-left: -1px;
  margin-right: 0px; }
.dataTables_paginate .paginate_button.first {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }
.dataTables_paginate .paginate_button.last {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

.dataTables_paginate > span > a, .dataTables_paginate > a.paginate_button {
  position: relative;
  padding: 6px 12px;
  margin-left: -1px;
  line-height: 1.42857143;
  color: #337ab7;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd; }

.dataTables_info, .dataTables_paginate {
  display: inline-block; }

.dataTables_empty {
  text-align: center;
}

.dataTables_filter {
  float: right;
}

.dataTableTopButtons, .dataTables_length {
  float: left;
}

.dataTables_length .form-control, .dataTables_filter .form-control {
  display: inline;
  width: auto;
}
/******************************************** STATUS DE JUSTIFICATIFS ISO ********************************/
.label-claimed{
  padding-right: 1.2em;
  padding-left: 1.2em;
  font-size: 14px;
  background-color: #2d6ca2;
  border-color: #2d6ca2;
  border-radius: 5px;
}
.label-validated{
  padding-right: 1.7em;
  padding-left: 1.7em;
  color: #fff;
  background-color: #5cb85c;
  font-size: 14px;
}
.label-validated.label-success:before{
  content: none;
}
.label-ko{
  padding-right: 1.3em;
  padding-left: 1.3em;
  color: #fff;
  background-color: #d9534f;
  font-size: 14px;
}
.label-expired{
  padding-right: 1.4em;
  padding-left: 1.4em;
  color: #fff;
    background-color: #d9534f;
    font-size: 14px;
}

.label-nottraited {
    padding-right: 0.7em;
    padding-left: 0.7em;
    color: #fff;
    background-color: #f0ad4e;
    font-size: 14px;
}

.label-outdate {
    padding-right: 0.7em;
    padding-left: 0.7em;
    color: #fff;
    background-color: #777777;
    font-size: 14px;
}

.label-danger {
    padding-right: 0.7em;
    padding-left: 0.7em;
    color: #fff;
    background-color: #d9534f;
    font-size: 14px;
}

.label-notgiven {
    padding-right: 0.6em;
    padding-left: 0.6em;
    color: #fff;
    background-color: #d9534f;
    font-size: 14px;
}

.label-nottraited:before, .label-nottraited::before {
    content: '';
    color: #fff;
    font-size: 14px;
}

.label-outdate:before, .label-outdate::before {
    content: '';
    color: #fff;
    font-size: 14px;
}

.label-archived {
    padding-right: 1.3em;
    padding-left: 1.3em;
}

.label-outDate {
    padding-right: 1.3em;
    padding-left: 1.3em;
}

.label-error {

}

.bg-danger {
    background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
}

.bg-success {
background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
}
.bg-warning {
background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
}
.pwstrength_viewport_progress > .progress {
  margin-top: 15px;
}

input.form-control:invalid {
  box-shadow: 0 0 1.5px 1px red !important;
}