#sfc-container {
	cursor: default;
	width: 100%;
}

#sfc-container .sfc-acs {
	position: absolute !important;
	float: left !important;
	left: -9999px !important;
	top: -9999px !important;
}

#sfc-container #dummy {
	position: absolute;
	left: -9999px;
	top: -9999px;
	float: left;
}

#sfc-container h1,
#sfc-container h2,
#sfc-container h3,
#sfc-container h4,
#sfc-container h5,
#sfc-container h6 {
	font-weight: normal;
}
	
#sfc-container .sfc-ui-hflow > .sfc-responsive-nextline {
	float: left;
}

#sfc-html body {
    margin: 0px;
    height: 100%;
}

html#sfc-html #sfc-form {
    margin: 0 auto;
}

/* Required for Firefox 3.6 */
#sfc-container section {
	display: block;
}

/* HTML spec says you can't have a div in a button, so we'll make a span into one. */
#sfc-container span.sfc-ui-structure {
	display: block;
}

/* Hide spinner on number fields */
#sfc-container input::-webkit-outer-spin-button,
#sfc-container input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
#sfc-container input[type='number'] {
    -moz-appearance:textfield;
}

/* Fix button padding issues on Firefox */
#sfc-container button::-moz-focus-inner { 
	border: 0; 
	padding: 0; 
}

/* state clauses */
#sfc-container .sfc-hidden { 
    display: none !important;
    visibility: hidden !important;
}

#sfc-container .sfc-invisible {
    visibility: hidden !important;
}

#sfc-container .sfc-ui-acs {
	position: absolute !important;
	float: left !important;
	left: -9999px !important;
	top: -9999px !important;
}

#sfc-container .fo-ui-select-input {
    padding: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    font: inherit;
    color: inherit;
}

/* we need to turn off browser styling on safari transparent selects otherwise the height is ignored TPD-673 */
#sfc-container.device-safari select.fo-ui-select-input {
    -webkit-appearance: none !important;
}
/* Table defaults */
#sfc-container table,
#sfc-container tbody {
    border-spacing: 0px;
}

#sfc-container .sfc-ui-grid,
#sfc-container .sfc-ui-table {
	border-collapse: collapse;
	table-layout: fixed; /* TABLES CANNOT BE TRUSTED */
}

#sfc-container table,
#sfc-container tbody,
#sfc-container tr,
#sfc-container td,
#sfc-container th {
	padding: 0px;
	white-space: normal;
	zoom: 1;
}

#sfc-container td { 
    vertical-align: top;
}

#sfc-container .fo-ui-menu ul {
    list-style: none;
    padding-left: 0;
}

/* Layout-related clauses */
#sfc-container .sfc-ui-fill-c,
#sfc-container .sfc-ui-structure,
#sfc-container .sfc-ui-fill,
#sfc-container .sfc-ui-hflow,
#sfc-container .sfc-caption,
#sfc-container .sfc-value,
#sfc-container .sfc-menu-li,
#sfc-container .sfc-ui-table td > *,
#sfc-container .sfc-ui-grid td > * {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#sfc-container span.sfc-ui-fill-c,
#sfc-container label.sfc-ui-fill-c,
#sfc-container .sfc-ui-hflow.sfc-ui-fill-c,
#sfc-container .sfc-ui-table td > *,
#sfc-container .sfc-ui-grid td > * {
	min-width: 100% !important;
}

#sfc-container input.sfc-ui-fill-c,
#sfc-container select.sfc-ui-fill-c,
#sfc-container textarea.sfc-ui-fill-c,
#sfc-container .sfc-ui-table td > *,
#sfc-container .sfc-ui-grid td > * {
	width: 100% !important;
}

#sfc-container .sfc-ui-hflow {
    display: table;
    table-layout: fixed;
    width: 100%;
}

#sfc-container .sfc-ui-lr,
#sfc-container span.sfc-ui-lr {
	display: table;
}

#sfc-container .sfc-ui-structure.sfc-ui-lr {
	width: 100%;
}

/* Fix layout issue where text looked centred in IE8/9, and sometimes Chrome */
#sfc-container .sfc-ui-menu a span.sfc-ui-lr {
	display: table-row;
}

#sfc-container .sfc-ui-hflow > *,
#sfc-container .sfc-ui-fill.sfc-ui-lr > * {
    display: table-cell;
	*display: inline;
	zoom: 1;
	*margin-left: -1px;
	*border: 1px solid transparent;
	min-width: 1px;
}

