@import url("https://fonts.googleapis.com/css2?family=Yantramanav:wght@400;500;600&display=swap");
html {
  --color-black: rgb(32, 32, 32);
  --color-black-15pct: rgb(221, 221, 221);
  --color-blue: rgb(34, 142, 224);
  --color-blue-15pct: rgb(222, 240, 254);
  --color-blue-dark: rgb(28, 104, 197);
  --color-blue-dark-15pct: rgb(221, 232, 247);
  --color-gold: rgb(183, 137, 43);
  --color-gold-15pct: rgb(244, 237, 223);
  --color-green: rgb(106, 153, 56);
  --color-green-15pct: rgb(235, 244, 227);
  --color-green-dark: rgb(0, 148, 74);
  --color-green-dark-15pct: rgb(217, 239, 228);
  --color-grey-dark: rgb(38, 47, 53);
  --color-grey: rgb(104, 104, 104);
  --color-grey-light: rgb(168, 172, 174);
  --color-orange: rgb(246, 132, 1);
  --color-orange-15pct: rgb(254, 237, 217);
  --color-pink: rgb(220, 48, 111);
  --color-pink-15pct: rgb(250, 224, 233);
  --color-purple: rgb(113, 39, 168);
  --color-purple-15pct: rgb(234, 222, 242);
  --color-red: rgb(198, 40, 40);
  --color-red-15pct: rgb(247, 223, 223);
  --color-silver: rgb(158, 158, 158);
  --color-silver-15pct: rgb(241, 241, 241);
  --color-teal: rgb(52, 162, 151);
  --color-teal-15pct: rgb(224, 241, 240);
  --color-yellow: rgb(184, 133, 14);
  --color-yellow-15pct: rgb(255, 244, 217);
  --color-white: rgb(255, 255, 255);
  --lumo-error-color: rgb(255, 66, 56);
  --lumo-error-color-10pct: rgba(255, 66, 56, 0.1);
  --lumo-error-color-50pct: rgba(255, 66, 56, 0.5);
  --lumo-error-text-color: rgb(198, 40, 40);
  --lumo-header-text-color: rgb(0, 151, 95);
  --lumo-primary-color: rgb(0, 151, 95);
  --lumo-primary-color-10pct: rgb(230, 245, 239);
  --lumo-primary-color-50pct: rgb(122, 197, 169);
  --lumo-primary-text-color: rgb(0, 151, 95);
  --lumo-secondary-color: rgb(130, 146, 158);
  --lumo-success-color: rgb(0, 148, 74);
  --lumo-success-color-10pct: rgb(229, 244, 236);
  --lumo-success-color-50pct: rgb(127, 201, 164);
  --lumo-success-text-color: rgb(0, 148, 74);
  --jt-blue: rgb(0, 50, 78);
  --jt-dark-green: rgb(55, 179, 74);
  --jt-light-green: rgb(171, 208, 55);
  --jt-light-grey: rgb(228, 233, 241);
  --jt-teal: rgb(0, 151, 95);
}

