/* focus */
.fl-focus:focus,
.fl-focus :focus {
    outline: 2px solid black;
}

/* Container alignment */
.fl-force-right {
    float: right;
}

.fl-force-left {
    float: left;
}

.fl-centered {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* The following styles are based on 3rd party software */

/*
 * The following styles are based on the Micro Clearfix solution:
 * http://nicolasgallagher.com/micro-clearfix-hack/
 */

.fl-clearfix::before,
.fl-clearfix::after {
    content: "";
    display: table;
}

.fl-clearfix::after {
    clear: both;
}

/* End of Micro Clearfix based styles */

/*
 * The following styles are based on css from HTML5 Boilerplate v4.3:
 * http://html5boilerplate.com
 */

/* Hide from both screenreaders and browsers */
.fl-hidden {
    display: none !important;
    visibility: hidden;
}

/* Hide visually and from screenreaders, but maintain layout */
.fl-hidden-invisible {
    visibility: hidden;
}

/* Hide only visually, but have it available for screenreaders */
.fl-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard
 */
.fl-hidden-accessible.fl-focus:active,
.fl-hidden-accessible.fl-focus:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/* End of HTML5 Boilerplate based styles */
/*!
 * jQuery UI CSS Framework 1.13.0
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 */

/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
	display: none;
}
.ui-helper-hidden-accessible {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.ui-helper-reset {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	line-height: 1.3;
	text-decoration: none;
	font-size: 100%;
	list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
	content: "";
	display: table;
	border-collapse: collapse;
}
.ui-helper-clearfix:after {
	clear: both;
}
.ui-helper-zfix {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	opacity: 0;
	-ms-filter: "alpha(opacity=0)"; /* support: IE8 */
}

.ui-front {
	z-index: 100;
}


/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
	cursor: default !important;
	pointer-events: none;
}


/* Icons
----------------------------------*/
.ui-icon {
	display: inline-block;
	vertical-align: middle;
	margin-top: -.25em;
	position: relative;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
}

.ui-widget-icon-block {
	left: 50%;
	margin-left: -8px;
	display: block;
}

/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/*!
 * jQuery UI Tooltip 1.13.0
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/tooltip/#theming
 */
.ui-tooltip {
	padding: 8px;
	position: absolute;
	z-index: 9999;
	max-width: 300px;
}
body .ui-tooltip {
	border-width: 2px;
}
/*!
 * jQuery UI CSS Framework 1.13.0
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 *
 * To view and modify this theme, visit http://jqueryui.com/themeroller/
 */


/* Component containers
----------------------------------*/
.ui-widget {
	font-family: Arial,Helvetica,sans-serif/*{ffDefault}*/;
	font-size: 1em/*{fsDefault}*/;
}
.ui-widget .ui-widget {
	font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
	font-family: Arial,Helvetica,sans-serif/*{ffDefault}*/;
	font-size: 1em;
}
.ui-widget.ui-widget-content {
	border: 1px solid #c5c5c5/*{borderColorDefault}*/;
}
.ui-widget-content {
	border: 1px solid #dddddd/*{borderColorContent}*/;
	background: #ffffff/*{bgColorContent}*/ /*{bgImgUrlContent}*/ /*{bgContentXPos}*/ /*{bgContentYPos}*/ /*{bgContentRepeat}*/;
	color: #333333/*{fcContent}*/;
}
.ui-widget-content a {
	color: #333333/*{fcContent}*/;
}
.ui-widget-header {
	border: 1px solid #dddddd/*{borderColorHeader}*/;
	background: #e9e9e9/*{bgColorHeader}*/ /*{bgImgUrlHeader}*/ /*{bgHeaderXPos}*/ /*{bgHeaderYPos}*/ /*{bgHeaderRepeat}*/;
	color: #333333/*{fcHeader}*/;
	font-weight: bold;
}
.ui-widget-header a {
	color: #333333/*{fcHeader}*/;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,

/* We use html here because we need a greater specificity to make sure disabled
works properly when clicked or hovered */
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
	border: 1px solid #c5c5c5/*{borderColorDefault}*/;
	background: #f6f6f6/*{bgColorDefault}*/ /*{bgImgUrlDefault}*/ /*{bgDefaultXPos}*/ /*{bgDefaultYPos}*/ /*{bgDefaultRepeat}*/;
	font-weight: normal/*{fwDefault}*/;
	color: #454545/*{fcDefault}*/;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
	color: #454545/*{fcDefault}*/;
	text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 1px solid #cccccc/*{borderColorHover}*/;
	background: #ededed/*{bgColorHover}*/ /*{bgImgUrlHover}*/ /*{bgHoverXPos}*/ /*{bgHoverYPos}*/ /*{bgHoverRepeat}*/;
	font-weight: normal/*{fwDefault}*/;
	color: #2b2b2b/*{fcHover}*/;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
	color: #2b2b2b/*{fcHover}*/;
	text-decoration: none;
}