#sfc-container .tb {
	vertical-align: middle;
}

#sfc-container .sfc-ui-lr > * {
	display: table-cell !important;
	*display: inline;
	zoom: 1;
	*margin-left: -1px;
}

/* For some reason _some_ browsers thought it would be a good idea 
 * to enforce default cursors on labels. */
#sfc-container label, 
#sfc-container span.sfc-caption {
    display: block;
    cursor: inherit;
}

#sfc-container .sfc-caption {
    word-wrap: break-word;
}

#sfc-container label {
	min-width: 1px;
}

#sfc-container .sfc-ui-area,
#sfc-container .sfc-ui-area-center,
#sfc-container .sfc-ui-area-middle {
	width: 100%;
}

#sfc-container .sfc-ui-area-west,
#sfc-container .sfc-ui-area-center,
#sfc-container .sfc-ui-area-east {
	vertical-align: top;
	display: table-cell;
	*display: inline;
	zoom: 1;
	*margin-left: -1px;
}

#sfc-container .sfc-ui-area-middle {
	display: table;
}

#sfc-container .sfc-ui-area-middle.ui-mini > * {
	display: block !important;
	margin-bottom: 1em;
}


#sfc-container .sfc-ui-area2 {
    width: 100%;
    display: table;
}

#sfc-container .sfc-ui-center2 {
    width: 100%;
}

#sfc-container .sfc-ui-area-west2,
#sfc-container .sfc-ui-area-middle2,
#sfc-container .sfc-ui-area-east2 {
    vertical-align: top;
    display: table-cell;
    *display: inline;
    zoom: 1;
    *margin-left: -1px;
}

#sfc-container .sfc-ui-area-middle2.ui-mini > * {
    display: block !important;
    margin-bottom: 1em;
}

/* display: table-cell doesn't like margin, so it gets padding now */
#sfc-container div.checker, #sfc-container div.radio {
	margin-right: 0px !important;
}

#sfc-container div.checker *,
#sfc-container div.radio *,
#sfc-container button {
	cursor: pointer;
}

#sfc-container .sfc-ui-menu-li a {
	display: block;
}

#sfc-container .filler {
	width: auto;
	float: left;
}

/* Loader-related clauses */
#sfc-container #sfc-backdrop {
	height: 100%;
	width: 100%;
	position: absolute;
	z-index: 10000;
}

#sfc-container #sfc-overlay {
    cursor: wait;
    height: 100%;
    left: 0;
    margin: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}

#sfc-container #sfc-overlay-window {
	text-align: center;
	cursor: wait;
	position: fixed;
	top: 40%;
	left: 50%;
	margin-top: 0px;
	margin-left: -120px;
	z-index: 10001;
}

#sfc-container #sfc-overlay-window p {
	z-index: 10001;
}

#sfc-container #sfc-overlay-window .spinner {
    width: 30px;
    height: 30px;
    top: 50%;
    margin-top: -12px;
    position: absolute;
    right: 9px;
    -webkit-animation: spin 1s infinite linear;
    animation: spin 1s infinite linear;
}

@-webkit-keyframes spin {
      0% { -webkit-transform: rotate(0deg); }
      50% { -webkit-transform: rotate(180deg); }
      100% { -webkit-transform: rotate(360deg); } }

@keyframes spin {
      0% { transform: rotate(0deg); }
      50% { transform: rotate(180deg); }
      100% { transform: rotate(360deg); }
}


/* Workaround for IE6 fixed position bugs... */
* html #sfc-overlay-window {
	position: absolute;
}

#sfc-container #sfc-loading {
	text-align: center;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 256px;
	margin-top: 0px;
	margin-left: -128px;
	z-index: 10001;
}

#sfc-container #sfc-loading p {
	z-index: 10001;
}

/* Workaround for IE6 fixed position bugs... */
* html #sfc-loading {
	position: absolute;
}

#sfc-container .sfc-giant-x {
	z-index: 10001;
}

/* IE7 puts borders around image links */
#sfc-container a img {
	border: none; 
}

/*
#sfc-container[dir='rtl'],
#sfc-container [dir='rtl'] {
	text-align: right;
}
*/

#sfc-container .sfc-ui-menu {
    margin: 0;
}

