/*************/
/* VARIABLES */
/*************/
:root {
  /* Sections */
  --main-menu-width: 16rem;
  --top-strip-height: 4rem;
  
  /* Margins and paddings */
  --space-0: 0rem;
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 2rem;
  --space-4: 4rem;

  /* Font sizes */
  --h00: 4rem;
  --h0: 3rem;
  --h1: 2rem;
  --h2: 1.5rem;
  --h3: 1.25rem;
  --h4: 1rem;
  --h5: .875rem;
  --h6: .75rem;

  /* Typography */
  --line-height-1: 1;
  --line-height-2: 1.125;
  --line-height-3: 1.25;
  --line-height-4: 1.5;
  --caps-letter-spacing: .2em;

  --font-weight-bold: 700;
  --font-weight-medium: 500;
  --font-weight-regular: 300;
  --font-weight-thin: 100;

  /* Colors */
  --white: rgba( 255, 255, 255, 1 );
  --black: rgba( 0, 0, 0, 1 );
  --grey-1: rgba( 50, 50, 50, 1 );
  --grey-2: rgba( 100, 100, 100, 1 );
  --grey-3: rgba( 150, 150, 150, 1 );
  --grey-4: rgba( 200, 200, 200, 1 );
  --grey-5: rgba( 249, 250, 251, 1 );
  --grey-6: rgba( 226, 232, 240, 1 );
  --red-error: rgba( 225, 15, 15, 1 );

  /* Main colors */
  
  /* Orange */
  /*--main-color: hsla( 33, 97%, 48%, 1 );*/
  /*--main-color-bg: hsla( 33, 97%, 48%, 5% );*/
  
  /* Lime Green */
  /*--main-color: limegreen;*/
  /*--main-color-bg: hsla( 120, 81%, 80%, 5% );*/

  /* Light Green */
  --main-color: hsla( 113, 43%, 49%, 100% );
  --main-color-bg: rgba( 250, 250, 250, 1 );

  /* Purple */
  /*--main-color: #6e60cc;*/
  /*--main-color-bg: rgba( 237, 235, 254, 30% );*/

}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  background-color: var( --main-color-bg );
  color: var( --grey-2 );
  font-weight: var(  --font-weight-medium );
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2rem;
  margin: 0.67rem 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1rem; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
  color: var( --main-color );
}

  a:hover{
    opacity: 90%;
  }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1rem; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25rem;
}

sup {
  top: -0.5rem;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
  border-radius: 5px;
}

button {
  border: none;
  cursor: pointer;
}

  button:hover {
    opacity: 90%;
  }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35rem 0.75rem 0.625rem;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/**
 *  Reset paragraphs margins
 */

p {
  margin: 0 0 var( --space-1 ) 0; /* Only add margin below */
  line-height: 1.5rem;
} 


/* SECTIONS */
section {
  /*outline: 1px dotted red;*/
}

  .wrapper {
  }

    .main-menu {
      background-color: white;
      position: fixed;
      top: var( --top-strip-height );
      bottom: 0;
      left: 0;
      width: var( --main-menu-width );
      z-index: 10;
      transition: .25s all linear;
    }

      .main-menu .menu-content {
        height: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
      }

    .top-strip {
      background-color: white;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      height: var( --top-strip-height );
      display: inline-block;
      z-index: 1;
      /*outline: 2px dotted green;*/
    }

    .main-top-strip-offset {
      height: var( --top-strip-height );
    }

    .main-container {
      margin-left: var( --main-menu-width );

    }

/*************/
/* Modifiers */
/*************/

/* Margins */
.m0  { margin:        0 }
.mt0 { margin-top:    0 }
.mr0 { margin-right:  0 }
.mb0 { margin-bottom: 0 }
.ml0 { margin-left:   0 }
.mx0 { margin-left:   0; margin-right:  0 }
.my0 { margin-top:    0; margin-bottom: 0 }

.m1  { margin:        var(--space-1) }
.mt1 { margin-top:    var(--space-1) }
.mr1 { margin-right:  var(--space-1) }
.mb1 { margin-bottom: var(--space-1) }
.ml1 { margin-left:   var(--space-1) }
.mx1 { margin-left:   var(--space-1); margin-right:  var(--space-1) }
.my1 { margin-top:    var(--space-1); margin-bottom: var(--space-1) }

