
body {
    padding: 0;
    margin: 0;
    background: #F0F0F0;
}
body,
form input,
form button,
form select
{
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    color: #222222;
}

a:link, a:visited, a:active, a:hover {
    color: #DC5E00;
    text-decoration: none;
}

a img {
    border: none;
}

.clear {
    font-size: 1px;
    display: block;
    clear: both;
    visibility: hidden;
    height: 0;
    margin: 0;
    padding: 0;
}

.mask {
    position: absolute;
    opacity: 0.9;
    filter: alpha(opacity=90);
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
    z-index: 999;
    background: #000000;
}

.container {
    margin: 10px 0;
    padding: 10px;
    text-align: left;
    background: #FFFFFF;
    border: 1px solid #DDDDDD;
    border-radius: 5px;
}

.details dt,
.details dd {
    margin: 0;
    padding: 0;
}
.details dt {
    font-weight: bold;
}
.details dd {
    margin-bottom: 10px;
}

/**
 * Tableau
 */
table {
    background: #FFFFFF;
    border-collapse: collapse;
    padding: 0;
    margin: 0;
    width: 100%;
    border: 1px solid #DDDDDD;
    border-radius: 5px;
}
table th {
    border-bottom: 1px solid #DFDFDF;
    text-align: left;
    padding: 0 10px;
    font-size: 1.1em;
    line-height: 250%;
    white-space: nowrap;
}
table th a:link, table th a:visited,
table th a:active, table th a:hover {
    transition: 180ms linear all;
    background-position: -11px center;
    position: relative;
    padding: 0 10px;
    margin: 0 -10px;
    display: block;
    color: #222222;
    overflow: hidden;
}
table th a:hover {
    background-color: #F3F3F3;
}
table td {
    transition: 200ms linear background,
         200ms linear color;
    border: 1px solid #DDDDDD;
    padding: 10px;
}
table tr:hover td {
    background: #F5F5F5;
}
table .center {
    text-align: center;
}
table th a:hover:after,
table th.table-sort-asc a:after,
table th.table-sort-desc a:after {
    content: " ";
    width: 40px;
    height: 40px;
    transform: rotate(45deg);
    position: absolute;
    left: 50%;
    margin: 0 0 0 -20px;
    background: #DC5E00;
}
table th a:hover:after {
    background: #5B5B5B;
}
table th.table-sort-asc a:hover:after,
table th.table-sort-desc a:after {
    top: auto;
    bottom: -40px;
}
table th a:hover:after,
table th.table-sort-desc a:hover:after,
table th.table-sort-asc a:after {
    top: -40px;
    bottom: auto;
}

table tr.table-line-selected td {
    background: #EA9E66;
    background: RGBA(220, 94, 0, .6);
    color: #000000;
}


/**
 * Contenu principal
 */
.main-content {
    margin: 0 0 0 211px;
    padding: 0 10px 10px 10px;
}
.main-content h1:first-child {
    background: #FFFFFF;
    margin: 10px 0 0 0;
    padding: 10px;
    border-top: none;
    border: 1px solid #DDDDDD;
    border-radius: 5px;
    font-size: 2em;
    line-height: 200%;
}
.main-content > h2:before {
    content: " ";
    background: #DC5E00;
    margin: 0;
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 5px;
}

/**
 * Panneau
 */
.left-admin {
    position: fixed;
    top: 0;
    left: 0;
    background: #222222;
    width: 210px;
    float: left;
    height: 100%;
    padding: 0;
    overflow: auto;
}
.left-admin > *:last-child {
    margin-bottom: 30px;
}

.left-admin img.logo {
    display: block;
    margin: 20px auto;
    max-width: 90%;
    max-width: calc(100% - 40px);
    max-height: 90px;
}

/**
 * Main menu admin
 */
.menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.menu li a:link,
.menu li a:hover,
.menu li a:visited,
.menu li a:active
{
    display: block;
    line-height: 28px;
    font-size: 1.1em;
    color: #EEEEEE;
    text-decoration: none;
    padding: 0 10px;
}
.menu > li > a:link,
.menu > li > a:hover,
.menu > li > a:visited,
.menu > li > a:active
{
    transition: background-color 200ms linear;
    line-height: 34px;
    padding: 0 10px;
    height: auto;
    white-space: nowrap;
}
.menu > li > a:hover {
    color: #DC5E00;
    background: #191919;
}
.menu li.double a {
    padding-top: 3px;
    line-height: 100%;
}

.menu > li.active > a:link,
.menu > li.active > a:hover,
.menu > li.active > a:visited,
.menu > li.active > a:active
{
    background: #DC5E00;
    font-weight: bold;
    color: #F0F0F0;
}