#sfc-container .sfc-ui-menu {
    padding: 0px !important;
}

/* Icons */
[class^="icon-"],
[class*=" icon-"] {
  display: inline-block;
  width: 14px;
  min-width: 14px;
  height: 14px;
  margin-top: 1px;
  *margin-right: .3em;
  line-height: 14px;
  vertical-align: text-top;
  background-image: url(../img/glyphicons-halflings.png);
  background-position: 14px 14px;
  background-repeat: no-repeat;
}

/* White icons with optional class, or on hover/active states of certain elements */

.icon-white,
.nav > .active > a > [class^="icon-"],
.nav > .active > a > [class*=" icon-"],
.dropdown-menu > li > a:hover > [class^="icon-"],
.dropdown-menu > li > a:hover > [class*=" icon-"],
.dropdown-menu > .active > a > [class^="icon-"],
.dropdown-menu > .active > a > [class*=" icon-"] {
  background-image: url(../img/glyphicons-halflings-white.png);
}

.icon-glass {
  background-position: 0 0;
}

.icon-music {
  background-position: -24px 0;
}

.icon-search {
  background-position: -48px 0;
}

.icon-envelope {
  background-position: -72px 0;
}

.icon-heart {
  background-position: -96px 0;
}

.icon-star {
  background-position: -120px 0;
}

.icon-star-empty {
  background-position: -144px 0;
}

.icon-user {
  background-position: -168px 0;
}

.icon-film {
  background-position: -192px 0;
}

.icon-th-large {
  background-position: -216px 0;
}

.icon-th {
  background-position: -240px 0;
}

.icon-th-list {
  background-position: -264px 0;
}

.icon-ok {
  background-position: -288px 0;
}

.icon-remove {
  background-position: -312px 0;
}

.icon-zoom-in {
  background-position: -336px 0;
}

.icon-zoom-out {
  background-position: -360px 0;
}

.icon-off {
  background-position: -384px 0;
}

.icon-signal {
  background-position: -408px 0;
}

.icon-cog {
  background-position: -432px 0;
}

.icon-trash {
  background-position: -456px 0;
}

.icon-home {
  background-position: 0 -24px;
}

.icon-file {
  background-position: -24px -24px;
}

.icon-time {
  background-position: -48px -24px;
}

.icon-road {
  background-position: -72px -24px;
}

.icon-download-alt {
  background-position: -96px -24px;
}

.icon-download {
  background-position: -120px -24px;
}

.icon-upload {
  background-position: -144px -24px;
}

.icon-inbox {
  background-position: -168px -24px;
}

.icon-play-circle {
  background-position: -192px -24px;
}

.icon-repeat {
  background-position: -216px -24px;
}

.icon-refresh {
  background-position: -240px -24px;
}

.icon-list-alt {
  background-position: -264px -24px;
}

.icon-lock {
  background-position: -287px -24px;
}

.icon-flag {
  background-position: -312px -24px;
}

.icon-headphones {
  background-position: -336px -24px;
}

.icon-volume-off {
  background-position: -360px -24px;
}

.icon-volume-down {
  background-position: -384px -24px;
}

.icon-volume-up {
  background-position: -408px -24px;
}

.icon-qrcode {
  background-position: -432px -24px;
}

.icon-barcode {
  background-position: -456px -24px;
}

.icon-tag {
  background-position: 0 -48px;
}

.icon-tags {
  background-position: -25px -48px;
}

.icon-book {
  background-position: -48px -48px;
}

.icon-bookmark {
  background-position: -72px -48px;
}

.icon-print {
  background-position: -96px -48px;
}

.icon-camera {
  background-position: -120px -48px;
}

.icon-font {
  background-position: -144px -48px;
}

.icon-bold {
  background-position: -167px -48px;
}

.icon-italic {
  background-position: -192px -48px;
}

.icon-text-height {
  background-position: -216px -48px;
}

.icon-text-width {
  background-position: -240px -48px;
}

.icon-align-left {
  background-position: -264px -48px;
}

.icon-align-center {
  background-position: -288px -48px;
}

.icon-align-right {
  background-position: -312px -48px;
}

.icon-align-justify {
  background-position: -336px -48px;
}

.icon-list {
  background-position: -360px -48px;
}

.icon-indent-left {
  background-position: -384px -48px;
}

.icon-indent-right {
  background-position: -408px -48px;
}

