@charset "UTF-8";

a:focus {
  border: 1px dotted black;
}

a, a:link, a:visited, a:hover, a:active, a:focus {
  color: #0b5ed7;
}

html, body {
  background: #FFF none repeat scroll 0 0;
}

.small {
  font-size: 85%;
}

.hide {
  display: none;
}

b.counterror {
  color: #A70000;
}

div.validationfix {
  font-size: 92%;
  padding: 3px 2px;
  margin-bottom: 5px;
  text-align: right;
}

div.validationerror a, div.validationerror a:link, div.validationerror a:visited {
  color: inherit !important;
}

#user {
  margin: 5px;
  float: left;
}

#headlinks {
  float: right;
  font-size: 8.5pt;
  text-align: right;
  margin: 5px;
}

#headlinks a, #headlinks a:visited, #headlinks a:link {
  color: #F4F7D9;
}

#headlinks a:hover {
  color: #FFF;
}

#headlinks a:active {
  color: #A4CFBE;
}

#identity {
  padding: 5px;
  text-align: right;
  margin-bottom: 10px;
  overflow: hidden;
}

#identity a, #identity a:link, #identity a:visited {
  text-decoration: underline;
}

#identity a:active, #identity a:hover {
  text-decoration: underline;
}

.appform {
  margin: 0;
  padding: 0;
}

.appform fieldset {
  width: 572px;
}

.appform table fieldset {
  width: auto;
}

.appform fieldset h3 {
  width: 560px;
}

.appform fieldset h4 {
  width: 560px;
}

.appform .f {
  border-color: #7C7C7C #C3C3C3 #DDDDDD;
  border-style: solid;
  border-width: 1px;
}

.appform .field {
  margin: 7px 0;
  overflow: hidden;
  width: auto;
}

.appform .field:after {
  clear: both;
  content: ' ';
  display: block;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  width: 0;
  height: 0;
}

.appform .field {
  display: inline-block;
}

* html .appform .field {
  height: 1%;
}

.appform .field {
  display: block;
}

.btndisabled {
  opacity: 0.6;
}

.appform .vertical {
  margin-left: 5px;
  width: 565px;
}

.appform .vertical input, .appform .vertical textarea {
  width: 563px;
}

.appform .inline label {
  padding: 3px 5px 3px 5px;
}

.appform .full {
  width: 450px;
  float: left;
  padding-top: 3px;
}

.appform .text {
  width: 450px;
  float: left;
  padding: 6px 0 3px;
}

.appform .l, .appform .lx {
  font-weight: bold;
  width: 108px;
  float: left;
  display: block;
  padding: 6px 7px 3px 5px;
}

.appform .lx {
  width: 180px;
}

.appform .la {
  font-weight: bold;
  color: #666;
}

.appform .full input {
  width: 442px;
}

.appform .full textarea {
  width: 446px;
}

.appform .wide {
  padding: 0 7px 0 5px;
}

.appform .wide .l {
  float: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.appform .wide .full {
  float: none;
  width: 100%;
}

.appform .hint {
  font-size: 80%;
  color: #6c757d; /* same as .text-muted */
  padding: 3px;
}

.registrationForm .hint {
  float: left;
}

.appform fieldset.registrationForm {
  width: 90%;
}

.appform .half {
  width: 350px;
}

.appform .half input, .appform .half textarea {
  width: 348px;
}

.appform .multihead {
  padding: 3px;
}

.appform .multidelete {
  float: right;
  color: red;
  font-size: 90%;
}

.appform .multidelete a, .appform .multidelete a:visited, .appform .multidelete a:link {
  color: #A00;
  text-decoration: none;
}

.appform .multidelete a:hover {
  color: #F00;
  text-decoration: none;
}

.appform .multidelete a:active {
  color: #F66;
  text-decoration: none;
}

.appform .multiadd {
  clear: both;
  font-size: 90%;
}

.appform .multiadd a, .appform .multiadd a:visited, .appform .multiadd a:link {
  color: #0A0;
  text-decoration: none;
}

.appform .multiadd a:hover {
  color: #0F0;
  text-decoration: none;
}

.appform .multiadd a:active {
  color: #6F6;
  text-decoration: none;
}

.appform .subfield {
  margin-bottom: 5px;
}

.appform .subfield label {
  width: auto;
  float: none;
  display: block;
  margin-left: 0;
  padding: 3px 5px 3px 5px;
  font-size: 85%;
  color: #888;
}

.appform .f_address {
  width: 450px;
}

.appform .f_addresssuburb {
  width: 400px;
  padding-right: 10px;
  float: left;
}

.appform .f_addresssuburb input {
  width: 398px;
}

.appform .f_addressstate {
  width: 90px;
  padding-right: 10px;
  float: left;
}

.appform .f_addressstate select {
  width: 88px;
  height: 18px;
}

.appform .f_addresspostcode {
  width: 80px;
  float: left;
}

.appform .f_addresspostcode input {
  width: 78px;
}

.appform .f_phone input {
  width: 220px;
}

.appform .f_email input {
  width: 310px;
}

.appform .f_date input {
  width: 200px;
}

.appform .f_abn input {
  width: 200px;
}

.appform .f_abn .f_abnbtn {
  width: 100px;
  margin-left: 5px;
}

.appform .f_abninfo {
  margin: 5px 0 0 4px;
  font-size: 93%;
}

.appform .f_abninfo table {
  margin: 5px 0 0 -4px;
  border-collapse: collapse;
  border: 1px solid #999;
  width: 450px;
}

.appform .f_abninfo thead th {
  background-color: #ddd;
}

.appform .f_abninfo th, .appform .f_abninfo td {
  background-color: #eee;
  padding: 2px 4px;
  border: none;
  text-align: left;
}

.appform .f_radio label {
  margin: 0 10px 0 6px;
  padding: 0;
  display: inline;
  float: none;
  width: auto;
  font-weight: normal;
}

.appform .f_radio input {
  width: auto !important;
}

.appform .f_name_title {
  width: 70px;
  float: left;
}

.appform .f_name_title select {
  width: 65px;
}

.appform .f_name {
  padding-top: 5px;
}

.appform .f_name_first {
  width: 192px;
  float: left;
}

.appform .f_name_last {
  width: 188px;
  float: left;
}

.appform .f_name_first input, .appform .f_name_last input {
  width: 180px;
}

.appform .f_address_number {
  width: 140px;
  float: left;
}

.appform .f_address_number input {
  width: 132px;
}

.appform .f_address_street {
  width: 310px;
  float: left;
}

.appform .f_address_street input {
  width: 298px;
}

.appform .f_address_postcode {
  width: 70px;
  float: left;
}

.appform .f_address_locality {
  width: 310px;
  float: left;
}

.appform .f_address_locality input {
  width: 298px;
}

.appform .f_address_state {
  width: 70px;
  float: left;
}

.appform .f_address_nz_locality {
  width: 210px;
  float: left;
}

.appform .f_address_nz_locality input, .appform .full .f_address_nz_locality input {
  width: 198px;
}

.appform .f_address_nz_city {
  width: 170px;
  float: left;
}

.appform .f_address_nz_city input, .appform .full .f_address_nz_city input {
  width: 158px;
}

.appform .f_address_postcode {
  width: 70px;
  float: left;
}

.appform .f_address_postcode input {
  width: 62px;
}

.appform .f_budget {
  width: 100%;
  margin: 1px 0 5px;
  border-collapse: collapse;
}

.appform .f_budget th, .appform .f_budget td {
  vertical-align: top;
  border: 1px solid #999;
  padding: 3px 6px 3px 4px;
}

.appform .f_budget tr.total th {
  text-align: right;
}

.appform .f_budget input, .appform .full .f_budget input {
  width: 100%;
}

.appform .f_budget td.amt input {
  text-align: right;
}

.appform .f_budget .isNaN {
  background-color: #FFDDDD;
}

.appform .addrdel {
  margin-left: -120px;
  padding-bottom: 5px;
  padding-top: 25px;
}

.appform .del {
  color: red;
  text-align: right;
  font-size: 90%;
}

.appform .del a, .appform .del a:visited, .appform .del a:link {
  color: #A00;
  text-decoration: none;
}

.appform .del a:hover {
  color: #F00;
  text-decoration: none;
}

.appform .del a:active {
  color: #F66;
  text-decoration: none;
}

.appform .add {
  clear: both;
  font-size: 90%;
  padding-top: 2px;
}

.appform .add a, .appform .add a:visited, .appform .add a:link {
  color: #0A0;
  text-decoration: none;
}

.appform .add a:hover {
  color: #0F0;
  text-decoration: none;
}

.appform .add a:active {
  color: #6F6;
  text-decoration: none;
}

.appform .btn {
  border: 1px solid #D9DAD9;
  padding: 5px;
  background: #F2F1F1;
  margin: 10px 0 10px 0;
  height: 28px;
  position: relative;
}

.alert #cancelEmailBtn.btn{
  background:none;
}