.ui-visual-focus {
	box-shadow: 0 0 3px 1px rgb(94, 158, 214);
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
	border: 1px solid #003eff/*{borderColorActive}*/;
	background: #007fff/*{bgColorActive}*/ /*{bgImgUrlActive}*/ /*{bgActiveXPos}*/ /*{bgActiveYPos}*/ /*{bgActiveRepeat}*/;
	font-weight: normal/*{fwDefault}*/;
	color: #ffffff/*{fcActive}*/;
}
.ui-icon-background,
.ui-state-active .ui-icon-background {
	border: #003eff/*{borderColorActive}*/;
	background-color: #ffffff/*{fcActive}*/;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
	color: #ffffff/*{fcActive}*/;
	text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
	border: 1px solid #dad55e/*{borderColorHighlight}*/;
	background: #fffa90/*{bgColorHighlight}*/ /*{bgImgUrlHighlight}*/ /*{bgHighlightXPos}*/ /*{bgHighlightYPos}*/ /*{bgHighlightRepeat}*/;
	color: #777620/*{fcHighlight}*/;
}
.ui-state-checked {
	border: 1px solid #dad55e/*{borderColorHighlight}*/;
	background: #fffa90/*{bgColorHighlight}*/;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
	color: #777620/*{fcHighlight}*/;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
	border: 1px solid #f1a899/*{borderColorError}*/;
	background: #fddfdf/*{bgColorError}*/ /*{bgImgUrlError}*/ /*{bgErrorXPos}*/ /*{bgErrorYPos}*/ /*{bgErrorRepeat}*/;
	color: #5f3f3f/*{fcError}*/;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
	color: #5f3f3f/*{fcError}*/;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
	color: #5f3f3f/*{fcError}*/;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
	font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
	opacity: .7;
	-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
	font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
	opacity: .35;
	-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
	background-image: none;
}
.ui-state-disabled .ui-icon {
	-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
}

/* Icons
----------------------------------*/

/* states and images */
.ui-icon {
	width: 16px;
	height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
	background-image: url("images/ui-icons_444444_256x240.png")/*{iconsContent}*/;
}
.ui-widget-header .ui-icon {
	background-image: url("images/ui-icons_444444_256x240.png")/*{iconsHeader}*/;
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
	background-image: url("images/ui-icons_555555_256x240.png")/*{iconsHover}*/;
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
	background-image: url("images/ui-icons_ffffff_256x240.png")/*{iconsActive}*/;
}
.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
	background-image: url("images/ui-icons_777620_256x240.png")/*{iconsHighlight}*/;
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
	background-image: url("images/ui-icons_cc0000_256x240.png")/*{iconsError}*/;
}
.ui-button .ui-icon {
	background-image: url("images/ui-icons_777777_256x240.png")/*{iconsDefault}*/;
}

/* positioning */
/* Three classes needed to override `.ui-button:hover .ui-icon` */
.ui-icon-blank.ui-icon-blank.ui-icon-blank {
	background-image: none;
}
.ui-icon-caret-1-n { background-position: 0 0; }
.ui-icon-caret-1-ne { background-position: -16px 0; }
.ui-icon-caret-1-e { background-position: -32px 0; }
.ui-icon-caret-1-se { background-position: -48px 0; }
.ui-icon-caret-1-s { background-position: -65px 0; }
.ui-icon-caret-1-sw { background-position: -80px 0; }
.ui-icon-caret-1-w { background-position: -96px 0; }
.ui-icon-caret-1-nw { background-position: -112px 0; }
.ui-icon-caret-2-n-s { background-position: -128px 0; }
.ui-icon-caret-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -65px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -65px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }


/* Misc visuals
----------------------------------*/

