@charset "UTF-8";
/**
 * Associated to the Dynamic Hexagon Manager service
 *
 * Created in August 2021
 *
 * (c) EDI GmbH - Engineering Data Intelligence
 * HRB 723936 (Amtsgericht Mannheim)
 *
 * Authors
 *   @author Sebastián Garavano <garavano@edi.gmbh>
 *
 * Licensed under Edi Terms of License
 * The License file can be found in the root folder of the
 * repository under LICENSE
 */
.dynamic-application > .dynamic-grid {
  margin: 0 2rem !important;
}
.dynamic-application .dynamic-grid {
  display: grid;
  grid-gap: 1rem;
  margin: 0;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
}
@media only screen and (max-width: 992px) {
  .dynamic-application .dynamic-grid {
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (min-width: 1870px) {
  .dynamic-application .dynamic-grid {
    margin: 0 !important;
  }
}
@media only screen and (max-width: 640px) {
  .dynamic-application .dynamic-grid {
    margin: 0;
  }
}
.dynamic-application .dynamic-grid .dynamic-component-wrapper {
  padding: 0rem 1rem 0.5rem;
  height: fit-content;
  margin: inherit !important;
}
.dynamic-application .dynamic-grid .dynamic-component-wrapper__label {
  margin-bottom: 0.3rem;
}
.dynamic-application .dynamic-grid .dynamic-component-wrapper .dynamic-image-loader {
  display: flex;
  align-items: center;
  justify-content: center;
}
.dynamic-application .dynamic-grid .dynamic-component-wrapper .hive-drop-image-wrapper {
  min-height: 200px;
}
.dynamic-application .dynamic-grid .dynamic-component-wrapper.DynamicImageLoader {
  grid-row-end: 5 !important;
}
@media only screen and (max-width: 680px) {
  .dynamic-application .dynamic-grid .dynamic-component-wrapper {
    margin: 0 -1rem !important;
  }
}
.dynamic-application .dynamic-updatable-select {
  border-radius: 4px;
  padding: 0 !important;
}
.dynamic-application .dynamic-updatable-input input {
  min-height: 30px;
  border-radius: 4px;
}
.dynamic-application .dynamic-component-wrapper label {
  margin-bottom: 8px;
}
.dynamic-application .dynamic-updatable-numeric-input {
  margin: 0 -0.5rem;
}
.dynamic-application .dynamic-object-selector, .dynamic-application .dynamic-component-wrapper {
  margin: 0 -1rem;
}
.dynamic-application .dynamic-object-selector .horizontal-object-list, .dynamic-application .dynamic-component-wrapper .horizontal-object-list {
  max-height: 40px;
}
.dynamic-application .dynamic-object-selector .horizontal-object.ripple, .dynamic-application .dynamic-component-wrapper .horizontal-object.ripple {
  max-height: 30px;
}
@media only screen and (max-width: 419px) {
  .dynamic-application .dynamic-object-selector .horizontal-object.ripple, .dynamic-application .dynamic-component-wrapper .horizontal-object.ripple {
    max-width: 59%;
  }
}
.dynamic-application .dynamic-object-selector .add-button, .dynamic-application .dynamic-component-wrapper .add-button {
  margin: 4px 8px;
  max-height: 30px;
  max-width: 30px;
}
.dynamic-application .dynamic-object-selector, .dynamic-application .dynamic-data-table, .dynamic-application .dynamic-updatable-select {
  padding: 0;
}
.dynamic-application .dynamic-object-selector select, .dynamic-application .dynamic-data-table select, .dynamic-application .dynamic-updatable-select select {
  border-radius: 4px;
  min-height: 30px;
  margin-bottom: 0;
}
.dynamic-application .dynamic-updatable-numeric-input input {
  min-height: 30px;
  margin-top: 0;
}
.dynamic-application .dynamic-updatable-numeric-input .hive-numeric-input--remove,
.dynamic-application .dynamic-updatable-numeric-input .hive-numeric-input--add {
  height: 35px;
  min-height: 35px;
  margin-top: 0;
}
.dynamic-application .dynamic-image-loader__empty-img {
  width: 10rem;
  align-self: center;
  object-fit: contain;
  margin-bottom: 1.5rem;
}
.dynamic-application .dynamic-image-loader__empty-img-wrap {
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  padding: 4rem 2rem;
}
.dynamic-application .dynamic-image-loader__empty-img object {
  width: 100%;
  opacity: 0.3;
}
.dynamic-application .dynamic-image-loader__empty-no-image {
  margin-bottom: 1rem;
  font-size: 1.5rem;
}
.dynamic-application .dynamic-image-loader__empty-text {
  margin-bottom: 1rem;
  font-size: 1rem;
  font-weight: 400;
}
.dynamic-application .dynamic-accordion {
  margin-bottom: 0;
}
.dynamic-application .dynamic-table, .dynamic-application .dynamic-object-list-table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  width: 100%;
}
.dynamic-application .dynamic-table tr, .dynamic-application .dynamic-object-list-table tr {
  background-color: #f8f8f8;
  border: 1px solid #ddd;
  padding: 0.35em;
}
.dynamic-application .dynamic-table th, .dynamic-application .dynamic-table td, .dynamic-application .dynamic-object-list-table th, .dynamic-application .dynamic-object-list-table td {
  padding: 0.625em;
  text-align: center;
  border: 1px solid #ddd;
}
.dynamic-application .dynamic-table th input, .dynamic-application .dynamic-table th select, .dynamic-application .dynamic-table td input, .dynamic-application .dynamic-table td select, .dynamic-application .dynamic-object-list-table th input, .dynamic-application .dynamic-object-list-table th select, .dynamic-application .dynamic-object-list-table td input, .dynamic-application .dynamic-object-list-table td select {
  margin: 0;
}
.dynamic-application .dynamic-table th .horizontal-object-list-wrap .horizontal-object-list, .dynamic-application .dynamic-table td .horizontal-object-list-wrap .horizontal-object-list, .dynamic-application .dynamic-object-list-table th .horizontal-object-list-wrap .horizontal-object-list, .dynamic-application .dynamic-object-list-table td .horizontal-object-list-wrap .horizontal-object-list {
  max-width: 300px;
}
.dynamic-application .dynamic-table th, .dynamic-application .dynamic-object-list-table th {
  font-size: 0.85em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.dynamic-application .dynamic-table th.sortable, .dynamic-application .dynamic-object-list-table th.sortable {
  cursor: pointer;
}
.dynamic-application .dynamic-table th.sortable:hover, .dynamic-application .dynamic-object-list-table th.sortable:hover {
  background-color: #e0e0e0;
  opacity: 0.5;
}
.dynamic-application .dynamic-table th.sortable.active, .dynamic-application .dynamic-object-list-table th.sortable.active {
  position: relative;
}
.dynamic-application .dynamic-table th.sortable.active:after, .dynamic-application .dynamic-object-list-table th.sortable.active:after {
  content: "▼";
  display: inline-block;
  margin-left: 0.35rem;
  font-size: 0.8em;
}
.dynamic-application .dynamic-table th.active, .dynamic-application .dynamic-object-list-table th.active {
  background-color: #e0e0e0;
}
.dynamic-application .dynamic-table-container .single-task-bar-wrap, .dynamic-application .dynamic-object-list-table-container .single-task-bar-wrap {
  background: none;
}
.dynamic-application .dynamic-table-container .single-task-bar-wrap .single-task-bar, .dynamic-application .dynamic-object-list-table-container .single-task-bar-wrap .single-task-bar {
  height: unset;
  margin-top: -1.5rem;
}
@media screen and (max-width: 600px) {
  .dynamic-application .dynamic-table, .dynamic-application .dynamic-object-list-table {
    border: 0;
  }
  .dynamic-application .dynamic-table thead, .dynamic-application .dynamic-object-list-table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .dynamic-application .dynamic-table tr, .dynamic-application .dynamic-object-list-table tr {
    border-bottom: 3px solid #ddd;
    display: block;
    margin-bottom: 0.625em;
  }
  .dynamic-application .dynamic-table td, .dynamic-application .dynamic-object-list-table td {
    border-bottom: 1px solid #ddd;
    display: block;
    font-size: 0.8em;
    text-align: right;
  }
  .dynamic-application .dynamic-table td::before, .dynamic-application .dynamic-object-list-table td::before {
    /*
    * aria-label has no advantage, it won't be read inside a table
    content: attr(aria-label);
    */
    content: attr(data-label);
    float: left;
    font-weight: bold;
    text-transform: uppercase;
  }
  .dynamic-application .dynamic-table td:last-child, .dynamic-application .dynamic-object-list-table td:last-child {
    border-bottom: 0;
  }
}
.dynamic-application .hive-data-table__content {
  justify-content: flex-start;
}
.dynamic-application .hive-data-table__content .HiveUpdatableInput input {
  border-radius: 4px;
  border: none;
  box-shadow: none;
}
.dynamic-application .hive-data-table__content .HiveUpdatableInput input:focus, .dynamic-application .hive-data-table__content .HiveUpdatableInput input:hover, .dynamic-application .hive-data-table__content .HiveUpdatableInput input:active {
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  border: 1px solid #cacaca;
}
.dynamic-application .hex-manager__overview {
  padding: 2rem;
}
.dynamic-application .hex-manager__overview .hive-drop-image-wrapper {
  background: #d5d5d5;
}

.hexagons__wrapper {
  padding: 0 1rem;
}

.HiveUpdatableInput.invalid::after {
  top: 0.5rem;
}

.dynamic-image-loader {
  position: relative;
  width: 100%;
  padding-bottom: 48px;
  border-radius: 16px;
  background: #fff;
  overflow: visible;
}

.dynamic-image-loader__img-wrap img {
  width: 100%;
  height: calc(100% - 48px);
  object-fit: contain;
  display: block;
  border-radius: 12px;
  background: #f3f3f3;
}

.dynamic-image-loader__btn {
  position: absolute;
  bottom: 0;
  width: 36px;
  height: 36px;
  border: 1px solid #d9d9d9;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dynamic-image-loader__btn-prev {
  left: 0;
}
.dynamic-image-loader__btn-next {
  left: 44px;
}
.dynamic-image-loader__btn-remove {
  position: absolute;
  right: 8px;
  bottom: 56px;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #e53935;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
}
.dynamic-image-loader__btn-dots {
  position: absolute;
  right: 0;
  bottom: 12px;
  display: flex;
  gap: 8px;
}
.dynamic-image-loader__btn-dots button {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #d6d6d6;
}
.dynamic-image-loader__btn-dots button.is-active {
  background: #008578;
}