.appform button.lookup {
  padding-top: 2px;
  padding-bottom: 2px;
  height: inherit;
}

.appform .uploadWarning {
  position: absolute;
  left: 0;
  right: 0;
  top: 8px;
  text-align: center;
  font-weight: bold;
  font-size: 123.1%;
  color: #000;
}

a.linkbtn, a.linkbtn:visited, a.linkbtn:hover {
  display: inline-block;
  box-sizing: border-box;
  align-items: flex-start;
  text-align: center;
  vertical-align: sub;
  text-decoration: none;
  cursor: default;
  color: #000;
  padding-top: 3px;
}

.appform .btn input, #body .appform .btn a.linkbtn {
  width: 130px;
  height: 24px;
  border: 1px solid #666;
  background-color: #F8F8F8;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-image: none;
}

.appform .btn input {
  padding: 0px 3px 2px;
}

.appform .btn input:hover, #body .appform .btn a.linkbtn:hover {
  background-color: #B6DBF2;
}

.appform .btn .left {
  width: 140px;
  float: left;
  text-align: left;
}

.appform .btn .mid {
  width: 280px;
  float: left;
  text-align: center;
}

.appform .btn .right {
  width: 140px;
  float: left;
  text-align: right;
}

.appform .btn .close {
  background: #F8F8F8;
}

.appform .btn .next {
  background-image: url(../img/tango/go-next.png);
  background-position: 103px 2px;
  padding: 0px 25px 2px 3px;
  float: right;
}

.appform .btn .review {
  background-image: url(../img/tango/go-next.png);
  background-position: 103px 2px;
  padding: 0px 25px 2px 3px;
  float: right;
}

.appform .btn .prev {
  background-image: url(../img/tango/go-previous.png);
  background-position: 3px 2px;
  padding: 0px 3px 2px 28px;
}

.appform .btncontinue {
  background-color: #FED001;
  margin-left: 20px;
}

.appform .btnclose {
  background-color: #CFCFCF;
}

.appform h2 {
  padding: 5px;
  margin: 0 0 0 0;
  width: 560px;
}

.appform h3, .appform h4 {
  padding: 5px;
  margin: 0 0 1em 0;
}

.appform h2 h3 {
  margin: 0 0 1em 0;
}

.appform legend {
  display: none;
}

.chooseform {
  margin: 0 0 20px 20px;
}

.chooseform h2 {
  margin: 0.5em 0 0 0;
}

.chooseform .actions {
  width: auto;
  overflow: hidden;
  margin-left: -20px;
}

.chooseform .actions a {
  display: block;
  padding: 5px;
  width: 250px;
  font-size: 130%;
  color: #000;
  float: left;
  margin: 8px 0 8px 20px;
  text-align: center;
}

.ftAppInfo, .ftAppWarn {
  padding: 9px 35px 9px 14px;
  margin-bottom: 20px;
  font-size: 10pt;
}

.ftAppInfo {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.ftAppWarn {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

#appnav {
  float: right;
  background: #F2F1F1;
  border: 1px solid #D9DAD9;
  margin: 50px 0 10px 0px;
  padding: 5px 5px 5px 10px;
  width: 165px;
}

#appnav h3 {
  border: 1px solid #ADDB6A;
  padding: 5px 5px 5px 10px;
  background: #C5F979;
  color: #000;
  margin: -6px -6px 5px -11px;
  font-size: 8pt;
  font-weight: bold;
}

#appnav h4, #appnav li {
  margin: 5px 0 0 0;
  font-size: 12px;
  font-weight: bold;
}

#appnav .current {
  background-color: #DFE5EC;
  border: 1px solid #D9DAD9;
  border-left: 5px solid #47412D;
  margin: 3px -6px 0 -11px;
  padding: 5px 5px 2px 6px;

}

#appnav a {
  text-decoration: none;
}

#appnav ul, #appnav ol {
  margin: 0;
}