/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
	border-top-left-radius: 3px/*{cornerRadius}*/;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
	border-top-right-radius: 3px/*{cornerRadius}*/;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
	border-bottom-left-radius: 3px/*{cornerRadius}*/;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
	border-bottom-right-radius: 3px/*{cornerRadius}*/;
}

/* Overlays */
.ui-widget-overlay {
	background: #aaaaaa/*{bgColorOverlay}*/ /*{bgImgUrlOverlay}*/ /*{bgOverlayXPos}*/ /*{bgOverlayYPos}*/ /*{bgOverlayRepeat}*/;
	opacity: .3/*{opacityOverlay}*/;
	-ms-filter: "alpha(opacity=30)"/*{opacityFilterOverlay}*/; /* support: IE8 */
}
.ui-widget-shadow {
	-webkit-box-shadow: 0/*{offsetLeftShadow}*/ 0/*{offsetTopShadow}*/ 5px/*{thicknessShadow}*/ #666666/*{bgColorShadow}*/;
	box-shadow: 0/*{offsetLeftShadow}*/ 0/*{offsetTopShadow}*/ 5px/*{thicknessShadow}*/ #666666/*{bgColorShadow}*/;
}
/*!
 * jQuery UI Tabs 1.13.2
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/tabs/#theming
 */
.ui-tabs {
	position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
	padding: .2em;
}
.ui-tabs .ui-tabs-nav {
	margin: 0;
	padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
	list-style: none;
	float: left;
	position: relative;
	top: 0;
	margin: 1px .2em 0 0;
	border-bottom-width: 0;
	padding: 0;
	white-space: nowrap;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
	float: left;
	padding: .5em 1em;
	text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
	margin-bottom: -1px;
	padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
	cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
	cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
	display: block;
	border-width: 0;
	padding: 1em 1.4em;
	background: none;
}
.autocomplete__wrapper{position:relative}.autocomplete__hint,.autocomplete__input{-webkit-appearance:none;border:2px solid #0b0c0c;border-radius:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin-bottom:0;width:100%}.autocomplete__input{background-color:transparent;position:relative}.autocomplete__hint{color:#b1b4b6;position:absolute}.autocomplete__input--default{padding:5px}.autocomplete__input--focused{outline:3px solid #fd0;outline-offset:0;box-shadow:inset 0 0 0 2px}.autocomplete__input--show-all-values{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible{display:block}.autocomplete__menu--hidden{display:none}.autocomplete__menu--overlay{box-shadow:rgba(0,0,0,.256863) 0 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;cursor:pointer;display:block;position:relative}.autocomplete__option>*{pointer-events:none}.autocomplete__option:first-of-type{border-top-width:0}.autocomplete__option:last-of-type{border-bottom-width:0}.autocomplete__option--odd{background-color:#fafafa}.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}@media (-ms-high-contrast:active),(forced-colors:active){.autocomplete__menu{border-color:FieldText}.autocomplete__option{background-color:Field;color:FieldText}.autocomplete__option--focused,.autocomplete__option:hover{forced-color-adjust:none;background-color:SelectedItem;border-color:SelectedItem;color:SelectedItemText;outline-color:SelectedItemText}}.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:16px;line-height:1.25}.autocomplete__hint,.autocomplete__option{padding:5px}@media (min-width:641px){.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:19px;line-height:1.31579}}:root {
    --imerss-scrollbar-width: 12px;
}


/** This block refers to standalone viz rather than story
 */

.imerss-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0; /* Essential otherwise it overflows */
    contain: paint; /* Makes sure loading indicator is clipped */
}

/** To prevent black content in fullscreen mode - https://stackoverflow.com/questions/16163089/background-element-goes-black-when-entering-fullscreen-with-html5 **/
.imerss-container::backdrop {
    background-color: rgba(255,255,255,0);
}

.imerss-container *,
.imerss-container *:before,
.imerss-container *:after {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb;
}

.imerss-container ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: var(--imerss-scrollbar-width);
    background-color: #eee
}

.imerss-container ::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background-color: #C1C1C1;
    -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5);
}

.imerss-container ::-webkit-scrollbar-thumb:hover {
    background-color: #A8A8A8;
}

#inline-svg {
    height: 0px;
    position: absolute;
}