/* sous menu */
.menu li > ul {
    font-size: .95em;
    display: none;
    margin: 0;
    padding: 0;
    list-style: none;
}
.menu li li > a:hover {
    color: #DC5E00;
}
.menu li.active > ul {
    display: block;
    background: #424242;
}
.menu ul li.active {
    font-weight: bold;
}
.menu ul li.active a:hover {
    color: #EEEEEE;
}


.menu span.counter {
    display: inline-block;
    border: 1px solid #666666;
    background: #F0F0F0;
    padding: 1px 3px;
    border-radius: 3px;
    color: #333333;
    line-height: 110%;
    font-size: 11px;
}
.menu li ul span.counter {
    background: #FF9900;
    color: #FFFFFF;
    border: 1px solid #CC6600;
}


@media screen and (max-width: 1024px) {
    .left-admin {
        position: static;
        width: auto;
        float: none;
        height: auto;
    }
    .main-content {
        margin: 10px 0 0 0;
        padding: 0 10px;
    }
    .left-admin .menu {
        position: relative;
        height: 62px;
    }
    .left-admin .menu > li {
        float: left;
        max-width: 200px;
    }
    .left-admin .menu ul {
        position: absolute;
        top: 34px;
        left: 0;
        width: 100%;
    }
    .left-admin .menu ul li {
        float: none;
        display: inline-block;
    }
}

/**
 * Style "bloc" (toolbar, pagination, etc.
 */
.media-manager,
.multi-action,
.pagination-pages,
.toolbar {
    overflow: hidden;
    margin: 10px 0;
    padding: 10px;
    text-align: left;
    background: #FFFFFF;
    border: 1px solid #DDDDDD;
    border-radius: 5px;
    white-space: nowrap;
}



/**
 * Style des formulaires
 */
form > dl,
form .fieldset {
    border: 1px solid #DFDFDF;
    background: #FFFFFF;
    border-radius: 5px;
    padding: 10px;
}
form .fieldset .legend {
    margin: -10px -10px 10px -10px;
    text-align: center;
    display: block;
    color: #222222;
    line-height: 180%;
    border-bottom: 1px solid #DFDFDF;
    background: #F5F5F5;
    font-size: 1.1em;
}
form dt {
    clear: left;
}
form dd {
    margin: 0 0 10px 0;
    padding: 0;
}
form dt > label {
    font-weight: bold;
    font-size: 1.1em;
    line-height: 150%;
    color: #333333;
}
form dt.form-before-label {
    margin: 0 0 10px 0;
    float: left;
    clear: none;
}
form dd.form-before-label {
    float: left;
    clear: left;
}
form .errors {
    color: #EF0000;
}
form button,
form input[type=submit],
form input[type="text"],
form input[type="password"],
form select,
form textarea {
    transition: 250ms linear background,
       250ms linear color,
       250ms linear border;
    border-radius: 2px;
    border: 1px solid #AAAAAA;
    margin: 0;
    padding: 0 5px;
    height: 26px;
    background: #FFFFFF;
    width: 188px;
}
form textarea {
    padding: 5px;
    width: 100%;
    width: calc(100% - 12px);
    height: 200px;
}
form button,
form input[type=submit] {
    width: auto;
    cursor: pointer;
    padding: 0 10px;
    height: 30px;
}
form select[disabled],
form input[disabled] {
    background: #DDDDDD;
    opacity: .6;
}
form select {
    padding: 0;
    width: 200px;
}
form input[type="text"]:focus,
form input[type="password"]:focus,
form select:focus {
    color: #000000;
    border: 1px solid #DC5E00;
}
form .form-before-label input[type="checkbox"] {
    margin: 0 5px 0 0;
}

/* Formulaire pour confirmation (ex: suppression) */
.form-confirm dt {
    display: none;
}
.form-confirm #question-element {
    font-size: 1.2em;
    line-height: 200%;
}

@media screen and (max-width: 460px) {
    .menu > li {
        float: none;
    }
}

/**
 *   Toolbar
 * + barre d'outil du gestionnaire de media
 */