#appnav li {
  list-style: none;
}

#appnav ul.sublist {
  margin: 2px 0 2px 15px;
}

fieldset {
  border: medium none;
}

.appstatus {
  margin-top: 1em;
}

/* http://perishablepress.com/press/2008/02/05/lessons-learned-concerning-the-clearfix-css-hack */
.cf:after {
  clear: both;
  content: ' ';
  display: block;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  width: 0;
  height: 0;
}

.cf {
  display: inline-block;
}

* html .cf {
  height: 1%;
}

.cf {
  display: block;
}

.iconbar {
  margin: 10px 0;
}

.iconbar .item {
  float: left;
  font-size: 123.1%;
  padding-top: 12px;
}

.iconbar li.item{
  list-style: none;
}

.iconbar .item-narrow {
  width: 165px;
}

.iconbar .item-mid {
  width: 220px;
}

.iconbar .item-wide {
  width: 540px;
}

.iconbar .item-very-wide {
  width: 605px;
}

.iconbar .item img {
  float: left;
  margin-top: -12px;
  border-style: none;
}

.iconbar .item a {
  text-decoration: none;
}

.minornote {
  margin: 8px -4px;
  padding: 4px;
  border: 1px solid #ddd;
  background-color: #eee;
}

.myapp {
  padding: 4px 0 8px 0;
}

.myapp h2 {
  margin: 0.3em 0;
}

.myapp_icon {
  float: left;
  width: 32px;
  height: 32px;
  padding: 2px 6px 2px 10px;
}

.myapp_form {
  font-size: 116%;
}

#body .myapp_form a, #body .myapp_form a:link, #body .myapp_form a:visited {
  color: inherit;
}

.myapp_status {
  margin-bottom: 8px;
}

.linkedapp2 {
  margin-left: 48px;
}

.collapsible .linkedapp2 {
  margin-left: 0px;
}

.linkedapp3 {
  margin-left: 96px;
}

.collapsible .linkedapp3 {
  margin-left: 0px;
}

.linkedapp4 {
  margin-left: 144px;
}

.collapsible {
  margin-left: 0px;
}

.linkedapp2 h3, .linkedapp3 h3, .linkedapp4 h3 {
  margin-bottom: 5px;
}

.collapsible .header-details {
  font-size: 11px;
  color: #0000ff;
  float: left;
  margin-right: 10px;
  margin-top: 2px;
}

.show-detail {
  display: none;
}

.collapsible .show-detail {
  display: block;
}

.collapsible .ui-state-active .show-detail {
  display: none;
}

.hide-detail {
  display: none;
}

.collapsible .ui-state-active .hide-detail {
  display: block;
}

.uploadList {
  padding: 0;
  list-style: none;
  margin: 0;
}

.uploadList li {
  list-style: none;
}

.uploadList input {
  width: auto;
}

.uploadList .file-invalid {
  cursor: pointer;
  color: #514721;
  padding-left: 48px;
  line-height: 24px;
  background: url(../img/upload/error.png) no-repeat 24px 5px;
  margin-bottom: 1px;
}

.uploadList .file-invalid span {
  background-color: #fff6bf;
  padding: 1px;
}

.uploadList .file {
  line-height: 2em;
  padding-left: 22px;
  background: url(../img/upload/attach.png) no-repeat 1px 50%;
}

.uploadList .file span,
.uploadList .file a {
  padding: 0 2px;
}

.uploadList .file .file-size {
  color: #666;
}

.uploadList .file .file-error {
  color: #8a1f11;
}

.uploadList .file .file-progress {
  width: 125px;
  height: 12px;
  vertical-align: middle;
  background-image: url(../img/upload/progress.gif);
}

.ftUpload.logoImage .ftNoImage {
  width: 200px;
  height: 200px;
  vertical-align: middle;
  background: url(../img/upload/no-image.png) no-repeat;
  background-size: cover;
  background-position: center center;
  border: 1px solid #E0E0E0;
}

.ftUpload.heroImage .ftNoImage {
  width: 200px;
  height: 200px;
  vertical-align: middle;
  background: url(../img/upload/no-image.png) no-repeat;
  background-size: cover;
  background-position: center center;
  border: 1px solid #E0E0E0;
}

.ftUpload.bannerImage li.ftNoImage {
  width: 100%;
  height: 200px;
  background: url(../img/upload/no-image.png) no-repeat;
  background-size: cover;
  background-position: center center;
  border: 1px solid #E0E0E0;
}

div.ftFileUploadImageView {
  width: 100px;
  height: 100px;
  overflow: hidden;
}

div.ftFileUploadImageView.bannerImage {
  width: 100%;
  height: 200px;
  overflow: hidden;
}


img.ftFileUploadImageView {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border: 0;
}

.ftFileUploadImageEditContainer {
   width: 100%;
   height: 40%;
   margin: 0 auto;
 }

.ftFileUploadImageEdit {
  max-width: 100%;
  display: block;
  margin: auto;
}

.f_uploadbtn {
  width: 100px;
  margin-left: 5px;
}

.appform .budget {
  border-collapse: collapse;
  width: 100%;
}

.appform .budget th, .appform .budget td {
  border: 1px solid #999999;
  padding: 3px 6px 3px 4px;
  vertical-align: top;
}

.appform .budget tr.total th {
  text-align: right;
}

.appform .budget td.amt {
  text-align: right;
}

body.mceContentBody {
  margin: 8px !important;
}

.sg-pad {
  padding: 5px;
}

.sg-indent {
  margin-left: 3em;
}

