.nav-link:focus {
  outline: none;
}
.wrapper-tabs {
  flex-basis: 20em;
 /* Not sure size here */
  flex-shrink: 0;
}
.elements {
  position: relative;
  padding-bottom: 3em;
  border-top: 1px solid #ddd;
  height: 100%;
}
.web-component .elements {
  padding-bottom: 0;
}
.wrapper-save {
  border-top: 1px solid #ddd;
}
.web-component .wrapper-save {
  border: none;
  background: inherit;
}
.wrapper-save form {
  width: 100%;
}
.preview:not(.web-component) .wrapper-save {
  position: fixed;
  bottom: 0;
  width: 100vw;
  z-index: 10;
  background-color: #fff;
}
.form-choose-or {
  margin: 0.5em 0.5em 0em;
  vertical-align: middle;
}
.form-selected-label {
  display: none;
  background: #333;
  padding: 0.18em 0.3em;
  color: white;
  font-size: 0.6em;
  position: absolute;
  top: -1.9em;
  right: 1em;
  border-radius: 0.2em 0.2em 0 0;
}
.action-item-copy:active, .action-item-copy:focus, .action-item-copy:hover {
  color: #198754;
}
.action-item-delete:active, .action-item-delete:focus, .action-item-delete:hover {
  color: #dc3545;
}
.action-item-move:active, .action-item-move:focus, .action-item-move:hover {
  color: #6c757d;
}
.form-action-list {
  position: absolute;
  margin-right: 1em;
  visibility: hidden;
  z-index: 3;
  right: 0;
  top: 0;
  border: thin solid #ddd;
  border-top: 0;
}
.form-action-list .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.form-label .badge {
  vertical-align: text-bottom;
}
.form-group-ghost {
  border-color: #808080;
  background: #f2f2f2;
}
.form-group-ghost .form-selected-label {
  display: inline-block;
}
.vr {
  border-right: thin solid #ccc;
}
label.large {
  font-size: 1.25rem;
  line-height: 1.5;
  margin-bottom: 0;
}
#ticket-number {
  min-width: 5em;
  max-width: 7em;
}
#ticket-summary {
  min-width: 10em;
}
#ticket-summary:required {
    background-image: url('data:image/svg+xml,\
  <svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="-4 -4 7 7"> \
  <line id="line" y1="-3" y2="3" stroke="%23df0000" stroke-linecap="butt" transform="rotate(15)"> \
  </line> \
  <line id="line" y1="-3" y2="3" stroke="%23df0000" stroke-linecap="butt" transform="rotate(75)"> \
  </line> \
  <line id="line" y1="-3" y2="3" stroke="%23df0000" stroke-linecap="butt" transform="rotate(-45)"> \
  </line> \
</svg>');
    background-position: 99% 50%;
    background-repeat: no-repeat;
    background-size: 1em;
}
#ticket-note-label {
  width: 7.5em;
}
#ticket-user {
  width: 8.75em;
  height: 2.3em;
  overflow: hidden;
  word-break: break-all;
}
#ticket-time-label {
  width: 7em;
}
#thank-you {
  color: #555;
}
input.number-spin::-webkit-outer-spin-button,
input.number-spin::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input.number-spin[type="number"] {
  -moz-appearance: textfield;
}
button.number-spin,
button.number-spin:hover {
  border-color: var(--theme-input-border-color);
  color: var(--theme-button-color);
  background-color: var(--theme-button-background);
}
input[type=color].form-control {
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.125rem 0.25rem;
}
.preview .wrapper-elements form {
  padding-top: 0;
}
.wrapper-elements form .element.collapse-group.down {
  margin-bottom: 1px;
}

.wrapper-elements form button.btn.fieldset-collapse {
  width: 100%;
}

.wrapper-elements form .element.collapse-group.down button.btn.fieldset-collapse {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.wrapper-elements form .element.collapse-group.up button.btn.fieldset-collapse {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.wrapper-elements form button.btn.fieldset-collapse:not(.collapsed) {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.wrapper-elements form fieldset.collapsing,
.wrapper-elements form fieldset.collapse {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  padding-top: .5em !important;
}

.wrapper-elements form .element.collapse-group.down fieldset {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.b-rating .b-rating-star i {
  display: inline-flex;
  transition: 0.15s ease-in-out;
}

.b-rating:not(.disabled):not(.readonly) .b-rating-star:hover i {
  transform: scale(1.5);
}

.b-rating-star i {
  color: var(--theme-input-border-color) !important;
  cursor: pointer;
}

.b-rating.disabled .b-rating-star i{
  opacity: .4;
  color: #6c757d !important;
}

.b-rating.d-inline-flex {
  width: auto;
}

.b-rating.d-inline-flex .b-rating-star {
  padding: .2em;
}

.custom-range {
  width: 100%;
}

div.range-datalist {
  margin-top: 1.5em;
  position: absolute;
  width: 100%;
}

component.tags input.form-control {
  display: none;
}

component.header,
component.paragraph {
  cursor: default;
}

.web-component .wrapper-elements {
  background-color: transparent;
}

.web-component .elements {
  border-top: 0;
}

.web-component form-submit form {
  padding: 0 2em 1em;
  margin: 0 1.5em 1.5em;
}

.web-component .wrapper-elements form#customForm {
  margin: 0;
  padding: 0;
}

.wrapper-save .btn-group {
  display: inline-table;
}

.wrapper-save #submit-button {
  width: 5em;
}

.wrapper-save #clear-button,
.wrapper-save #save-button {
  width: 4em;
}

fieldset.vertical element-loop span.element-loop {
  justify-content: space-between !important;
  flex-direction: column !important;
  display: flex !important;
}

fieldset.vertical .element-loop,
fieldset.vertical,
.element.vertical {
  height: 100%;
}

fieldset.vertical element:nth-last-child(2) {
  flex-grow: 2;
}

.empty-state {
  max-width: 80vw;
  color: #777;
  position: relative;
}

error .alert {
  margin: 2em;
}

#app.webcomponent {
  height: auto !important;
}

#app.marketing {
  height: auto !important;
}

#app.marketing .spacer,
#app.marketing form-submit {
  display: none;
}

#app.marketing .empty-state {
  position: inherit;
}

#app.marketing .empty-state p {
  padding: 0;
  width: 100%;
}

button.submit-button {
  width: 100%;
}

#app.zendesk {
  height: calc(100vh - 3.3em) !important;
  border-top: thin solid #ddd;
}

#app.zendesk form-items .spacer {
  display: none;
}

#app.zendesk .wrapper-save {
  padding-bottom: 0;
  padding-right: 0;
}

#app.zendesk #formOptions {
  padding: 0;
  margin: 0;
}

#app.zendesk #formOptions > .input-group > span .pe-3:last-child {
 padding-right: 0 !important;
}

#app.zendesk form-submit {
  position: fixed;
  bottom: 0;
  right: 0;
  background-color: #fff;
  left: 0;
  border-top: thin solid #ddd;
  padding-top: .5em;
}

#app.zendesk .wrapper-save #clear-button {
  width: initial !important;
}

#app.zendesk .empty-state {
  position: inherit;
}

#app.zendesk .empty-state p {
  width: inherit !important;
}

#app.zendesk .web-component .wrapper-elements form#customForm {
  padding-top: 1em;
  padding-bottom: 1px;
}