.imerss-info-panel {
    display: flex;
    width: 15%;
    padding-right: 8px;
}

.imerss-legend-preview {
    width: 18px;
    height: 18px;
    margin: 2px;
    border: 1px solid gray;
}

.imerss-legend-label {
    display: inline-block;
    width: 8em;
    margin-left: 6px;
    position: relative;
    top: 1px;
}

.imerss-legend-cell-size {
    align-self: center;
    font-size: 12px;
    padding-top: 5px;
}

.imerss-legend {
    width: 10em;
    margin-left: auto;
    margin-right: 10px;
    background: #555e;
    pointer-events: all;
    display: flex;
    flex-direction: column;

    /* This section taken from R Leaflet's ".info" */
    padding: 6px 8px;
    font: 14px/16px Arial, Helvetica, sans-serif;
    /* background: #555; */
    color: #eee;
    box-shadow: 0 0 15px rgba(0,0,0,0.2);
    border-radius: 5px;
    /* Solution from https://stackoverflow.com/a/21335440 */
    visibility: visible;
    transition-property: opacity, visibility;
    transition-duration: 400ms;
}

.imerss-legend-row {
    display: flex;
    flex-direction: row;
    align-items: center;
}

/* Styling for polygon draw */

/* Notion from https://stackoverflow.com/questions/6312067/border-radius-background-color-cropped-border */
.maplibregl-ctrl-group {
    overflow: hidden;
}

.mapbox-gl-draw_ctrl-draw-btn:hover {
    background-color: #eee;
}

.mapbox-gl-draw_ctrl-draw-btn.active {
    background-color: #ccc;
}

.mapbox-gl-draw_ctrl-draw-btn.active:hover {
    background-color: #ddd;
}

.mode-draw_polygon .maplibregl-canvas-container.maplibregl-interactive {
    cursor: crosshair;
}

/* Styling for checkboxes with indeterminate value */
/* Grabbed definition for default "checked" to apply to indeterminate checkboxes */
.pretty input[indeterminate="true"]~.state label:after {
    background-color: #bdc3c7!important;
    transform: scale(.6);
}

/* Need to beat builtin definitions even though we are included earlier */
.pretty.pretty .state label:after, .pretty.pretty .state label:before {
    width: calc(1em + 0px);
    height: calc(1em + 0px);
}

.pretty.pretty.p-icon .state .icon {
    width: calc(1em + 0px);
    height: calc(1em + 0px);
}

.pretty.pretty {
    margin-right: 0.3em;
    /* Cancel the wrapping behaviour at higher checklist level */
    text-indent: 0;
}


.imerss-map-and-taxa {
    display: flex;
    /** Old viz do this in a column */
    flex-direction: row;
}

.imerss-tabs-and-search {
    display: flex;
    flex-direction: column;
}

.imerss-taxa {
    display: flex;
    flex-direction: row;
    /** Grabbed from Xetthecum's style produced by bootstrap */
    font-family: Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}


/* Refers to a viz map e.g. gridded rather than story which is .mxcw-map */
.imerss-map {
    height: 100%;
    width: 100%;
}


.imerss-clickable {
    cursor: pointer;
}

/** Inside, e.g. taxonDisplay-iNat-extern */

.external-link {
    width: 1em;
    height: 0.9em;
    display: inline-block;
    background-image: url("../img/external-link.svg");
    background-repeat: no-repeat;
    background-size: 0.9em;
    margin-left: 6px;
    vertical-align: -1px;
}

.imerss-taxonDisplay {
    /* height: calc(800px + 6rem); */ /* Viz dimens plus tab height */
    /* width: 480px; */
    width: 100%;
    border: black solid 2px;
    display: flex;
    flex-direction: column;
    overflow-y: scroll;
    min-width: 320px;
}

/** Give some space but absorb space of empty key */
.taxonDisplay-value.taxonDisplay-wikipediaSummary {
    display: block;
    margin-top: -12px;
}

.imerss-taxonDisplay p {
    margin-block-start: 0;
    margin-block-end: 0;
    text-indent: -2em;
    padding-left: 2em
}

.taxonDisplay-row {
    padding: 10px 8px 6px 8px;
    border-bottom: #ccc 2px solid;
    width: auto;
    min-width: 320px;
}

/* unindent nested rows a bit */
.taxonDisplay-row .taxonDisplay-row {
    margin-left: -0.5rem;
}

