html,body{height: 100%;margin: 0}:root{--lumo-font-family: 'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--lumo-font-size-xs: 0.6875rem;--lumo-font-size-s: 0.75rem;--lumo-font-size-m: 0.875rem;--lumo-font-size-l: 1rem;--lumo-font-size-xl: 1.25rem;--lumo-space-xs: 4px;--lumo-space-s: 8px;--lumo-space-m: 16px;--lumo-space-l: 24px;--lumo-space-xl: 32px;--lumo-border-radius-s: 2px;--lumo-border-radius-m: 2px;--lumo-border-radius-l: 2px;--lumo-base-color: #ffffff;--lumo-contrast-5pct: #f4f4f4;--lumo-contrast-10pct: #e0e0e0;--lumo-contrast-20pct: #c6c6c6;--lumo-contrast-30pct: #8d8d8d;--lumo-header-text-color: #161616;--lumo-body-text-color: #161616;--lumo-secondary-text-color: #525252;--lumo-tertiary-text-color: #6f6f6f;--lumo-disabled-text-color: #a8a8a8;--vaadin-card-background: var(--lumo-base-color);--lumo-primary-color: #0f62fe;--lumo-primary-text-color: #0f62fe;--lumo-primary-contrast-color: #ffffff;--lumo-error-color: #da1e28;--lumo-error-text-color: #da1e28;--lumo-success-color: #24a148;--lumo-success-text-color: #198038;--lumo-warning-color: #f1c21b;--lumo-warning-text-color: #8e6a00}[theme~="dark"]{--lumo-base-color: #262626;--lumo-contrast-5pct: #2f2f2f;--lumo-contrast-10pct: #393939;--lumo-contrast-20pct: #525252;--lumo-contrast-30pct: #6f6f6f;--lumo-header-text-color: #f4f4f4;--lumo-body-text-color: #f4f4f4;--lumo-secondary-text-color: #c6c6c6;--lumo-tertiary-text-color: #a8a8a8;--lumo-disabled-text-color: #6f6f6f;--lumo-primary-color: #0f62fe;--lumo-primary-text-color: #78a9ff;--lumo-primary-contrast-color: #ffffff;--lumo-error-color: #fa4d56;--lumo-error-text-color: #ff8389;--lumo-success-color: #24a148;--lumo-success-text-color: #42be65;--lumo-warning-color: #f1c21b;--lumo-warning-text-color: #f1c21b}html{background-color: #f4f4f4}html[theme~="dark"]{background-color: #161616}.leaflet-container{background-color: #f4f4f4}[theme~="dark"] .leaflet-container{background-color: #161616}.leaflet-control-attribution{background: rgba(244,244,244,0.75);color: #525252}.leaflet-control-attribution a{color: #0f62fe}[theme~="dark"] .leaflet-control-attribution{background: rgba(22,22,22,0.75);color: #c6c6c6}[theme~="dark"] .leaflet-control-attribution a{color: #78a9ff}.leaflet-bar a,.leaflet-bar a:hover{background-color: #ffffff;color: #161616;border-bottom-color: #c6c6c6}[theme~="dark"] .leaflet-bar a,[theme~="dark"] .leaflet-bar a:hover{background-color: #262626;color: #f4f4f4;border-bottom-color: #525252}.nvs-icon{display: block;flex-shrink: 0}.nvs-mer{display: flex;align-items: center;gap: var(--lumo-space-m)}.nvs-mer.full{width: 100%}.nvs-mer-track{position: relative;flex-shrink: 0;width: 80px;height: 6px;background: var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m)}.nvs-mer.full .nvs-mer-track{flex: 1;width: auto}.nvs-mer-fill{height: 100%;background: var(--lumo-primary-color);border-radius: inherit}.nvs-mer.below .nvs-mer-fill{background: var(--lumo-error-color)}.nvs-mer-tick{position: absolute;top: 0;bottom: 0;width: 2px;background: var(--lumo-contrast-60pct);pointer-events: none}nvs-unit-chip{display: flex;flex-direction: column;gap: 0.15rem;padding: 0.4rem 0.6rem;box-sizing: border-box;cursor: pointer;border: 1px solid var(--lumo-contrast-10pct);border-inline-start: 4px solid var(--nvs-identity,#8d8d8d);border-radius: var(--lumo-border-radius-m)}nvs-unit-chip[faults],nvs-unit-chip[disconnected]{border-color: var(--lumo-error-color);border-inline-start-color: var(--nvs-identity,#8d8d8d);background: color-mix(in srgb,var(--lumo-error-color) 18%,transparent)}nvs-unit-chip[idle]:not([faults]):not([disconnected]){opacity: 0.65}.nvs-chip-header{display: flex;flex-wrap: wrap;align-items: center;gap: var(--lumo-space-m)}.nvs-chip-glyph{color: var(--nvs-identity,#8d8d8d)}.nvs-chip-alias{font-weight: 600}.nvs-chip-provider{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}nvs-unit-chip[idle] .nvs-chip-provider{color: var(--lumo-tertiary-text-color)}nvs-unit-chip[disconnected] .nvs-chip-provider{color: var(--lumo-error-text-color);font-weight: 600}.nvs-board{display: grid;column-gap: 0.75rem;row-gap: 0.5rem;align-items: stretch;padding-bottom: 0.5rem}.nvs-board-header{font-weight: 600;color: var(--lumo-secondary-text-color);border-bottom: 1px solid var(--lumo-contrast-10pct);padding-bottom: 0.25rem}.nvs-cluster-header{grid-column: 1 / -1;display: flex;align-items: center;gap: 0.5rem;cursor: pointer;padding: 0.35rem 0.5rem;margin-top: 0.5rem;background: var(--lumo-contrast-5pct);border-radius: var(--lumo-border-radius-m)}.nvs-cluster-name{font-weight: 600}.nvs-cluster-summary{font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}.nvs-cluster-summary.faulted{color: var(--lumo-error-text-color)}.nvs-site-cell{display: flex;flex-direction: column;gap: 0.2rem;justify-content: center}.nvs-site-name{font-weight: 600}.nvs-site-meta{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}.nvs-site-actions{display: flex;align-items: center;gap: 0.5rem}.nvs-site-actions vaadin-checkbox{font-size: var(--lumo-font-size-xs);margin-inline-end: 0.25rem}.nvs-unit-cell{display: flex;flex-direction: column;gap: 0.25rem}.nvs-no-unit{color: var(--lumo-tertiary-text-color);font-size: var(--lumo-font-size-s)}.nvs-card-decoder{display: flex;flex-wrap: wrap;align-items: center;gap: var(--lumo-space-xs) var(--lumo-space-s);margin-bottom: var(--lumo-space-s);font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}.nvs-member-grid{display: grid;grid-template-columns: 1fr auto auto;column-gap: 0.75rem;row-gap: 0.25rem;align-items: center}.nvs-member-row{display: contents;cursor: pointer}.nvs-member-voted{font-weight: bold}.nvs-member-label{display: flex;flex-direction: column;min-width: 0}.nvs-member-site{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color);overflow-wrap: anywhere}.nvs-wrap{overflow-wrap: anywhere;min-width: 0}.nvs-group-status{display: flex;flex-wrap: wrap;align-items: center;gap: var(--lumo-space-s);margin: var(--lumo-space-xs) 0 var(--lumo-space-m)}.nvs-decoder-list{width: 100%;margin-top: var(--lumo-space-m)}.nvs-decoder-row{display: grid;width: 100%;box-sizing: border-box;grid-template-columns: minmax(0,1fr) auto;column-gap: var(--lumo-space-s);row-gap: 2px;padding: var(--lumo-space-s) 0;border-top: 1px solid var(--lumo-contrast-10pct);cursor: pointer}.nvs-decoder-name{font-weight: 600;overflow-wrap: anywhere;min-width: 0;align-self: center}.nvs-decoder-actions{display: flex;gap: var(--lumo-space-xs);align-self: start}.nvs-decoder-status{grid-column: 1 / -1;display: flex;flex-wrap: wrap;align-items: center;gap: var(--lumo-space-xs) var(--lumo-space-s);font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}vaadin-badge.nvs-wrap{white-space: normal;text-align: start}