/* @todo */
.toolbar {
    list-style: none;
    padding-right: 0;
}
.toolbar .toolbar-item,
.toolbar .toolbar-button {
    float: left;
    margin-right: 10px;
    line-height: 30px;
}
.toolbar .toolbar-search
{
    display: block;
    float: left;
    margin-right: 10px;
    line-height: 30px;
}
.media-button,
.toolbar .toolbar-button a,
.toolbar .toolbar-button input[type=submit] {
    display: inline-block;
    min-width: 40px;
    padding: 0 10px;
    font-weight: normal;
    cursor: pointer;
}
.toolbar .toolbar-button input[type=submit] {
    height: 32px; /* inclure les bordures */
}
.media-button .fa,
.toolbar .toolbar-icon .fa {
    /* @see .fa-lg */
    font-size: 1.33333333em;
    line-height: 0.75em;
    vertical-align: -15%;
}
.media-button:hover .fa,
.toolbar .toolbar-icon:hover .fa {
    color: #DC5E00;
}
.media-button:hover .fa-trash-o,
.media-button:hover .fa-times,
.toolbar .toolbar-icon:hover button .fa-times-circle {
    color: #ED0000;
}

.media-button-disabled,
.media-button-disabled:hover .fa-times,
.media-button-disabled:hover .fa-trash-o,
.media-button-disabled:hover button .fa-times-circle {
    color: inherit;
    cursor: default;
}

.media-tab,
.toolbar-main-container {
    overflow: hidden;
}
.toolbar-count-2 {
    width: 50%;
    float: left;
}
.toolbar-count-2 + .toolbar-count-2 .toolbar {
    margin-left: 10px;
}
.toolbar-count-2 + .toolbar-count-2 .toolbar-item {
    float: right;
}

@media screen and (max-width: 460px) {
    .toolbar .toolbar-icon a {
        width: 30px;
        overflow: hidden;
        padding: 0;
    }
    .toolbar .toolbar-icon a:before {
        width: 30px;
        height: 30px;
        margin: 0;
    }
    .toolbar-count-2 {
        float: none;
        width: auto;
    }
    .toolbar-count-2 + .toolbar-count-2 .toolbar {
        margin-left: 0;
    }
}