@font-face {
  font-family: "ssi";
  src: url("./fonts/ssi.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
}
.icon {
  display: inline-block;
  font-family: "ssi" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  line-height: 1;
  speak: none;
  text-rendering: auto;
  text-transform: none !important;
  vertical-align: -0.125em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-accounting-invoice::before {
  content: "\ea01";
}

.icon-interface-add-1::before {
  content: "\ea02";
}

.icon-interface-add-square::before {
  content: "\ea03";
}

.icon-interface-alert-information-circle::before {
  content: "\ea04";
}

.icon-interface-alert-warning-triangle::before {
  content: "\ea05";
}

.icon-interface-arrows-synchronize::before {
  content: "\ea06";
}

.icon-interface-content-eye-glasses::before {
  content: "\ea07";
}

.icon-interface-delete-3::before {
  content: "\ea08";
}

.icon-interface-delete-bin-2::before {
  content: "\ea09";
}

.icon-interface-delete-circle::before {
  content: "\ea0a";
}

.icon-interface-download-button-2::before {
  content: "\ea0b";
}

.icon-interface-edit-pencil::before {
  content: "\ea0c";
}

.icon-interface-edit-view::before {
  content: "\ea0d";
}

.icon-interface-file-multiple::before {
  content: "\ea0e";
}

.icon-interface-help-customer-support-2::before {
  content: "\ea0f";
}

.icon-interface-login-circle::before {
  content: "\ea10";
}

.icon-interface-logout-circle::before {
  content: "\ea11";
}

.icon-interface-remove-square::before {
  content: "\ea12";
}

.icon-interface-setting-cog::before {
  content: "\ea13";
}

.icon-interface-setting-menu-1::before {
  content: "\ea14";
}

.icon-interface-setting-wrench::before {
  content: "\ea15";
}

.icon-interface-text-formatting-filter-2::before {
  content: "\ea16";
}

.icon-interface-upload-button-2::before {
  content: "\ea17";
}

.icon-interface-user-add::before {
  content: "\ea18";
}

.icon-interface-user-circle::before {
  content: "\ea19";
}

.icon-interface-user-multiple::before {
  content: "\ea1a";
}

.icon-interface-validation-check::before {
  content: "\ea1b";
}

.icon-interface-validation-check-circle::before {
  content: "\ea1c";
}

.icon-interface-weather-sun::before {
  content: "\ea1d";
}

.icon-mail-send-email-envelope::before {
  content: "\ea1e";
}

.icon-mail-send-envelope::before {
  content: "\ea1f";
}

.icon-money-atm-card-1::before {
  content: "\ea20";
}

.icon-money-cash-bag-share::before {
  content: "\ea21";
}

.icon-money-cash-bill-1::before {
  content: "\ea22";
}

.icon-money-cash-coins-stack::before {
  content: "\ea23";
}

.icon-money-currency-euro-circle::before {
  content: "\ea24";
}

.icon-money-graph-document::before {
  content: "\ea25";
}

.icon-money-wallet-purse::before {
  content: "\ea26";
}

.icon-shopping-business-table::before {
  content: "\ea27";
}

.icon-shopping-store-factory-building::before {
  content: "\ea28";
}

html {
  --lumo-font-family: "Yantramanav", Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT",
    "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, Geneva, "Helvetica Neue",
    Helvetica, Arial, sans-serif;
  font-size: var(--lumo-font-size-m);
}

h1,
h3.dialog-header {
  font-size: var(--lumo-font-size-xl);
  margin-top: calc(var(--margin-default) * 0.25);
  font-weight: 550;
}

h2 {
  font-size: var(--lumo-font-size-l);
  margin-top: calc(var(--margin-default) * 2);
  font-weight: 500;
  color: var(--color-grey-dark);
}

h3 {
  font-size: var(--lumo-font-size-m);
  font-weight: 500;
}

h4 {
  font-size: var(--lumo-font-size-s);
  font-weight: 500;
}

label[slot=label] {
  max-width: min(60em, 70vw);
}

.dialog-content textarea {
  font-family: Consolas, Courier, Courier New, Lucida Console, Lucidatypewriter, Lucida Sans Typewriter, Monaco, Andale Mono;
  font-size: var(--lumo-font-size-s);
}

[theme~=badge][theme~=black] {
  background-color: var(--color-black-15pct);
  color: var(--color-black);
}

[theme~=badge][theme~=primary][theme~=black] {
  background-color: var(--color-black);
  color: var(--color-white);
}

[theme~=badge][theme~=blue] {
  background-color: var(--color-blue-15pct);
  color: var(--color-blue);
}

[theme~=badge][theme~=primary][theme~=blue] {
  background-color: var(--color-blue);
  color: var(--color-white);
}

[theme~=badge][theme~=blue-dark] {
  background-color: var(--color-blue-dark-15pct);
  color: var(--color-blue-dark);
}

[theme~=badge][theme~=primary][theme~=blue-dark] {
  background-color: var(--color-blue-dark);
  color: var(--color-white);
}

[theme~=badge][theme~=gold] {
  background-color: var(--color-gold-15pct);
  color: var(--color-gold);
}

[theme~=badge][theme~=primary][theme~=gold] {
  background-color: var(--color-gold);
  color: var(--color-white);
}

[theme~=badge][theme~=green] {
  background-color: var(--color-green-15pct);
  color: var(--color-green);
}

[theme~=badge][theme~=primary][theme~=green] {
  background-color: var(--color-green);
  color: var(--color-white);
}

[theme~=badge][theme~=green-dark] {
  background-color: var(--color-green-dark-15pct);
  color: var(--color-green-dark);
}

[theme~=badge][theme~=primary][theme~=green-dark] {
  background-color: var(--color-green-dark);
  color: var(--color-white);
}

[theme~=badge][theme~=orange] {
  background-color: var(--color-orange-15pct);
  color: var(--color-orange);
}

[theme~=badge][theme~=primary][theme~=orange] {
  background-color: var(--color-orange);
  color: var(--color-white);
}

[theme~=badge][theme~=pink] {
  background-color: var(--color-pink-15pct);
  color: var(--color-pink);
}

[theme~=badge][theme~=primary][theme~=pink] {
  background-color: var(--color-pink);
  color: var(--color-white);
}

[theme~=badge][theme~=purple] {
  background-color: var(--color-purple-15pct);
  color: var(--color-purple);
}

[theme~=badge][theme~=primary][theme~=purple] {
  background-color: var(--color-purple);
  color: var(--color-white);
}

[theme~=badge][theme~=red] {
  background-color: var(--color-red-15pct);
  color: var(--color-red);
}

[theme~=badge][theme~=primary][theme~=red] {
  background-color: var(--color-red);
  color: var(--color-white);
}

[theme~=badge][theme~=silver] {
  background-color: var(--color-silver-15pct);
  color: var(--color-silver);
}

[theme~=badge][theme~=primary][theme~=silver] {
  background-color: var(--color-silver);
  color: var(--color-white);
}

[theme~=badge][theme~=teal] {
  background-color: var(--color-teal-15pct);
  color: var(--color-teal);
}

[theme~=badge][theme~=primary][theme~=teal] {
  background-color: var(--color-teal);
  color: var(--color-white);
}

[theme~=badge][theme~=yellow] {
  background-color: var(--color-yellow-15pct);
  color: var(--color-yellow);
}

[theme~=badge][theme~=primary][theme~=yellow] {
  background-color: var(--color-yellow);
  color: var(--color-white);
}

.button {
  --lumo-button-size: var(--lumo-size-m);
  background-color: var(--_lumo-button-background-color, var(--lumo-contrast-5pct));
  border-radius: var(--lumo-border-radius);
  box-sizing: border-box;
  color: var(--_lumo-button-color, var(--lumo-primary-text-color));
  cursor: var(--lumo-clickable-cursor);
  font-family: var(--lumo-font-family);
  font-size: var(--lumo-font-size-m);
  font-weight: 500;
  height: var(--lumo-button-size);
  line-height: inherit;
  margin: var(--lumo-space-xs) 0;
  padding: 0.25em 1em;
  text-align: center;
}
.button:focus {
  box-shadow: 0 0 0 2px var(--lumo-primary-color-50pct);
}
.button .button {
  background-color: transparent;
}
.button.small {
  --lumo-button-size: var(--lumo-size-s);
  font-size: var(--lumo-font-size-s);
}
.button.large {
  --lumo-button-size: var(--lumo-size-l);
  font-size: var(--lumo-font-size-l);
}
.button.error {
  color: var(--lumo-error-text-color);
}
.button.success {
  color: var(--lumo-success-text-color);
}
.button.contrast {
  color: var(--lumo-contrast);
}
.button.disabled {
  color: var(--lumo-disabled-text-color);
  pointer-events: none;
}
.button:hover {
  text-decoration: none;
}
.button.primary {
  background-color: var(--_lumo-button-primary-background-color, var(--lumo-primary-color));
  color: var(--_lumo-button-primary-color, var(--lumo-primary-contrast-color));
  font-weight: 600;
  min-width: calc(var(--lumo-button-size) * 2.5);
}
.button.primary:focus {
  box-shadow: 0 0 0 1px var(--lumo-base-color), 0 0 0 3px var(--lumo-primary-color-50pct);
}
.button.primary.error {
  background-color: var(--lumo-error-color);
  color: var(--lumo-error-contrast-color);
}
.button.primary.success {
  background-color: var(--lumo-success-color);
  color: var(--lumo-success-contrast-color);
}
.button.primary.contrast {
  background-color: var(--lumo-contrast);
  color: var(--lumo-base-color);
}
.button.primary.disabled {
  background-color: var(--lumo-contrast-30pct);
  color: var(--lumo-base-color);
}
.button.tertiary {
  background-color: transparent;
  min-width: 0;
}

.action-bar,
.dialog-buttons {
  gap: 1em;
}

/*** General dialog handling ***/
.popup {
  margin: -0.5rem;
}

vaadin-dialog-overlay h3.dialog-header {
  margin-top: 0;
}
vaadin-dialog-overlay vaadin-select {
  padding-top: 1em;
}
vaadin-dialog-overlay .dialog-buttons {
  margin-top: var(--margin-default);
}
vaadin-dialog-overlay .dialog-buttons vaadin-button {
  margin-bottom: 0;
  margin-top: 0;
}

vaadin-dialog-overlay[theme=dialog-width-xs] {
  max-width: var(--dialog-width-xs);
}

vaadin-dialog-overlay[theme=dialog-width-s] {
  max-width: var(--dialog-width-s);
}

vaadin-dialog-overlay[theme=dialog-width-m] {
  max-width: var(--dialog-width-m);
}

vaadin-dialog-overlay[theme=dialog-width-l] {
  max-width: var(--dialog-width-l);
}

vaadin-dialog-overlay[theme=dialog-width-xl] {
  max-width: var(--dialog-width-xl);
}
vaadin-dialog-overlay[theme=dialog-width-xl] .json-content {
  width: calc(var(--dialog-width-xl) - 2 * var(--lumo-space-l));
}

/*** Special dialog handling ***/
vaadin-dialog-overlay[theme=dialog-edit-project-location] {
  max-width: var(--dialog-width-m);
}
vaadin-dialog-overlay[theme=dialog-edit-project-location] .zip-code-and-city {
  display: flex;
  flex: 0 0 100%;
  gap: 1em;
}
vaadin-dialog-overlay[theme=dialog-edit-project-location] .zip-code-and-city .zip-code {
  flex: 1 0 25%;
}
vaadin-dialog-overlay[theme=dialog-edit-project-location] .zip-code-and-city .city {
  flex: 2 0 50%;
}

vaadin-dialog-overlay[theme=dialog-edit-sale] {
  max-width: var(--dialog-width-m);
  --vaadin-combo-box-overlay-width: 500px;
}

vaadin-dialog-overlay[theme=dialog-edit-user] {
  max-width: var(--dialog-width-l);
}
vaadin-dialog-overlay[theme=dialog-edit-user] vaadin-checkbox {
  margin-top: var(--margin-default);
}

.label-value-block {
  display: flex;
  gap: 0.5em;
}

.label-value-group {
  align-items: stretch;
  cursor: default;
  display: flex;
  flex-direction: row;
  width: 100%;
  flex: 0 0 25%;
  flex-direction: column;
}
.label-value-group.col-3-quarter {
  flex-basis: 75%;
}
.label-value-group.col-2-quarter {
  flex-basis: 50%;
}
.label-value-group.col-half-quarter {
  flex-basis: 12.5%;
}
.label-value-group.col-quarter-quarter {
  flex-basis: 7.25%;
}
.label-value-group .label {
  align-self: flex-start;
  color: var(--lumo-secondary-text-color);
  font-size: 90%;
  font-weight: 550;
  width: 12em;
}
.label-value-group:not(:first-of-type) {
  border-top: var(--lumo-grid-border-width) solid var(--lumo-grid-border-color);
}

.wrap {
  white-space: pre-wrap;
}

.projects-tooltip th,
.projects-tooltip td,
.units-tooltip th,
.units-tooltip td {
  text-align: left;
}

.projects-tooltip th:first-of-type,
.projects-tooltip td:first-of-type {
  min-width: 100px;
  width: 100px;
  max-width: 100px;
}

.units-tooltip td:not(:last-of-type) {
  padding-right: var(--lumo-space-m);
}

vaadin-scroller {
  --app-header-height: 4.5em;
  --app-footer-height: 3.1em;
  --app-content-height: calc(100vh - var(--app-header-height) - var(--app-footer-height));
}

/* NOTE: vaadin-*.scss files are automatically included by Vaadin and are therefore not listed above */
html {
  --lumo-border-radius: 0.25em;
  --lumo-border-radius-mobile: 1.5em;
  --lumo-clickable-cursor: pointer;
  --dialog-width-xs: 300px;
  --dialog-width-s: 400px;
  --dialog-width-m: 500px;
  --dialog-width-l: 600px;
  --dialog-width-xl: 700px;
  --margin-default: 1em;
  --padding-default: 1em;
  --app-header-height: 4.5em;
  --app-footer-height: 3.1em;
  --app-content-height: calc(100vh - var(--app-header-height) - var(--app-footer-height) - 61px);
  --paged-grid-height: calc(var(--app-content-height) - var(--pager-height));
  --pager-height: 10em;
  --icm-header-height: 58px;
  --icm-footer-height: 58px;
}

footer {
  background-color: var(--color-white);
  border-top: 1px solid var(--color-black-15pct) !important;
  box-shadow: var(--lumo-box-shadow-xs);
  height: var(--icm-footer-height);
}
footer vaadin-menu-bar-button {
  padding-left: 0;
  padding-right: 0;
}
footer .action-bar > a {
  display: flex;
}
footer .footer-container .left {
  position: absolute;
  left: var(--lumo-space-l);
}
footer .footer-container .center {
  position: absolute;
  left: calc(50vw - 90px);
  top: 15px;
}
footer .footer-container .right {
  position: absolute;
  right: var(--lumo-space-l);
}

vaadin-menu-bar-button vaadin-menu-bar-item vaadin-icon {
  width: var(--lumo-icon-size-m);
  height: var(--lumo-icon-size-m);
}

vaadin-menu-bar-list-box vaadin-menu-bar-item {
  min-height: initial;
  padding: 0;
}
vaadin-menu-bar-list-box vaadin-menu-bar-item > * {
  color: var(--lumo-secondary-text-color);
  display: block;
  padding: 0.8em 1em;
  width: 100%;
  cursor: pointer;
}
vaadin-menu-bar-list-box vaadin-menu-bar-item > *:hover {
  color: var(--lumo-primary-color);
  text-decoration: none;
}
vaadin-menu-bar-list-box vaadin-menu-bar-item > * > span {
  padding-left: var(--lumo-space-m);
}
vaadin-menu-bar-list-box vaadin-menu-bar-item > * span {
  padding-right: var(--lumo-space-m);
}
vaadin-menu-bar-list-box vaadin-menu-bar-item > * span.text-s {
  font-size: var(--lumo-font-size-m);
  position: relative;
  top: -0.1em;
}
vaadin-menu-bar-list-box vaadin-menu-bar-item > * > div:has(> vaadin-icon) {
  display: inline-block;
}

header {
  height: var(--icm-header-height);
  background-color: var(--color-white);
  padding: 0 0 0 var(--lumo-space-l);
  border-bottom: 1px solid var(--color-black-15pct) !important;
  box-shadow: var(--lumo-box-shadow-xs);
}
header .header-logo {
  position: relative;
  top: 5px;
}
header nav.border-b {
  border: none;
}
header .vaadin-menu-item {
  padding-right: var(--lumo-space-l);
}
header a.contact-support-link {
  display: inline-block;
  margin-left: 1.8em;
}
header a.contact-support-link vaadin-icon {
  width: var(--lumo-icon-size-m);
  height: var(--lumo-icon-size-m);
}

vaadin-scroller {
  background-color: var(--color-white);
}
vaadin-scroller a.back {
  margin: 0 0.6em 0 0;
}
vaadin-scroller a.back + h1 {
  line-height: var(--lumo-button-size);
  margin-top: 0;
}

vaadin-icon {
  width: var(--lumo-icon-size-s);
  height: var(--lumo-icon-size-s);
}

a:has(vaadin-icon) {
  display: inline-block;
}

vaadin-app-layout[primary-section=navbar] header a.home-link img.header-logo {
  height: 32px;
  margin-right: 1em;
}
vaadin-app-layout[primary-section=navbar] header a.home-link + a {
  color: var(--jt-blue);
  font-size: 24px;
  font-weight: bold;
  line-height: 32px;
}
vaadin-app-layout[primary-section=navbar] header a.home-link + a:hover {
  text-decoration: none;
}
vaadin-app-layout[primary-section=navbar] li a {
  border-radius: 10px;
}
vaadin-app-layout[primary-section=navbar] li a i.icon {
  align-self: center;
}
vaadin-app-layout[primary-section=navbar] li a span {
  font-size: var(--lumo-font-size-l) !important;
}
vaadin-app-layout[primary-section=navbar] li a:hover {
  color: var(--lumo-primary-color);
  text-decoration: none;
}
vaadin-app-layout[primary-section=navbar] li a[highlight] {
  background-color: var(--lumo-primary-color-10pct);
  color: var(--lumo-primary-color);
}
vaadin-app-layout[primary-section=navbar] .search-field {
  left: 4.8em;
  position: relative;
  width: 16em;
}
vaadin-app-layout[primary-section=navbar] .search-field + .search-btn {
  position: relative;
  left: -0.4em;
  top: 0.2em;
}

vaadin-vertical-layout.create-api-key {
  max-width: 42em;
}
vaadin-vertical-layout.create-api-key div.your-api-key {
  max-width: 42em;
}
vaadin-vertical-layout.create-api-key div.api-key-set {
  max-width: 25em;
}
vaadin-vertical-layout.create-api-key p.api-key,
vaadin-vertical-layout.create-api-key p.api-key-truncated {
  border: 0.1em solid var(--jt-dark-green);
  border-radius: 5px;
  display: inline-block;
  padding: 1em 1.7em;
}
vaadin-vertical-layout.create-api-key .api-key-set {
  display: flex;
  flex-direction: column;
}

vaadin-vertical-layout.certification-details .label-value-group {
  flex-direction: row;
}
vaadin-vertical-layout.certification-details vaadin-grid::part(highlight-linked) {
  background: var(--lumo-primary-color-10pct);
}

vaadin-vertical-layout.customer-user-overview ul.enum-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
vaadin-vertical-layout.customer-user-overview .customer-user-table div.icon-tooltip-container {
  display: inline-block;
}
vaadin-vertical-layout.customer-user-overview vaadin-button[theme=primary] {
  bottom: 0.5em;
  position: fixed;
  right: 0.5em;
}

vaadin-vertical-layout.customer-overview .customer-table div.icon-tooltip-container {
  display: inline-block;
}
vaadin-vertical-layout.customer-overview vaadin-button[theme=primary] {
  bottom: 0.5em;
  position: fixed;
  right: 0.5em;
}

vaadin-vertical-layout.device-data-upload h1 {
  font-weight: bold;
}
vaadin-vertical-layout.device-data-upload vaadin-horizontal-layout {
  gap: 3em;
  width: 100%;
}
vaadin-vertical-layout.device-data-upload vaadin-horizontal-layout div {
  width: 50%;
}
vaadin-vertical-layout.device-data-upload vaadin-horizontal-layout div vaadin-horizontal-layout {
  align-items: baseline;
  gap: 0.5em;
  margin-bottom: 1em;
}
vaadin-vertical-layout.device-data-upload vaadin-horizontal-layout div vaadin-horizontal-layout h1 {
  font-size: var(--lumo-font-size-l);
}
vaadin-vertical-layout.device-data-upload vaadin-horizontal-layout div h2 {
  font-size: var(--lumo-font-size-m);
  font-weight: bold;
  margin-bottom: 1em;
}

vaadin-vertical-layout.frequency-band-details .frequency-band-details-table div.icon-tooltip-container {
  display: inline-block;
}

vaadin-vertical-layout.frequency-band-management .frequency-band-management-grid div.icon-tooltip-container {
  display: inline-block;
}

vaadin-vertical-layout.global-user-overview ul.enum-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
vaadin-vertical-layout.global-user-overview .global-user-table div.icon-tooltip-container {
  display: inline-block;
}
vaadin-vertical-layout.global-user-overview vaadin-button[theme=primary] {
  bottom: 0.5em;
  position: fixed;
  right: 0.5em;
}

vaadin-vertical-layout.device-data-overview p.error-text {
  color: #ff4136;
  font-weight: bold;
}
vaadin-vertical-layout.device-data-overview .device-data-table ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
vaadin-vertical-layout.device-data-overview .device-data-table ul li {
  display: inline-block;
}
vaadin-vertical-layout.device-data-overview .device-data-table ul li:not(:last-child)::after {
  content: ", ";
  margin-right: 0.3em;
}
vaadin-vertical-layout.device-data-overview .favourites-bar {
  width: 100%;
}
vaadin-vertical-layout.device-data-overview .favourites-bar .clear-filter {
  margin-left: auto;
}

vaadin-vertical-layout.device-data-details {
  position: relative;
}
vaadin-vertical-layout.device-data-details p.error-text {
  color: #ff4136;
  font-weight: bold;
}
vaadin-vertical-layout.device-data-details .label-value-group {
  flex-direction: row;
}
vaadin-vertical-layout.device-data-details .certification-div {
  border-width: 0.4em;
  border-radius: var(--lumo-border-radius-m);
  padding: 0.6em 0.6em;
  position: absolute;
  right: 1em;
  top: 4em;
}
vaadin-vertical-layout.device-data-details .certification-div .certification-div-header {
  font-weight: bold;
  margin: 0;
}
vaadin-vertical-layout.device-data-details .certification-div .certification-div-content {
  background-color: var(--color-white);
  border-radius: var(--lumo-border-radius-m);
  color: var(--lumo-body-text-color);
  margin-top: 0.6em;
  padding: 0.4em 0.6em;
}
vaadin-vertical-layout.device-data-details .certification-div .certification-div-content > * {
  margin: 0;
}
vaadin-vertical-layout.device-data-details .certification-div .certification-div-content > *.certification-div-date {
  font-weight: bold;
}
vaadin-vertical-layout.device-data-details .certification-div.certified {
  border-color: var(--jt-dark-green);
  background-color: var(--jt-dark-green);
}
vaadin-vertical-layout.device-data-details .certification-div.certified .certification-div-header {
  color: var(--color-white);
}
vaadin-vertical-layout.device-data-details .certification-div.uncertified {
  border-color: var(--jt-light-grey);
  background-color: var(--jt-light-grey);
}
vaadin-vertical-layout.device-data-details .certification-div.uncertified .certification-div-header {
  color: var(--color-silver);
}

vaadin-vertical-layout.forgot-password {
  align-items: center;
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  height: 100%;
  justify-content: center;
}
vaadin-vertical-layout.forgot-password > vaadin-vertical-layout {
  box-shadow: 0 2px 6.65px 0.35px rgba(0, 0, 0, 0.15);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  max-width: 50em;
}
vaadin-vertical-layout.forgot-password > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) {
  align-items: center;
  background-color: var(--color-white);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  padding: 1em 0 1em 0;
  width: 100%;
}
vaadin-vertical-layout.forgot-password > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo {
  height: 32px;
  margin-right: 1em;
}
vaadin-vertical-layout.forgot-password > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo + span {
  color: var(--jt-blue);
  font-size: 24px;
  font-weight: bold;
  line-height: 32px;
}
vaadin-vertical-layout.forgot-password > vaadin-vertical-layout h2 {
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 1em;
}
vaadin-vertical-layout.forgot-password > vaadin-vertical-layout p {
  font-weight: bold;
}

vaadin-vertical-layout.login {
  align-items: center;
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  height: 100%;
  justify-content: center;
}
vaadin-vertical-layout.login > vaadin-vertical-layout {
  align-items: center;
  box-shadow: 0 2px 6.65px 0.35px rgba(0, 0, 0, 0.15);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  max-width: 50em;
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) {
  align-items: center;
  background-color: var(--color-white);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  padding: 2.5em 0 1em 0;
  width: 100%;
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo {
  height: 32px;
  margin-right: 1em;
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo + span {
  color: var(--jt-blue);
  font-size: 24px;
  font-weight: bold;
  line-height: 32px;
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(3) {
  gap: 2em;
  padding-left: 2em;
  padding-right: 2em;
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(3) > * {
  flex: 1 1 0;
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(3) a.button.registration-link {
  background-color: var(--jt-blue);
  color: var(--color-white);
  display: block;
  height: var(--lumo-button-size);
}
vaadin-vertical-layout.login > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(3) a.button.registration-link:hover {
  background-color: #002235;
  text-decoration: none;
}
vaadin-vertical-layout.login > vaadin-vertical-layout .notice-success {
  background-color: var(--lumo-primary-color-10pct);
  padding: 0.75em 1.2em;
  width: calc(100% - 2.4em);
}
vaadin-vertical-layout.login > vaadin-vertical-layout .notice-success h5 {
  color: var(--lumo-primary-color);
  font-weight: bold;
}
vaadin-vertical-layout.login > vaadin-vertical-layout .notice-success p {
  margin-bottom: 0;
}
vaadin-vertical-layout.login > vaadin-vertical-layout h2 {
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 0;
}

vaadin-vertical-layout.manage-favourites ul.favourite-list {
  list-style-type: none;
  padding-left: 0;
}
vaadin-vertical-layout.manage-favourites ul.favourite-list vaadin-horizontal-layout {
  align-items: baseline;
  border-radius: 0.8em;
  padding-left: 2em;
  padding-right: 2em;
}
vaadin-vertical-layout.manage-favourites ul.favourite-list vaadin-horizontal-layout:hover {
  background-color: var(--lumo-primary-color-10pct);
}
vaadin-vertical-layout.manage-favourites ul.favourite-list vaadin-horizontal-layout span {
  width: 20em;
}
vaadin-vertical-layout.manage-favourites ul.favourite-list vaadin-horizontal-layout i.icon-interface-delete-bin-2 {
  color: var(--color-red);
}

vaadin-vertical-layout.register {
  align-items: center;
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  min-height: 100%;
  justify-content: center;
  overflow-y: auto;
}
vaadin-vertical-layout.register > vaadin-vertical-layout {
  background-color: var(--color-white);
  box-shadow: 0 2px 6.65px 0.35px rgba(0, 0, 0, 0.15);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  max-width: 50em;
}
vaadin-vertical-layout.register > vaadin-vertical-layout vaadin-text-field,
vaadin-vertical-layout.register > vaadin-vertical-layout vaadin-select,
vaadin-vertical-layout.register > vaadin-vertical-layout vaadin-combo-box {
  width: 42ch;
}
vaadin-vertical-layout.register > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) {
  align-items: center;
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  padding: 1em 0 1em 0;
  width: 100%;
}
vaadin-vertical-layout.register > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo {
  height: 32px;
  margin-right: 1em;
}
vaadin-vertical-layout.register > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo + span {
  color: var(--jt-blue);
  font-size: 24px;
  font-weight: bold;
  line-height: 32px;
}
vaadin-vertical-layout.register > vaadin-vertical-layout h2 {
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 1em;
}
vaadin-vertical-layout.register > vaadin-vertical-layout p {
  font-weight: bold;
}
vaadin-vertical-layout.register > vaadin-vertical-layout .captcha {
  margin-top: 1em;
}
vaadin-vertical-layout.register > vaadin-vertical-layout .captcha .frc-captcha {
  border-radius: var(--lumo-border-radius);
  padding: var(--lumo-space-m) var(--lumo-space-m) var(--lumo-space-l) var(--lumo-space-m);
}
vaadin-vertical-layout.register > vaadin-vertical-layout .captcha.invalid .frc-captcha {
  border-color: var(--lumo-error-color);
}
vaadin-vertical-layout.register > vaadin-vertical-layout vaadin-button[theme=primary] {
  margin-top: 1em;
}

vaadin-vertical-layout.registration-success {
  align-items: center;
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  height: 100%;
  justify-content: center;
}
vaadin-vertical-layout.registration-success > vaadin-vertical-layout {
  background-color: var(--color-white);
  box-shadow: 0 2px 6.65px 0.35px rgba(0, 0, 0, 0.15);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  max-width: 50em;
}
vaadin-vertical-layout.registration-success > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) {
  align-items: center;
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  padding: 1em 0 1em 0;
  width: 100%;
}
vaadin-vertical-layout.registration-success > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo {
  height: 32px;
  margin-right: 1em;
}
vaadin-vertical-layout.registration-success > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo + span {
  color: var(--jt-blue);
  font-size: 24px;
  font-weight: bold;
  line-height: 32px;
}
vaadin-vertical-layout.registration-success > vaadin-vertical-layout h2 {
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 1em;
}

vaadin-vertical-layout.reset-password {
  align-items: center;
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  height: 100%;
  justify-content: center;
}
vaadin-vertical-layout.reset-password > vaadin-vertical-layout {
  box-shadow: 0 2px 6.65px 0.35px rgba(0, 0, 0, 0.15);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  max-width: 38em;
}
vaadin-vertical-layout.reset-password > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) {
  align-items: center;
  background-color: var(--color-white);
  border-radius: var(--lumo-border-radius-m);
  justify-content: center;
  padding: 1em 0 1em 0;
  width: 100%;
}
vaadin-vertical-layout.reset-password > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo {
  height: 32px;
  margin-right: 1em;
}
vaadin-vertical-layout.reset-password > vaadin-vertical-layout > vaadin-horizontal-layout:nth-child(1) img.login-logo + span {
  color: var(--jt-blue);
  font-size: 24px;
  font-weight: bold;
  line-height: 32px;
}
vaadin-vertical-layout.reset-password > vaadin-vertical-layout h2 {
  background: linear-gradient(to right, var(--jt-blue), var(--jt-teal), var(--jt-dark-green), var(--jt-light-green));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 1em;
}
vaadin-vertical-layout.reset-password > vaadin-vertical-layout p {
  font-weight: bold;
}

vaadin-vertical-layout.contact-support .label-value-group {
  flex-direction: row;
}
vaadin-vertical-layout.contact-support .label-value-group .label {
  width: 7em;
}
vaadin-vertical-layout.contact-support .label-value-group vaadin-text-field,
vaadin-vertical-layout.contact-support .label-value-group vaadin-text-area {
  max-width: 30em;
  width: 50vw;
}

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