.bs-btn-inverse {
  display: inline-block;
  *display: inline;
  padding: 4px 14px;
  margin-bottom: 0;
  *margin-left: .3em;
  font-size: 14px;
  line-height: 20px;
  *line-height: 20px;
  color: #ffffff;
  text-align: center;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  vertical-align: middle;
  cursor: pointer;
  background-color: #363636;
  *background-color: #222222;
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));
  background-image: -webkit-linear-gradient(top, #444444, #222222);
  background-image: -o-linear-gradient(top, #444444, #222222);
  background-image: linear-gradient(to bottom, #444444, #222222);
  background-image: -moz-linear-gradient(top, #444444, #222222);
  background-repeat: repeat-x;
  border: 1px solid #bbbbbb;
  *border: 0;
  border-color: #222222 #222222 #000000;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  border-bottom-color: #a2a2a2;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);
  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
  *zoom: 1;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}

.bs-btn-inverse:hover,
.bs-btn-inverse:active,
.bs-btn-inverse.active,
.bs-btn-inverse.disabled,
.bs-btn-inverse[disabled] {
  color: #ffffff;
  background-color: #222222;
  *background-color: #151515;
}

.bs-btn-inverse:active,
.bs-btn-inverse.active {
  background-color: #080808 \9;
}

.bs-btn-inverse:first-child {
  *margin-left: 0;
}

.bs-btn-inverse:hover {
  color: #333333;
  text-decoration: none;
  background-color: #e6e6e6;
  *background-color: #d9d9d9;
  /* Buttons in IE7 don't get borders, so darken on hover */

  background-position: 0 -15px;
  -webkit-transition: background-position 0.1s linear;
  -moz-transition: background-position 0.1s linear;
  -o-transition: background-position 0.1s linear;
  transition: background-position 0.1s linear;
}

.bs-btn-inverse:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.bs-btn-inverse.active,
.bs-btn-inverse:active {
  background-color: #e6e6e6;
  background-color: #d9d9d9 \9;
  background-image: none;
  outline: 0;
  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}

.bs-btn-inverse.disabled,
.bs-btn-inverse[disabled] {
  cursor: default;
  background-color: #e6e6e6;
  background-image: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

/*
Copyright (c) 2010 Ivan Vanderbyl
Originally found at http://ivan.ly/ui

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

*/

/* Webkit animation keyframes */
@-webkit-keyframes animate-stripes {
  from {
    background-position: 0 0;
  }

  to {
    background-position: 44px 0;
  }
}

/* Bar which is placed behind the progress */
.ftProgress {
  /* Usual setup stuff */
  position: relative;
  width: 300px;
  height: 25px;

  /* Pad right so we don't cover the borders when fully progressed */
  padding-right: 2px;

  /* For browser that don't support gradients, we'll set a blanket background colour */
  background-color: #abb2bc;

  border: 1px solid #6B7178;
  overflow: hidden;

  /* Rounds the ends, we specify an excessive amount to make sure they are completely rounded */
  /* Adjust to your liking, and don't forget to adjust to the same amount in .ui-progress */
  border-radius: 25px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;

  /* Webkit background gradient */
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #b6bcc6), color-stop(1, #9da5b0));
  /* Mozilla background gradient */
  background: -moz-linear-gradient(#9da5b0 0%, #b6bcc6 100%);

  /* Give it the inset look by adding some shadows and highlights */
  -webkit-box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5), 0px 1px 0px 0px #FFF;
  -moz-box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5), 0px 1px 0px 0px #FFF;
  box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5), 0px 1px 0px 0px #FFF;
}

/* Progress part of the progress bar */
.ftProgressBar {
  /* Usual setup stuff */
  position: relative;
  display: block;
  overflow: hidden;

  /* Height should be 2px less than .ui-progress-bar so as to not cover borders and give it a look of being inset */
  height: 23px;

  top: 0;
  width: 100%;

  /* Rounds the ends, we specify an excessive amount to make sure they are completely rounded */
  /* Adjust to your liking, and don't forget to adjust to the same amount in .ui-progress-bar */
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  border-radius: 25px;

  /* Set the background size so the stripes work correctly */
  -webkit-background-size: 44px 44px; /* Webkit */

  /* For browser that don't support gradients, we'll set a blanket background colour */
  background-color: #4CADD0; /* green: #74d04c */

  /* Webkit embossing */
  -webkit-box-shadow: inset 0px 1px 0px 0px #83F3F3, inset 0px -1px 1px #3AA0C4; /* green: #dbf383 #58c43a */
  /* Mozilla embossing */
  -moz-box-shadow: inset 0px 1px 0px 0px #83F3F3, inset 0px -1px 1px #3AA0C4;
  /* IE9 and Opera embossing */
  box-shadow: inset 0px 1px 0px 0px #83F3F3, inset 0px -1px 1px #3AA0C4;

  /* Give it a higher contrast outline */
  border: 1px solid #327289; /* green: #4c8932 */

  /* Webkit magic */
  -webkit-animation: animate-stripes 2s linear infinite;

  /* TODO: Wait for Mozilla to support animation, then implement */
}

/* Progress indicator text */
.ftProgressLabel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  line-height: 25px;
  color: rgba(0, 0, 0, 0.6);
  text-shadow: rgba(255, 255, 255, 0.45) 0 1px 0px;
  white-space: nowrap;
  text-align: center;
}

@media print {

  html, body {
    background: #ffffff none;
  }

  #appnav, #user, #headlinks, #CLIENT_Top, #CLIENT_Bottom, #defaultheader, .btn {
    display: none;
  }

  #body {
    background: #ffffff none;
    margin: 0;
    padding: 10px;
  }

  /* Remove final padding to avoid blank final pages */
  #pagepad {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