.taxonDisplay-row.taxonDisplay-expandable-remainder.taxonDisplay-runon-remainder .imerss-media-name {
    padding-bottom: 15px;
    font-size: 1.1rem;
}

.taxonDisplay-row .imerss-media-image {
    padding-bottom: 5px;
}

.taxonDisplay-row.taxonDisplay-expandable-remainder.taxonDisplay-runon-remainder.taxonDisplay-row {
    border-bottom: none;
}

.taxonDisplay-row.taxonDisplay-expandable-remainder.taxonDisplay-runon-remainder .taxonDisplay-row .taxonDisplay-key {
    margin-left: 1rem;
}

.taxonDisplay-runon-header.taxonDisplay-expanded {
    border-bottom: none;
    padding-bottom: 0;
}

.taxonDisplay-empty-header {
    border-bottom: none;
}

.taxonDisplay-empty-row .taxonDisplay-key {
    display: none;
}

.taxonDisplay-key {
    width: 12em;
    margin-right: 4px;
    font-weight: bold;
    padding: 2px;
}

.taxonDisplay-value {
    width: 100%;
}

.taxonDisplay-expand {
    width: 2rem;
    background-size: 2rem;
    height: 1rem;
    background-image: url("../img/Arrow-down.svg");
    cursor: pointer;
    float: right;
    /* From https://codepen.io/sosuke/pen/Pjoqqp */
    filter: invert(57%) sepia(0%) saturate(6%) hue-rotate(187deg) brightness(94%) contrast(88%);
}

.taxonDisplay-unexpanded .taxonDisplay-expand {
    background-image: url("../img/Arrow-down.svg");
}

.taxonDisplay-expanded .taxonDisplay-expand {
    background-image: url("../img/Arrow-up.svg");
}

.taxonDisplay-runon-remainder.taxonDisplay-unexpanded {
    display: none
}

.taxonDisplay-expandable-remainder {
    padding-left: 20px;
}

.taxonDisplay-expandable-remainder.taxonDisplay-runon-remainder {
    padding-left: 8px; /* Back to value in taxonDisplay-row */
    padding-right: 0; /* Avoid right gap */
    padding-top: 0;
}

.taxonDisplay-group > p {
    display: none;
}

.taxonDisplay-runon-remainder > .taxonDisplay-key {
    padding: 0;
    margin: 0;
}