.icon-facetime-video {
  background-position: -432px -48px;
}

.icon-picture {
  background-position: -456px -48px;
}

.icon-pencil {
  background-position: 0 -72px;
}

.icon-map-marker {
  background-position: -24px -72px;
}

.icon-adjust {
  background-position: -48px -72px;
}

.icon-tint {
  background-position: -72px -72px;
}

.icon-edit {
  background-position: -96px -72px;
}

.icon-share {
  background-position: -120px -72px;
}

.icon-check {
  background-position: -144px -72px;
}

.icon-move {
  background-position: -168px -72px;
}

.icon-step-backward {
  background-position: -192px -72px;
}

.icon-fast-backward {
  background-position: -216px -72px;
}

.icon-backward {
  background-position: -240px -72px;
}

.icon-play {
  background-position: -264px -72px;
}

.icon-pause {
  background-position: -288px -72px;
}

.icon-stop {
  background-position: -312px -72px;
}

.icon-forward {
  background-position: -336px -72px;
}

.icon-fast-forward {
  background-position: -360px -72px;
}

.icon-step-forward {
  background-position: -384px -72px;
}

.icon-eject {
  background-position: -408px -72px;
}

.icon-chevron-left {
  background-position: -432px -72px;
}

.icon-chevron-right {
  background-position: -456px -72px;
}

.icon-plus-sign {
  background-position: 0 -96px;
}

.icon-minus-sign {
  background-position: -24px -96px;
}

.icon-remove-sign {
  background-position: -48px -96px;
}

.icon-ok-sign {
  background-position: -72px -96px;
}

.icon-question-sign {
  background-position: -96px -96px;
}

.icon-info-sign {
  background-position: -120px -96px;
}

.icon-screenshot {
  background-position: -144px -96px;
}

.icon-remove-circle {
  background-position: -168px -96px;
}

.icon-ok-circle {
  background-position: -192px -96px;
}

.icon-ban-circle {
  background-position: -216px -96px;
}

.icon-arrow-left {
  background-position: -240px -96px;
}

.icon-arrow-right {
  background-position: -264px -96px;
}

.icon-arrow-up {
  background-position: -289px -96px;
}

.icon-arrow-down {
  background-position: -312px -96px;
}

.icon-share-alt {
  background-position: -336px -96px;
}

.icon-resize-full {
  background-position: -360px -96px;
}

.icon-resize-small {
  background-position: -384px -96px;
}

.icon-plus {
  background-position: -408px -96px;
}

.icon-minus {
  background-position: -433px -96px;
}

.icon-asterisk {
  background-position: -456px -96px;
}

.icon-exclamation-sign {
  background-position: 0 -120px;
}

.icon-gift {
  background-position: -24px -120px;
}

.icon-leaf {
  background-position: -48px -120px;
}

.icon-fire {
  background-position: -72px -120px;
}

.icon-eye-open {
  background-position: -96px -120px;
}

.icon-eye-close {
  background-position: -120px -120px;
}

.icon-warning-sign {
  background-position: -144px -120px;
}

.icon-plane {
  background-position: -168px -120px;
}

.icon-calendar {
  background-position: -192px -120px;
}

.icon-random {
  width: 16px;
  background-position: -216px -120px;
}

.icon-comment {
  background-position: -240px -120px;
}

.icon-magnet {
  background-position: -264px -120px;
}

.icon-chevron-up {
  background-position: -288px -120px;
}

.icon-chevron-down {
  background-position: -313px -119px;
}

.icon-retweet {
  background-position: -336px -120px;
}

.icon-shopping-cart {
  background-position: -360px -120px;
}

.icon-folder-close {
  background-position: -384px -120px;
}

.icon-folder-open {
  width: 16px;
  background-position: -408px -120px;
}

.icon-resize-vertical {
  background-position: -432px -119px;
}

.icon-resize-horizontal {
  background-position: -456px -118px;
}

.icon-hdd {
  background-position: 0 -144px;
}

.icon-bullhorn {
  background-position: -24px -144px;
}

.icon-bell {
  background-position: -48px -144px;
}

.icon-certificate {
  background-position: -72px -144px;
}

.icon-thumbs-up {
  background-position: -96px -144px;
}

.icon-thumbs-down {
  background-position: -120px -144px;
}

.icon-hand-right {
  background-position: -144px -144px;
}