label.disabled {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.properAsterisk {
    font-size: 120%;
    color: #C00;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.skip-link {
  position: absolute;
  top: -999px;
  left: 0;
  background: #222;
  color: #fff !important;
  padding: 8px 16px;
  z-index: 10001;
  font-size: 14px;
  text-decoration: none;
  transition: top 0.2s;
}

.skip-link:hover {
  color: #ddd !important;
}

.skip-link:focus {
  top: 0;
}

input.ftCalculatedField {
  background-color: #e4e4e4;
}

input.ftNonEditableField {
  background-color: #e4e4e4;
}

form.logoutForm {
  display: inline;
}

/* SectionRepeatActions order and size is important for accessibility */

div.SectionRepeatActions {
  white-space: nowrap;
  text-align: right;
}

div.SectionRepeatActions > * {
  margin-left: 0.2rem;
}

div.SectionRepeatActions input.ftButtonRowAction {
  color: white;
  width: 24px !important;
  height: 24px !important;
  font-family: monospace !important;
  font-size: smaller;
  font-weight: bold;
  text-align: center;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

div.SectionRepeatActions input:disabled.ftButtonRowAction {
  color: #707070;
  background-color: #f7f7f7;
  border: 1px solid #e4e4e4;
}

div.SectionRepeatActions input:disabled.ftButtonRowAction:hover {
  background-color: #f7f7f7 !important;
}

div.SectionRepeatActions input.ftButtonAddRow {
  background-color: #0A6A80;
  border: 1px solid #2da3cf;
}

div.SectionRepeatActions input:disabled.ftButtonAddRowMock {
  background-color: #2c8fb7;
  border: 1px solid #2da3cf;
}

div.SectionRepeatActions input.ftButtonAddRow:hover {
  background-color: #0C5C6C;
  cursor: pointer;
}

div.SectionRepeatActions input.ftButtonDelRow {
  background-color: #767676;
  border: 1px solid #797979;
}

div.SectionRepeatActions input:disabled.ftButtonDelRowMock {
  background-color: #777;
  border: 1px solid #797979;
}

div.SectionRepeatActions input.ftButtonDelRow:hover {
  background-color: #404040;
  cursor: pointer;
}

div.SectionRepeatActions input[disabled] {
  cursor: not-allowed !important;
}

/* end of SectionRepeatActions */

.ftRowValidationHint {
  border: none !important;
}
.ftRowValidationHint p {
  text-align: right;
}

.ftEditGridEnhanced td.ftEditGridEnhancedColumn, .ftEditGridEnhanced th.ftEditGridEnhancedColumn {
  border: none;
  padding: 1px;
  width: 40px;
}

#addMoreGridRow td {
  border-top: 1px solid #fff;/*hack for Chrome*/
}

.ftEditGridEnhanced td.ftEditGridEnhancedColumnAction {
  border: none;
}

legend.questionLegend {
  display: block;
  color: inherit;
}

.screenReaderOnly {
  position: absolute;
  left: -99999px;
}
.showWeb input[type="checkbox"],
.showWeb input[type="radio"] {
    vertical-align: baseline;
}

ul.ftFileList{
  margin-left: 0;
}

ul.ftFileList li{
  list-style: none;
}

.ftFieldTable.ftGreyTopBorder {
  border-top: 1px solid #cdd0d4;
  margin-bottom: 7px;
}

.ftFileRemove {
  float: right;
}

.appform input.ftFieldText {
  min-width: 100px;
}

.appform div.text-input {
  width: 92%;
  max-height: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 3px 0 2px;
  border-top: 2px solid #7a7a7a;
  border-left: 2px solid #7a7a7a;
  border-right: 2px solid #cecece;
  border-bottom: 2px solid #cecece;
  border-radius: 0;
  padding: 2px 2px 2px 2px;
  background-color: #f8f8f8;
}

.appform textarea {
  min-width: 100px;
}

.appform textarea.ftFieldAddressFull {
  width: max-content;
  min-width: 200px;
  height: 40px;
}

.appform .ftEditSectionGrid textarea {
  min-width: 95px;
}

.appform .ftEditSectionGrid textarea.ftFieldAddressFull {
  min-width: 140px;
}

.appform .ftEditSectionGrid .ftFieldDate {
  max-width: 100px;
}

.appform .ftEditName {
  min-width: 280px;
}

.appform select.ftChoiceSelect {
  width: 100%;
  max-width: 750px;
  min-width: 50px;
}

.ftEditGrid select.ftChoiceSelect {
  width: 100%;
  max-width: 380px;
}

select.ftUniversialChoice{
  width: auto;
  height: auto;
  max-width: 380px;
  overflow: auto;
}

.dropdown-disabled {
  display: inline-block;
  background: #e9ecef;
  color: #495057;
  border: 1px solid #666;
  padding: 5px;
  padding-right: 15px;
  min-height: 15px;
  min-width: 20px;
}

.dropdown-arrow-disabled {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 8px solid #888;
  float:right;
  position:relative;
  right: -10px;
  bottom: -5px;
}

.copyFromAbove{
  margin-bottom: 11px;
  margin-top: 4px;
  display: inline-block;
}

.ftEditGrid .ftFieldText, .ftEditGrid input.ftFieldText[type="text"], .ftEditGrid .ftFieldTextarea, .ftEditGrid textarea.ftFieldTextarea {
  width: 92%;
}

.ftEditGridEnhanced .ftFieldText, .ftEditGridEnhanced input.ftFieldText[type="text"], .ftEditGridEnhanced .ftFieldTextarea, .ftEditGridEnhanced textarea.ftFieldTextarea {
  width: 82%;
}

.ftEditGridEnhanced td {
  padding: 3px 1px 3px 3px;
}

table.ftEditGenderLens td {
  padding: 10px;
}

table.ftEditGenderLens .ftFieldUnknownCheckbox {
  margin-right: 5px;
}

table.ftEditGenderLens input.ftFieldPercentage {
  margin-bottom: 5px;
}

input.ftFieldPercentage {
  width: 60px;
}

a.ftGenderLensClearLink {
  cursor: pointer;
  padding-left: 10px;
  font-size: 85%
}

.previewNoRollovers {
  pointer-events:none;
}

.topRightAsterisk {
  float: right;
}

.topAsterisk {
  vertical-align: top;
}

td .ftEditBody {
  padding-right: 0px;
}

.properAsterisk.asteriskBetween {
  padding-right: 6px;
}


/* Force dropdown width to be wider than input, to prevent ugly wrapping */
.bigdrop {
  width: 580px !important;
  border-top: 1px solid #aaa !important;
}

/* Allow wrapping of text within selected items */
ul.select2-selection__rendered li.select2-selection__choice {
  word-wrap: break-word !important;
  text-overflow: inherit !important;
  white-space: normal !important;

  /* Otherwise SG-style puts an ugly bullet in a selection: */
  list-style: none none !important;
  list-style-type: none !important;
}

span.selection ul.select2-selection__rendered {
  /* Otherwise SG-style puts an ugly bullet in a selection: */
  list-style: none none !important;
  list-style-type: none !important;
}

/* Display of heirarchy */
.select2-results li.level1.levelIndent div.select2-result-label {
  padding-left: 10px;
}
.select2-results li.level2.levelIndent div.select2-result-label {
  padding-left: 40px;
}
.select2-results li.level3.levelIndent div.select2-result-label {
  padding-left: 70px;
}
.select2-results li.level4.levelIndent div.select2-result-label {
  padding-left: 100px;
}

/* Select2 matching characters highlight */
.select2-results li.select2-highlighted div.select2-result-label {
  background: #3875d7 !important;
}

/* Select2 search input */
.select2-container-multi .select2-choices {
  border-color: #ccc !important;
  background: #fff !important;
  background-image: none !important;
}

input.select2-default {
  color: #6c757d !important; /* accessibility change, same as text-muted */
}

.select2-container-disabled.select2-container-multi .select2-choices{
  background: #f8f8f8 !important;
}

/* 'Active; border around "Select2" choice form fields and results drop-list */
.bigdrop, .select2-drop-active, .select2-container-multi.select2-container-active .select2-choices {
  border: 1px solid #5897fb !important;
  border-top: 1px solid #5897fb !important;
}

/* Select2 remove drop-shadow on selected input */
.select2-container-multi.select2-container-active .select2-choices {
  -webkit-box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0) !important;
}