.taxonDisplay-image-holder {
    position: relative;
    padding-bottom: 8px;
    padding-left: 8px;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.taxonDisplay-iNat-extern {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    background: #ddd;
    padding: 4px;
    padding-left: 6px;
    color: black;
}


.imerss-photo {
    width: 100%;
    height: 400px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.imerss-photo-caption {
    padding-left: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-weight: bold;
}

.imerss-tooltip .imerss-photo {
    width: 165px;
    height: 125px;
    min-width: auto;
}

.imerss-tooltip div.text {
    max-width: 165px;
    margin-top: 0.5rem;
}


.imerss-autocomplete {
    width: 30em;
    margin-left: 1rem;
    display: inline-block;
}

.imerss-autocomplete-row {
    text-align: center;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.imerss-autocomplete-row label {
    font-size: 1.3em;
    font-weight: bold;
}

.autocomplete__menu {
    border: 2px solid #0b0c0c;
}

.imerss-controls {
    margin-top: 6px;
}

.imerss-fullscreen-control:hover {
    background: #d0d7de33;
}

.imerss-fullscreen-exit-control {
    display: none;
}

.imerss-fullscreen-mode .imerss-fullscreen-control {
    display: none;
}

.imerss-fullscreen-mode .imerss-fullscreen-exit-control {
    display: block;
}

.imerss-container .autocomplete__hint, .imerss-container .autocomplete__input, .imerss-container .autocomplete__option {
    font-size: 16px;
    line-height: 1.25;
}

.autocomplete__option--odd {
    background-color: #f4f4f4;
}

.imerss-container .autocomplete__input--default {
    padding: 2px 4px 2px 4px;
    border-width: 1px;
}

.imerss-filter-panel .autocomplete__input--default {
    width: 15em;
}

.imerss-filter-panel {
    padding: 2px 1rem 2px 1rem;
    display: flex;
    flex-direction: column;
    width: 35%;
}

.imerss-filter {
    padding: 2px 0 2px;
    border-bottom: 1px solid #dbe3e7;
}

.imerss-filters {
    height: 100%;
    width: 100%;
    overflow-y: auto;
    padding-right: 0.5em;
}

.imerss-filter-autocomplete {
    display: flex;
    width: 100%;
}

.imerss-filter-controls {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.imerss-reset-filter {
    cursor: pointer;
    margin-right: 5px;
    padding: 2px;
    border-radius: 6px;
}

.imerss-reset-filter:hover {
    /* outline: 1px solid gray;*/
    background: #d0d7de33;
}

.imerss-record-reporter {
    padding-top: 2px;
}

.imerss-filter-title {
    font-size: smaller;
}

.imerss-filter-body {
    padding-left: 16px;
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: smaller;
}

.imerss-filter-clear {
    position: absolute;
    right: 5px;
    cursor: pointer;
    width: 28px;
    height: 28px;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.imerss-filter-clear:hover {
    /** TODO consolidate these, e.g. imerss-reset-filter */
    background: #d0d7de33;
}

.imerss-filter-clear.imerss-hidden {
    display: none;
}

.imerss-free-region-filter {
    display: flex;
    flex-direction: column;
}

.imerss-free-region-filter-holder {
    position: relative;
}

.imerss-free-region-filter .imerss-filter-clear {
    top: -1px;
}

.imerss-free-region-control {
    overflow-y: hidden;
    display: flex;
    flex-direction: column;
}

.imerss-free-region-control .imerss-filter-body {
    overflow-y: scroll;
    height: 6.5em;
}

.imerss-free-region-control .imerss-filter-title {
    display: none;
}

.imerss-region-field {
    font-size: 9px;
    margin-bottom: 2px;
}

/** Reestablish .imerss-filter-body by reoverriding .imerss-container .autocomplete__input--default def **/
.imerss-container .imerss-free-region-filter .autocomplete__input--default {
    margin-left: 16px;
    margin-bottom: 2px;
}

.imerss-region-filter-rows {
    display: flex;
    font-size: smaller;
    flex-direction: column;
    overflow-y: auto;
    align-items: end;
}

.imerss-filter-row {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    width: 100%;
}

/* Taken from muffinman article demo at https://muffinman.io/blog/native-dual-range-input/ */
.dual-range-values {
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    width: 100%
}

/** Override core definition in tabs.css to stop tab content overflowing
 * TODO: Check that Xetthecum Phase III is still all right etc.
 */
.ui-tabs .ui-tabs-panel {
    display: flex;
    padding: 10px;
}

#fli-tab-checklist.ui-tabs-panel, #fli-tab-simple-checklist.ui-tabs-panel {
    padding: 0;
}

.imerss-tabs .ui-state-active.ui-tabs-tab {
    background: #fff;
}

.imerss-tabs .ui-state-active.ui-tabs-tab a {
    background: #fff;
    color: #444;
}

.imerss-checklist-holder {
    height: 100%;
    /** Xetthecum III overrides this to "auto" to remove horizontal scrollbar, but without it, all other environments
     * have gap to the right of vertical scrollbar */
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 6px;
    overflow: auto;
}

.imerss-search-checklist {
    position: relative;
    width: 100%;
}

.imerss-search-checklist .autocomplete__wrapper {
    display: flex;
    width: 100%;
}

/** Re-override our existing override of autocomplete's internal styles from line 412 */
.imerss-container .imerss-search-checklist input {
    border-radius: 100px;
    border-color: #e5e7eb;
    border-width: 1px;
    background-color: #f3f4f6;
    padding: 3px 5px 3px 2.5rem;
    width: calc(100% - 20px)
}

.imerss-search-checklist svg {
    left: 0;
    top: -2px;
    position: absolute;
    pointer-events: none;
    align-items: center;
    padding-left: 0.7rem;
    color: #636c76;
}

/** These "panels" currently only exist in the old-style jQuery tabbed panes. This definition is here to make
 * Xetthecum phase II panel labels show up in the right place but might be helpful in future.
 * These two uses of "imerss-panel-label" (in Xetthecum and BBEAS) are unconnected.
 */
.imerss-panel {
    position: relative;
}

.imerss-panel-label {
    font-size: 1.5rem;
    padding-bottom: 5px;
    padding-top: 2px;
    display: flex;
    align-items: center;
}

.imerss-download-button {
    display: flex;
    fill: #636c76;
    cursor: pointer;
    border-radius: 6px;
    margin: 0px 5px 0px 4px;
}

.imerss-download-button:hover {
    background: #d0d7de33;
}

/** Old "copy to clipboard" interaction - now disused */

.imerss-copy-checklist {
    display: inline-block;
    fill: #636c76;
    margin-left: 5px;
    padding-left: 5px;
    padding-top: 5px;
    margin-top: -5px;
    /* margin-top: -10px; */
    width: 28px;
    height: 28px;
    cursor: pointer;
    border-radius: 6px;
    position: relative;
    top: 3px;
    margin-right: 20px;
}

.imerss-copy-checklist-copied {
    fill: #1a7f37;
}

.imerss-copy-checklist svg {
    /** Ripped off from GitHub so positioning is a little wonky **/
    vertical-align: top;
}

.imerss-copy-checklist:hover {
    background: #d0d7de33;
}

.imerss-checklist {
    height: 100%;
    overflow-y: auto;
    /** Otherwise top checkbox gets clipped */
    padding-top: 2px;
    padding-right: 4px;
}

.imerss-checklist p {
    display: inline;
    padding: 1px;
}

.imerss-checklist p:hover {
    background: #dde;
}

.checklist-selected {
    outline: 2px solid black;
}

.pretty.p-icon.checklist-fold-control .state .icon {
    font-size: 1.5em;
    top: -0.21em;
    left: -0.16em;
    width: 1em;
    height: 1em;
    opacity: 1;
}

.pretty.checklist-fold-control .state label:before {
    border: none;
}

.pretty.checklist-fold-control {
    margin-right: -1em;
}

/** Prevent this receiving mouseover so decoration can get tooltips */
.pretty.checklist-fold-control:not(.active) {
    pointer-events: none;
}

.pretty.checklist-fold-control.active {
    cursor: pointer;
    margin-right: -0.1em;
    color: #555;
}

.imerss-checklist-decoration {
    margin: -2px -0.3em -2px -0.8em;
}

.imerss-checklist ul {
    margin-block-start: 0;
    padding-inline-start: 0;
    list-style-type: none;
}

.imerss-checklist-no-indent ul {
    padding-inline-start: 0;
}

li.checklist-row {
    /** TODO: We put in margin-left: 10px and padding-left: 20px for Xetthecum but this ruins highlighting - figure
     * out why we did this
     */
    padding-left: 30px;
    text-indent: -30px;
}

.imerss-checklist > ul {
    padding: 0;
}

.imerss-checklist-up {
    width: 1.5rem;
    height: 1.5rem;
    min-width: 1.5rem;
    min-height: 1.5rem;
    background-image: url(../img/up-arrow.svg);
    background-size: cover;
    margin-bottom: 0.2rem;
}

.imerss-checklist-up:hover {
    outline: 1px solid black;
    outline-offset: 1px;
}

/* The checklist rank highlighting */

.checklist-rank-life > p {
    text-transform: uppercase;
    font-size: 1.2em;
}

.checklist-rank-kingdom > p {
    text-transform: uppercase;
    font-size: 1.2em;
}

.checklist-rank-phylum > p {
    text-transform: uppercase;
    font-size: 1.1em;
}

.checklist-rank-class > p {
    text-transform: uppercase;
    font-style: italic;
    font-size: 1.0em;
}

.checklist-rank-subclass > p {
    text-transform: uppercase;
    font-size: 1.0em;
}

.checklist-rank-order > p {
    text-transform: uppercase;
    font-size: 1.0em;
}

.checklist-rank-family > p {
    text-transform: uppercase;
    font-size: 1.0em;
}

.checklist-rank-genus > p {
    font-size: 1.0em;
    font-style: italic;
}

.checklist-rank-species > p {
    font-size: 1.0em;
    font-style: italic;
}

.checklist-annote {
    font-style: normal
}

/* AS edict of 25th August 2024 - bold for phylum and kingdom names */

.checklist-rank-phylum > .checklist-scientific-name {
    font-weight: bold
}

.checklist-rank-kingdom > .checklist-scientific-name {
    font-weight: bold
}

.imerss-checklist-holder .checklist-common-name {
    font-style: normal
}
