/**
 * @file
 * Generic theme-independent base styles.
 */

/**
 * Autocomplete.
 *
 * @see autocomplete.js
 */
/* Suggestion list */
#autocomplete {
  background: #eee;
  border: 1px solid #ddd;
  overflow: hidden;
  position: fixed;
  z-index: 9997;
}
#autocomplete ul {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
}
#autocomplete li {
  color: #000;
  cursor: default;
  white-space: pre;
  zoom: 1; /* IE7 */
}
/* Animated throbber */
.js input.form-autocomplete {
  background-image: url(../../../misc/throbber-inactive.png);
  background-position: 100% center; /* LTR */
  background-repeat: no-repeat;
}
[dir="rtl"].js input.form-autocomplete {
  background-position: 1% center;
}
.js input.throbbing {
  background-image: url(../../../misc/throbber-active.gif);
  background-position: 100% center; /* LTR */
}
[dir="rtl"].js input.throbbing {
  background-position: 1% center;
}

/**
 * For anything you want to show on page load only when JS is enabled.
 */
.js-show {
  display: none;
}
.js .js-show {
  display: block;
}
.js a.js-show,
.js span.js-show {
  display: inline;
}

/**
 * Collapsible fieldsets.
 *
 * @see collapse.js
 */
.js fieldset.collapsed .fieldset-wrapper {
  display: none;
}
fieldset.collapsible {
  position: relative;
}
fieldset.collapsible .fieldset-legend {
  display: block;
}

/**
 * Resizable textareas.
 *
 * @see textarea.js
 */
.form-textarea-wrapper textarea {
  display: block;
  margin: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.resizable-textarea .grippie {
  background: #eee url(../../../misc/grippie.png) no-repeat center 2px;
  border: 1px solid #ddd;
  border-top-width: 0;
  cursor: s-resize;
  height: 9px;
  overflow: hidden;
}

/**
 * TableDrag behavior.
 *
 * @see tabledrag.js
 */
body.drag {
  cursor: move;
}
.draggable a.tabledrag-handle {
  cursor: move;
  float: left; /* LTR */
  height: 1.7em;
  margin-left: -1em; /* LTR */
  overflow: hidden;
  text-decoration: none;
}
[dir="rtl"] .draggable a.tabledrag-handle {
  float: right;
  margin-right: -1em;
  margin-left: 0;
}
a.tabledrag-handle:hover {
  text-decoration: none;
}
a.tabledrag-handle .handle {
  background: url(../../../misc/draggable.png) no-repeat 6px 9px;
  height: 13px;
  margin: -0.4em 0.5em; /* LTR */
  padding: 0.42em 0.5em; /* LTR */
  width: 13px;
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  -o-box-sizing: content-box;
}
[dir="rtl"] a.tabledrag-handle .handle {
  margin: -0.4em 0.5em;
  padding: 0.42em 0.5em;
}
a.tabledrag-handle-hover .handle {
  background-position: 6px -11px;
}
div.indentation {
  float: left; /* LTR */
  height: 1.7em;
  margin: -1em 0.2em -1em -0.4em; /* LTR */
  padding: 1em 0 1em 0.6em; /* LTR */
  width: 20px;
}
[dir="rtl"] div.indentation {
  float: right;
  margin: -1em -0.4em -1em 0.2em;
  padding: 1em 0.6em 1em 0;
}
div.tree-child {
  background: url(../../../misc/tree.png) no-repeat 11px center; /* LTR */
}
[dir="rtl"] div.tree-child {
  background-position: -65px center;
}
div.tree-child-last {
  background: url(../../../misc/tree-bottom.png) no-repeat 11px center; /* LTR */
}
[dir="rtl"] div.tree-child-last {
  background-position: -65px center;
}
div.tree-child-horizontal {
  background: url(../../../misc/tree.png) no-repeat -11px center;
}
.tabledrag-toggle-weight-wrapper {
  text-align: right; /* LTR */
}
[dir="rtl"] .tabledrag-toggle-weight-wrapper {
  text-align: left;
}

/**
 * TableHeader behavior.
 *
 * @see tableheader.js
 */
table.sticky-header {
  background-color: #fff;
  margin-top: 0;
  z-index: 9;
}

/**
 * Progress behavior.
 *
 * @see progress.js
 */
/* Bar */
.progress .bar {
  background-color: #fff;
  border: 1px solid;
}
.progress .filled {
  background-color: #000;
  height: 2.5em;
  width: 5px;
}
.progress .percentage {
  float: right; /* LTR */
}
[dir="rtl"] .progress .percentage {
  float: left;
}
/* Throbber */
.ajax-progress {
  display: inline-block;
  padding: 1px 5px 2px 5px;
}
.ajax-progress-throbber .throbber {
  background: transparent url(../../../misc/throbber-active.gif) no-repeat 0px center;
  display: inline;
  padding: 1px 5px 2px;
}
.ajax-progress-throbber .message {
  display: inline;
  padding: 1px 5px 2px;
}
tr .ajax-progress-throbber .throbber {
  margin: 0 2px;
}
.ajax-progress-bar {
  width: 16em;
}

/**
 * Inline items.
 */
.container-inline div,
.container-inline label {
  display: inline;
}
/* Fieldset contents always need to be rendered as block. */
.container-inline .fieldset-wrapper {
  display: block;
}

/**
 * Prevent text wrapping.
 */
.nowrap {
  white-space: nowrap;
}

/**
 * Text centered wrapper.
 */
.centered-wrapper {
  text-align: center;
}

/**
 * For anything you want to hide on page load when JS is enabled, so
 * that you can use the JS to control visibility and avoid flicker.
 */
.js .js-hide {
  display: none;
}

/**
 * Hide elements from all users.
 *
 * Used for elements which should not be immediately displayed to any user. An
 * example would be a collapsible fieldset that will be expanded with a click
 * from a user. The effect of this class can be toggled with the jQuery show()
 * and hide() functions.
 */
.element-hidden {
  display: none;
}

/**
 * Hide elements visually, but keep them available for screen-readers.
 *
 * Used for information required for screen-reader users to understand and use
 * the site where visual display is undesirable. Information provided in this
 * manner should be kept concise, to avoid unnecessary burden on the user.
 * "!important" is used to prevent unintentional overrides.
 */
.element-invisible {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
}

/**
 * The .element-focusable class extends the .element-invisible class to allow
 * the element to be focusable when navigated to via the keyboard.
 */
.element-invisible.element-focusable:active,
.element-invisible.element-focusable:focus {
  position: static !important;
  clip: auto;
  overflow: visible;
  height: auto;
}

/**
 * Float clearing.
 *
 * Based on the micro clearfix hack by Nicolas Gallagher, with the :before
 * pseudo selector removed to allow normal top margin collapse.
 *
 * @see http://nicolasgallagher.com/micro-clearfix-hack
 */
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/**
 * Text alignment classes.
 */
.text-align-left {
  text-align: left;
}
.text-align-right {
  text-align: right;
}
.text-align-center {
  text-align: center;
}
.text-align-justify {
  text-align: justify;
}

/**
 * Alignment classes (images, videos, blockquotes …).
 */
.align-left {
  float: left;
}
.align-right {
  float: right;
}
.align-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/**
 * Underline content.
 */
.underline {
  text-decoration: underline;
}

/**
 * Block-level HTML5 display definition.
 *
 * Provides display values for browsers that don't recognize the new elements
 * and therefore display them inline by default.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