/* Select2 styling */
.select2-result-selectable .select2-match {
  background: #ffff00;
  background: rgba(255, 255, 0, 0.3);
}
.select2-container-multi .select2-choices .select2-search-choice {
  background: #efefef;
}
.select2-search-choice {
  padding-right: 2px !important;
}
.select2-search-choice div {
  font-size: 95%;
  height: 100%;
  word-wrap: break-word;
  text-overflow: inherit;
  white-space: normal;
  width: 100%;
}

.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice {
  width: 90%;
}

.select2-container-multi .select2-choices .select2-search-choice {
  width: 90%;
}

.select2-search-choice .divider {
  color: #999;
}


/* Force Select2 scrollbars to be visible in OSX */
div.select2-drop::-webkit-scrollbar {
  -webkit-appearance: none;
}

.ftTaxonomy, .ftLayeredChoice, .ftOutcomesChoice {
  display: none
}

.taxonomy_alt_selector_wrapper {
  display: none;
  position: absolute;
  width: 602px;
  height: 326px;
  z-index: 9;
  margin-top: -1px;
  box-shadow: 4px 3px 6px #ccc;
}
.taxonomy_alt_selector {
  width: 600px;
  height: 326px;
  background: white;
  border: 1px solid #ccc;
  white-space: nowrap;
}
.taxonomy_alt_scroller_wrapper {
  width: 590px;
  height: 235px;
  overflow: hidden;
  white-space: nowrap;
}

.taxonomy_alt_scroller {
  width: 1300px;
}

.taxonomy_alt_selector div div div {
  margin: 20px;
  float:left;
}

.taxonomy_alt_selector div div div select {
  height: 197px;
  width: 260px;
  display: block;
  font-size: 95%;
}

.close_taxonomy_alt_selector {
  float: right;
  margin-bottom: -20px;
  cursor: pointer;
  padding-right: 1px;
}

.taxonomy_alt_selector div div.divider {
  margin: 0px;
  /* position: absolute; */
  margin-left: -10px;
  margin-top: 120px;
  margin-right: -14px;
  color: #ccc;
  font-weight: bold;
  font-size: 16pt;
}

.taxonomy_alt_selector div div.divider img {
  width: 20px;
  filter: brightness(40%);
  opacity: 0.7;
}

.taxonomy_alt_selector .btn input {
  float: right;
  height: 23px;
  margin-top: 10px;
}

.taxonomy_alt_selector .btn input:disabled {
  background: #ccc;
  border-color: #999;
}

.taxonomy_alt_selector .btn input:disabled:hover {
  background: #ccc;
  border-color: #999;
}

.taxonomy_close_button {
  margin-top: 2px;
  margin-right: 1px;
  width: 16px;
  filter: brightness(40%);
  opacity:0.7;
}

.taxonomy_alt_selector .btn input.taxonomy_back_button{
  float:left;
  width:40px;
}

.select2-search-choice-close {
  margin-top: 2px;
}

.taxonomy_browse_all {
  font-size:90%;
}

.ftEditSection .ftOutcomesChoice {
  /*width: 150px;*/
  width: 210px;
  /*min-width: 130px;*/
  /*max-width: 357px;*/
}

input.select2-input {
  width: 100px;
  min-width: 100px;
}

.taxonomy_definition {
  margin-left:-13px;
  margin-right:-1px;
  margin-bottom: -3px;
  /* IE 8 */
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
  /* Good browsers */
  opacity:0.7;
}

.select2-search-choice .select2-search-choice-close {
  top: 2px;
  height: 12px;
}

/* Hide opt-group children by default */
.select2-result-sub > li.select2-result {
  display: none;
}

/* Spacing for 'No particularly targeted beneficiaries' option */
.select2-results li.level1.no-match div.select2-result-label {
  margin-bottom:6px;
}

.taxonomy_alt_selector .divider img {
  width:20px;
}

.level_heading {
  display:block;
  margin: 0 !important;
  margin-bottom: 2px !important;
  float:none !important;

}

.taxonomy_level1_selection .taxonomy_level1, .taxonomy_level2_selection .taxonomy_level2, .taxonomy_level3_selection .taxonomy_level3, .taxonomy_level4_selection .taxonomy_level4 {
  border: 1px solid #ccc;
  overflow-y: scroll;
  overflow-x: hidden;
  width:250px;
  height:190px;
  margin: 0px;
}

.taxonomy_level1_selection .browse_selection_choice, .taxonomy_level2_selection .browse_selection_choice, .taxonomy_level3_selection .browse_selection_choice, .taxonomy_level4_selection .browse_selection_choice {
  width:250px;
  border-bottom: 1px solid #eee;
  white-space: pre-wrap;
  padding:6px;
  padding-bottom:4px;
  margin:0;
}

.taxonomy_level1_selection .browse_selection_choice.highlighted, .taxonomy_level2_selection .browse_selection_choice.highlighted, .taxonomy_level3_selection .browse_selection_choice.highlighted, .taxonomy_level4_selection .browse_selection_choice.highlighted {
  background: #eee;
}

.taxonomy_level1_selection .browse_selection_choice input, .taxonomy_level2_selection .browse_selection_choice input, .taxonomy_level3_selection .browse_selection_choice input, .taxonomy_level4_selection .browse_selection_choice input {
  margin-right: 4px;
  margin-top: 1px;
  margin-bottom: 2px;
  float: left;
}

.selection_status {
  float:left;
  font-size:90%;
}

.taxonomy_alt_selector div div.divider.back img:hover, .close_taxonomy_alt_selector img:hover {
  filter: brightness(40%);
  /* IE 8 */
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  /* Good browsers */
  opacity:0.7;
}

.taxonomy_alt_selector .btn{
  height: 50px;
}

.btn .selection_status {
  text-align: left;
  width:  400px;
}

.browse_selection_choice.selected {
  color: #bbb;
}

/* UNGROUPED, EXPANDED BY DEFAULT */
.select2-results li.select2-result.disabled, .select2-results li.select2-result.select2-selected {
  display: list-item;
  color: #bbb;
}

