 
/* Animated throbber */

html.js input.form-autocomplete {
	background-image: url(../../../../misc/throbber.gif);
	background-position: 100% 2px;
	background-repeat: no-repeat;
}

html.js input.throbbing {
	background-position: 100% -18px;
}

/*	Collapsible fieldsets */
 
html.js fieldset.collapsed {
	border-bottom-width: 0;
	border-left-width: 0;
	border-right-width: 0;
	height: 1em;
}

html.js fieldset.collapsed .fieldset-wrapper {
	display: none;
}

fieldset.collapsible {
	position: relative;
}

fieldset.collapsible .fieldset-legend {
	display: block;
}

/* Resizable textareas */

.form-textarea-wrapper textarea {
	display: block;
	margin: 0;
	width: 100%;
	-moz-box-sizing: border-box;
	-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 */

body.drag {
	cursor: move;
}

.draggable a.tabledrag-handle {
	cursor: move;
	float: left;
	height: 1.7em;
	margin-left: -1em;
	overflow: hidden;
	text-decoration: none;
}

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;
	padding: 0.42em 0.5em;
	width: 13px;
}

a.tabledrag-handle-hover .handle {
	background-position: 6px -11px;
}

div.indentation {
	float: left;
	height: 1.7em;
	margin: -0.4em 0.2em -0.4em -0.4em;
	padding: 0.42em 0 0.42em 0.6em;
	width: 20px;
}

div.tree-child {
	background: url(../../../../misc/tree.png) no-repeat 11px center;
}

div.tree-child-last {
	background: url(../../../../misc/tree-bottom.png) no-repeat 11px center;
}

div.tree-child-horizontal {
	background: url(../../../../misc/tree.png) no-repeat -11px center;
}

.tabledrag-toggle-weight-wrapper {
	text-align: right;
}

/* Throbber */

.ajax-progress {
	display: inline-block;
}

.ajax-progress .throbber {
	background: transparent url(../../../../misc/throbber.gif) no-repeat 0px -18px;
	float: left;
	height: 15px;
	margin: 2px;
	width: 15px;
}

.ajax-progress .message {
	padding-left: 20px;
}

tr .ajax-progress .throbber {
	margin: 0 2px;
}

.ajax-progress-bar {
	width: 16em;
}

/* Inline items */

.container-inline div,
.container-inline label {
	display: inline;
}

/* Prevent text wrapping */
.nowrap {
	white-space: nowrap;
}

/**
 * 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.
 */
html.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); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	overflow: hidden;
	height: 1px;
	
	border: 0;
	margin: -1px;
	padding: 0;
	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;
	
  	margin: 0;
  	width: auto;
}

/* Markup free clearing */
/* see http://perishablepress.com/press/2009/12/06/new-clearfix-hack */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

/* IE6 */
* html .clearfix {
	height: 1%;
}

/* IE7 */
*:first-child + html .clearfix {
	min-height: 1%;
}