.m2  { margin:        var(--space-2) }
.mt2 { margin-top:    var(--space-2) }
.mr2 { margin-right:  var(--space-2) }
.mb2 { margin-bottom: var(--space-2) }
.ml2 { margin-left:   var(--space-2) }
.mx2 { margin-left:   var(--space-2); margin-right:  var(--space-2) }
.my2 { margin-top:    var(--space-2); margin-bottom: var(--space-2) }

.m3  { margin:        var(--space-3) }
.mt3 { margin-top:    var(--space-3) }
.mr3 { margin-right:  var(--space-3) }
.mb3 { margin-bottom: var(--space-3) }
.ml3 { margin-left:   var(--space-3) }
.mx3 { margin-left:   var(--space-3); margin-right:  var(--space-3) }
.my3 { margin-top:    var(--space-3); margin-bottom: var(--space-3) }

.m4  { margin:        var(--space-4) }
.mt4 { margin-top:    var(--space-4) }
.mr4 { margin-right:  var(--space-4) }
.mb4 { margin-bottom: var(--space-4) }
.ml4 { margin-left:   var(--space-4) }
.mx4 { margin-left:   var(--space-4); margin-right:  var(--space-4) }
.my4 { margin-top:    var(--space-4); margin-bottom: var(--space-4) }

.mxn1 { margin-left: -var(--space-1); margin-right: -var(--space-1); }
.mxn2 { margin-left: -var(--space-2); margin-right: -var(--space-2); }
.mxn3 { margin-left: -var(--space-3); margin-right: -var(--space-3); }
.mxn4 { margin-left: -var(--space-4); margin-right: -var(--space-4); }

.ml-auto { margin-left: auto }
.mr-auto { margin-right: auto }
.mx-auto { margin-left: auto; margin-right: auto; }

/* Paddings */
.p0  { padding: 0 }
.pt0 { padding-top: 0 }
.pr0 { padding-right: 0 }
.pb0 { padding-bottom: 0 }
.pl0 { padding-left: 0 }
.px0 { padding-left: 0; padding-right:  0 }
.py0 { padding-top: 0;  padding-bottom: 0 }

.p1  { padding:        var(--space-1) }
.pt1 { padding-top:    var(--space-1) }
.pr1 { padding-right:  var(--space-1) }
.pb1 { padding-bottom: var(--space-1) }
.pl1 { padding-left:   var(--space-1) }
.py1 { padding-top:    var(--space-1); padding-bottom: var(--space-1) }
.px1 { padding-left:   var(--space-1); padding-right:  var(--space-1) }

.p2  { padding:        var(--space-2) }
.pt2 { padding-top:    var(--space-2) }
.pr2 { padding-right:  var(--space-2) }
.pb2 { padding-bottom: var(--space-2) }
.pl2 { padding-left:   var(--space-2) }
.py2 { padding-top:    var(--space-2); padding-bottom: var(--space-2) }
.px2 { padding-left:   var(--space-2); padding-right:  var(--space-2) }

.p3  { padding:        var(--space-3) }
.pt3 { padding-top:    var(--space-3) }
.pr3 { padding-right:  var(--space-3) }
.pb3 { padding-bottom: var(--space-3) }
.pl3 { padding-left:   var(--space-3) }
.py3 { padding-top:    var(--space-3); padding-bottom: var(--space-3) }
.px3 { padding-left:   var(--space-3); padding-right:  var(--space-3) }

.p4  { padding:        var(--space-4) }
.pt4 { padding-top:    var(--space-4) }
.pr4 { padding-right:  var(--space-4) }
.pb4 { padding-bottom: var(--space-4) }
.pl4 { padding-left:   var(--space-4) }
.py4 { padding-top:    var(--space-4); padding-bottom: var(--space-4) }
.px4 { padding-left:   var(--space-4); padding-right:  var(--space-4) }

/* Color */
.c-g1 { color: var( --grey-1 ) }
.c-g2 { color: var( --grey-2 ) }
.c-g3 { color: var( --grey-3 ) }
.c-g4 { color: var( --grey-4 ) }
.c-g5 { color: var( --grey-5 ) }
.c-main { color: var( --main-color ) }

.bg-color-main { color: var( --white ); background-color: var( --main-color ); }
.bg-color-white { color: inherit; background-color: var( --white ); }


/* Font sizes */
.h00 { font-size: var(--h00) }
.h0 { font-size: var(--h0) }
.h1 { font-size: var(--h1) }
.h2 { font-size: var(--h2) }
.h3 { font-size: var(--h3) }
.h4 { font-size: var(--h4) }
.h5 { font-size: var(--h5) }
.h6 { font-size: var(--h6) }