/* Style bouton */
.media-button,
.pagination-pages .media-button,
.toolbar .toolbar-search,
.toolbar .toolbar-button a,
.toolbar .toolbar-button input[type=submit],
form input[type=submit],
form button {
    background: #F0F0F0;
    background: linear-gradient(top, #FDFDFD, #DDDDDD);
    background: linear-gradient(to bottom, #FDFDFD, #DDDDDD);
    border: 1px solid #999999;
    color: #222222;
    border-radius: 2px;
    font-size: 1.1em;
}

/* Style bouton : hover */
.toolbar .toolbar-button a:hover,
.toolbar .toolbar-button input[type=submit]:hover,
form input[type=submit]:hover,
form button:hover {
    box-shadow: 0 0 5px #999999;
}

/* Widget Rechercher */
.toolbar .toolbar-search {
    line-height: 30px;
    overflow: hidden;
}
.toolbar .toolbar-search input[type=text] {
    background: transparent;
    border: none;
    width: 250px;
    padding: 0 10px;
    color: #424242;
    height: 30px;
}
.toolbar .toolbar-search input[type=submit] {
    background: #E06E0B;
    border: none;
    height: 30px;
    color: #FFFFFF;
}

/**
 * Style du gestionnaire de media.
 */
.media-manager {
    padding: 0;
}
.media-manager .fa {
    vertical-align: middle;
}
.media-manager .media-tab {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #AAAAAA;
}
.media-manager .media-tab .media-button {
    border-top: none;
    border-bottom: none;
    border-left: none;
    line-height: 50px;
    border-radius: 0;
}
.media-manager .media-tab .media-button:first-child {
    border-left: none;
}
.media-view-item-selected {
    background: #F5F5F5;
}
.media-button-disabled {
    opacity: .6;
}
.media-navigation,
.media-filetransfert-header {
    background: #F0F0F0;
    background: linear-gradient(top, #FDFDFD, #DDDDDD);
    background: linear-gradient(to bottom, #FDFDFD, #DDDDDD);
    color: #424242;
    font-size: 1em;
}
.media-navigation .media-navigation-item.active,
.media-navigation .media-navigation-item:hover {
    border-radius: 2px;
    box-shadow: 0 0 2px #AAAAAA;
    border: 1px solid #AAAAAA;
}


/* Style élément de formulaire pour filtre dans tableau */
.table-filter th {
    padding: 3px;
    text-align: center;
    border: 1px solid #DDDDDD;
    line-height: 100%;
}
.table-filter input[type=text],
.table-filter select
{
    box-sizing: border-box;
    width: 100% !important;
    border-radius: 0;
    border: 1px solid #F0F0F0;
}
.table-filter input[type=text]:not([value='']) {
    color: #000000;
    border: 1px solid #DC5E00;
}
.table-filter .filter-actions {
    letter-spacing: -1px;
}
.table-filter .filter-actions button {
    font-size: 1em;
    height: 26px;
}

/**
 * Multi action
 */
.multi-action {
    line-height: 32px;
    float: left;
    margin-right: 10px;
}
.multi-action input,
.multi-action select {
    height: 30px;
    vertical-align: middle;
    width: auto;
}


/**
 * Pagination
 */
.pagination-pages {
    text-align: center;
    float: left;
}
.pagination-pages li {
    margin: 3px 0;
    line-height: 26px;
    vertical-align: middle;
    width: 25px;
}
.pagination-pages .pagination-pages-previous,
.pagination-pages .pagination-pages-next
{
    padding: 0 10px;
    width: auto;
}
.pagination-pages .pagination-count:hover,
.pagination-pages .page-count-active
{
    background: #DC5E00;
    border: 1px solid #DC5E00
}

/**
 * Message
 */
.messenger {
    background: #FFFFFF;
    padding: 10px;
    margin: 20px 0;
    color: #DC5E00;
    font-size: 1.4em;
    line-height: 36px;
    position: relative;
    border: 1px solid #DDDDDD;
    border-radius: 5px;
}
.messenger .fa {
    font-size: 42px;
    vertical-align: middle;
    animation-name: messenger;
    animation-duration: 3000ms;
    animation-timing-function: ease-out;
    animation-iteration-count: infinite;
}
.messenger-error {
    color: #EF0000;
}
@keyframes messenger {
    0%, 100% {
        transform: scale(1);
    }
    40% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.2);
    }
    60% {
        transform: scale(1);
    }
}

/**
 * Boutons de controle
 */
.controls {
    text-align: center;
    white-space: nowrap;
}
td.controls,
th.controls {
    width: 20px; /* Force la taille au minimum. Agrandi auto via white-space: nowrap*/
}

/* Rétro compatibilité pour les modules ne prennant
   pas en charge le nouveau système d'icone
   @see www/plugin/Core/font-awesome/css/font-awesome.css */
.controls a {
    /* icon */
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    /* border */
    padding: .2em .25em .15em;
    border: solid 0.08em #eeeeee;
    border-radius: .3em;

    /* custom */
    color: #5B5B5B;
    font-size: 1.3em;
}
.controls a:hover {
    background: #E06E0B;
    color: #FFFFFF;
}
.controls a.delete:before {
    content: "\f00d";
}
.controls a.delete:hover {
    background: #EF0000;
}
.controls a.edit:before {
    content: "\f040";
}


.controls a.enable,
.controls a.publish,
.controls a.disable,
.controls a.unpublish {
    border: none;
    padding: 0;
    background: transparent !important;
}
.controls a.enable:before,
.controls a.publish:before {
    content: "\f10c";
    color: #5B5B5B !important;
}
.controls a.disable:before,
.controls a.unpublish:before {
    content: "\f192";
    color: #E06E0B;
}

/**
 * Correction de style
 *
 */

/* CMS */
td.controls a.edit,
td.controls a.delete {
    background: none;
}
td.controls a.edit:hover {
    background: #E06E0B;
    color: #FFFFFF;
}











/* h2 { */
/*     color: #F37D00; */
/* } */
/* .title-h2 { */
/*     margin: 0 0 10px 0; */
/*     text-align: center; */
/*     display: block; */
/*     color: #FDFDFD; */
/*     padding: 3px 10px; */
/*     border-radius: 0 0 10px 10px; */
/*     border: 1px solid #666666; */
/*     background: #165896; */
/*     background: linear-gradient(top, #0378BB, #332B64); */
/*     background: linear-gradient(to bottom, #0378BB, #332B64); */
/*     font-size: 1.1em; */
/*     box-shadow: 0 2px 2px #AAAAAA; */
/*     text-shadow: 0 0 1px #000000; */
/* } */
table#html_tbl,
.mceEditor table {
    width: auto;
    min-width: 0;
}

table tr.line-0 {
    background: #F7F7F7;
}
table tr.line-1 {
    background: #FFFFFF;
}

table td.col1 {
    background-color: #F0F0F0;
}
table td.col2 {
    background-color: #F0F0F0;
}

.center {
    text-align: center;
}

.question {
    font-size: 1.3em;
    width: 400px;
    margin: 50px 100px;
    background: #FBFBFB;
    border: 1px solid #AAA;
    border-radius: 30px;
    padding: 30px;
    box-shadow: -10px 10px 10px #888888, 10px 10px 10px #888888;
    text-align: center;
    color: #333333;
}


ul.actions-admin {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
    overflow: hidden;
}
ul.actions-admin li {
    display: block;
    float: left;
    width: 50%;
    text-transform: uppercase;
    background: #DDDDDD;
    font-size: .95em;
}
ul.actions-admin a {
    display: inline-block;
    font-size: .8em;
    line-height: 24px;
}
ul.actions-admin .fa {
    vertical-align: middle;
    font-size: 16px;
}

body.disable-leftcolumn div#content div.content-marge {
    margin: 0;
    padding: 0;
}
div#content div.content-marge h1 {
    background: #F0F0F0;
    margin: 0 -15px;
    padding: 20px 15px;
    border-bottom: 1px solid #DDDDDD;
}

