/*!
 * *  Licensed to the Apache Software Foundation (ASF) under one or more
 * *  contributor license agreements.  See the NOTICE file distributed with
 * *  this work for additional information regarding copyright ownership.
 * *  The ASF licenses this file to You under the Apache License, Version 2.0
 * *  (the "License"); you may not use this file except in compliance with
 * *  the License.  You may obtain a copy of the License at
 * *
 * *      http://www.apache.org/licenses/LICENSE-2.0
 * *
 * *  Unless required by applicable law or agreed to in writing, software
 * *  distributed under the License is distributed on an "AS IS" BASIS,
 * *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * *  See the License for the specific language governing permissions and
 * *  limitations under the License.
 * */
@namespace j "library://ns.apache.org/royale/jewel";
@namespace "http://www.w3.org/1999/xhtml";
.jewel.application {
  background: #0f0b06;
  font-family: "Lato", sans-serif;
  color: #FFFFFF;
  padding: 0px;
  margin: 0px;
}

j|Form {
  gap: 3;
}

input, select, textarea, button {
  font-family: inherit;
}

hr {
  background-color: #595959;
}

.jewel.xsmall {
  font-size: 0.6em;
}

.jewel.small {
  font-size: 0.8em;
}

.jewel {
  font-size: 1em;
}

.jewel.large {
  font-size: 1.2em;
}

.jewel.xlarge {
  font-size: 1.4em;
}

.jewel.imagebutton {
  outline: 0;
}