/* Typography */
.font-family-inherit { font-family: inherit }
.font-size-inherit { font-size: inherit }
.text-decoration-none { text-decoration: none }

.text-xs { font-size: 75%; }

.bold    { font-weight: var(--font-weight-bold) }
.medium { font-weight: var(--font-weight-medium ) }
.regular { font-weight: var(--font-weight-regular ) }
.thin { font-weight: var(--font-weight-thin ) }
.italic  { font-style: italic }
.caps    { text-transform: uppercase; letter-spacing: var(--caps-letter-spacing); }

.align-left     { text-align: left }
.align-center   { text-align: center }
.align-right    { text-align: right }
.align-justify  { text-align: justify }

.vertical-align-middle {
  position: absolute;
  top: 50%;
  transform: translate( -50%, -50% );
}

.full-width   { width: 100%; }

.inline       { display: inline; }
.inline-block { display: inline-block; }
.block        { display: block; }
.hidden       { display:none; }

.nowrap { white-space: nowrap }
.break-word { word-wrap: break-word }

.line-height-1 { line-height: var(--line-height-1) }
.line-height-2 { line-height: var(--line-height-2) }
.line-height-3 { line-height: var(--line-height-3) }
.line-height-4 { line-height: var(--line-height-4) }

.list-style-none { list-style: none }
.underline { text-decoration: underline }

.truncate {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-reset {
  list-style: none;
  padding-left: 0;
}


/* Shadows */
.shadow-md { box-shadow: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%); }
.shadow-inner { box-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 6%); }

/* Varia */
.rounded-corners {
  border-radius: 5px;
}
.rounded-corners-left {
  border-radius: 5px 0px 0px 5px;
}
.rounded-corners-right {
  border-radius: 0px 5px 5px 0px;
}

/* Borders */
.border-thin { border: 1px solid; }
.border-regular { border: 2px solid; }
.border-thick { border: 3px solid; }

.border-thin-left { border-left: 1px solid; }
.border-regular-left { border-left: 2px solid; }
.border-thick-left { border-left: 3px solid; }

.border-color-main { border-color: var( --main-color ); }
.border-color-white { border-color: var( --white ); }

/* Forms */
.conteneurChamp.has-error {
  color: var( --red-error );
}

  .conteneurChamp.has-error input,
  .conteneurChamp.has-error textarea,
  .conteneurChamp.has-error label,
  .conteneurChamp.has-error select {
    border-color: var( --red-error );
  }

input[type="text"],
input[type="email"],
input[type="date"],
input[type="datetime-local"],
input[type="time"],
input[type="password"],
textarea,
select {
  border: 1px solid var( --grey-6 );
  border-radius: 5px;
  color: inherit;
  padding: var(--space-1 );
  width: 100%;
  max-width: 100%;
  outline-color: var( --main-color );
  /*margin-bottom: var( --space-2 );*/
}

  input:read-only {
    color: var( --grey-3 );
    background-color: var( --grey-5 );
  }

input[type="submit"],
.qq-upload-button-selector {
  background-color: var( --main-color );
  border-radius: 5px;
  border: none;
  color:  var( --white );
  padding: var( --space-1 ) var( --space-2 );
  font-weight: var( --font-weight-regular );
  cursor: pointer;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%);
}

  input[type="submit"]:hover {
    opacity: .9;
  }

input[type="checkbox"],
input[type="radio"]{
  margin-right: var( --space-1 );
  user-select: none;
  height: 1rem;
  width: 1rem;
  border: 1px solid var( --grey-6 );
  border-radius: 4px;
}

form label {
  /*display: block;*/
  line-height: var( --space-3 );
  font-weight: var( --font-weight-bold );
}

.fieldContainer {
  margin-bottom: var( --space-2 );
}

.consignesChamp {
  margin-top: var( --space-1 );
  color: var( --grey-3 );
  font-size: var( --h5 );
}

.obligatoire {
  color: var( --main-color );
}

.image_thumbnail {
    height: auto;
    width: 100px;
}

  .image_thumbnail:hover{
      opacity: 0.9;
  }