/* GROUPED, COLLAPSED BY DEFAULT */
ul.select2-results .select2-result.select2-result-unselectable li.select2-result.disabled, ul.select2-results .select2-result.select2-result-unselectable li.select2-result.select2-selected {
  display: none;
}

#select2-description {
  background: #F2F1F1;
  font-size: 90%;
  display:none;
  border-top: 1px solid #D9DAD9;
  color: #666;
  border-radius: 0 0 4px 4px;
}
#select2-description-heading {
  font-weight: normal;
  padding:3px;
  color: #000;
}
#select2-description-heading em {
  font-weight: bold;
  font-style: normal;
}
#select2-description-text {
  padding:3px;
  padding-top:1px;
}

/* Reduce space between title and body */
.qtip-youtube .qtip-titlebar {
  padding: 2px 2px 2px 2px;
  margin: 3px 5px -5px 6px;
}

.modal .hint {
  color: #666;
  font-size: 80%;
  text-align: center;
}

/* SG-23712: Left-align hint containers that have word/char count displays */
.modal .hint:has(.ftWordCountDisplay),
.modal .hint:has(.ftCharCountDisplay) {
  text-align: left;
}

/* Force italic and bold fonts styling */
em, em * {
  font-style: italic !important;
}

strong, strong * {
  font-weight: bold !important;
}

input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
  cursor: not-allowed;
  color: #495057;
  background-color: #e9ecef;
}

#appnav ol li a.inactiveLink, #appnav ol li a.inactiveLink:hover, #appnav ol li a.inactiveLink:active, #appnav ol li a.inactiveLink:focus {
  text-decoration: none!important;
  cursor: not-allowed;
  opacity: 0.5;
  border: none;
}

.dropdown-item {
  font-size: 14px;
  text-decoration: none !important;
}

.btnSubmitBlock {
  border-color:lightgray !important;
  color:lightgray !important;
}

.btnSubmitBlock:hover {
  background-color: gray !important;
}
.select2-chosen {
  word-wrap: break-word;
  min-width: 100px;
}

.select2-container {
  width: 100%;
}

.ftEditColumns .dropdown_2, .ftViewColumns .dropdown_2 {
  width: 100%;
}

.select2-container .select2-choice > .select2-chosen {
  width: 100px;
}

.cookie-banner {
  position: fixed;
  bottom: 0px;
  /*left: 15%;*/
  /*right: 15%;*/
  width: 99%;
  padding: 10px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #3B8708;
  border-radius: 5px;
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2);
  color: #fff;
}

.cookie-banner a {
  color: #fff;
  text-decoration: underline;
}

#footer .cookie-banner a:hover,
#footer .cookie-banner a:active,
#footer .cookie-banner a:focus {
  color: #000;
}

.cookie-banner-close {
  height: 40px;
  width: 120px;
  background-color: white;
  border: none;
  color: #006984;
  border-radius: 2px;
  cursor: pointer;
  font-size: 100%;
  font-weight: bold;
  margin-left: 20px;
  margin-right: 8px;
}

.eofy-banner {
  position: fixed;
  bottom: 0px;
  /*left: 15%;*/
  /*right: 15%;*/
  width: 960px;
  padding: 29px 10px 16px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #00819E;
  border-radius: 5px;
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.2);
  line-height: 22px;
  color: white;
}

#footer .eofy-banner a:hover {
  color: black;
}

.eofy-banner-close {
  height: 40px;
  width: 120px;
  background-color: white;
  border: none;
  color: #222222;;
  border-radius: 2px;
  cursor: pointer;
  font-size: 100%;
  font-weight: bold;
  margin-left: 20px;
  margin-right: 8px;
}

select.ftFieldNameTitle {
  width: 70px;
}

.ui-autocomplete.ui-widget {
  font-family: inherit;
  font-size: inherit;
  box-shadow: 0 1px 5px rgba(0,0,0,0.65);
  border-radius: 4px;
  max-height: 210px;
  overflow-y: auto;
  overflow-x: hidden;
}

.ui-autocomplete.ui-menu .ui-state-disabled{
  opacity: 1;
  margin: 0;
}

.sf-icon-prefill {
  padding-left: 7px;
  padding-bottom: 3px;
  vertical-align: middle;
}

.ftEditAddress > div:has(> .sf-address-prefill-btn) {
  position: relative;
  display: flow-root;
}

textarea.ftFieldTextarea:has(~ .sf-address-prefill-btn) {
  width: 100%;
  min-width: 0;
  min-height: 36px;
  padding-right: 60px;
  box-sizing: border-box;
}