.icon-hand-left {
  background-position: -168px -144px;
}

.icon-hand-up {
  background-position: -192px -144px;
}

.icon-hand-down {
  background-position: -216px -144px;
}

.icon-circle-arrow-right {
  background-position: -240px -144px;
}

.icon-circle-arrow-left {
  background-position: -264px -144px;
}

.icon-circle-arrow-up {
  background-position: -288px -144px;
}

.icon-circle-arrow-down {
  background-position: -312px -144px;
}

.icon-globe {
  background-position: -336px -144px;
}

.icon-wrench {
  background-position: -360px -144px;
}

.icon-tasks {
  background-position: -384px -144px;
}

.icon-filter {
  background-position: -408px -144px;
}

.icon-briefcase {
  background-position: -432px -144px;
}

.icon-fullscreen {
  background-position: -456px -144px;
}

#sfc-container .sfc-ui-field-errors,
#sfc-container .sfc-ui-section-errors {
	margin-bottom: 1em;
}

#sfc-container .hgap {
    float: left;
    height: 1px;
}

#sfc-container .sfc-ui-input-wrapper {
	position: relative;
	display: block !important;
}

#sfc-container .sfc-ui-date-icon {
	cursor: pointer;
}

#sfc-container .sfc-ui-error-icon,
#sfc-container .sfc-ui-date-icon {
	position: absolute;
	right: 0.3em;
	top: 50%;
	margin-top: -7px;
}

#sfc-container .sfc-ui-error-icon > a,
#sfc-container .sfc-ui-date-icon > a {
	padding: 4px;
	margin: -4px;
}

#sfc-container a.sfc-ui-btn {
	display: inline-block;
	text-decoration: none;
}

#sfc-container .sfc-menu-li .fo-ui-btn, #sfc-container .sfc-tlnav-hier {
	display: block;
}

#sfc-container .fo-ui-select {
	width: 100%;
}

#sfc-container .tooltip-inner {
	font-family: sans-serif;
	padding: 0.2em;
}

#sfc-container .sfc-ui-lr > .sfc-js-field { 
    float: left; 
}

#sfc-container input::-ms-clear {
    display: none;
}

/* off screen fix for ios7 safari keyboard performance issue*/
#sfc-container.sfc-offscreen #sfc-form .sfc-hidden {
    position: absolute !important; 
    left: -9999px !important;
    display: block !important;
    visibility: visible !important;
}

#sfc-container .sfc-btn-wrap {
	width: auto;
}

#sfc-container .sfc-ui-hgap-wrap {
	overflow: hidden;
}

#sfc-container .sfc-file {
	position: relative;
	overflow: hidden;
}

#sfc-container .sfc-file input[type=file] {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    direction: ltr;
    font-size: 200px;
    cursor: pointer;
    opacity: 0;
    -ms-filter: 'alpha(opacity=0)';
}

/* These need to be separate classes for Phantom to work properly, don't ask for an explaination */

/* For blocks */
#sfc-container .sfc-unbreakable {
	page-break-inside: avoid; /* For desktop browsers */
}

/* For text areas */
#sfc-container .sfc-unbreakable-ta {
	page-break-inside: avoid; /* For desktop browsers */
}

/* For fields to keep the field with the caption */
#sfc-container .sfc-ui-structure {
	page-break-inside: avoid; /* For desktop browsers */
}

#sfc-container .sfc-ul1 {
    display: block;
    margin-left: 3em;
    text-indent: -1.4em;
}
#sfc-container .sfc-ul1 > span {
    margin-right: 1em;
}

#sfc-container .sfc-ul2 {
    display: block;
    margin-left: 6em;
    text-indent: -1.4em;
}
#sfc-container .sfc-ul2 > span {
    margin-right: 1em;
}

#sfc-container .sfc-ul3 {
    display: block;
    margin-left: 9em;
    text-indent: -1.4em;
}
#sfc-container .sfc-ul3 > span {
    margin-right: 1em;
}

#sfc-container .sfc-ol1 {
    display: block;
    margin-left: 3em;
    text-indent: -1.8em;
}

#sfc-container .sfc-ol2 {
    display: block;
    margin-left: 6em;
    text-indent: -1.8em;
}

#sfc-container .sfc-ol3 {
    display: block;
    margin-left: 9em;
    text-indent: -1.8em;
}