/* Table */
table {
  /*width: 100%;*/
  background-color: var( --white );
  border-collapse: separate;
  border-spacing: 0;
  margin: auto;
}

  table.table-no-inside-border td {
    border: none;
  }

  table.table-no-inside-border {
    border: 0px solid #cccccc;
  }

  table th {
    padding: var( --space-1 );
    background-color: var( --grey-5 );
    border-top: 1px solid var( --grey-6 );
    border-bottom: 1px solid var( --grey-6 );
    text-align: left;
  }

    table thead tr th:first-child {
      border-top-left-radius: 5px; 
      border-left: 1px solid var( --grey-6 );
      /*padding-left: var( --space-1 );*/
    }

    table thead tr th:last-child {
      border-top-right-radius: 5px; 
      border-right: 1px solid var( --grey-6 );
    }


  table td {
    border-bottom: 1px solid var( --grey-6 );
    padding: var( --space-1 );
    vertical-align: middle;
  }

    table td:first-of-type {
      border-left: 1px solid var( --grey-6 );
      /*padding-left: var( --space-1 );*/
    }

      table.table-no-inside-border td:first-of-type {
        padding-left: 0;
      }

    table td:last-of-type {
      border-right: 1px solid var( --grey-6 );
    }

    table tr:last-of-type td:first-of-type {
      border-bottom-left-radius: 5px; 
      border-left: 1px solid var( --grey-6 );
    }

    table tr:last-of-type td:last-of-type {
      border-bottom-right-radius: 5px; 
      border-right: 1px solid var( --grey-6 );
    }

  th.mini-column,
  td.mini-column {
    width: 2.0rem;
  }

  table select,
  table input[type="text"],
  table input[type="checkbox"] {
    margin: auto;
    width: 100%;
    display: block;
  }

  table.table-no-inside-border td {
    border: none !important; /* Override all border settings */
  }

  table.table-no-inside-border {
    border: 0px solid #cccccc;
  }

/**********/
/* NAVBAR */
/**********/
/* Credits to https://code-boxx.com/css-collapsible-tree-menu/ */

/* (A) LIST TO MENU */
.tree, 
.section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.tree {
  /*background: #fbfbfb;*/
  /*border: 1px solid #d2d2d2;*/
  color: var( --grey-2 );
  font-size: var( --h5 );
  font-weight: bold;
}

  .tree > li a:hover,
  .tree ul > li:hover {
    color: var( --black );
  }

  .tree li {
    /*border-bottom: 1px solid #d2d2d2;*/
    padding: 0.75rem 1rem;
  }

    .tree li:last-child {
      border: 0;
    }

  .tree li a {
    text-decoration: none;
    color: inherit;
    /*font-weight: 500;*/
  }

/* (B) SUB-SECTIONS */
/* (B1) TOGGLE SHOW/HIDE */
.tree .section ul {
  display: none;
  margin-top: var( --space-1 );
}

.tree .section input:checked ~ ul {
  display: block;
}

/* (B2) HIDE CHECKBOX */
.tree .section input[type=checkbox] {
  display: none;
}

/* (B3) ADD EXPAND/COLLAPSE ICON  */
.tree .section { 
  position: relative;
}

.tree .section ul {
  background-color: var( --grey-5 );
  box-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 6%);
  /*border: 1px solid var( --grey-4 );*/
  border-radius: 5px;
  font-weight: normal;
  padding: 0.5rem 0;
}

  .tree .section ul li {
    padding: 0.5rem 1rem;
  }

.tree .section label {
  display: block;
  cursor: pointer;
}

  .tree .section label:hover {
    color: var( --grey-1 );
  }

  .tree .section label:after {
    content: "›";
    position: absolute;
    top: 0; right: 0;
    padding: var( --space-1 ) var( --space-2 );
    font-size: 1.5rem;
    font-weight: 200;
    transition: all 0.25s;
    transform: rotate(90deg);
  }
  .tree .section input:checked ~ label:after { 
    transform: rotate(90deg) scaleX( -1 );
  }

/* (B4) SUB-SECTION ITEMS */
/*.section ul {} */
/*.section ul li {}*/

/*.home {
    background-color: rgba( 255, 255, 255, 0.90 );
    border: 1px solid rgba( 0, 0, 0, 0.6 );
    border-radius: 5px;
    box-shadow: 0px 10px 50px 0px rgba( 0, 0, 0, 0.2 );
    left: 50%;
    margin: auto;
    padding: 2em 1em;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}

    .home table {
        color: #000000;
    }

    .home .error {
        color: red;
        font-weight: bold;
        text-align: center;
        padding-top: 2em;
    }*/