.sf-address-prefill-btn {
  position: absolute;
  top: 4px;
  right: 4px;
  background: none;
  border: 1px solid #3c529e;
  border-radius: 0.3rem;
  padding: 4px 6px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.sf-address-prefill-btn-label {
  color: #3c529e;
  font-size: 0.85rem;
  line-height: 1;
}

.sf-address-prefill-btn[aria-pressed="true"] .sf-address-prefill-btn-label {
  color: #fff;
}

.sf-address-prefill-btn:hover:not(:disabled) {
  background-color: #e8ecf5;
}

.sf-address-prefill-btn:disabled {
  opacity: 0.4;
  cursor: default;
  border-color: #999;
}

.sf-address-prefill-btn[aria-pressed="true"] {
  background-color: #3c529e;
  border-color: #3c529e;
}

.sf-address-prefill-btn:focus-visible {
  outline: 2px solid #3c529e;
  outline-offset: 2px;
}

.sf-noresult {
  color: #6c757d !important;
  display: inline-block;
  padding-left: 0;
  text-decoration: none;
}

.orgNameTitle {
  margin-top:-17px;
  padding-bottom: 20px;
}
.ui-autocomplete-loading {
  background: url('../img/in_progress.gif') no-repeat right center;
}

.autocomplete-label {
  padding: 2px 4px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  color: #ffffff;
  text-align: center;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
}

.autocomplete-label-name {
  background: grey;
  margin-right: 0.5rem
}

.autocomplete-label-tag {
  background: lightgrey;
  color: black;
  margin-right: 0.5rem
}

.ui-menu .ui-menu-item a.ui-state-focus {
  border-radius: 0px;
  background: #e6e6e6;
  border: 0px;
  margin: 0px !important;
}

.applicantOrgSelect {
  min-width: 130px;
}

.sf-msg-container {
  width: 650px;
  padding: 10px 20px;
  background-color: #efefef;
  border-radius: 25px;
  margin: auto;
}

.create-sf-profile-btn {
  user-select: none;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.3rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  color: #fff !important;
  background-color: #3c529e;
  cursor: pointer;
  text-decoration: none;
}

a.create-sf-profile-btn:hover, a.create-sf-profile-btn:focus {
  color: #fff;
}

.sf-btn-container {
  text-align: center;
}


/* Fix address autocomplete drop-down position when the question is horizontally scrolled. */
.ftEditAddress .leaflet-pelias-results {
  position: relative !important;
}

.in-front-of-popup {
  z-index: 1050 !important;
}

.sg-section-loading {
  border: none !important;
  box-shadow: none !important;
  background: none !important;
  text-align: center;
}
.upload-sf-btn {
  border: 1px solid #3c529e;
  display: inline-flex;
  align-items: center;
  font-size: 90%;
  color: #3c529e;
  background-color: white;
  padding: 0.5em;
  border-radius: 0.3rem;
  cursor: pointer;
}
.upload-sf-btn:before {
  content: url(/sf-favicon.svg);
  width: 16px;
  display: inline-block;
  padding-right: 0.2em;
}
a.upload-sf-btn:link, a.upload-sf-btn:visited, a.upload-sf-btn:hover, a.upload-sf-btn:active  {
  border: 1px solid #3c529e;
  color: #3c529e;
  text-decoration: none;
}

a.upload-sf-btn:hover {
  background-color: #3c529e;
  color: white;
  transition: all 0.2s;
}

#sf-modal > .modal-body {
  padding: 15px;
}
#sf-modal .modal-footer {
  background-color: transparent;
  border-top: 1px solid #eee;
}
#sf-modal .info .search label {
  padding-left: 2em;
}
#sf-modal .info:has(.search) {
  padding-bottom: 45px;
  border-bottom: 1px solid #eee;
}
#sf-modal .info span {
  float: left;
  width: 45%;
}
#sf-modal #txSearch {
  width: 11em;
  height: 30px;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding-left: 5px;
}
.table-section table {
  width: 100%;
  border-collapse: collapse;
}
.table-section td {
  border: none;
  height: 2em;
}
.table-section .no-expiry {
  font-style: italic;
  color: #aaa;
}
.table-section th:first-child {
  width: 15px;
  padding-left:1em;
}
.table-section th:last-child {
  width: 7.5em;
}
.table-section th:nth-child(2) {
  width: 8em;
}
.table-section th {
  text-align: left;
  border-left: 0;
  border-right: 0;
  border-top: none;
  border-bottom: 1px solid #eee;
}
.table-section tbody tr:nth-child(even), .table-section td.empty {
  background-color: #eee;
  color: black;
}
.fileupload-buttonbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em;
}
.upload-file-btn {
  border: 1px solid #3c529e;
  display: inline-flex;
  align-items: center;
  font-size: 90%;
  color: #3c529e;
  border-radius: 0.3rem;
  cursor: pointer;
  padding: 0.5em;
  position: relative;
  overflow: hidden;
}
.upload-file-btn input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  font-size: 200px;
  direction: ltr;
}
.upload-file-btn:hover {
  background-color: #3c529e;
  color: white;
  transition: all 0.2s;
}
.ftUpload .disabled {
  pointer-events: none;
  opacity: 0.4;
}

.upload-file-btn:focus-within {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

.accessibility-help { font-size: smaller; font-weight: normal; white-space: nowrap; }

a.link-disabled {
  pointer-events: none;
  text-decoration: none;
}


.fileinput-button input[disabled] {
  background-color: inherit;
}

/* cannotFindAddress requires the same colours as alert-info */

.cannotFindAddress {
  color: #0c5460;
}

.cannotFindAddress:hover {
  background-color: #d9edf7 !important;
  border-color: #bee5eb !important;
}

/*
This is a tiny subset of classes copied from Bootstrap.
Pending any consolidation of CSS files, we'll keep this here.
These bootstrap styles have been added here for accessibility purposes.
*/

/* alerts */

.alert {
  padding: 8px 35px 8px 14px;
  margin-bottom: 20px;
  color: #856404;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  background-color: #fff3cd;
  border: 1px solid #ffeeba;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.alert .close {
  position: relative;
  top: -2px;
  right: -21px;
  line-height: 20px;
}

.alert-danger,
.alert-error {
  color: #721c24;
  background-color: #fcd7da;
  border-color: #f5c6cb;
}

.alert-info {
  color: #0C5460;
  background-color: #d9edf7;
  border-color: #bee5eb;
}

.alert-success {
  color: #155724;
  background-color: #d4eddc;
  border-color: #c3e6cb;
}

.ml-1 { margin-left: 0.25rem; }
.ml-4 { margin-left: 1rem; }
.mr-1 { margin-right: 0.25rem; }
.mr-4 { margin-right: 1rem; }
.mt-1 { margin-top: 0.25rem; }

.text-center { text-align: center; }
.text-end { text-align: right; }
.text-muted { color: #6c757d; }

/* end of bootstrap classes */

.date-picker .date-picker-highlight {
  font-weight: 600;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.ui-menu-item-wrapper.no-underline {
  text-decoration: none;   /* removes underline */
  color: inherit;          /* optional: keeps text color same as li */
}


fieldset.sg-fieldset-reset {
  border: none;
  padding: 0;
  margin: 0;
}

.ftAddressUnitFlatNumber .form-label {
  font-weight: bolder
}

.row.ftAddressUnitFlatNumber {
  margin: 0.3rem 0 .3rem 0 !important;
}

a.ftAddressUnitFlatNumberToggleLink.ftAddressUnitFlatNumber,
a.ftAddressUnitFlatNumberToggleLink.ftAddressUnitFlatNumber:hover,
a.ftAddressUnitFlatNumberToggleLink.ftAddressUnitFlatNumber:focus {
  text-decoration: none;
}

a.ftAddressUnitFlatNumberToggleLink.ftAddressUnitFlatNumber {
  cursor: pointer;
  display: inline-block;
  color: #0088cc;
}

a.ftAddressUnitFlatNumberToggleLink.ftAddressUnitFlatNumber:hover {
  color: #005580;
}

.ftAddressUnitFlatNumberToggleLink::before {
  content: " ▼";
  font-size: 0.8em;
}

#session-timeout-modal {
  z-index: 9999;
}