/* table */
div.field--widget-entity-reference-paragraphs
  { margin-bottom: 2em; }
div.tabledrag-toggle-weight-wrapper
  { display: none; }
table.field-multiple-table
  { width: 100%; margin-bottom: 1.5em; border-spacing: 0; border-collapse: separate; border-radius: .5em; border: 1px solid #CCC; overflow: hidden; }
table.field-multiple-table thead tr th
  { border-bottom: 1px solid #CCC; background-color: #ffffff; padding: .5em 2em; }
table.field-multiple-table thead tr th h4
  { display: block; font-size: .7em; color: #333; margin: 0; font-weight: bold; text-transform: uppercase; line-height: 2.15em; }
table.field-multiple-table tbody tr.draggable td
  { padding: 1em; background-color: #f8f8f8; }
table.field-multiple-table tbody tr.draggable + tr.draggable td
  { border-top: 1px solid #CCC; }
table.field-multiple-table tbody tr.draggable td.field-multiple-drag
  { vertical-align: middle; }
table.field-multiple-table tbody tr.draggable:nth-child(odd) td
  { background-color: #ffffff; }
table.field-multiple-table tbody tr.draggable td div.paragraph-type-title
  { font-size: .8em; font-style: italic; }
table.field-multiple-table tbody tr.draggable td a.tabledrag-handle
  { }
table.field-multiple-table tbody tr.draggable td a.tabledrag-handle div.handle
  { width: 2em; height: 2em; }
div.paragraphs-dropbutton-wrapper
  { margin: 0; }

/* form */
form
  { }
fieldset,
div.fake-fieldset,
details.js-form-wrapper
  { margin: 0 0 1em 0; padding: 0; border-radius: .5em; border: 1px solid #CCC; background-color: #ffffff; overflow: hidden; }  
fieldset.fieldgroup
  { border: 1px solid #CCC; margin-bottom: 1.5em; }
fieldset legend,
div.fake-fieldset div.fake-legend,
details.js-form-wrapper summary
  { font-weight: bold; text-transform: uppercase; background-color: transparent; color: #333; font-size: .7em;
  border-bottom: 1px solid #CCC; border-radius: .75em .75em 0 0; padding: 1em 1.5em; margin: 0 0 0 0; }
section#content:not(.content-manager) fieldset legend,
section#content:not(.content-manager) div.fake-fieldset div.fake-legend,
section#content:not(.content-manager) details.js-form-wrapper summary
  { list-style: none; pointer-events: none; }
section#content:not(.content-manager) details.js-form-wrapper summary::marker,
section#content:not(.content-manager) details.js-form-wrapper summary::-webkit-details-marker
  { display: none !important; }
fieldset legend span,
div.fake-fieldset div.fake-legend span
  { font-weight: bold; color: #333; }
fieldset legend span.form-required::after,
div.fake-fieldset div.fake-legend span.form-required::after
  { display: inline-block; content: "*"; color: red; margin-left: .25em; }
div.fieldset-wrapper,
div.fake-fieldset div.fake-fieldset-wrapper,
details.js-form-wrapper summary + div.js-form-item
  { position: relative; padding: 1em; }
div.fieldset-wrapper h3
  { font-size: 1em; font-weight: 700; margin-top: 1em; }

/* items */
div.form-item,
div.field--widget-datetime-default,
div.field--widget-datetime-timestamp,
div.field--widget-datetime-timestamp-no-default
  { display: block; margin: 0 0 1em 0; }
div.form-item + div.form-item.js-form-type-radio,
div.form-item + div.form-item.js-form-type-checkbox
  { margin-top: .5em; }
  
div.form-item a
  { color: var(--color-main); }
div.form-item a:hover
  { color: var(--color-variant); }
div.form-item label,
div.form-item div.fake-label,
div.field--widget-datetime-default h4,
div.field--widget-datetime-timestamp h4,
div.field--widget-datetime-timestamp-no-default h4,
div.field--widget-autocomplete-deluxe label
  { display: block; font-weight: 700; font-size: .9em; margin: 0 0 .25em 0; padding: 0; line-height: 1.2em; }
div.form-item label.form-required::after,
div.form-wrapper h4.form-required::after
  { display: inline-block; content: "*"; color: red; margin-left: .15em; }
div.form-item input:not(.button),
div.form-item textarea
  { display: block; width: 100%; margin: 0; padding: .5em 1em; border-radius: .25rem; box-shadow: none; border: 1px solid #CCC; color: #333; }
div.form-item input[aria-invalid="true"],
div.form-item textarea[aria-invalid="true"]
  { border-color: rgba(214, 45, 26, .25); background-color: rgba(214, 45, 26, .1); }
div.form-item input.form-radio,
div.form-item input.form-checkbox
  { display: inline-block; vertical-align: text-top; width: auto; margin-right: .25em; }
div.form-item input.form-radio + label,
div.form-item input.form-checkbox + label
  { display: inline-block; vertical-align: top; max-width: calc(100% - 2.5em); font-size: .8em; }
div.form-item input.form-radio + label em,
div.form-item input.form-checkbox + label em
  { font-weight: normal; }
div.field--widget-datetime-default div.js-form-type-date
  { margin-bottom: 0; }
div.fieldset-wrapper div.description,
div.form-item div.description,
div.form-item-description,
div.field--widget-datetime-default div[data-drupal-field-elements="description"],
div.field--widget-datetime-timestamp div[data-drupal-field-elements="description"],
div.field--widget-datetime-timestamp-no-default div[data-drupal-field-elements="description"],
div.password-strength__title, div.password-suggestions, div.password-confirm-message,
div.form-item + p
  { font-style: italic; font-size: .7em; margin-top: .25em; color: #333; opacity: .7; }
div.form-actions
  { margin: 2em 0 0 0; padding: 0; text-align: right; }

input.button, a.button, button.button
  { font-size: .9em; width: auto; padding: .6em 1.25em; color: #fff; border-radius: .4em; background-color: var(--color-main);
  border: none !important; text-decoration: none; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.38);
  transition: all 0.3s linear; -o-transition: all 0.3s linear; -moz-transition: all 0.3s linear; -khtml-transition: all 0.3s linear; -webkit-transition: all 0.3s linear; -ms-transition: all 0.3s linear; }
input.button:hover, a.button:hover, button.button:hover
  { background-color: var(--color-variant); }
a.button
  { display: inline-block; }
.button sup
  { display: inline-block; color: var(--color-main); background-color: #fff; font-weight: 600; font-size: .6em; height: 1.2em; width: 1.2em; line-height: 1.2em; border-radius: 50%; text-align: center; margin: 0 0 0 .25em; }
.button.button-blank
  { position: relative; padding-right: 3em; }
.button.button-blank::after
  { position: absolute; content: " "; width: 1.5em; height: 1.5em; right: 1em; top: .5em; background-image: url("../images/icons/pack/light/multiscreen.svg"); background-repeat: no-repeat; background-size: cover; filter: invert(1); }
input.button--small, a.button--small
  { font-size: .8em; }
input.button:hover, a.button:hover
  { background-color: var(--color-variant); }
a.button#edit-cancel
  { background-color: #4f4f4f; }
a.button#edit-cancel:hover
  { background-color: #333; }
a.button#edit-delete
  { background-color: #D32B21; }
a.button#edit-delete:hover
  { background-color: red; }
.button img
  { display: inline-block; max-height: 1.8em; }

div.image-widget
  { display: block; width: 100%; margin: 0; padding: 1em; border-radius: .25rem; box-shadow: none; border: 1px solid #CCC; color: #333; }
div.image-widget input.button
  { display: inline; margin-left: 1em; }
div.image-widget input.form-file + input.button
  { display: block; margin-left: 0; margin-top: .5em; }
div.image-widget span.file--image
  { display: block; margin-top: .5em; }
div.image-widget span.file--image a
  { display: none; }
div.paragraphs-dropbutton-wrapper input.button
  { display: inline; }

.placeholder
  { background-color: transparent; }

div.paragraph-type-top
  { margin-bottom: .5em; }

div.js-form-type-textarea + div.js-filter-wrapper
  { display: none; }

div.field--type-datetime fieldset div.js-form-type-date
  { display: inline-block; width: calc(50% - 1em - 1px);  }
div.field--type-datetime fieldset div.js-form-type-date + div.js-form-type-date
  { margin-left: 1em; }
@media (max-width: 980px) {
  div.field--type-datetime fieldset div.js-form-type-date
    { display: block; width: 100%; }
  div.field--type-datetime fieldset div.js-form-type-date + div.js-form-type-date
    { margin-left: 0; margin-top: .5em; }
}

/* messages */
form div.messages
  { margin: 1em 0; color: #fff; padding: 1em; border-radius: .25em; }
form div.messages.messages--warning
  { background-color: rgba(214, 114, 27, .5); }
form div.messages.messages--error
  { background-color: rgba(214, 45, 26, .5); }

/* role change */
div.field--name-role-change
  { display: none; }
div#esp-manager div.field--name-role-change
  { display: block; }

div#password-policy-status,
div#password-policy-status table
  { display: none !important; }

form.user-pass div.form-item
  { margin-bottom: 0 !important; }

div.password-strength div.password-strength__meter
  { height: .4em; border-radius: .2em; background-color: #f3f3f3; overflow: hidden; }
div.password-strength div.password-strength__meter div.password-strength__indicator
  { height: .4em; border-radius: .2em; }
div.password-strength div.password-strength__meter div.password-strength__indicator.is-weak
  { background-color: rgba(214, 45, 26, .5); }
div.password-strength div.password-strength__meter div.password-strength__indicator.is-fair
  { background-color: rgba(214, 114, 27, .5); }
div.password-strength div.password-strength__meter div.password-strength__indicator.is-good
  { background-color: rgba(214, 199, 27, .5); }
div.password-strength div.password-strength__meter div.password-strength__indicator.is-strong
  { background-color: rgba(52, 173, 106, .5); }
div.password-strength div.password-strength__title span
  { font-weight: 700; }
div.password-confirm-message span.error
  { color: rgba(214, 45, 26, 1); font-weight: 700; }
div.password-confirm-message span.ok
  { color: rgba(52, 173, 106, 1); font-weight: 700; }

/* autocomplete */
div.autocomplete-deluxe-container,
div.autocomplete-deluxe-container.autocomplete-deluxe-multiple
  { display: block; width: 100%; margin: 0; padding: .2em 1em; border-radius: .25rem; box-shadow: none; font-size: 1em;
  border: 1px solid #CCC; background: none !important; background-color: #ffffff !important; color: #333; }
span.autocomplete-deluxe-item
  { background-color: #ffffff; padding: .5em 1.25em .5em .5em; }
span.autocomplete-deluxe-item a.autocomplete-deluxe-item-delete
  { top: 10px; right: 7px; }
span.autocomplete-deluxe-item a.autocomplete-deluxe-item-delete:hover
  { opacity: .5; }
div.autocomplete-deluxe-throbber
  { margin-top: 10px; background: url('data:image/svg+xml;utf8,<svg fill="white" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="11" cy="11" r="7" stroke="%23666666" stroke-width="2" fill="none"/><line x1="16" y1="16" x2="21" y2="21" stroke="%23666666" stroke-width="2"/></svg>'); }
.ui-autocomplete
  { background: #ffffff; border: 1px solid #cccccc; border-radius: .4em; box-shadow: none;
  max-height: 240px; overflow-y: auto; padding: 1em; z-index: 10000; }
.ui-autocomplete .ui-menu-item
  { font-size: .8em; padding: .25em; text-decoration: none !important; cursor: pointer; transition: background 0.2s; }
.ui-autocomplete .ui-menu-item:hover
  { border: none; background-color: var(--color-main); color: #ffffff; border-radius: .4em; }
.ui-autocomplete .ui-menu-item .ui-menu-item-wrapper
  { padding: 0 !important; background-color: transparent !important; text-decoration: none !important; border: none !important; }