/* Home screen */
.home {
  background-color: rgba( 255, 255, 255, 1 );
  border: 1px solid #dddddd;
  border-radius: 7px;
  left: 50%;
  margin: auto;
  padding: 1rem 1rem;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

  .home table {
    color: rgba( 0, 0, 0, 1 );
  }

  .home .error {
    color: red;
    text-align: center;
    padding: 0.5em;
    background-color: rgba( 255, 255, 255, 0.9);
    margin: 1em 1em 0;
    border-radius: 3px;
  }

/* Files list */
.files_list {
  border: 1px solid var( --grey-6 );
  background-color: var( --white );
  border-radius: 5px;
  display: block;
  margin: 1.0rem 0;
  padding: var( --space-2 );
  position: relative;
}

  .files_list:hover {
    border-color: #bbbbbb;
  }

  .files_list .files_list__thumbnail {
    display: inline-block;
    margin-right: 0.5rem;
  }

  .files_list .files_list__caption {
    display: inline-block;
    line-height: 1.25rem;
  }

  .files_list .files_list__actions {
      display: none;
      position: absolute;
      right: 0.5rem;
      top: 0.5rem;
    }

      .files_list:hover .files_list__actions {
        cursor: pointer;
        display: block;
        position: absolute;
        right: 0;
        top: 0;
      }

    .files_list .files_list__actions .files_list__delete_file,
    .files_list .files_list__actions .files_list__copy2clipboard {
      display: block;
      padding: 0.25rem;
      /*float: right;*/
    }


/* Gallery */

.gallery_thumbnail {
  border: 1px solid var( --grey-6 );
  border-radius: 5px;
  display: inline-block;
  margin: 0.5rem 0.5rem 2rem;
  position: relative;
}

/*  .gallery_thumbnail > a > img {
    height: 150px;
    width: auto;
  }*/

    /*.gallery_thumbnail:hover > a > img {*/
    .gallery_thumbnail:hover > a > img {
      opacity: 0.9;
    }

  .gallery_thumbnail .thumbnail_caption {
    background-color: rgba( 0, 0, 0, 0.5 );
    bottom: 0;
    display: none;
    left: 0;
    position: absolute;
    width: 100%;
  }

    .gallery_thumbnail:hover .thumbnail_caption {
      display: block;
      font-size: 0.8em;
      color: #ffffff;
    }

    .gallery_thumbnail .thumbnail_caption img {
      /*padding: 0 0.5em;*/
    }

  .gallery_thumbnail .thumbnail_caption .copy2clipboard {
    padding: 0.5em;
    cursor: pointer;
    float: right;
  }

    .gallery_thumbnail .thumbnail_caption div {
      padding: 0.5em;
      display: inline-block;
      /*margin: 0.5em;*/
    }

  .gallery_thumbnail .deleteImage {
    display: none;
    position: absolute;
    right: 0.5em;
    top: 0.5em;
  }

    .gallery_thumbnail:hover .deleteImage {
      cursor: pointer;
      display: block;
    }

  .gallery_thumbnail .thumbnail_filename {
    bottom: -2em;
    left: 0;
    overflow: hidden;
    position: absolute;
    width: 100%;
    white-space: nowrap;
  }

.qq-upload-button-selector {
  display: inline-block;
  /* Additional style is under the button style definition */
}

.qq-upload-button-selector.qq-upload-button-hover {
  background-color: var( --main-color ) !important;
  opacity: 90%;
}

/* Messages */
.message-container {
  position: fixed;
  right: 0;
  top: 0;
  z-index: 99;
  background-color: var( --grey-1 );
  border-radius: 5px;
  color: var( --grey-6 );
  opacity: 0.90;
}

  .message-container.error {
    background-color: darkred;
  }  

  .message-container.success {
    background-color: darkgreen;
  } 

/* Media queries */

/* Medium */
@media( max-width: 800px ){

  .main-menu {
    left: -100%;
  }

    .main-menu.visible {
      left: 0;
    }

  .main-container {
    margin-left: 0;
  }

  .md-inline-block { display: inline-block; }
  .md-hidden { display: none; }

}

/* Small */
@media( max-width: 600px ){

  .sm-m2  { margin: var(--space-2) }
  .sm-full-width { display: block; }

}


/* DEBUG */
.debug {
  outline: 1px solid orange;
}