/**
 * Permet l'affichage d'un message d'information.
 */
div.header-content {
    background: #F0F0F0;
    z-index: 10;
    width: 100%;
    position: fixed;
    top: 0;
/*  margin: 0 0 0 -15px; */
    margin: 0 0 0 -226px;
/*  padding: 5px 15px; */
    border-bottom: 1px solid #DDDDDD;
}
div.header-content-2 {
    margin-left: 225px;
    margin-right: 20px;
}
div.header-content .help {
    box-shadow: 0 4px 8px #333333;
    border-radius: 15px;
    border: 1px solid #CCCCCC;
    position: absolute;
    background: #F9F9F9;
    top: 30px;
    right: 30px;
    padding: 15px;
    width: 400px;
    font-size: 11px;
    color: #000000;
    letter-spacing: 1px;
    text-align: center;
    z-index: 10;
}

/**
 * Informer l'utilisateur sur des actions (validation formulaire, erreur, etc).
 */
.notify-information {
    background: #379934;
    background: linear-gradient(top, #4ABE46, #379934);
    background: linear-gradient(to bottom, #4ABE46, #379934);
    padding: 10px 20px;
    box-shadow: 0 0 3px #058100;
    border: 1px solid #379934;
    border-radius: 10px;
    font-weight: bold;
    color: #FFFFFF;
}


/* bouton d'action */
.button-actions-add:link,
.button-actions-add:active,
.button-actions-add:hover,
.button-actions-add:visited,
.button-actions-edit:link,
.button-actions-edit:active,
.button-actions-edit:hover,
.button-actions-edit:visited,
.button-actions-remove:link,
.button-actions-remove:active,
.button-actions-remove:hover,
.button-actions-remove:visited,
/* retro compatibilité */
p.action a:link,
p.action a:active,
p.action a:visited,
p.action a:hover
{
    background: url("images/background/button-add.png") no-repeat top left;
    display: inline-block;
    margin: 5px 0;
    width: 184px;
    height: 30px;
    padding-left: 40px;
    line-height: 30px;
    font-size: 1em;
    color: #FFF;
}
.button-actions-remove:link,
.button-actions-remove:active,
.button-actions-remove:hover,
.button-actions-remove:visited
{
    background-image: url("images/background/button-remove.png");
}



/**
 * Menu secondaire.
 */
.menu-secondary {
    background: #3C90BD;
    background: linear-gradient(top, #76BBE0, #4180B8);
    background: linear-gradient(to bottom, #76BBE0, #4180B8);
    margin: 0 -15px 0 -15px;
    padding: 0;
    font-size: 1.1em;
    min-width: 770px;
    overflow: hidden;
    clear: both;
}
.menu-secondary li {
    display: block;
    float: left;
}
.menu-secondary li.first a {
    border: 1px solid #76BBE0;
}
.menu-secondary li a:link,
.menu-secondary li a:hover,
.menu-secondary li a:active,
.menu-secondary li a:visited
{
    display: block;
    line-height: 40px;
    border: 1px solid #76BBE0;
    border-left: none;
    padding: 0 10px;
    background: #5597C7;
    background: linear-gradient(top, #76BBE0, #4180B8);
    background: linear-gradient(to bottom, #76BBE0, #4180B8);
    color: #FFFFFF;
}
.menu-secondary li a:hover {
    background: #4180B8;
}
.menu-secondary li.active a {
    background: #4180B8;
    font-weight: bold;
}


/**
 * Tip par defaut
 */
div.tip-wrap div.tip {
    background-color: #3e5cc7;
    border: 1px solid #5998ba;
    border-radius: .3em;
/*
    padding: .3em;
*/
    color: #333;
    font-size: .9em;
    z-index: 1000;
    font-weight: bold;
}
div.tip-wrap div.tip div.tip-title {
    background-color: #FAFAFA;
    border: 1px solid #3e5cc7;
    border-radius: .3em;
    padding: .2em 1em;
}
div.tip-wrap div.tip div.tip-text {
    font-size: .85em;
    padding: .2em 1em;
    color: #FAFAFA;
}

td.date {
    text-align: center;
    white-space: nowrap;
}