/* ==== GENERAL ============================================= */
form.form {
  font-family: 'Helvetica Neue';
}
form.form .form-title {
  font-size: 2em;
  margin: .5em 0;
}
form.form .form-description {
  margin: .5em 0 1em;
}
.section .section-title {
  font-size: 1.5em;
  margin: .5em 0 1em;
}
.section .section-description {
  padding-top: 1em;
  padding-bottom: 1.5em;
  margin-bottom: 1.5em;
  border-bottom: 1px solid #efefef;
}
img.tiny-thumb {
  height: 20px;
  width: auto;
  border: 1px solid #ccc;
  border-radius: 3px;
  margin-bottom: -0.5em;
  margin-left: 3px;
}
.tiny-color-swatch {
  border-radius: 3px;
  border: 1px solid #ccc;
  width: 10px;
  height: 10px;
  display: inline-block;
  position: relative;
  top: 3px;
}
.field {
  margin-bottom: 1.5em;
}
.field .field-label {
  margin-bottom: .5em;
  margin-top: 0;
  font-size: 1em;
}
.field input[type="text"] {
  margin: 0;
  padding: .5em 3px;
  height: 2em;
  line-height: 1em;
  max-width: 100%;
}
.field textarea {
  max-width: 100%;
  padding: .5em 3px;
  line-height: 1.25em;
  margin: 0;
}
.field .field-description {
  display: block;
  padding: .5em 0;
}
.field-message,
.section-message,
.form-message {
  border: 1px solid #efefef;
  background: #FCFBF0;
  font-style: italic;
  padding: .75em 15px;
  margin-bottom: 1em;
}
.field-error,
.section-error,
.form-error {
  color: #A31010;
  font-style: italic;
  display: block;
}
.field-error .error-message {
  color: inherit;
  font-weight: normal;
}
.field-error .error-message,
.section-error,
.form-error {
  padding: .5em 0;
}
/* ==== TABS ============================================= */
.form-tabs-container .form-tabs {
  margin-bottom: 1em;
}
.form-tabs-container .form-tabs .form-tab {
  float: left;
  margin-left: 5px;
  margin-bottom: 0;
}
.form-tabs-container .form-tabs .form-tab:first-child {
  margin-left: 0;
}
.form-tabs-container .form-tabs .form-tab > a {
  display: block;
  padding: .5em 10px;
  color: #666;
  text-decoration: none;
  -webkit-transition: all .2s ease;
  -moz-transition: all .2s ease;
  -ms-transition: all .2s ease;
  -o-transition: all .2s ease;
  transition: all .2s ease;
}
.form-tabs-container .form-tabs .form-tab > a:hover {
  border-color: #666;
}
.form-tabs-container .form-tabs .form-tab.active > a {
  color: #fff;
  background: #333;
}
.form-tabs-container .form-tabs .form-tab.active.has-error > a {
  border-color: #A31010;
  color: #A31010;
}
.form-tabs-container .form-tabs .form-tab.has-error > a {
  color: #A31010;
}
.form-tabs-container .form-tabs-content {
  clear: both;
}
.form-tabs-container .form-tabs-content .section .section-title {
  margin-top: 0;
}
/* ==== FIELDS ============================================= */
.field-type-address {
  max-width: 500px;
}
.field-type-address input[type="text"] {
  width: 100%;
}
.field-type-address > .field-input {
  margin: 0 -5px;
}
.field-type-address > .field-input > .field {
  padding: 0 5px;
  box-sizing: border-box;
}
.field-type-address > .field-input > .field-id-city,
.field-type-address > .field-input > .field-id-state,
.field-type-address > .field-input > .field-id-zip {
  float: left;
  width: 25%;
  clear: none;
}
.field-type-address > .field-input > .field-id-city {
  width: 50%;
}
div.field-type-checkbox .field-input input,
div.field-type-radio .field-input input,
div.field-type-checkbox .field-input label,
div.field-type-radio .field-input label {
  line-height: 1em;
  display: inline-block;
}
div.field-type-checkbox .field-input input + label,
div.field-type-radio .field-input input + label {
  padding-left: 3px;
}
div.field-type-checkbox .multiple-options {
  padding-bottom: 0;
}
div.field-type-checkbox .multiple-options label {
  display: block;
}
div.field-type-checkbox .multiple-options.inline label {
  display: inline-block;
  margin-right: 10px;
  line-height: 1.5em;
}
div.field-type-checkbox .multiple-options.inline label:first-child {
  padding-left: 0;
}
div.field-type-radio .field-input.inline .radio-input {
  display: inline-block;
  margin-right: 10px;
  line-height: 1.5em;
}
div.field-type-radio .field-input.inline .radio-input:first-child {
  padding-left: 0;
}
.field-type-color .color-toggle {
  display: inline-block;
}
.field-type-color input.color-picker-input {
  padding-left: 23px;
  padding: 4px 4px 2px 23px;
  height: auto;
}
.field-type-color .minicolors-theme-default .minicolors-swatch {
  top: 4px;
  left: 3px;
}
.field-type-divider {
  border-top: 0;
}
.field-type-divider .divider-bar {
  border-width: 0;
  border-bottom: 1px solid #ddd;
  margin-top: 0;
}
.field-type-divider .field-label {
  float: left;
  height: 0;
}
.field-type-divider .field-label label {
  background: #fff;
  position: relative;
  z-index: 1;
  padding-right: 15px;
  display: inline-block;
}
.field-type-divider .field-label + .divider-bar {
  padding-top: .75em;
}
.field-type-group .field-input > .field {
  clear: none;
}
.field-type-group .field {
  margin-bottom: .5em;
}
div.field-type-hidden {
  display: none;
}
div.field-type-info .field-description {
  padding: 1em 15px;
  border: 1px solid #efefef;
  background: #fafafa;
}
div.field-type-info .info-content {
  margin-top: 1em;
  padding: 1em 15px;
  border-left: 5px solid #efefef;
}
div.field-type-link .link-textarea {
  display: none;
}
div.field-type-link .link-option {
  display: inline-block;
  white-space: nowrap;
  padding-left: 15px;
  margin-bottom: 0;
}
div.field-type-link .link-option > * {
  display: inline-block;
}
div.field-type-link .link-option.field-type-text input {
  margin-left: 7px;
}
div.field-type-link .link-option.field-id-url input {
  width: 180px;
}
div.field-type-link .link-option.field-type-checkbox input {
  margin-right: 5px;
}
div.field-type-link .link-option:first-child {
  padding-left: 0;
}
div.field-type-link .field-clone > .field-input > .field + .field {
  margin-top: 0em;
}
.field-type-listSort > .field-label label {
  cursor: default;
}
.field-type-listSort .field-cloneable .field-clone {
  padding-top: .33em;
  padding-bottom: .33em;
}
.field-type-listSort .field-cloneable .field-clone .field-input {
  display: none;
}
.field-type-listSort .field-cloneable .field-clone:hover {
  cursor: pointer;
  background: #fcfcf8;
}
.field-type-listPick .zero-text {
  display: none !important;
}
.field-type-listPick .list-title {
  text-align: center;
  color: #999;
  font-style: italic;
}
.field-type-listPick .search-input {
  float: right;
  margin: 5px 0;
}
.field-type-listPick .search-input input {
  border: 1px solid #ccc;
  transition: .3s ease border;
}
.field-type-listPick .search-input input:focus {
  box-shadow: none;
  outline: none;
}
.field-type-listPick .search-input input.has-value {
  border: 3px solid #3789be;
}
.field-type-listPick .search-input + .list-title {
  text-align: left;
  margin: .25em 0;
}
.field-type-listPick > .field-label label {
  cursor: default;
}
.field-type-listPick .selected-options-container,
.field-type-listPick .unselected-options-container {
  float: left;
  padding: .125em 8px;
  box-sizing: border-box;
  position: relative;
}
.field-type-listPick .unselected-options-container {
  background: #fafafa;
  width: 40%;
}
.field-type-listPick .selected-options-container {
  width: 58%;
  margin-left: 2%;
}
.field-type-listPick .selected-options-container .list-title {
  color: #666;
}
.field-type-listPick .unselected-options {
  min-height: 2em;
  padding-right: 25px;
}
.field-type-listPick .unselected-options .field-cloneable .field-clone .field-label {
  color: #aaa;
}
.field-type-listPick .unselected-options .field-cloneable .field-clone .clone-number-main {
  background: #ccc;
  border: 1px solid transparent;
  color: #fff;
}
.field-type-listPick .unselected-options .transfer-from {
  display: none;
}
.field-type-listPick .unselected-options .transfer {
  left: 100%;
}
.field-type-listPick .selected-options-container {
  background: #fff;
  border: 1px solid #ccc;
  padding-bottom: .5em;
}
.field-type-listPick .selected-options {
  padding-left: 25px;
}
.field-type-listPick .selected-options .transfer-to {
  display: none;
}
.field-type-listPick .selected-options .transfer {
  right: 100%;
}
.field-type-listPick .selected-options.filtered .clone-number-main,
.field-type-listPick .unselected-options.filtered .clone-number-main {
  background: #81b7da !important;
  border-color: #3789be !important;
}
.field-type-listPick .field-cloneable .field-clone .clone-number-main {
  background: #777;
  border-color: #777;
  color: #fff;
  width: 14px;
  height: 15px;
  line-height: 15px;
}
.field-type-listPick .field-cloneable .field-clone {
  padding-top: 0;
  padding-bottom: 0;
}
.field-type-listPick .field-cloneable .field-clone .field-label {
  margin-bottom: 0;
  line-height: 13px !important;
}
.field-type-listPick .field-cloneable .field-clone .field-label label {
  padding-top: 1px;
  padding-bottom: 2px;
  display: block;
}
.field-type-listPick .field-cloneable .field-input {
  display: none;
}
.field-type-listPick .transfer {
  position: absolute;
  top: 0;
}
.field-type-listPick .transfer-to,
.field-type-listPick .transfer-from {
  display: inline-block;
  padding: 0 5px;
  margin: 0 8px;
  color: #666;
  cursor: pointer;
}
.field-type-listPick .transfer-to:hover,
.field-type-listPick .transfer-from:hover {
  background: #fff;
  color: #0074a2;
}
.field-type-listPick .transfer-to {
  font-size: 20px;
  margin-top: -3px;
  opacity: 1;
  transition: .3s ease opacity;
}
.field-type-listPick .transfer-to:after {
  content: '\00BB';
}
.field-type-listPick .transfer-from {
  font-size: 14px;
  padding: 3px 5px;
  color: #cc0000;
  margin-top: -6px;
}
.field-type-listPick .transfer-from:after {
  content: 'x';
}
.field-type-listPick.at-max .transfer-to {
  opacity: 0;
  cursor: default;
}
.field-type-map .lat-lng-container {
  padding: .5em 0;
}
.field-type-map .latitude,
.field-type-map .longitude {
  float: left;
  position: relative;
}
.field-type-map .latitude > label,
.field-type-map .longitude > label {
  position: absolute;
  top: 0;
  left: 0;
  margin: 3px;
  width: 30px;
}
.field-type-map .latitude > input,
.field-type-map .longitude > input {
  padding-left: 28px !important;
  font-size: 15px;
  font-weight: bold;
  width: 100px;
}
.field-type-map .latitude,
.field-type-map .longitude {
  margin-right: 15px;
}
.field-type-map .map-container {
  width: 100%;
  position: relative;
}
.field-type-map .map {
  display: none;
  border: 5px solid #fff;
  box-shadow: 0 0 2px #888;
  transition: .3s ease opacity;
}
.field-type-map .toggle-map {
  cursor: pointer;
  z-index: 1;
  padding: .25em 15px;
  float: left;
  background: #0074a2;
  color: #fff;
  border: 1px solid #efefef;
}
.field-type-map .toggle-map > .hide-map {
  display: none;
}
.field-type-map.showing-map .place-marker {
  display: block;
}
.field-type-map.showing-map .toggle-map {
  background: #fff;
  color: #0074a2;
}
.field-type-map.showing-map .toggle-map > .hide-map {
  display: inline;
}
.field-type-map.showing-map .toggle-map > .show-map {
  display: none;
}
.field-type-map .place-marker {
  cursor: pointer;
  padding: .25em 15px;
  border: 1px solid #efefef;
  float: left;
  margin-left: 10px;
  background: #fff;
  color: #0074a2;
  display: none;
}
.field-type-map .place-marker > .active {
  display: none;
}
.field-type-map.placing-marker .place-marker {
  background: #0074a2;
  color: #fff;
}
.field-type-map.placing-marker .place-marker > .inactive {
  display: none;
}
.field-type-map.placing-marker .place-marker > .active {
  display: block;
}
div.field-type-number .field-input .ui-spinner {
  height: 24px;
  display: inline-block;
  position: relative;
}
div.field-type-number .field-input .ui-spinner .ui-spinner-button {
  height: 10px;
  width: auto;
  position: absolute;
  right: 0;
  font-size: 8px;
  padding: 0px 3px;
  cursor: pointer;
  color: #333;
}
div.field-type-number .field-input .ui-spinner .ui-spinner-button:hover {
  color: #000;
}
div.field-type-number .field-input .ui-spinner .ui-spinner-button.ui-spinner-up {
  top: 0;
}
div.field-type-number .field-input .ui-spinner .ui-spinner-button.ui-spinner-down {
  bottom: 2px;
}
div.field-type-number .field-input .ui-spinner .ui-spinner-button .ui-icon {
  text-indent: 0;
}
.js .has-popup .field {
  opacity: 0;
  height: .75em !important;
}
.no-js .field-type-popup {
  display: none;
}
.field-type-popup {
  padding: .5em 0;
  width: auto;
  cursor: pointer;
  position: relative;
}
.field-type-popup:hover {
  background: #fafafa;
}
.field-type-popup .field-label label {
  display: block;
  cursor: pointer;
}
.field-type-popup .popup-fields {
  display: none;
}
.field-type-popup .popup-preview {
  color: #555;
  margin-bottom: 0;
}
.field-type-popup .popup-preview + .show-popup-fields {
  margin-top: 1em;
}
.field-type-popup .popup-preview ol,
.field-type-popup .popup-preview ul {
  margin: 0 0 0 15px;
  line-height: 1em;
}
.field-type-popup .popup-preview ol > li,
.field-type-popup .popup-preview ul > li {
  margin: 0;
}
.field-type-popup .popup-preview .field-title:after {
  content: ':';
}
.field-type-popup .popup-preview .field-value[style*="display: none;"] + br {
  display: none;
}
.field-type-popup .popup-preview .group-subfields {
  display: block;
  font-size: .875em;
}
.field-type-popup .popup-preview .subfield {
  display: inline-block;
  padding-right: 15px;
}
.field-type-popup .popup-preview .subfield + .subfield {
  padding-left: 4px;
  border-left: 1px solid #ccc;
}
.field-type-popup .popup-preview .subfield:last-child {
  padding-right: 0;
}
.field-type-popup:after {
  content: '\f08e' !important;
  font-family: 'FontAwesome';
  color: #333;
  font-size: 1.5em;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  margin: 5px;
  cursor: pointer ;
}
.field-type-popup:hover > .field-label {
  color: #2581a2;
}
.field-type-popup:hover:after {
  color: #2581a2;
}
.popup-fields {
  padding: 0 30px;
  max-width: 820px !important;
  margin: 0 auto;
}
.popup-fields .inner-container {
  background: #fff;
  padding: 2em 30px;
}
.popup-fields .popup-fields-close {
  display: inline-block;
  padding: .5em 10px;
  background: #0074a2;
  color: #fff;
  cursor: pointer;
}
.popup-fields .popup-fields-close:hover {
  background: #004f6f;
}
.popup-fields .popup-fields-cancel {
  float: right;
  padding: .5em 10px;
  color: #333;
  background: #efefef;
  cursor: pointer;
}
.popup-fields .popup-fields-cancel:hover {
  background: #ccc;
}
.field-type-time .field-input > .field {
  float: left;
  padding-left: 20px;
  clear: none;
  margin-top: 0 !important;
}
.field-type-time .field-input > .field:first-child {
  padding-left: 0;
}
.field-type-time .field-input > .field > .field-label > label {
  padding-top: 5px;
  font-weight: normal;
  font-size: 10px;
}
.field-type-background .field-type-group .field-label {
  float: left;
}
.field-type-background > .field-input > .field {
  white-space: nowrap;
}
.field-type-background > .field-input > .field > .field-label {
  padding-right: 10px;
  width: 60px;
  vertical-align: top;
}
.field-type-background > .field-input > .field > .field-label label {
  white-space: normal;
}
.field-type-background > .field-input > .field > * {
  display: inline-block;
}
.field-type-background > .field-input > .field.field-type-media .upload_button {
  margin: 0 !important;
}
.field-type-background > .field-input > .field.field-id-position .field > .field-label {
  padding-top: 5px !important;
  width: 20px !important;
}
.field-type-background > .field-input > .field.field-id-position .field > .field-input,
.field-type-background > .field-input > .field.field-id-position .field > .field-description {
  margin-left: 30px !important;
}
.field-type-background > .field-input > .field.field-id-position .field.field-id-x,
.field-type-background > .field-input > .field.field-id-position .field.field-id-x_amount,
.field-type-background > .field-input > .field.field-id-position .field.field-id-y,
.field-type-background > .field-input > .field.field-id-position .field.field-id-y_amount {
  float: left;
  width: auto !important;
}
.field-type-background > .field-input > .field.field-id-position .field.field-id-x,
.field-type-background > .field-input > .field.field-id-position .field.field-id-y {
  clear: both;
}
.field-type-background > .field-input > .field.field-id-position .field.field-id-x_amount,
.field-type-background > .field-input > .field.field-id-position .field.field-id-y_amount {
  padding-top: .33em;
}
.field-type-background > .field-input > .field.field-id-position .field.field-id-x_amount input,
.field-type-background > .field-input > .field.field-id-position .field.field-id-y_amount input {
  height: 2em !important;
}
.field-type-background > .field-input > .field.field-id-size,
.field-type-background > .field-input > .field.field-id-size_amount {
  float: left;
}
.field-type-background > .field-input > .field.field-id-size_amount {
  margin-left: 30px;
  padding-top: .33em;
  clear: none;
}
.field-type-background > .field-input > .field.field-id-size_amount input {
  height: 2em !important;
}
.field-type-background > .field-input > .field.field-id-image {
  margin-bottom: 0;
}
.field-type-background > .field-input > .field.field-id-repeat,
.field-type-background > .field-input > .field.field-id-size,
.field-type-background > .field-input > .field.field-id-position {
  margin-left: 60px;
  margin-bottom: 0;
  padding-left: 10px;
  border-left: 1px solid #ccc;
}
.field-type-background > .field-input > .field.field-id-repeat input,
.field-type-background > .field-input > .field.field-id-size input,
.field-type-background > .field-input > .field.field-id-position input,
.field-type-background > .field-input > .field.field-id-repeat select,
.field-type-background > .field-input > .field.field-id-size select,
.field-type-background > .field-input > .field.field-id-position select,
.field-type-background > .field-input > .field.field-id-repeat label,
.field-type-background > .field-input > .field.field-id-size label,
.field-type-background > .field-input > .field.field-id-position label {
  font-size: 12px;
}
.field-type-background > .field-input > .field.field-id-repeat label,
.field-type-background > .field-input > .field.field-id-size label,
.field-type-background > .field-input > .field.field-id-position label {
  font-weight: normal;
  display: block;
  padding-top: .25em;
}
.field-type-background > .field-input > .field.field-id-size_amount {
  margin-bottom: 0;
}
.field-type-background > .field-input > .field.field-id-size_amount input,
.field-type-background > .field-input > .field.field-id-size_amount select,
.field-type-background > .field-input > .field.field-id-size_amount label {
  font-size: 12px;
}
/* ==== CLONEABLES ============================================= */
.field-cloneable {
  padding-top: .5em;
  padding-right: 0;
}
.field-cloneable .zero-text {
  border: 1px solid #efefef;
  padding: 1em 15px;
  cursor: pointer;
  box-sizing: border-box;
  background: #fff;
  height: 3em;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
  opacity: 1;
}
.field-cloneable .zero-text:hover {
  border-color: #ccc;
}
.field-cloneable .clone-prototype {
  display: none !important;
}
.field-cloneable .field-clone {
  position: relative;
  padding-left: 30px;
  padding-right: 35px;
  padding-top: 1em;
  padding-bottom: .75em;
  border: 1px dashed #ccc;
  background: #fff;
  font-size: .875em;
  margin-bottom: .25em;
}
.field-cloneable .field-clone > .field-input > .field {
  margin-bottom: 0;
}
.field-cloneable .field-clone > .field-input > .field + .field {
  margin-top: 1em;
}
.field-cloneable .field-clone .clone-number-main {
  position: absolute;
  top: -1px;
  left: -1px;
  background: #fff;
  border: 1px solid #0074a2;
  color: #0074a2;
  height: 20px;
  font-weight: bold;
  line-height: 20px;
  min-width: 20px;
  text-align: center;
  cursor: move;
}
.field-cloneable .field-clone .clone-controls {
  display: none;
  position: absolute;
  right: 0;
  bottom: 0;
  padding: .25em 5px;
  -webkit-transition: all .5s ease;
  -moz-transition: all .5s ease;
  -ms-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
  opacity: 0;
  overflow: hidden;
  width: 0;
  z-index: 1;
}
.field-cloneable .field-clone .clone-controls .add-clone,
.field-cloneable .field-clone .clone-controls .remove-clone {
  padding: 0 4px 3px;
  font-size: 1.125em;
  line-height: 1em;
  width: 16px;
  text-align: center;
  font-weight: bold;
  background: #aaa;
  color: #fff;
  cursor: pointer;
  float: right;
  clear: both;
}
.field-cloneable .field-clone .clone-controls .add-clone:hover,
.field-cloneable .field-clone .clone-controls .remove-clone:hover {
  background: #999;
}
.field-cloneable .field-clone .clone-controls .remove-clone {
  margin-bottom: 3px;
}
.field-cloneable .field-clone .clone-controls .duplicate-clone {
  font-size: 1em;
  white-space: nowrap;
  float: right;
  margin-bottom: 5px;
  cursor: pointer;
  background: #fff;
  padding: 3px 3px;
  position: relative;
  right: -5px;
  min-width: 30px;
  text-align: center;
}
.field-cloneable .field-clone:hover > .clone-controls {
  width: 35px;
  opacity: 1;
  -webkit-transition: all .2s ease;
  -moz-transition: all .2s ease;
  -ms-transition: all .2s ease;
  -o-transition: all .2s ease;
  transition: all .2s ease;
}
.field-cloneable .field-clone + .zero-text {
  border-color: transparent;
  height: 0;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
  opacity: 0;
}
.field-cloneable.at-min .field-clone .clone-controls .remove-clone {
  background: #ddd;
  cursor: default;
}
.field-cloneable.at-min .field-clone .clone-controls .remove-clone:hover {
  background: #ddd;
}
.field-cloneable.at-max .field-clone .clone-controls .add-clone {
  background: #ddd;
  cursor: default;
}
.field-cloneable.at-max .field-clone .clone-controls .add-clone:hover {
  background: #ddd;
}
.field-cloneable.no-sort .field-clone {
  border: 1px solid #efefef;
}
.field-cloneable.no-sort .field-clone .clone-number-main {
  cursor: default;
}
.field-cloneable.no-controls .field-clone {
  padding-right: 10px;
}
body.no-js .field-cloneable .zero-text:after {
  content: ' (Javascript required for this field to work properly :( )';
  color: #999;
  font-style: italic;
  padding-left: 5px;
}
body.no-js .field-cloneable.sortable .field-clone {
  border: 1px solid #efefef;
}
body.no-js .field-cloneable.sortable .field-clone .clone-number-main {
  cursor: default;
}
.iframe-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.iframe-container iframe,
.iframe-container object,
.iframe-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* clearfix */
.cf:before,
.cf:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.cf:after {
  clear: both;
}
.cf {
  *zoom: 1;
}