.jewel.alert {
  transform: translate(-50%, -60%);
  margin: 0;
  padding: 0;
  min-width: 320px;
  min-height: 240px;
  border: 0px solid;
  background: #342514;
  box-shadow: 0px 20px 65px 0px rgba(0, 0, 0, 0.8);
  border-radius: 3px;
  opacity: 0;
  will-change: opacity, transform;
}
.jewel.alert.open {
  opacity: 1;
  transform: translate(-50%, -50%);
  transition: opacity 0.4s 0ms, transform 0.4s 0ms;
}
.jewel.alert.open + .backdrop {
  opacity: 1;
  transition: opacity 0.4s 0ms;
}
.jewel.alert .jewel.titlebar {
  padding: 20px 20px 0px 20px;
  height: 50px;
  color: #F7941D;
}
.jewel.alert .jewel.titlebar .jewel.label {
  font-size: 1.45em !important;
  font-weight: bold;
  font-color: #F7941D;
}
.jewel.alert .content {
  padding: 20px;
  top: 50px;
  bottom: 84px;
}
.jewel.alert .content .jewel.label {
  white-space: normal;
  color: #FFFFFF;
  font-size: 1.1em;
  font-weight: 400;
}
.jewel.alert .jewel.controlbar {
  background: linear-gradient(#666666, #4c4c4c);
  border-top: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 0px 0px 3px 3px;
  padding: 20px;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 84px;
}
.jewel.alert + .backdrop {
  opacity: 0;
  will-change: opacity;
  background-color: rgba(0, 0, 0, 0.5);
}

.jewel.badge {
  border-radius: 500em;
  color: #FFFFFF;
  font-size: 0.85em !important;
  line-height: 1em;
}
.jewel.badge.primary {
  background: #F7941D;
  color: #FFFFFF;
}

.jewel.button {
  margin: 0;
  padding: 0.679em 1.12em;
  background: linear-gradient(#666666, #4c4c4c);
  border: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 0.25rem;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(13, 13, 13, 0.7);
  font-weight: bold;
  text-transform: uppercase;
}
.jewel.button:hover, .jewel.button:hover:focus {
  background: linear-gradient(#595959, #404040);
  border: 1px solid #262626;
  color: #FFFFFF;
}
.jewel.button:active, .jewel.button:active:focus {
  background: linear-gradient(#404040, #262626);
  border: 1px solid #0d0d0d;
  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
  color: #FFFFFF;
}
.jewel.button:focus {
  border: 1px solid #333333;
  box-shadow: inset 0px 0px 0px 1px rgba(217, 217, 217, 0.5), inset 0 1px 0 rgba(229, 229, 229, 0.6);
  color: #FFFFFF;
}
.jewel.button[disabled] {
  background: #404040 !important;
  border: 1px solid #0d0d0d !important;
  box-shadow: none !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.button[disabled]:hover, .jewel.button[disabled]:hover:focus {
  color: #737373;
}
.jewel.button[disabled] {
  font-weight: 400;
}
.jewel.button.icon {
  padding: 0.429em 0.87em;
}
.jewel.button.icon span {
  margin-left: 0px;
  margin-right: 0px;
}
.jewel.button.left-space span {
  margin-left: 8px;
  margin-right: 0px;
}
.jewel.button.right-space span {
  margin-left: 0px;
  margin-right: 8px;
}

.jewel.button.primary {
  background: linear-gradient(#f8a036, #f28809);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380;
  border-radius: 0.25rem;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(119, 67, 4, 0.7);
}
.jewel.button.primary:hover, .jewel.button.primary:hover:focus {
  background: linear-gradient(#F7941D, #d97a08);
  border: 1px solid #a85e06;
  color: #FFFFFF;
}
.jewel.button.primary:active, .jewel.button.primary:active:focus {
  background: linear-gradient(#d97a08, #a85e06);
  border: 1px solid #774304;
  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
  color: #FFFFFF;
}
.jewel.button.primary:focus {
  border: 1px solid #c16c07;
  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
  color: #FFFFFF;
}
.jewel.button.primary[disabled] {
  background: #404040 !important;
  border: 1px solid #0d0d0d !important;
  box-shadow: none !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.button.primary[disabled]:hover, .jewel.button.primary[disabled]:hover:focus {
  color: #737373;
}

.jewel.button.outlined {
  background: rgba(51, 51, 51, 0.05);
  border: 1px solid #191919;
  box-shadow: none;
  color: #0d0d0d;
  text-shadow: none;
}
.jewel.button.outlined:hover, .jewel.button.outlined:hover:focus {
  background: rgba(51, 51, 51, 0.15);
  border: 1px solid #0d0d0d;
  color: black;
}
.jewel.button.outlined:active, .jewel.button.outlined:active:focus {
  background: rgba(51, 51, 51, 0.25);
  border: 1px solid #050505;
  box-shadow: none;
  color: black;
}
.jewel.button.outlined:focus {
  border: 1px solid black;
  box-shadow: none;
  color: black;
}
.jewel.button.outlined[disabled] {
  background: rgba(64, 64, 64, 0.1) !important;
  border: 1px solid #0d0d0d !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.button.outlined[disabled]:hover, .jewel.button.outlined[disabled]:hover:focus {
  color: #737373;
}

.jewel.button.primary.outlined {
  background: rgba(247, 148, 29, 0.05);
  border: 1px solid #d97a08;
  box-shadow: none;
  color: #c16c07;
  text-shadow: none;
}
.jewel.button.primary.outlined:hover, .jewel.button.primary.outlined:hover:focus {
  background: rgba(247, 148, 29, 0.15);
  border: 1px solid #c16c07;
  color: #8f5105;
}
.jewel.button.primary.outlined:active, .jewel.button.primary.outlined:active:focus {
  background: rgba(247, 148, 29, 0.25);
  border: 1px solid #b26406;
  box-shadow: none;
  color: #8f5105;
}
.jewel.button.primary.outlined:focus {
  border: 1px solid #a85e06;
  box-shadow: none;
  color: #8f5105;
}
.jewel.button.primary.outlined[disabled] {
  background: rgba(64, 64, 64, 0.1) !important;
  border: 1px solid #0d0d0d !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.button.primary.outlined[disabled]:hover, .jewel.button.primary.outlined[disabled]:hover:focus {
  color: #737373;
}

.jewel.button.unboxed {
  background: rgba(51, 51, 51, 0);
  border: 1px solid transparent;
  box-shadow: none;
  color: #0d0d0d;
  text-shadow: none;
}
.jewel.button.unboxed:hover, .jewel.button.unboxed:hover:focus {
  background: rgba(51, 51, 51, 0.15);
  border: 1px solid transparent;
  color: black;
}
.jewel.button.unboxed:active, .jewel.button.unboxed:active:focus {
  background: rgba(51, 51, 51, 0.25);
  border: 1px solid transparent;
  box-shadow: none;
  color: black;
}
.jewel.button.unboxed:focus {
  background: rgba(51, 51, 51, 0.15);
  border: 1px solid transparent;
  box-shadow: none;
  color: black;
}
.jewel.button.unboxed[disabled] {
  background: rgba(64, 64, 64, 0) !important;
  border: 1px solid transparent !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.button.unboxed[disabled]:hover, .jewel.button.unboxed[disabled]:hover:focus {
  color: #737373;
}

.jewel.button.primary.unboxed {
  background: rgba(247, 148, 29, 0);
  border: 1px solid transparent;
  box-shadow: none;
  color: #c16c07;
  text-shadow: none;
}
.jewel.button.primary.unboxed:hover, .jewel.button.primary.unboxed:hover:focus {
  background: rgba(247, 148, 29, 0.15);
  border: 1px solid transparent;
  color: #8f5105;
}
.jewel.button.primary.unboxed:active, .jewel.button.primary.unboxed:active:focus {
  background: rgba(247, 148, 29, 0.25);
  border: 1px solid transparent;
  box-shadow: none;
  color: #8f5105;
}
.jewel.button.primary.unboxed:focus {
  background: rgba(247, 148, 29, 0.15);
  border: 1px solid transparent;
  box-shadow: none;
  color: #8f5105;
}
.jewel.button.primary.unboxed[disabled] {
  background: rgba(64, 64, 64, 0) !important;
  border: 1px solid transparent !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.button.primary.unboxed[disabled]:hover, .jewel.button.primary.unboxed[disabled]:hover:focus {
  color: #737373;
}

.jewel.card {
  font-size: 1em;
  font-weight: 400;
  background: #342514;
  border: 1px solid #d8cdc1;
  border-radius: 0.25rem;
}
.jewel.card.simple {
  padding: 20px;
}
.jewel.card .card-header {
  border-bottom: 1px solid #d8cdc1;
  padding: 12px 20px;
}
.jewel.card .card-title {
  font-size: 1.5em;
  margin: 0.408rem 0rem;
  letter-spacing: 0.0125em;
}
.jewel.card .card-primary-content {
  padding: 20px;
}
.jewel.card .card-actions {
  border-top: 1px solid #d8cdc1;
  padding: 18px 20px;
}

j|Card {
  gap: 3;
}

j|CardHeader {
  gap: 3;
}

j|CardPrimaryContent {
  gap: 3;
}

j|CardActions {
  gap: 3;
}

.jewel.checkbox input + span::before {
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  border-radius: 3px;
}
.jewel.checkbox input + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Cpolygon fill='%23F7941D' points='3.50018311 12.4854126 8.48547363 17.4989624 18.4641113 7.47589111 15.5010376 4.51739502 8.48547363 11.5650024 6.52087402 9.47265625'/%3E%3C/svg%3E") no-repeat center center;
  border: 1px solid transparent;
  border-radius: 3px;
  transition: all 0.3s ease;
  transform: scale(0);
}
.jewel.checkbox input:checked + span::after, .jewel.checkbox input:checked:active + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Cpolygon fill='%23F7941D' points='3.50018311 12.4854126 8.48547363 17.4989624 18.4641113 7.47589111 15.5010376 4.51739502 8.48547363 11.5650024 6.52087402 9.47265625'/%3E%3C/svg%3E") no-repeat center center;
  transform: scale(1);
}
.jewel.checkbox input:indeterminate + span::after, .jewel.checkbox input:indeterminate:active + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Crect stroke-width='0' stroke='%23FFFFFF' height='12' width='12' y='5' x='5' fill='%23F7941D' /%3E%3C/svg%3E") no-repeat center center;
  opacity: 1;
  transform: scale(1);
}
.jewel.checkbox input:focus + span::before, .jewel.checkbox input:checked:focus + span::before, .jewel.checkbox input:checked:active:focus + span::before, .jewel.checkbox input:indeterminate:focus + span::before, .jewel.checkbox input:indeterminate:active:focus + span::before {
  background: linear-gradient(#fcdab1, #fac380);
  border: 1px solid #c16c07;
  border-radius: 3px;
}
.jewel.checkbox input[disabled] + span {
  color: #737373;
}
.jewel.checkbox input[disabled] + span::before {
  background: #404040;
  border: 1px solid #0d0d0d;
  border-radius: 3px;
}
.jewel.checkbox input:checked[disabled] + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Cpolygon fill='%23191919' points='3.50018311 12.4854126 8.48547363 17.4989624 18.4641113 7.47589111 15.5010376 4.51739502 8.48547363 11.5650024 6.52087402 9.47265625'/%3E%3C/svg%3E") no-repeat center center;
}
.jewel.checkbox input:indeterminate[disabled] + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Crect stroke-width='0' stroke='%23FFFFFF' height='12' width='12' y='5' x='5' fill='%23191919' /%3E%3C/svg%3E") no-repeat center center;
}
.jewel.checkbox span {
  padding-left: 8px;
}
.jewel.checkbox.rejected input:indeterminate + span::after, .jewel.checkbox.rejected input:indeterminate:active + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Cline stroke-width='4' stroke='%23F7941D' stroke-linecap='undefined' stroke-linejoin='undefined' y2='10.9375' x2='17' y1='11.0625' x1='5' fill='none' /%3E%3C/svg%3E") no-repeat center center;
  opacity: 1;
  transform: scale(1);
}
.jewel.checkbox.rejected input:indeterminate[disabled] + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Cline stroke-width='4' stroke='%23191919' stroke-linecap='undefined' stroke-linejoin='undefined' y2='10.9375' x2='17' y1='11.0625' x1='5' fill='none' /%3E%3C/svg%3E") no-repeat center center;
}

.jewel.switch input:checked + .switch {
  background: linear-gradient(#f7941d, #f9ab4e);
  box-shadow: 0px 0px 0px 1px #f28809;
}
.jewel.switch input:focus + .switch {
  box-shadow: 0px 0px 0px 1px #d97a08;
}
.jewel.switch input:checked + .switch::before {
  background: #fffdfb;
  box-shadow: -1px 0px 1px 0px rgba(0, 0, 0, 0.1);
  transform: translateX(20px);
}
.jewel.switch input[disabled]:checked + .switch {
  background: #8c8c8c;
  box-shadow: 0px 0px 0px 1px #7f7f7f;
}
.jewel.switch input[disabled] + .switch {
  background: #737373;
  box-shadow: 0px 0px 0px 1px #999999;
}
.jewel.switch input[disabled] + .switch::before {
  background: #595959;
  box-shadow: none;
}
.jewel.switch .switch {
  background: linear-gradient(#595959, #737373);
  box-shadow: 0px 0px 0px 1px #4c4c4c;
  transition: 0.4s;
  border-radius: 3px;
}
.jewel.switch .switch::before {
  background: #fffdfb;
  box-shadow: 1px 0px 1px 0px rgba(0, 0, 0, 0.1);
  transition: 0.4s;
  border-radius: 3px;
}
.jewel.switch .label {
  padding-left: 8px;
}
.jewel.switch.radio .switch {
  border-radius: 20px;
}
.jewel.switch.radio .switch::before {
  border-radius: 50%;
}

.jewel.combobox .jewel.textinput input {
  border-radius: 0.25rem 0px 0px 0.25rem;
}
.jewel.combobox .jewel.button {
  color: transparent;
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px;
  border-left: 0px;
}
.jewel.combobox .jewel.button::before {
  line-height: 22px;
}
.jewel.combobox .jewel.button::after {
  background-size: 66%;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23F7941D' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
  width: 14px;
  height: 22px;
  left: calc(50% - 8px);
  top: calc(50% - 11px);
}
.jewel.combobox .jewel.button[disabled] {
  border-left: 0px !important;
}
.jewel.combobox .jewel.button[disabled]::after {
  background-size: 66%;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23191919' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}

.jewel.datagrid {
  background: linear-gradient(#7f7f7f, #737373);
  border-bottom: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 0.25rem;
}
.jewel.datagrid .jewel.buttonbar.header {
  background: linear-gradient(#737373, #666666);
  border: 0 none;
  box-shadow: none;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.jewel.datagrid .jewel.buttonbar.header .jewel.button.first {
  border-bottom-left-radius: 0;
}
.jewel.datagrid .jewel.buttonbar.header .jewel.button.last {
  border-bottom-right-radius: 0;
}
.jewel.datagrid .listarea {
  border-top-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-bottom-width: 0px;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  border-style: solid;
  border-color: #333333;
}
.jewel.datagrid .listarea:focus {
  border: 1px solid #c16c07;
}
.jewel.datagrid .jewel.list:focus {
  border-color: inherit;
}
.jewel.datagrid .jewel.list.column {
  border-radius: 0px;
  border-bottom-width: 0px;
  box-shadow: inset 0px 1px 0px 0px rgba(0, 0, 0, 0.1);
}
.jewel.datagrid .jewel.list.column.first {
  border-bottom-left-radius: 0.25rem;
}
.jewel.datagrid .jewel.list.column.last {
  border-bottom-right-radius: 0.25rem;
}
.jewel.datagrid .jewel.list.column .jewel.item.datagrid {
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #6d6d6d;
  border-right: 0;
  border-radius: 0;
  box-shadow: none;
}
.jewel.datagrid .jewel.list.column .jewel.item.datagrid.primary.hovered {
  background: #f9b058;
}
.jewel.datagrid .jewel.list.column .jewel.item.datagrid.primary.selected, .jewel.datagrid .jewel.list.column .jewel.item.datagrid.primary.selectable:active {
  background: #f8a43f;
}

.jewel.datechooser .jewel.table {
  background: #8c8c8c;
  border: 1px solid #595959;
  border-radius: 0.25rem;
  box-shadow: none;
}
.jewel.datechooser .jewel.table .jewel.button {
  background: transparent;
  border: none;
  box-shadow: none;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell {
  padding: 12px 0px;
  background: #8c8c8c;
  box-shadow: none;
  border-left: 0px;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow {
  border-bottom: 1px solid #595959;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .previousButton, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .nextButton {
  border-radius: 50%;
  color: transparent;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .viewSelector:hover, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .previousButton:hover, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .nextButton:hover {
  background: #737373;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .viewSelector:active, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .previousButton:active, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .nextButton:active {
  background: #666666;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .viewSelector::after {
  width: 14px;
  height: 8px;
  padding-right: 8px;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23F7941D' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-position: right 0 center;
  background-repeat: no-repeat;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .previousButton::after, .jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .nextButton::after {
  width: 14px;
  height: 14px;
  top: calc(50% - 7px);
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .previousButton::after {
  left: calc(50% - 9px);
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 8 12' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-7.000000, -5.000000)'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M14.9911518,6.4116803 C14.9876664,5.88503401 14.7746504,5.53560917 14.5762939,5.35284424 C14.3779375,5.17007931 14.0808684,5.04951371 13.4608967,5.00170898 L7.01066011,11.0034834 L13.4822102,17.0014648 C14.1196233,16.9113382 14.3962441,16.8099967 14.5762939,16.6435547 C14.7563438,16.4771126 14.9881385,16.1084637 15.0074566,15.5914935 L10.0769967,11.0034834 L14.9911518,6.4116803 Z' fill='%23F7941D' fill-rule='nonzero'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow .nextButton::after {
  left: calc(50% - 5px);
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 8 12' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-7.000000, -5.000000)'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M14.9911518,6.4116803 C14.9876664,5.88503401 14.7746504,5.53560917 14.5762939,5.35284424 C14.3779375,5.17007931 14.0808684,5.04951371 13.4608967,5.00170898 L7.01066011,11.0034834 L13.4822102,17.0014648 C14.1196233,16.9113382 14.3962441,16.8099967 14.5762939,16.6435547 C14.7563438,16.4771126 14.9881385,16.1084637 15.0074566,15.5914935 L10.0769967,11.0034834 L14.9911518,6.4116803 Z' fill='%23F7941D' fill-rule='nonzero' transform='translate(11.009058, 11.001587) scale(-1, 1) translate(-11.009058, -11.001587) '%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}
.jewel.datechooser .jewel.table .jewel.tablecell {
  border-top: 0px;
  border-left: 0px;
  padding: 4px;
}
.jewel.datechooser .jewel.table .jewel.tableheadercell.buttonsRow {
  padding: 4px;
}
.jewel.datechooser[disabled] {
  pointer-events: none;
}
.jewel.datechooser[disabled] .jewel.table {
  color: #737373;
  text-shadow: unset;
  background: #404040;
  border: 1px solid #0d0d0d;
}
.jewel.datechooser[disabled] .jewel.table .jewel.button {
  color: #737373;
  text-shadow: unset;
  font-weight: normal;
}
.jewel.datechooser[disabled] .jewel.table .jewel.tableheadercell {
  background: none;
  color: #737373;
  text-shadow: unset;
}
.jewel.datechooser[disabled] .jewel.table .jewel.tableheadercell.buttonsRow .viewSelector::after {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23191919' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.jewel.datechooser[disabled] .jewel.table .jewel.tableheadercell.buttonsRow .previousButton::after, .jewel.datechooser[disabled] .jewel.table .jewel.tableheadercell.buttonsRow .nextButton::after {
  background-size: 40%;
}
.jewel.datechooser[disabled] .jewel.table .jewel.tableheadercell.buttonsRow .previousButton::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 8 12' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-7.000000, -5.000000)'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M14.9911518,6.4116803 C14.9876664,5.88503401 14.7746504,5.53560917 14.5762939,5.35284424 C14.3779375,5.17007931 14.0808684,5.04951371 13.4608967,5.00170898 L7.01066011,11.0034834 L13.4822102,17.0014648 C14.1196233,16.9113382 14.3962441,16.8099967 14.5762939,16.6435547 C14.7563438,16.4771126 14.9881385,16.1084637 15.0074566,15.5914935 L10.0769967,11.0034834 L14.9911518,6.4116803 Z' fill='%23191919' fill-rule='nonzero'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}
.jewel.datechooser[disabled] .jewel.table .jewel.tableheadercell.buttonsRow .nextButton::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 8 12' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(-7.000000, -5.000000)'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M14.9911518,6.4116803 C14.9876664,5.88503401 14.7746504,5.53560917 14.5762939,5.35284424 C14.3779375,5.17007931 14.0808684,5.04951371 13.4608967,5.00170898 L7.01066011,11.0034834 L13.4822102,17.0014648 C14.1196233,16.9113382 14.3962441,16.8099967 14.5762939,16.6435547 C14.7563438,16.4771126 14.9881385,16.1084637 15.0074566,15.5914935 L10.0769967,11.0034834 L14.9911518,6.4116803 Z' fill='%23191919' fill-rule='nonzero' transform='translate(11.009058, 11.001587) scale(-1, 1) translate(-11.009058, -11.001587) '%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}
.jewel.datechooser[disabled] .jewel.tableitem {
  height: 38px;
}
.jewel.datechooser[disabled] .jewel.tableitem.selected, .jewel.datechooser[disabled] .jewel.tableitem.selectable:active {
  background: #191919;
}

.calendar.item {
  padding: 10px;
  font-size: 1em;
}
.calendar.item.dayName {
  font-weight: 600;
}
.calendar.item.date {
  color: grey;
}

.jewel.datefield .jewel.textinput input {
  border-radius: 0.25rem 0px 0px 0.25rem;
}
.jewel.datefield .jewel.button {
  color: transparent;
  border-bottom-left-radius: 0px;
  border-top-left-radius: 0px;
  border-left: 0px;
}
.jewel.datefield .jewel.button::after {
  background-size: 66%;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M18.3333333,2.75 L17.4166667,2.75 L17.4166667,0.916666667 L15.5833333,0.916666667 L15.5833333,2.75 L6.41666667,2.75 L6.41666667,0.916666667 L4.58333333,0.916666667 L4.58333333,2.75 L3.66666667,2.75 C2.65833333,2.75 1.83333333,3.575 1.83333333,4.58333333 L1.83333333,19.25 C1.83333333,20.2583333 2.65833333,21.0833333 3.66666667,21.0833333 L18.3333333,21.0833333 C19.3416667,21.0833333 20.1666667,20.2583333 20.1666667,19.25 L20.1666667,4.58333333 C20.1666667,3.575 19.3416667,2.75 18.3333333,2.75 Z M18.3333333,19.25 L3.66666667,19.25 L3.66666667,7.33333333 L18.3333333,7.33333333 L18.3333333,19.25 Z' fill='%23F7941D' fill-rule='nonzero'%3E%3C/path%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}
.jewel.datefield .jewel.button[disabled] {
  border-left: 0px !important;
}
.jewel.datefield .jewel.button[disabled]::after {
  background-size: 66%;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Crect x='0' y='0' width='22' height='22'%3E%3C/rect%3E%3Cpath d='M18.3333333,2.75 L17.4166667,2.75 L17.4166667,0.916666667 L15.5833333,0.916666667 L15.5833333,2.75 L6.41666667,2.75 L6.41666667,0.916666667 L4.58333333,0.916666667 L4.58333333,2.75 L3.66666667,2.75 C2.65833333,2.75 1.83333333,3.575 1.83333333,4.58333333 L1.83333333,19.25 C1.83333333,20.2583333 2.65833333,21.0833333 3.66666667,21.0833333 L18.3333333,21.0833333 C19.3416667,21.0833333 20.1666667,20.2583333 20.1666667,19.25 L20.1666667,4.58333333 C20.1666667,3.575 19.3416667,2.75 18.3333333,2.75 Z M18.3333333,19.25 L3.66666667,19.25 L3.66666667,7.33333333 L18.3333333,7.33333333 L18.3333333,19.25 Z' fill='%23191919' fill-rule='nonzero'%3E%3C/path%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
}

.jewel.divider {
  border-bottom-color: #595959;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}

.jewel.drawer.float {
  color: rgba(0, 0, 0, 0.8);
}
.jewel.drawer.float::before {
  background-color: rgba(0, 0, 0, 0.65);
  will-change: opacity;
  transition: opacity 0.4s 0ms;
}
.jewel.drawer.float .drawermain {
  box-shadow: 0px 0px 6px 1px rgba(1, 1, 1, 0.7);
  transform: translateX(-104%);
  will-change: transform;
  width: calc(100% - 54px);
  max-width: 280px;
  background-color: #8c8c8c;
  transition: transform 250ms 0ms;
}
.jewel.drawer.float.open .drawermain {
  transform: none;
  transition: transform 300ms 0ms;
}
.jewel.drawer.fixed .drawermain {
  width: 240px;
  transform: translateX(-104%);
  will-change: transform;
  transition: transform 250ms 0ms;
  background-color: #8c8c8c;
  border-left: 0;
  border-right: 1px solid #595959;
}
.jewel.drawer.fixed.open {
  width: auto;
}
.jewel.drawer.fixed.open .drawermain {
  transition: transform 300ms 0ms;
}

.jewel.drawerheader {
  background: linear-gradient(#f8a036, #f28809);
  border-bottom: 1px solid #a85e06;
  color: #FFFFFF;
  padding: 16px;
}
.jewel.drawerheader div {
  padding: 16px;
}

.jewel.drawerfooter {
  background: linear-gradient(#404040, #262626);
  border-top: 1px solid #595959;
  border-bottom: 1px solid black;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.7);
}
.jewel.drawerfooter .jewel.barsection {
  padding: 8px 12px;
}
.jewel.drawerfooter .jewel.barsection button {
  background: transparent;
  box-shadow: none;
  border: none;
  padding: 12px;
  fill: #FFFFFF;
  color: inherit;
  text-shadow: 0 -1px 0 rgba(119, 67, 4, 0.7);
}
.jewel.drawerfooter .jewel.barsection button:hover, .jewel.drawerfooter .jewel.barsection button:hover:focus, .jewel.drawerfooter .jewel.barsection button:active, .jewel.drawerfooter .jewel.barsection button:active:focus, .jewel.drawerfooter .jewel.barsection button:focus {
  background: transparent;
  box-shadow: none;
  border: none;
}
.jewel.drawerfooter .jewel.barsection button[disabled] {
  background: transparent;
  box-shadow: none;
  border: none;
}

.jewel.dropdownlist {
  background-color: #7f7f7f;
  border: 1px solid #333333;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23F7941D' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-size: 1.08em;
  background-position: right 0.7em center;
  background-repeat: no-repeat;
  border-radius: 0.25rem;
}
.jewel.dropdownlist[disabled] {
  background-color: #404040;
  border: 1px solid #0d0d0d;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23191919' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  box-shadow: none;
  color: #737373;
}
.jewel.dropdownlist[disabled]::placeholder, .jewel.dropdownlist[disabled]:-ms-input-placeholder {
  color: #737373;
}
.jewel.dropdownlist[disabled] + i {
  color: #737373;
}
.jewel.dropdownlist:focus {
  border: 1px solid #c16c07;
}

.jewel.footerbar .footerBarAppHeader {
  background: linear-gradient(#404040, #262626);
  border-top: 1px solid #595959;
  border-bottom: 1px solid black;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.7);
}
.jewel.footerbar .footerBarAppHeader.has-drawer {
  width: calc(100% - 240px);
}
.jewel.footerbar .jewel.barsection {
  padding: 8px 12px;
}
.jewel.footerbar .jewel.barsection button {
  background: transparent;
  box-shadow: none;
  border: none;
  padding: 12px;
  fill: #FFFFFF;
  color: inherit;
  text-shadow: 0 -1px 0 rgba(119, 67, 4, 0.7);
}
.jewel.footerbar .jewel.barsection button:hover, .jewel.footerbar .jewel.barsection button:hover:focus, .jewel.footerbar .jewel.barsection button:active, .jewel.footerbar .jewel.barsection button:active:focus, .jewel.footerbar .jewel.barsection button:focus {
  background: transparent;
  box-shadow: none;
  border: none;
}
.jewel.footerbar .jewel.barsection button[disabled] {
  background: transparent;
  box-shadow: none;
  border: none;
}

.jewel.formheading {
  color: #d97a08;
  font-size: 1.4em !important;
}
.jewel.formheading .jewel.label.spacerLabel {
  width: 115px;
}
.jewel.formheading .jewel.label.requiredSpacerLabel {
  width: 10px;
}

j|FormHeading {
  gap: 2;
}

.jewel.formitem .jewel.label.formlabel {
  width: 115px;
}
.jewel.formitem .jewel.label.required {
  color: #EC1C24;
  font-size: 1.6em !important;
  width: 10px;
}
j|FormItem {
  gap: 2;
  itemsVerticalAlign: itemsCentered;
}

.fonticon.dark {
  color: #676767;
}
.fonticon.dark.inactive {
  color: rgba(128, 128, 128, 0.3);
}
.fonticon.light {
  color: white;
}
.fonticon.light.inactive {
  color: rgba(255, 255, 255, 0.5);
}

.jewel.item {
  background: transparent;
}
.jewel.item.hovered {
  color: #FFFFFF;
}
.jewel.item.selected, .jewel.item.selectable:active {
  color: #FFFFFF;
}
.jewel.item.primary.hovered {
  background: #F7941D;
}
.jewel.item.primary.selected, .jewel.item.primary.selectable:active {
  background: #f28809;
}

.jewel.label {
  line-height: 1em;
}
.jewel.label.multiline {
  line-height: normal;
  max-width: 100%;
}

.jewel.list {
  color: #FFFFFF;
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 3px;
}
.jewel.list:focus {
  border: 1px solid #c16c07;
}
.jewel.list[disabled] {
  pointer-events: none;
  color: #737373;
  text-shadow: unset;
  font-weight: normal;
  background: #404040;
  border: 1px solid #0d0d0d;
  box-shadow: none;
}
.jewel.list[disabled] .jewel.item.selected, .jewel.list[disabled] .jewel.item.selectable:active {
  background: #191919 !important;
}

.jewel.loader {
  border: 16px solid #737373;
  border-radius: 50%;
}
.jewel.loader.segment {
  border-top-color: #404040;
}
.jewel.loader.primary.segment {
  border-top-color: #F7941D;
}

.jewel.navigation {
  background-color: #ffffff;
}
.jewel.navigation .layout.vertical {
  align-items: stretch;
}

.jewel.navigationlink {
  margin: 0;
  padding: 0 16px;
  font-size: 1em;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.6);
}
.jewel.navigationlink.hovered {
  background: #737373 !important;
}
.jewel.navigationlink .hint.fonticon {
  margin-left: auto;
}

.jewel.navigationgroup.no-submenu.hovered {
  background: #737373 !important;
}

.navigation-section-group {
  transition: height 0.5s;
  overflow: hidden !important;
}
.navigation-section-group .navigationlink {
  padding-left: 34px;
}

.jewel.numericstepper {
  height: 38px;
}
.jewel.numericstepper .jewel.textinput {
  width: calc(100% - 33px);
}
.jewel.numericstepper .jewel.textinput input {
  border-radius: 0.25rem 0px 0px 0.25rem;
}
.jewel.numericstepper .jewel.button {
  border-radius: 0 0.25rem 0.25rem 0;
  border-left: 0px;
  width: 12%;
  width: 33px;
  height: 50%;
}
.jewel.numericstepper .jewel.button, .jewel.numericstepper .jewel.button:hover, .jewel.numericstepper .jewel.button:hover:focus, .jewel.numericstepper .jewel.button:active, .jewel.numericstepper .jewel.button:active:focus {
  color: transparent;
}
.jewel.numericstepper .jewel.button.up {
  border-bottom-right-radius: 0px;
}
.jewel.numericstepper .jewel.button.up::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23F7941D' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
  width: 12px;
  height: 7px;
}
.jewel.numericstepper .jewel.button.down {
  border-top-right-radius: 0px;
  border-top-style: groove;
}
.jewel.numericstepper .jewel.button.down::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(0.000000, -1.000000)' fill='%23F7941D' fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000, 0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1) translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1 2 7'%3E%3C/polygon%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
  width: 12px;
  height: 7px;
}
.jewel.numericstepper .jewel.button.up, .jewel.numericstepper .jewel.button.down {
  padding: 8.5px 16px;
}

@media (max-width: 992px) {
  .jewel.numericstepper .jewel.textinput input {
    border-radius: 0;
  }
  .jewel.numericstepper .jewel.button.up {
    border: 1px solid #333333;
    border-radius: 0 0.25rem 0.25rem 0;
    margin-left: -1px;
    height: 100%;
  }
  .jewel.numericstepper .jewel.button.down {
    border: 1px solid #333333;
    border-radius: 0.25rem 0 0 0.25rem;
    border-top-style: solid;
    margin-right: -1px;
    height: 100%;
  }
}
.popup-content::before {
  background-color: rgba(0, 0, 0, 0.65);
  will-change: opacity;
  transition: opacity 0.4s 0ms;
}
.popup-content .jewel.popupcontent {
  border: 0px;
  border-radius: 10px;
  padding: 20px;
  background: white;
  box-shadow: 0px 0px 6px 1px rgba(1, 1, 1, 0.7) !important;
}
@media (min-width: 992px) {
  .popup-content .jewel.popupcontent {
    box-shadow: none !important;
  }
}
.jewel.radiobutton input + span::before {
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  border-radius: 50%;
}
.jewel.radiobutton input + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Ccircle fill='%23F7941D' cx='11' cy='11' r='6'/%3E%3C/svg%3E") no-repeat center center;
  border: 1px solid transparent;
  border-radius: 50%;
  transition: all 0.3s ease;
  transform: scale(0);
}
.jewel.radiobutton input:checked + span::after, .jewel.radiobutton input:checked:active + span::after {
  transform: scale(1);
}
.jewel.radiobutton input:focus + span::before, .jewel.radiobutton input:checked:focus + span::before, .jewel.radiobutton input:checked:active:focus + span::before {
  background: linear-gradient(#fcdab1, #fac380);
  border: 1px solid #c16c07;
  border-radius: 50%;
}
.jewel.radiobutton input[disabled] + span::before {
  background: #404040;
  border: 1px solid #0d0d0d;
  border-radius: 50%;
}
.jewel.radiobutton input[disabled] + span {
  color: #737373;
}
.jewel.radiobutton input[disabled] + span::after {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 22 22' version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='22' height='22' fill-opacity='0'/%3E%3Ccircle fill='%23191919' cx='11' cy='11' r='6'/%3E%3C/svg%3E") no-repeat center center;
}
.jewel.radiobutton span {
  padding-left: 8px;
}

.jewel.slider input::-ms-fill-lower {
  background: linear-gradient(#f89b2c, #f68d0e);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380;
  border-radius: 3px;
}
.jewel.slider input::-ms-fill-upper {
  background: linear-gradient(#7f7f7f, #666666);
  border: 1px solid #333333;
  border-radius: 3px;
}
.jewel.slider input::-webkit-slider-thumb {
  width: 18px;
  height: 18px;
  background: linear-gradient(#f89b2c, #f68d0e);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380, 0 0 0 1px rgba(140, 140, 140, 0.3);
  border-radius: 50%;
}
.jewel.slider input::-moz-range-thumb {
  width: 18px;
  height: 18px;
  background: linear-gradient(#f89b2c, #f68d0e);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380, 0 0 0 1px rgba(140, 140, 140, 0.3);
  border-radius: 50%;
}
.jewel.slider input::-ms-thumb {
  width: 18px;
  height: 18px;
  background: linear-gradient(#f89b2c, #f68d0e);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380, 0 0 0 1px rgba(140, 140, 140, 0.3);
  border-radius: 50%;
}
.jewel.slider input:active::-webkit-slider-thumb, .jewel.slider input:active::-moz-range-thumb {
  transform: scale(1.4);
}
.jewel.slider input:active::-ms-thumb {
  transform: scale(0.8);
}
.jewel.slider input[disabled]::-ms-fill-lower {
  background: #333333;
  border: 1px solid black;
  box-shadow: none;
}
.jewel.slider input[disabled]::-ms-fill-upper {
  background: #404040;
  border: 1px solid #0d0d0d;
  box-shadow: none;
}
.jewel.slider input[disabled]::-webkit-slider-thumb, .jewel.slider input[disabled]::-moz-range-thumb, .jewel.slider input[disabled]::-ms-thumb {
  background: #404040;
  border: 1px solid black;
  box-shadow: none;
}
.jewel.slider input[disabled]:active::-webkit-slider-thumb, .jewel.slider input[disabled]:active::-moz-range-thumb, .jewel.slider input[disabled]:active::-ms-thumb {
  transform: scale(1);
}
.jewel.slider input[disabled] + .slider-track-container > .slider-track-fill {
  background: #333333;
  border: 1px solid black;
  box-shadow: none;
}
.jewel.slider input[disabled] + .slider-track-container > .slider-track {
  background: #404040;
  border: 1px solid #0d0d0d;
  box-shadow: none;
}

.slider-track-container {
  top: 50%;
}

.slider-track-fill {
  background: linear-gradient(#f89b2c, #f68d0e);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380;
  border-radius: 3px;
}

.slider-track {
  background: linear-gradient(#7f7f7f, #666666);
  border: 1px solid #333333;
  border-radius: 3px;
}

.jewel.snackbar {
  will-change: transform;
  transform: translate(0, 100%);
  transition: transform 0.4s 0ms;
}
.jewel.snackbar.open {
  transform: translate(0);
  transition: transform 0.4s 0ms;
}
.jewel.snackbar.primary .jewel.snackbar-content {
  background: linear-gradient(#f8a036, #f28809);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380;
  border-bottom: none;
}
.jewel.snackbar.primary .jewel.snackbar-message {
  color: #FFFFFF;
}
.jewel.snackbar.primary .jewel.snackbar-action {
  color: #E2D70B;
}
.jewel.snackbar.primary .jewel.snackbar-action:hover {
  background: linear-gradient(#F7941D, #d97a08);
}

.jewel.snackbar-content {
  background: #2C3E50;
  border-radius: 0.25rem 0.25rem 0px 0px;
}

.jewel.snackbar-message {
  color: #FFFFFF;
}

.jewel.snackbar-action {
  color: #FFD740;
}
.jewel.snackbar-action:hover {
  background-color: #3C4E60;
}

@media (max-width: 992px) {
  .jewel.snackbar-content {
    border-radius: 0px;
  }
}
.jewel.tabbar.sameWidths > * {
  flex: 1 0 0% !important;
}

j|TabBar {
  itemsExpand: true;
}

.jewel.tabbarbutton {
  font-size: 1em;
  font-weight: 500;
  border: none;
  background: transparent;
  outline: none;
  color: rgba(0, 0, 0, 0.6);
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.1em;
  font-weight: 600;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}
.jewel.tabbarbutton .indicator > .indicator-content {
  background-color: #F7941D;
}
.jewel.tabbarbutton.hovered {
  background: rgba(247, 148, 29, 0.2);
}
.jewel.tabbarbutton.selected, .jewel.tabbarbutton.selectable:active {
  color: #c16c07;
  background: rgba(247, 148, 29, 0.4);
}

.jewel.tabbar.layout.horizontal .indicator > .indicator-content {
  height: 2px;
}
.jewel.tabbar.layout.vertical .indicator > .indicator-content {
  width: 2px;
}

.jewel.simpletable {
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 0.25rem;
}
.jewel.simpletable .jewel.tableheadercell:first-of-type {
  border-left: 0px;
}
.jewel.simpletable .jewel.tableheadercell {
  padding: 12px;
  background: linear-gradient(#7f7f7f, #737373);
  box-shadow: inset 0 1px 0 #8c8c8c;
  font-weight: 700;
  line-height: normal !important;
  font-size: 1em;
  color: #FFFFFF;
  border-left: 1px solid #595959;
}
.jewel.simpletable .jewel.tablecell:first-of-type {
  border-left: 0px;
}
.jewel.simpletable .jewel.tablecell {
  border-top: 1px solid #595959;
  border-left: 1px solid #595959;
}
.jewel.simpletable .jewel.tablecell > * {
  padding: 12px;
}
.jewel.simpletable .jewel.tfoot .jewel.tablecell {
  border-left: 0px;
  background: linear-gradient(#7f7f7f, #8c8c8c);
  box-shadow: inset 0 1px 0 #a6a6a6;
}

.jewel.table {
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 0.25rem;
}
.jewel.table .jewel.tableheadercell:first-of-type {
  border-left: 0px;
}
.jewel.table .jewel.tableheadercell {
  padding: 12px;
  background: linear-gradient(#7f7f7f, #737373);
  box-shadow: inset 0 1px 0 #8c8c8c;
  font-weight: 700;
  line-height: normal !important;
  font-size: 1em;
  color: #FFFFFF;
  border-left: 1px solid #595959;
  border-bottom: 1px solid #595959;
}
.jewel.table .jewel.tablerow:first-child .jewel.tablecell {
  border-top: 0px solid transparent;
}
.jewel.table .jewel.tablecell:first-of-type {
  border-left: 0px;
}
.jewel.table .jewel.tablecell {
  border-top: 1px solid #595959;
  border-left: 1px solid #595959;
}
.jewel.table .jewel.tfoot .jewel.tablecell {
  border-left: 0px;
  background: linear-gradient(#7f7f7f, #8c8c8c);
  box-shadow: inset 0 1px 0 #a6a6a6;
}
.jewel.tableitem {
  height: 100%;
}
.jewel.tableitem.hovered {
  color: #FFFFFF;
  background: #F7941D;
}
.jewel.tableitem.selected, .jewel.tableitem.selectable:active {
  color: #FFFFFF;
  background: #f28809;
}
.jewel.tableitem.calendar {
  border-radius: 4px;
}
.jewel.tableitem.calendar[disabled] {
  color: #737373;
  pointer-events: none;
}
.jewel.tableitem.calendar.selected {
  font-weight: bold;
}
.jewel.tableitem.calendar.selected[disabled] {
  color: #FFFFFF;
  background: #191919;
}

a:link {
  color: #F7941D;
}

a:active {
  color: #c16c07;
}

.primary-lightest {
  color: #fef1e2;
}

.primary-light {
  color: #fac380;
}

.primary-normal {
  color: #F7941D;
}

.primary-dark {
  color: #a85e06;
}

.primary-darkest {
  color: #462702;
}

.weight-lightest {
  font-weight: 100;
}

.weight-light {
  font-weight: 300;
}

.weight-regular {
  font-weight: 400;
}

.weight-bold {
  font-weight: 600;
}

.weight-bolder {
  font-weight: 800;
}

h1 {
  font-size: 2em;
  margin: 0.8rem 0rem;
}

h2 {
  font-size: 2em;
  margin: 0.58rem 0rem;
}

h3 {
  font-size: 1.5em;
  margin: 0.408rem 0rem;
}

h4 {
  font-size: 1.25em;
  margin: 0.35rem 0rem;
}

h5 {
  font-size: 1em;
  margin: 0.2rem 0rem;
}

span {
  font-size: 1em;
}

div {
  font-size: 14px;
}

@media (min-width: 992px) and (max-width: 1200px) {
  .jewel {
    font-size: 100%;
  }
  h1 {
    font-size: 2em;
  }
  h2 {
    font-size: 2em;
  }
  h3 {
    font-size: 1.5em;
  }
  h4 {
    font-size: 1.25em;
  }
  h5 {
    font-size: 1em;
  }
}
@media (min-width: 768px) and (max-width: 992px) {
  .jewel {
    font-size: 99%;
  }
  h1 {
    font-size: 1.9em;
  }
  h2 {
    font-size: 1.9em;
  }
  h3 {
    font-size: 1.4em;
  }
  h4 {
    font-size: 1.1em;
  }
  h5 {
    font-size: 0.98em;
  }
}
@media (min-width: 0px) and (max-width: 768px) {
  .jewel {
    font-size: 97%;
  }
  h1 {
    font-size: 1.7em;
  }
  h2 {
    font-size: 1.7em;
  }
  h3 {
    font-size: 1.3em;
  }
  h4 {
    font-size: 1em;
  }
  h5 {
    font-size: 0.97em;
  }
}
.jewel.textinput {
  font-weight: 400;
  color: #FFFFFF;
}
.jewel.textinput input {
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  border-radius: 0.25rem;
  transition-duration: 0.3s;
  transition-timing-function: easein;
}
.jewel.textinput input:focus {
  border: 1px solid #c16c07;
}
.jewel.textinput input::placeholder, .jewel.textinput input:-ms-input-placeholder {
  color: white;
}
.jewel.textinput input[disabled] {
  background: #404040;
  border: 1px solid #0d0d0d;
  box-shadow: none;
  color: #737373;
}
.jewel.textinput input[disabled]::placeholder, .jewel.textinput input[disabled]:-ms-input-placeholder {
  color: #737373;
}
.jewel.textinput input[disabled] + i {
  color: #737373;
}
.jewel.textinput input {
  margin: 0;
  padding: 0.679em 14px;
}
.jewel.textinput.icon input {
  padding-left: 42px;
  padding-right: 14px;
}
.jewel.textinput.icon i.fonticon {
  left: 14px;
}
.jewel.textinput.icon i.fonticon.material-icons {
  left: 10px;
}
.jewel.textinput.icon.right input {
  padding-left: 14px;
  padding-right: 42px;
}
.jewel.textinput.icon.right i.fonticon {
  right: 14px;
}
.jewel.textinput.icon.right i.fonticon.material-icons {
  right: 10px;
}
.jewel.textinput.errorBorder input {
  border: 1px #EC1C24 solid;
}

.jewel.textarea {
  font-weight: 400;
  color: #FFFFFF;
}
.jewel.textarea textarea {
  margin: 0;
  padding: 0.72em 1.12em;
  background: linear-gradient(#7f7f7f, #737373);
  border: 1px solid #333333;
  border-radius: 0.25rem;
  transition-duration: 0.3s;
  transition-timing-function: easein;
}
.jewel.textarea textarea:focus {
  border: 1px solid #c16c07;
}
.jewel.textarea textarea::placeholder, .jewel.textarea textarea:-ms-input-placeholder {
  color: white;
}
.jewel.textarea textarea[disabled] {
  background: #404040;
  border: 1px solid #0d0d0d;
  box-shadow: none;
  color: #737373;
}
.jewel.textarea textarea[disabled]::placeholder, .jewel.textarea textarea[disabled]:-ms-input-placeholder {
  color: #737373;
}

.jewel.togglebutton {
  margin: 0;
  padding: 0.679em 1.12em;
  background: linear-gradient(#666666, #4c4c4c);
  border: 1px solid #333333;
  box-shadow: inset 0 1px 0 #8c8c8c;
  border-radius: 0.25rem;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(13, 13, 13, 0.7);
  font-weight: bold;
  text-transform: uppercase;
}
.jewel.togglebutton:hover, .jewel.togglebutton:hover:focus {
  background: linear-gradient(#595959, #404040);
  border: 1px solid #262626;
  color: #FFFFFF;
}
.jewel.togglebutton:active, .jewel.togglebutton:active:focus {
  background: linear-gradient(#404040, #262626);
  border: 1px solid #0d0d0d;
  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
  color: #FFFFFF;
}
.jewel.togglebutton:focus {
  border: 1px solid #333333;
  box-shadow: inset 0px 0px 0px 1px rgba(217, 217, 217, 0.5), inset 0 1px 0 rgba(229, 229, 229, 0.6);
  color: #FFFFFF;
}
.jewel.togglebutton[disabled] {
  background: #404040 !important;
  border: 1px solid #0d0d0d !important;
  box-shadow: none !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.togglebutton.selected {
  background: linear-gradient(#404040, #262626);
  border: 1px solid #0d0d0d;
  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
  color: #FFFFFF;
}
.jewel.togglebutton[disabled] {
  font-weight: 400;
}
.jewel.togglebutton.icon {
  padding: 0.429em 0.87em;
}
.jewel.togglebutton.icon i {
  margin-left: 0px;
  margin-right: 0px;
}
.jewel.togglebutton.left-space i {
  margin-left: 0px;
  margin-right: 8px;
}
.jewel.togglebutton.right-space i {
  margin-left: 8px;
  margin-right: 0px;
}

.jewel.togglebutton.primary {
  background: linear-gradient(#f8a036, #f28809);
  border: 1px solid #c16c07;
  box-shadow: inset 0 1px 0 #fac380;
  border-radius: 0.25rem;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(119, 67, 4, 0.7);
}
.jewel.togglebutton.primary:hover, .jewel.togglebutton.primary:hover:focus {
  background: linear-gradient(#F7941D, #d97a08);
  border: 1px solid #a85e06;
  color: #FFFFFF;
}
.jewel.togglebutton.primary:active, .jewel.togglebutton.primary:active:focus {
  background: linear-gradient(#d97a08, #a85e06);
  border: 1px solid #774304;
  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
  color: #FFFFFF;
}
.jewel.togglebutton.primary:focus {
  border: 1px solid #c16c07;
  box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.6);
  color: #FFFFFF;
}
.jewel.togglebutton.primary[disabled] {
  background: #404040 !important;
  border: 1px solid #0d0d0d !important;
  box-shadow: none !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.togglebutton.primary.selected {
  background: linear-gradient(#d97a08, #a85e06);
  border: 1px solid #774304;
  box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
  color: #FFFFFF;
}

.jewel.togglebutton.outlined {
  background: rgba(51, 51, 51, 0.05);
  border: 1px solid #191919;
  box-shadow: none;
  color: #0d0d0d;
  text-shadow: none;
}
.jewel.togglebutton.outlined:hover, .jewel.togglebutton.outlined:hover:focus {
  background: rgba(51, 51, 51, 0.15);
  border: 1px solid #0d0d0d;
  color: black;
}
.jewel.togglebutton.outlined:active, .jewel.togglebutton.outlined:active:focus {
  background: rgba(51, 51, 51, 0.25);
  border: 1px solid #050505;
  box-shadow: none;
  color: black;
}
.jewel.togglebutton.outlined:focus {
  border: 1px solid black;
  box-shadow: none;
  color: black;
}
.jewel.togglebutton.outlined[disabled] {
  background: rgba(64, 64, 64, 0.1) !important;
  border: 1px solid #0d0d0d !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.togglebutton.outlined.selected {
  background: rgba(51, 51, 51, 0.25);
  border: 1px solid #050505;
  box-shadow: none;
  color: black;
}

.jewel.togglebutton.primary.outlined {
  background: rgba(247, 148, 29, 0.05);
  border: 1px solid #d97a08;
  box-shadow: none;
  color: #c16c07;
  text-shadow: none;
}
.jewel.togglebutton.primary.outlined:hover, .jewel.togglebutton.primary.outlined:hover:focus {
  background: rgba(247, 148, 29, 0.15);
  border: 1px solid #c16c07;
  color: #8f5105;
}
.jewel.togglebutton.primary.outlined:active, .jewel.togglebutton.primary.outlined:active:focus {
  background: rgba(247, 148, 29, 0.25);
  border: 1px solid #b26406;
  box-shadow: none;
  color: #8f5105;
}
.jewel.togglebutton.primary.outlined:focus {
  border: 1px solid #a85e06;
  box-shadow: none;
  color: #8f5105;
}
.jewel.togglebutton.primary.outlined[disabled] {
  background: rgba(64, 64, 64, 0.1) !important;
  border: 1px solid #0d0d0d !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.togglebutton.primary.outlined.selected {
  background: rgba(247, 148, 29, 0.25);
  border: 1px solid #b26406;
  box-shadow: none;
  color: #8f5105;
}

.jewel.togglebutton.unboxed {
  background: rgba(51, 51, 51, 0);
  border: 1px solid transparent;
  box-shadow: none;
  color: #0d0d0d;
  text-shadow: none;
}
.jewel.togglebutton.unboxed:hover, .jewel.togglebutton.unboxed:hover:focus {
  background: rgba(51, 51, 51, 0.15);
  border: 1px solid transparent;
  color: black;
}
.jewel.togglebutton.unboxed:active, .jewel.togglebutton.unboxed:active:focus {
  background: rgba(51, 51, 51, 0.25);
  border: 1px solid transparent;
  box-shadow: none;
  color: black;
}
.jewel.togglebutton.unboxed:focus {
  background: rgba(51, 51, 51, 0.15);
  border: 1px solid transparent;
  box-shadow: none;
  color: black;
}
.jewel.togglebutton.unboxed[disabled] {
  background: rgba(64, 64, 64, 0) !important;
  border: 1px solid transparent !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.togglebutton.unboxed.selected {
  background: rgba(51, 51, 51, 0.25);
  border: 1px solid transparent;
  box-shadow: none;
  color: black;
}

.jewel.togglebutton.primary.unboxed {
  background: rgba(247, 148, 29, 0);
  border: 1px solid transparent;
  box-shadow: none;
  color: #c16c07;
  text-shadow: none;
}
.jewel.togglebutton.primary.unboxed:hover, .jewel.togglebutton.primary.unboxed:hover:focus {
  background: rgba(247, 148, 29, 0.15);
  border: 1px solid transparent;
  color: #8f5105;
}
.jewel.togglebutton.primary.unboxed:active, .jewel.togglebutton.primary.unboxed:active:focus {
  background: rgba(247, 148, 29, 0.25);
  border: 1px solid transparent;
  box-shadow: none;
  color: #8f5105;
}
.jewel.togglebutton.primary.unboxed:focus {
  background: rgba(247, 148, 29, 0.15);
  border: 1px solid transparent;
  box-shadow: none;
  color: #8f5105;
}
.jewel.togglebutton.primary.unboxed[disabled] {
  background: rgba(64, 64, 64, 0) !important;
  border: 1px solid transparent !important;
  color: #737373;
  text-shadow: unset;
}
.jewel.togglebutton.primary.unboxed.selected {
  background: rgba(247, 148, 29, 0.25);
  border: 1px solid transparent;
  box-shadow: none;
  color: #8f5105;
}

.jewel.tooltip {
  color: #FFFFFF;
  background: #404040;
  box-shadow: 0px 3px 3px 0 rgba(0, 0, 0, 0.4);
  animation: slide-up 0.4s ease;
}
.jewel.tooltip.error {
  background: #EC1C24;
}
.jewel.tooltip::before {
  border: solid 8px transparent;
}
.jewel.tooltip.left-top::before {
  left: 8px;
  border-top-color: #EC1C24;
}
.jewel.tooltip.middle-top::before {
  margin-bottom: -8px;
  margin-left: -8px;
  border-top-color: #EC1C24;
}
.jewel.tooltip.left-middle::before {
  margin-top: -8px;
  margin-right: -8px;
  border-left-color: #EC1C24;
}
.jewel.tooltip.right-middle::before {
  margin-top: -8px;
  margin-left: -8px;
  border-right-color: #EC1C24;
}
.jewel.tooltip.middle-bottom::before {
  margin-top: -8px;
  margin-left: -8px;
  border-bottom-color: #EC1C24;
}
@keyframes slide-up {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.jewel.topappbar .topBarAppHeader {
  background: linear-gradient(#f8a036, #f28809);
  border-top: 1px solid #fab767;
  border-bottom: 1px solid #a85e06;
  color: #FFFFFF;
  text-shadow: 0 -1px 0 rgba(119, 67, 4, 0.7);
}
.jewel.topappbar .topBarAppHeader.has-drawer {
  width: calc(100% - 240px);
}
.jewel.topappbar .jewel.barsection {
  padding: 8px 12px;
}
.jewel.topappbar .jewel.barsection button {
  background: transparent;
  box-shadow: none;
  border: none;
  padding: 12px;
  fill: #FFFFFF;
  color: inherit;
  text-shadow: 0 -1px 0 rgba(119, 67, 4, 0.7);
}
.jewel.topappbar .jewel.barsection button:hover, .jewel.topappbar .jewel.barsection button:hover:focus, .jewel.topappbar .jewel.barsection button:active, .jewel.topappbar .jewel.barsection button:active:focus, .jewel.topappbar .jewel.barsection button:focus {
  background: transparent;
  box-shadow: none;
  border: none;
}
.jewel.topappbar .jewel.barsection button[disabled] {
  background: transparent;
  box-shadow: none;
  border: none;
}
.jewel.topappbar .jewel.bartitle {
  font-size: 1.4em !important;
  font-weight: 800;
  padding-left: 20px;
  padding-right: 0;
}

.jewel.label.wizardTitle {
  color: #F7941D;
  font-size: 2em !important;
}
.jewel.next, .jewel.previous {
  min-width: 44px;
}
.jewel.next:hover, .jewel.previous:hover {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}
.jewel.next .jewel.button, .jewel.previous .jewel.button {
  width: calc(100% - 10px);
}
j|Wizard {
  gap: 3;
  itemsVerticalAlign: itemsCentered;
}

/*# sourceMappingURL=defaults.css.map */
