@keyframes loading-indicator {
  0% {
    transform: scaleX(0);
    transform-origin: left;
  }
  50% {
    transform: scaleX(0.2);
    transform-origin: 20%;
  }
  70% {
    transform: scaleX(0.5);
    transform-origin: 50%;
  }
  80% {
    transform: scaleX(0.5);
    transform-origin: 80%;
  }
  90% {
    transform: scaleX(0.2);
    transform-origin: 110%;
  }
  100% {
    transform: scaleX(0);
    transform-origin: 120%;
  }
}

.one {
    opacity: 0;
    -webkit-animation: dot 1.3s infinite;
    -webkit-animation-delay: 0.0s;
    animation: dot 1.3s infinite;
    animation-delay: 0.0s;
}

.two {
    opacity: 0;
    -webkit-animation: dot 1.3s infinite;
    -webkit-animation-delay: 0.2s;
      animation: dot 1.3s infinite;
      animation-delay: 0.2s;
}

.three {
    opacity: 0;
    -webkit-animation: dot 1.3s infinite;
    -webkit-animation-delay: 0.3s;
     animation: dot 1.3s infinite;
     animation-delay: 0.3s;
}

@-webkit-keyframes dot {
      0% { opacity: 0; }
     50% { opacity: 0; }
    100% { opacity: 1; }
}

@keyframes dot {
      0% { opacity: 0; }
     50% { opacity: 0; }
    100% { opacity: 1; }
}


.placeholder {
  animation: placeholder-animation ease-in-out 2s infinite;
}


@keyframes placeholder-animation {
  0% {
    background-color: #f2f2f2;
  }
  50% {
    background-color: #dfe3e8;
  }
  100% {
    background-color: #f2f2f2;
  }
}


/* DayPicker styles */

.DayPicker {
  display: inline-block;
  font-size: 1rem;
}

.DayPicker-wrapper {
  position: relative;

  flex-direction: row;
  padding-bottom: 1em;

  -webkit-user-select: none;

     -moz-user-select: none;

      -ms-user-select: none;

          user-select: none;
}

.DayPicker-Months {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.DayPicker-Month {
  display: table;
  margin: 0 1em;
  margin-top: 1em;
  border-spacing: 0;
  border-collapse: collapse;

  -webkit-user-select: none;

     -moz-user-select: none;

      -ms-user-select: none;

          user-select: none;
}

.DayPicker-NavBar {
}

.DayPicker-NavButton {
  position: absolute;
  top: 1em;
  right: 1.5em;
  left: auto;

  display: inline-block;
  margin-top: 2px;
  width: 1.25em;
  height: 1.25em;
  background-position: center;
  background-size: 50%;
  background-repeat: no-repeat;
  color: #8B9898;
  cursor: pointer;
}

.DayPicker-NavButton:hover {
  opacity: 0.8;
}

.DayPicker-NavButton--prev {
  margin-right: 1.5em;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAwCAYAAAB5R9gVAAAABGdBTUEAALGPC/xhBQAAAVVJREFUWAnN2G0KgjAYwPHpGfRkaZeqvgQaK+hY3SUHrk1YzNLay/OiEFp92I+/Mp2F2Mh2lLISWnflFjzH263RQjzMZ19wgs73ez0o1WmtW+dgA01VxrE3p6l2GLsnBy1VYQOtVSEH/atCCgqpQgKKqYIOiq2CBkqtggLKqQIKgqgCBjpJ2Y5CdJ+zrT9A7HHSTA1dxUdHgzCqJIEwq0SDsKsEg6iqBIEoq/wEcVRZBXFV+QJxV5mBtlDFB5VjYTaGZ2sf4R9PM7U9ZU+lLuaetPP/5Die3ToO1+u+MKtHs06qODB2zBnI/jBd4MPQm1VkY79Tb18gB+C62FdBFsZR6yeIo1YQiLJWMIiqVjQIu1YSCLNWFgijVjYIuhYYCKoWKAiiFgoopxYaKLUWOii2FgkophYp6F3r42W5A9s9OcgNvva8xQaysKXlFytoqdYmQH6tF3toSUo0INq9AAAAAElFTkSuQmCC);
}

.DayPicker-NavButton--next {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAwCAYAAAB5R9gVAAAABGdBTUEAALGPC/xhBQAAAXRJREFUWAnN119ugjAcwPHWzJ1gnmxzB/BBE0n24m4xfNkTaOL7wOtsl3AXMMb+Vjaa1BG00N8fSEibPpAP3xAKKs2yjzTPH9RAjhEo9WzPr/Vm8zgE0+gXATAxxuxtqeJ9t5tIwv5AtQAApsfT6TPdbp+kUBcgVwvO51KqVhMkXKsVJFXrOkigVhCIs1Y4iKlWZxB1rX4gwlpRIIpa8SDkWmggrFq4IIRaJKCYWnSgnrXIQV1r8YD+1Vrn+bReagysIFfLABRt31v8oBu1xEBttfRbltmfjgEcWh9snUS2kNdBK6WN1vrOWxObWsz+fjxevsxmB1GQDfINWiev83nhaoiB/CoOU438oPrhXS0WpQ9xc1ZQWxWHqUYe0I0qrKCQKjygDlXIQV2r0IF6ViEBxVTBBSFUQQNhVYkHIVeJAtkNsbQ7c1LtzP6FsObhb2rCKv7NBIGoq4SDmKoEgTirXAcJVGkFSVVpgoSrXICGUMUH/QBZNSUy5XWUhwAAAABJRU5ErkJggg==);
}

.DayPicker-NavButton--interactionDisabled {
  display: none;
}

.DayPicker-Caption {
  display: table-caption;
  margin-bottom: 0.5em;
  padding: 0 0.5em;
  text-align: left;
}

.DayPicker-Caption > div {
  font-weight: 500;
  font-size: 1.15em;
}

.DayPicker-Weekdays {
  display: table-header-group;
  margin-top: 1em;
}

.DayPicker-WeekdaysRow {
  display: table-row;
}

.DayPicker-Weekday {
  display: table-cell;
  padding: 0.5em;
  color: #8B9898;
  text-align: center;
  font-size: 0.875em;
}

.DayPicker-Weekday abbr[title] {
  border-bottom: none;
  text-decoration: none;
}

.DayPicker-Body {
  display: table-row-group;
}

.DayPicker-Week {
  display: table-row;
}

.DayPicker-Day {
  display: table-cell;
  padding: 0.5em;
  border-radius: 50%;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
}

.DayPicker-WeekNumber {
  display: table-cell;
  padding: 0.5em;
  min-width: 1em;
  border-right: 1px solid #EAECEC;
  color: #8B9898;
  vertical-align: middle;
  text-align: right;
  font-size: 0.75em;
  cursor: pointer;
}

.DayPicker--interactionDisabled .DayPicker-Day {
  cursor: default;
}

.DayPicker-Footer {
  padding-top: 0.5em;
}

.DayPicker-TodayButton {
  border: none;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  color: #4A90E2;
  font-size: 0.875em;
  cursor: pointer;
}

/* Default modifiers */

.DayPicker-Day--today {
  color: #D0021B;
  font-weight: 700;
}

.DayPicker-Day--outside {
  color: #8B9898;
  cursor: default;
}

.DayPicker-Day--disabled {
  color: #DCE0E0;
  cursor: default;
  /* background-color: #eff1f1; */
}

/* Example modifiers */

.DayPicker-Day--sunday {
  background-color: #F7F8F8;
}

.DayPicker-Day--sunday:not(.DayPicker-Day--today) {
  color: #DCE0E0;
}

.DayPicker-Day--selected:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside) {
  position: relative;

  background-color: #4A90E2;
  color: #F0F8FF;
}

.DayPicker-Day--selected:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside):hover {
  background-color: #51A0FA;
}

.DayPicker:not(.DayPicker--interactionDisabled)
  .DayPicker-Day:not(.DayPicker-Day--disabled):not(.DayPicker-Day--selected):not(.DayPicker-Day--outside):hover {
  background-color: #F0F8FF;
}

/* DayPickerInput */
.DayPickerInput {
  display: inline-block;
}

.DayPickerInput-OverlayWrapper {
  position: relative;
}

/* Standard overlay */
.DayPickerInput-Overlay {
  position: absolute;
  z-index: 1;
  right: 0;

  background: white;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
}

/* Used explicitly to shift overlay right */
.DayPickerInput-OverlayLeft {
  position: absolute;
  z-index: 1;
  left: 0;

  background: white;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
}

.DayPickerInput > input {
  outline: none;
  background: none;
  border-color: #b8b8b8;
  border-radius: 4px;
  border-style: solid;
  border-width: 1px;
  padding: 12px;
  line-height: 1.33;
  height: 40px;
  font-family: 'Lato', sans-serif;
  font-size: 16px;
  font-weight: 400;
  width: 100%;
}

.DayPickerInput > input:focus {
  border-color: #0c6ff9;
  box-shadow: 0 0 0 3px #e2f2ff;
}

.DayPickerInput > input:disabled {
  background-color: #f2f2f2;
}

.icon-module__icon--J_JmY {
  display: inline-block;
  vertical-align: middle;
}

.icon-module__sm--QpOdp {
  width: 16px;
  height: 16px;
}

.icon-module__md--dI7x9 {
  width: 20px;
  height: 20px;
}

.icon-module__lg--lvQHx {
  width: 24px;
  height: 24px;
}

.icon-module__xl--_vU7X {
  width: 32px;
  height: 32px;
}

.dropdownBase-module__wrapper--lgwzy {
  position: relative;
  display: inline-block;
}

.dropdownBase-module__trigger--hPVs9 {
  all: unset;
  cursor: pointer;
  user-select: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  white-space: nowrap;
  box-sizing: border-box;
}

.dropdownBase-module__triggerActive--f4Phc {
  border-color: var(--color-primary-500);
  background: var(--color-primary-50);
  color: var(--color-primary-500);
}

.dropdownBase-module__chevron--NtS0_ {
  display: flex;
  align-items: center;
  transition: transform 0.15s ease;
}

.dropdownBase-module__chevronOpen--XWpJS {
  transform: rotate(180deg);
}

.dropdownBase-module__option--GKVQB {
  display: flex;
  align-items: center;
  width: 100%;
  font-size: 13px;
  font-family: inherit;
  color: var(--color-neutral-900);
  background: none;
  border: none;
  cursor: pointer;
  box-sizing: border-box;
}

.dropdownBase-module__option--GKVQB:hover {
  background: var(--color-neutral-100);
}

.dropdownBase-module__backdrop--AILaf {
  position: fixed;
  inset: 0;
  z-index: 49;
  background: transparent;
  border: none;
  padding: 0;
  cursor: default;
}

.filterDropdown-module__wrapper--PGyNH { }

.filterDropdown-module__trigger--vqz3E {
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.filterDropdown-module__trigger--vqz3E:hover { background: var(--color-neutral-100); }

.filterDropdown-module__triggerActive--cObue { }
.filterDropdown-module__triggerActive--cObue:hover { background: var(--color-primary-50); }
.filterDropdown-module__triggerActive--cObue .filterDropdown-module__icon--H5BSp { color: var(--color-blue-500); }

.filterDropdown-module__icon--H5BSp {
  display: flex;
  flex-shrink: 0;
  color: var(--color-neutral-900);
}

.filterDropdown-module__chevron--_TiWw { }
.filterDropdown-module__chevronOpen--OjAqd { }

.filterDropdown-module__extraCount--cUfGw {
  font-size: 12px;
  font-weight: 600;
  margin-left: 2px;
}

.filterDropdown-module__popoverFixed--Y2_ma {
  position: fixed;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  z-index: 1102;
  min-width: 240px;
  max-width: 320px;
  overflow: hidden;
}

.filterDropdown-module__searchWrap--PPo3b {
  padding: 8px;
  border-bottom: 1px solid var(--color-neutral-200);
}

.filterDropdown-module__searchInput--TELrv {
  width: 100%;
  padding: 6px 10px;
  font-size: 13px;
  font-family: inherit;
  border: 1px solid var(--color-neutral-200);
  border-radius: 4px;
  outline: none;
  box-sizing: border-box;
}

.filterDropdown-module__searchInput--TELrv:focus { border-color: var(--color-blue-500); }
.filterDropdown-module__searchInput--TELrv::placeholder { color: var(--color-neutral-700); }

.filterDropdown-module__optionsList--mblkB {
  max-height: 240px;
  overflow-y: auto;
  padding: 4px 0;
}

.filterDropdown-module__optionItem--eKmDU {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  transition: background 0.1s ease;
}

.filterDropdown-module__optionButton--bJlAT {
  width: 100%;
  border: none;
  background: transparent;
  text-align: left;
  font: inherit;
  color: inherit;
  cursor: pointer;
  justify-content: space-between;
}

.filterDropdown-module__optionSelected--mDtFh {
  background: var(--color-primary-50);
  color: var(--color-primary-600);
  font-weight: 600;
}

.filterDropdown-module__selectedBadge--Vt_54 {
  font-size: 11px;
  color: var(--color-primary-600);
}

.filterDropdown-module__checkbox--gMYrj {
  width: 16px;
  height: 16px;
  accent-color: var(--color-blue-500);
  flex-shrink: 0;
  cursor: pointer;
}

.filterDropdown-module__noResults--eEsx9 {
  padding: 12px;
  font-size: 13px;
  color: var(--color-neutral-700);
  text-align: center;
}

.filterDropdown-module__backdrop--q7QQS {
  z-index: 1101;
}

.cellTooltip-module__wrapper--Pc5eM {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cellTooltip-module__wrapperLight--qNjJy {
  display: inline-flex;
  overflow: visible;
  white-space: normal;
}

.cellTooltip-module__tooltip--vCf7S {
  position: fixed;
  z-index: 10000;
  background: #323233;
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 400;
  white-space: pre-line;
  max-width: 320px;
  overflow-wrap: break-word;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.cellTooltip-module__tooltipLight--Ut0Wx {
  position: fixed;
  transform: translateX(-50%);
  z-index: 10000;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-700);
  border-radius: var(--radius-lg);
  padding: 6px 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  color: var(--color-neutral-900);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-regular);
  line-height: 1.35;
  white-space: pre-line;
  max-width: min(240px, calc(100vw - 16px));
  pointer-events: none;
  overflow-wrap: break-word;
}

.cellTooltip-module__tooltipInteractive--ulSYX {
  pointer-events: auto;
}

.cellTooltip-module__hintTopLight--jDF_m,
.cellTooltip-module__hintTopDark--XbU0_,
.cellTooltip-module__hintBottomLight--ZUrDB,
.cellTooltip-module__hintBottomDark--MtH7m {
  position: absolute;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  height: 18px;
  pointer-events: none;
  z-index: 1;
}

.cellTooltip-module__hintTopLight--jDF_m,
.cellTooltip-module__hintTopDark--XbU0_ {
  top: 0;
  align-items: flex-start;
  padding-top: 2px;
}

.cellTooltip-module__hintBottomLight--ZUrDB,
.cellTooltip-module__hintBottomDark--MtH7m {
  bottom: 0;
  align-items: flex-end;
  padding-bottom: 2px;
}

.cellTooltip-module__hintTopLight--jDF_m {
  background: linear-gradient(to bottom, var(--color-white) 35%, transparent);
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}

.cellTooltip-module__hintBottomLight--ZUrDB {
  background: linear-gradient(to top, var(--color-white) 35%, transparent);
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
}

.cellTooltip-module__hintTopDark--XbU0_ {
  background: linear-gradient(to bottom, #323233 35%, transparent);
  border-radius: 4px 4px 0 0;
}

.cellTooltip-module__hintBottomDark--MtH7m {
  background: linear-gradient(to top, #323233 35%, transparent);
  border-radius: 0 0 4px 4px;
}

.cellTooltip-module__hintIcon--EyLXp {
  color: var(--color-neutral-700);
  opacity: 0.85;
}

.cellTooltip-module__hintIconDark--yF8dG {
  color: #fff;
  opacity: 0.7;
}

.cellTooltip-module__chevronUp--fl7my {
  transform: rotate(180deg);
}

.pendingMoveStatus-module__pending--DrvUa,
.pendingMoveStatus-module__gaveUp--NtcKY {
  display: inline-flex;
  align-items: center;
  cursor: help;
}

.pendingMoveStatus-module__pending--DrvUa {
  color: var(--color-neutral-600);
}

.pendingMoveStatus-module__gaveUp--NtcKY {
  color: var(--color-red-500);
}

.hierarchicalSelector-module__wrapper--AiC8t { }

.hierarchicalSelector-module__trigger--rU2s5 {
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.hierarchicalSelector-module__trigger--rU2s5:hover { background: var(--color-neutral-100); }
.hierarchicalSelector-module__triggerActive--fzFnS { }
.hierarchicalSelector-module__triggerActive--fzFnS:hover { background: var(--color-primary-50); }

.hierarchicalSelector-module__icon--dY5Xd { display: flex; flex-shrink: 0; color: var(--color-neutral-900); }
.hierarchicalSelector-module__extra--TnPyW { font-size: 12px; font-weight: 600; margin-left: 2px; }
.hierarchicalSelector-module__extraWrap--HB6Kh { display: inline-flex; align-items: center; }
.hierarchicalSelector-module__extraTooltip--jFDZD {
  position: fixed;
  z-index: 1200;
  transform: translateX(-50%);
  min-width: 180px;
  max-width: 280px;
  max-height: 350px;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 6px 0;
  border-radius: 6px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-700);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.hierarchicalSelector-module__extraTooltipUp--ClU59 {
  transform: translate(-50%, -100%);
}

.hierarchicalSelector-module__extraTooltipItem--N26qf {
  display: block;
  padding: 4px 12px;
  color: var(--color-neutral-900);
  font-size: 13px;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.hierarchicalSelector-module__extraTooltipItem--N26qf:hover {
  background: var(--color-neutral-hover);
}
.hierarchicalSelector-module__chevron--OT1P4 { }
.hierarchicalSelector-module__chevronOpen--SQ2u6 { }
.hierarchicalSelector-module__backdrop--yFEF7 {
  z-index: 1101;
}

.hierarchicalSelector-module__popover--tcffG {
  position: fixed;
  z-index: 1102;
  width: 320px;
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  background: var(--color-white);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.hierarchicalSelector-module__searchWrap--OyynD { padding: 8px; border-bottom: 1px solid var(--color-neutral-200); }
.hierarchicalSelector-module__searchInput--Psio9 {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--color-neutral-200);
  border-radius: 4px;
  padding: 6px 10px;
  font-size: 13px;
}

.hierarchicalSelector-module__list--rR9Vn { max-height: 260px; overflow: auto; padding: 4px 0; }
.hierarchicalSelector-module__row--mCMKY { display: flex; align-items: center; gap: 8px; padding: 6px 10px; cursor: pointer; }
.hierarchicalSelector-module__row--mCMKY:hover { background: var(--color-neutral-100); }
.hierarchicalSelector-module__rowSelected--LZqcN { background: var(--color-primary-50); }
.hierarchicalSelector-module__expandBtn--GqqwP { all: unset; width: 14px; height: 14px; display: flex; align-items: center; justify-content: center; }
.hierarchicalSelector-module__expandBtn--GqqwP:disabled { opacity: 0.4; cursor: default; }
.hierarchicalSelector-module__expandSpacer--LqSCN { width: 14px; height: 14px; display: inline-flex; flex-shrink: 0; }
.hierarchicalSelector-module__expandChevron--fyCKg { display: flex; transition: transform 0.1s ease; transform: rotate(-90deg); }
.hierarchicalSelector-module__expandOpen--Q9Zc4 { transform: rotate(0deg); }
.hierarchicalSelector-module__checkbox--AchsF { width: 16px; height: 16px; accent-color: var(--color-blue-500); margin: 0; }

.hierarchicalSelector-module__texts--NjJuY { display: flex; flex-direction: column; min-width: 0; }
.hierarchicalSelector-module__label--eYXkp { font-size: 13px; color: var(--color-neutral-900); }
.hierarchicalSelector-module__path--fYC5F { font-size: 11px; color: var(--color-neutral-700); }
.hierarchicalSelector-module__disabled--I6SFP { color: var(--color-neutral-600); }
.hierarchicalSelector-module__childCount--tTbki {
  margin-left: auto;
  font-size: 11px;
  color: var(--color-neutral-700);
}
.hierarchicalSelector-module__empty--sauO5 { padding: 12px; text-align: center; font-size: 13px; color: var(--color-neutral-700); }

.hierarchicalSelector-module__depth0--GH0cf { padding-left: 10px; }
.hierarchicalSelector-module__depth1--iZDYx { padding-left: 24px; }
.hierarchicalSelector-module__depth2--hVWlA { padding-left: 38px; }
.hierarchicalSelector-module__depth3--oM50H { padding-left: 52px; }
.hierarchicalSelector-module__depth4--KmCG9 { padding-left: 66px; }
.hierarchicalSelector-module__depth5--XsbfG { padding-left: 80px; }

.workOrderPill-module__root--VpMow {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.workOrderPill-module__pill--ulfEw {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: var(--radius-full);
  border: 1px solid;
  background: var(--color-white);
  white-space: nowrap;
  position: relative;
}

.workOrderPill-module__statusTipPortal--F9W_3 {
  position: fixed;
  z-index: 10001;
  box-sizing: border-box;
  max-width: min(240px, calc(100vw - 16px));
  padding: 6px 10px;
  border-radius: var(--radius-sm);
  background: var(--color-neutral-900);
  color: var(--color-white);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-regular);
  line-height: 1.35;
  box-shadow: var(--shadow-md);
  pointer-events: none;
  overflow-wrap: break-word;
}

.workOrderPill-module__link--RJmrT {
  text-decoration: underline;
  font-size: var(--font-size-s);
}

.workOrderPill-module__link--RJmrT:hover { text-decoration: none; }

.workOrderPill-module__extraWrap--yPj1y {
  border: none;
  background: none;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  position: relative;
  display: inline-flex;
  align-items: center;
}

.workOrderPill-module__extra--kTKUo {
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  cursor: default;
}

.workOrderPill-module__tooltip--QDPru {
  position: fixed;
  transform: translateX(-50%);
  z-index: 9999;
  min-width: 180px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-700);
  border-radius: var(--radius-lg);
  padding: 8px 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.workOrderPill-module__tooltipRow--BDZlD {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
}

.workOrderPill-module__tooltipRow--BDZlD:hover {
  background: var(--color-neutral-hover);
}

.workOrderPill-module__tooltipLink--nMA1Q {
  font-size: 13px;
  font-weight: 500;
  text-decoration: underline;
}

.workOrderPill-module__tooltipLink--nMA1Q:hover {
  text-decoration: none;
}

.workOrderPill-module__tooltipStatus--xuR5u {
  margin-left: auto;
  font-size: 12px;
  color: var(--color-neutral-600);
}

/* Work-order status color variants */
.workOrderPill-module__woOpen--tjZg1 { --wo-color: #60646C; }
.workOrderPill-module__woInProgress--KrP14 { --wo-color: #218358; }
.workOrderPill-module__woOnHold--bHqec { --wo-color: #AB6400; }
.workOrderPill-module__woComplete--hYScy { --wo-color: #3A5BC7; }
.workOrderPill-module__woArchived--qwcZR { --wo-color: #8B8D98; }

.workOrderPill-module__pillColored--I0e_Q { border-color: var(--wo-color, #60646C); }
.workOrderPill-module__linkColored--AhhYD { color: var(--wo-color, #60646C); }

.searchInput-module__wrapper--n3Tn6 {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  position: relative;
}

.searchInput-module__icon--xXWSK {
  position: absolute;
  left: var(--space-2);
  font-size: var(--font-size-m);
  color: var(--color-neutral-500);
  pointer-events: none;
}

.searchInput-module__input--dsehy {
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  padding: var(--space-1) var(--space-2) var(--space-1) var(--space-5);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  color: var(--color-neutral-900);
  background: var(--color-white);
  width: 100%;
}

.searchInput-module__input--dsehy:focus {
  outline: none;
  border-color: var(--color-primary-500);
}

.dropdownMenu-module__container--KCPjY {
  position: relative;
  display: inline-block;
}

.dropdownMenu-module__trigger--Zb2hq {
  all: unset;
  cursor: pointer;
  user-select: none;
  display: inline-flex;
  align-items: center;
}

.dropdownMenu-module__menu--fnAZY {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 40;
  margin-top: var(--space-1);
  min-width: 160px;
  padding: var(--space-1);
  background: var(--color-white);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  list-style: none;
}

.dropdownMenu-module__menuUp--zqr18 {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: var(--space-1);
}

.dropdownMenu-module__item--b9BrJ {
  display: block;
  width: 100%;
  padding: var(--space-1) var(--space-2);
  font-family: var(--font-family);
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
  background: none;
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  text-align: left;
}

.dropdownMenu-module__item--b9BrJ:hover:not(.dropdownMenu-module__disabled--wNkyb) {
  background: var(--color-neutral-100);
}

.dropdownMenu-module__item--b9BrJ.dropdownMenu-module__disabled--wNkyb {
  color: var(--color-neutral-500);
  cursor: not-allowed;
}

.statusBadge-module__badge--mYIYL {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
}

.statusBadge-module__dot--Qr4TB {
  width: 8px;
  height: 8px;
  border-radius: var(--radius-full);
}

.statusBadge-module__connected--_2fP4 {
  color: var(--color-green-700);
}

.statusBadge-module__connected--_2fP4 .statusBadge-module__dot--Qr4TB {
  background: var(--color-green-500);
}

.statusBadge-module__disconnected--RCYqM {
  color: var(--color-neutral-500);
}

.statusBadge-module__disconnected--RCYqM .statusBadge-module__dot--Qr4TB {
  background: var(--color-neutral-500);
}

.statusBadge-module__warning--rLzxI {
  color: var(--color-orange-500);
}

.statusBadge-module__warning--rLzxI .statusBadge-module__dot--Qr4TB {
  background: var(--color-orange-500);
}

.connectionStatusPill-module__root--ZFhJB {
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: 0.04px;
  white-space: nowrap;
  cursor: default;
  opacity: 1;
}

.connectionStatusPill-module__connected--_OnHf {
  color: var(--color-green-700);
  border: 1px solid var(--color-success-alpha-7);
  background: var(--color-success-alpha-2);
}

.connectionStatusPill-module__disconnected--EGG61 {
  color: #60646c;
  border: 1px solid #e0e1e6;
  background: #fcfcfd;
}

.batteryIndicator-module__wrapper--uhhsT {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
}

.batteryIndicator-module__icon--ePrwV {
  font-size: var(--font-size-m);
}

.batteryIndicator-module__text--er4Ph {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-regular);
  color: var(--color-neutral-900);
}

.wifiIndicator-module__wrapper--EvlPl {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
}

.wifiIndicator-module__icon--PHv0S {
  font-size: var(--font-size-m);
}

.wifiIndicator-module__text--IPIKI {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-regular);
  color: var(--color-neutral-900);
}

.emptyState-module__wrapper--MLLOm {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  padding: var(--space-6);
  text-align: center;
}

.emptyState-module__message--WMxt5 {
  font-size: var(--font-size-m);
  color: var(--color-neutral-500);
  line-height: var(--line-height-paragraph);
}

.emptyState-module__action--LZnzP {
  font-family: var(--font-family);
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  padding: var(--space-1) var(--space-2);
  color: var(--color-primary-500);
  background: transparent;
  border: 1px solid var(--color-primary-500);
  border-radius: var(--radius-md);
  cursor: pointer;
}

.emptyState-module__action--LZnzP:hover {
  background: var(--color-primary-100);
}

.statusCard-module__root--DNhZl {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  min-width: 140px;
  font: inherit;
  border: 1px solid;
  border-radius: 6px;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: box-shadow 0.15s ease;
}

.statusCard-module__root--DNhZl:hover { box-shadow: 0 2px 6px rgba(0,0,0,0.08); }

.statusCard-module__left--rmLdk {
  display: flex;
  align-items: center;
  gap: 8px;
}

.statusCard-module__iconWrap--i9wVq {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  flex-shrink: 0;
}

.statusCard-module__label--Wbbox {
  font-size: 15px;
  font-weight: 500;
}

.statusCard-module__count--eqCW6 {
  font-size: 28px;
  font-weight: 700;
  margin-left: 8px;
}

/* Variants */
.statusCard-module__active--UjPwn { background: var(--color-red-50); border-color: var(--color-red-300); }
.statusCard-module__active--UjPwn .statusCard-module__iconWrap--i9wVq { background: var(--color-red-300); color: var(--color-red-700); }
.statusCard-module__active--UjPwn .statusCard-module__label--Wbbox { color: var(--color-red-500); }
.statusCard-module__active--UjPwn .statusCard-module__count--eqCW6 { color: var(--color-red-500); }
.statusCard-module__active--UjPwn.statusCard-module__selected--PC7hi { border-color: var(--color-red-500); box-shadow: 0 0 0 2px var(--color-red-300); }

.statusCard-module__warning--NpkYt { background: var(--color-amber-50); border-color: var(--color-amber-300); }
.statusCard-module__warning--NpkYt .statusCard-module__iconWrap--i9wVq { background: var(--color-amber-300); color: var(--color-amber-500); }
.statusCard-module__warning--NpkYt .statusCard-module__label--Wbbox { color: var(--color-amber-500); }
.statusCard-module__warning--NpkYt .statusCard-module__count--eqCW6 { color: var(--color-amber-500); }
.statusCard-module__warning--NpkYt.statusCard-module__selected--PC7hi { border-color: var(--color-amber-500); box-shadow: 0 0 0 2px var(--color-amber-300); }

.statusCard-module__resolved--nKMTb { background: var(--color-green-50); border-color: var(--color-green-300); }
.statusCard-module__resolved--nKMTb .statusCard-module__iconWrap--i9wVq { background: var(--color-green-300); color: var(--color-green-700); }
.statusCard-module__resolved--nKMTb .statusCard-module__label--Wbbox { color: var(--color-green-500); }
.statusCard-module__resolved--nKMTb .statusCard-module__count--eqCW6 { color: var(--color-green-500); }
.statusCard-module__resolved--nKMTb.statusCard-module__selected--PC7hi { border-color: var(--color-green-500); box-shadow: 0 0 0 2px var(--color-green-300); }

.searchableSelect-module__root--Jbc6j {
  position: relative;
  width: 100%;
}

.searchableSelect-module__disabled--uDjIP { opacity: 0.6; pointer-events: none; }

.searchableSelect-module__triggerRow--JAOmL {
  display: flex;
  align-items: center;
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  background: var(--color-white);
}

.searchableSelect-module__trigger--HjTq4 {
  appearance: none;
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  text-align: left;
  min-height: 38px;
  padding: 6px 12px;
  border: none;
  border-radius: var(--radius-md);
  background: transparent;
  cursor: pointer;
  font-size: var(--font-size-s);
  font-family: inherit;
}

.searchableSelect-module__input--lICIT {
  flex: 1;
  border: none;
  outline: none;
  font-size: var(--font-size-s);
  font-family: inherit;
  background: transparent;
  min-width: 0;
}

.searchableSelect-module__valueLabel--ODVEq { flex: 1; color: var(--color-neutral-900); }

.searchableSelect-module__placeholder--TiAn_ { flex: 1; color: var(--color-neutral-700); }

.searchableSelect-module__clearBtn--VA2zX {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--color-neutral-600);
  font-size: 16px;
  flex-shrink: 0;
}

.searchableSelect-module__clearBtn--VA2zX:hover { color: var(--color-neutral-900); }

.searchableSelect-module__dropdown--Z57yY {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  max-height: 200px;
  overflow-y: auto;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  z-index: 50;
  margin-top: 4px;
}

.searchableSelect-module__option--hWyEu {
  border: none;
  background: none;
  font: inherit;
  color: inherit;
  width: 100%;
  text-align: left;
  padding: 8px 12px;
  cursor: pointer;
  font-size: var(--font-size-s);
}

.searchableSelect-module__option--hWyEu:hover { background: var(--color-neutral-hover); }

.searchableSelect-module__optionSelected--NzSNo { background: var(--color-primary-50); font-weight: var(--font-weight-medium); }

.searchableSelect-module__noResults--pKR0G, .searchableSelect-module__loading--ILWcA {
  padding: 8px 12px;
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
}

.modalBase-module__backdrop--Hr3Lz {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
}

.modalBase-module__root--Wm74Q {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  background: #FFFFFF;
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
  overflow: hidden;
}

.modalBase-module__header--ltjOe {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid #DFE3E8;
}

.modalBase-module__title--ABFKe {
  font-size: 18px;
  font-weight: 600;
  color: #323233;
}

.modalBase-module__closeBtn--nbQ0X {
  display: flex;
  align-items: center;
  padding: 4px;
  background: none;
  border: none;
  cursor: pointer;
  color: #8B8D98;
  border-radius: 4px;
}

.modalBase-module__closeBtn--nbQ0X:hover {
  color: #323233;
  background: #F2F2F2;
}

.modalBase-module__body--iXRcn {
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.modalBase-module__footer--DKic7 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 20px;
  border-top: 1px solid #DFE3E8;
}

.modalBase-module__outlineBtn--xH0GB {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  border: 1px solid #B8B8B8;
  border-radius: 4px;
  background: #FFFFFF;
  color: #323233;
  cursor: pointer;
}

.modalBase-module__outlineBtn--xH0GB:hover {
  background: #F2F2F2;
}

.modalBase-module__primaryBtn--rlkvS {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  border: none;
  border-radius: 4px;
  background: #0C6FF9;
  color: #FFFFFF;
  cursor: pointer;
}

.modalBase-module__primaryBtn--rlkvS:hover {
  background: #0954BD;
}

.modalBase-module__primaryBtn--rlkvS:disabled {
  opacity: 0.5;
  cursor: default;
}

.formField-module__field--HVnOS {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.formField-module__fieldLabel--o0BEN {
  font-size: 13px;
  font-weight: 600;
  color: #666;
}

.formField-module__fieldInput--ejv4d {
  width: 100%;
  padding: 8px 12px;
  font-size: 14px;
  font-family: inherit;
  border: 1px solid #DFE3E8;
  border-radius: 4px;
  outline: none;
  box-sizing: border-box;
}

.formField-module__fieldInput--ejv4d:focus {
  border-color: #0C6FF9;
}

.formField-module__fieldInput--ejv4d::placeholder {
  color: #8B8D98;
}

.formField-module__fieldTextarea--WxR1c {
  resize: vertical;
  min-height: 140px;
}

.formField-module__fieldSelect--WHefL {
  background: #FFFFFF;
  appearance: auto;
}

.createWorkOrderModal-module__backdrop--A00RG {
  z-index: 1010;
}

.createWorkOrderModal-module__root--b73CY {
  border: none;
  padding: 0;
  max-height: none;
  width: 600px;
  max-width: 90vw;
  z-index: 1011;
}

.createWorkOrderModal-module__header--nAhAO { }
.createWorkOrderModal-module__title--QC6mv { }
.createWorkOrderModal-module__closeBtn--Esxw4 { }

.createWorkOrderModal-module__body--XV6oe {
  overflow-y: auto;
  max-height: 60vh;
}

.createWorkOrderModal-module__statusBanner--pSwBe {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: var(--radius-md);
  font-size: var(--font-size-s);
}

.createWorkOrderModal-module__statusBannerAlert--Qgp2n {
  background: var(--color-red-50);
  border: 1px solid var(--color-red-300);
  color: var(--color-red-500);
}

.createWorkOrderModal-module__statusBannerOutOfRange--lzUcF {
  background: var(--color-orange-50);
  border: 1px solid var(--color-orange-300);
  color: var(--color-orange-500);
}

.createWorkOrderModal-module__statusBannerWarning--F4jur {
  background: var(--color-amber-50);
  border: 1px solid var(--color-amber-300);
  color: var(--color-amber-500);
}

.createWorkOrderModal-module__field--QsUil { }
.createWorkOrderModal-module__fieldLabel--VVjLi { }
.createWorkOrderModal-module__fieldInput--la0xW { }
.createWorkOrderModal-module__fieldTextarea--WMte5 { }
.createWorkOrderModal-module__fieldSelect--_ZQYP { }

.createWorkOrderModal-module__errorBanner--eYuLU {
  padding: 8px 16px;
  font-size: var(--font-size-s);
  color: var(--color-red-700);
  background: var(--color-red-50);
  border-top: 1px solid var(--color-red-200);
}

.createWorkOrderModal-module__footer--p58gc { }
.createWorkOrderModal-module__outlineBtn--bhvEA { }
.createWorkOrderModal-module__primaryBtn--uwfmd { }

.readingCard-module__card--b1kgN {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md, 6px);
  background: #fafafb;
}

.readingCard-module__normal--BXRh3 { background: #f4fbfc; border-color: #adddc0; }
.readingCard-module__warning--lMSQq { background: var(--color-amber-50, #FEFBE9); border-color: var(--color-amber-300, #F3D673); }
.readingCard-module__outOfRange--T6EyE { background: var(--color-orange-50, #FFF3EB); border-color: var(--color-orange-300, #FFBA6B); }
.readingCard-module__alert--VeSyc { background: var(--color-red-50, #FFF7F7); border-color: var(--color-red-300, #FDBDBE); }

.readingCard-module__label--dgrHc {
  color: var(--color-neutral-600, #60646c);
  font-size: var(--font-size-s, 13px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.readingCard-module__valueRow--Ap6La {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}

.readingCard-module__value--NfKd6 {
  font-weight: var(--font-weight-semibold, 600);
  font-size: var(--font-size-s, 13px);
  color: var(--color-neutral-900);
  font-variant-numeric: tabular-nums;
}

.readingCard-module__valueNormal--EmVyW { color: #218358; }
.readingCard-module__valueWarning--_ixLQ { color: var(--color-amber-500, #AB6400); }
.readingCard-module__valueOutOfRange--bCHzV { color: var(--color-orange-500, #ec7d10); }
.readingCard-module__valueAlert--yjh5H { color: var(--color-red-500, #CE2C31); }

.readingCard-module__unit--BN67M {
  color: var(--color-neutral-700, #60646c);
  font-size: var(--font-size-s, 13px);
  font-weight: var(--font-weight-medium, 500);
  margin-left: 4px;
}

.readingCard-module__infoBtn--iV1NZ {
  border: none;
  background: none;
  padding: 0;
  position: relative;
  display: flex;
  align-items: center;
  cursor: help;
  color: #8b8d98;
  flex-shrink: 0;
}

.readingCard-module__infoBtn--iV1NZ:focus-visible {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 2px;
  border-radius: 2px;
}

.readingCard-module__tooltipPortal--g63LM {
  position: fixed;
  z-index: 10000;
  box-sizing: border-box;
  width: max-content;
  max-width: min(280px, calc(100vw - 16px));
  padding: 6px 10px;
  border-radius: 4px;
  background: var(--color-neutral-900);
  color: var(--color-white);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;
  box-shadow: var(--shadow-md);
  pointer-events: none;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

.backButton-module__link--EBDBg {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  border-radius: 6px;
  color: var(--color-neutral-700);
  text-decoration: none;
  font-size: 14px;
  font-weight: var(--font-weight-medium, 500);
  transition: background 0.15s, color 0.15s;
}

.backButton-module__link--EBDBg:hover {
  background: var(--color-neutral-100, #f0f1f3);
  color: var(--color-neutral-900);
}

.backButton-module__link--EBDBg:focus-visible {
  outline: 2px solid var(--color-primary-500, #3b82f6);
  outline-offset: 2px;
}

.backButton-module__icon--fV4Dl {
  flex-shrink: 0;
}

.asyncMultiSelect-module__root--QJeRR {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.asyncMultiSelect-module__searchBox--QmDgL {
  width: 100%;
  padding: 6px 10px;
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  font-size: 13px;
  line-height: 20px;
  outline: none;
  box-sizing: border-box;
}

.asyncMultiSelect-module__searchBox--QmDgL:focus {
  border-color: var(--color-accent-500);
}

.asyncMultiSelect-module__chips--XlGfs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.asyncMultiSelect-module__chip--k2wmz {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  font-size: 12px;
  line-height: 18px;
  background: var(--color-accent-50);
  border: 1px solid var(--color-accent-200);
  border-radius: 999px;
  color: var(--color-accent-700);
  cursor: default;
}

.asyncMultiSelect-module__chipRemove--uM_TM {
  all: unset;
  cursor: pointer;
  font-size: 14px;
  line-height: 1;
  color: var(--color-accent-500);
}

.asyncMultiSelect-module__chipRemove--uM_TM:hover {
  color: var(--color-error-500);
}

.asyncMultiSelect-module__list--Xvu1p {
  max-height: 200px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.asyncMultiSelect-module__item--TC3nN {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 2px;
  font-size: 13px;
  line-height: 20px;
  cursor: pointer;
  user-select: none;
}

.asyncMultiSelect-module__item--TC3nN:hover {
  background: var(--color-neutral-50);
}

.asyncMultiSelect-module__checkbox--ppWLD {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.asyncMultiSelect-module__noItems--X_AY7 {
  padding: 8px 2px;
  font-size: 13px;
  color: var(--color-text-muted);
}

.asyncMultiSelect-module__loading--hE2Ou {
  padding: 8px 2px;
  font-size: 13px;
  color: var(--color-text-muted);
}

.badge-module__badge--mnCTS {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-family);
  font-weight: var(--font-weight-semibold);
  border-radius: var(--radius-full);
}

.badge-module__info--DG52r { background: var(--color-primary-100); color: var(--color-primary-700); }
.badge-module__success--exE9g { background: var(--color-green-300); color: var(--color-green-700); }
.badge-module__warning--OJ1_v { background: var(--color-orange-500); color: var(--color-white); }
.badge-module__danger--Qm5nQ { background: var(--color-red-300); color: var(--color-red-700); }
.badge-module__neutral--di0Vo { background: var(--color-neutral-300); color: var(--color-neutral-900); }
.badge-module__sm--PRHjF { padding: 2px var(--space-1); font-size: var(--font-size-xs); }
.badge-module__md--OUNtT { padding: var(--space-1) var(--space-2); font-size: var(--font-size-s); }

.button-module__button--nMm3h {
  font-family: var(--font-family);
  font-weight: var(--font-weight-semibold);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: opacity 0.15s ease;
}
.button-module__button--nMm3h:disabled { opacity: 0.5; cursor: not-allowed; }
.button-module__button--nMm3h:not(:disabled):hover { opacity: 0.9; }

.button-module__primary--IgWOO { background: var(--color-primary-500); color: var(--color-white); }
.button-module__secondary--SOild { background: var(--color-neutral-300); color: var(--color-neutral-900); }
.button-module__outline--KWQtr { background: transparent; color: var(--color-primary-500); border: 2px solid var(--color-primary-500); }
.button-module__text--sjvZ9 { background: transparent; color: var(--color-primary-500); }
.button-module__danger--bqFpl { background: var(--color-red-500); color: var(--color-white); }

.button-module__sm--FjSgf { padding: var(--space-1) var(--space-2); font-size: var(--font-size-s); }
.button-module__md--n3Qsb { padding: var(--space-1) var(--space-3); font-size: var(--font-size-m); }
.button-module__lg--M8ZfG { padding: var(--space-2) var(--space-4); font-size: var(--font-size-l); }

.input-module__wrapper--Yw4n4 {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.input-module__label--Q9SHc {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
}

.input-module__input--qh764 {
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  padding: var(--space-1) var(--space-2);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  color: var(--color-neutral-900);
  background: var(--color-white);
}

.input-module__input--qh764:focus {
  outline: none;
  border-color: var(--color-primary-500);
}

.input-module__input--qh764:disabled {
  background: var(--color-neutral-100);
  cursor: not-allowed;
}

.input-module__input--qh764.input-module__error--JkQz1 {
  border-color: var(--color-red-500);
}

.input-module__errorText--Tc3eg {
  font-size: var(--font-size-s);
  color: var(--color-red-500);
}

.modal-module__overlay--feIfs {
  border: none;
  padding: 0;
  margin: 0;
  max-width: none;
  max-height: none;
  width: 100%;
  height: 100%;
  position: fixed;
  inset: 0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

.modal-module__backdrop--c6z6o {
  appearance: none;
  position: fixed;
  inset: 0;
  border: none;
  padding: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  cursor: default;
}

.modal-module__card--QT5OE {
  position: relative;
  z-index: 1;
  background: var(--color-white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  max-width: 90vw;
  max-height: 90vh;
  overflow: auto;
}

.modal-module__header--mOqH7 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3);
  border-bottom: 1px solid var(--color-neutral-300);
}
.modal-module__title--ENEfo { font-size: var(--font-size-l); font-weight: var(--font-weight-bold); color: var(--color-neutral-900); }

.modal-module__closeBtn--We85G {
  background: none;
  border: none;
  font-size: var(--font-size-xl);
  cursor: pointer;
  color: var(--color-neutral-500);
  padding: 0;
  line-height: 1;
}
.modal-module__closeBtn--We85G:hover { color: var(--color-neutral-900); }

.modal-module__body--Rx5jg {
  padding: var(--space-3);
}

.select-module__wrapper--tuId8 {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.select-module__label--cQ5sz {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
}

.select-module__select--pDJaf {
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  padding: var(--space-1) var(--space-2);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  color: var(--color-neutral-900);
  background: var(--color-white);
}

.select-module__select--pDJaf:focus {
  outline: none;
  border-color: var(--color-primary-500);
}

.select-module__select--pDJaf:disabled {
  background: var(--color-neutral-100);
  cursor: not-allowed;
}

.select-module__select--pDJaf.select-module__error--uLOL2 {
  border-color: var(--color-red-500);
}

.select-module__errorText--fOpiV {
  font-size: var(--font-size-s);
  color: var(--color-red-500);
}

.scrollableSelect-module__wrapper--CJQXO {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  position: relative;
}

.scrollableSelect-module__label--oK1wJ {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
}

.scrollableSelect-module__trigger--c4rOi {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-1);
  width: 100%;
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  padding: var(--space-1) var(--space-2);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  color: var(--color-neutral-900);
  background: var(--color-white);
  text-align: left;
  cursor: pointer;
  box-sizing: border-box;
}

.scrollableSelect-module__trigger--c4rOi:focus {
  outline: none;
  border-color: var(--color-primary-500);
}

.scrollableSelect-module__trigger--c4rOi:disabled {
  background: var(--color-neutral-100);
  cursor: not-allowed;
}

.scrollableSelect-module__triggerError--clDaQ {
  border-color: var(--color-red-500);
}

.scrollableSelect-module__triggerLabel--pdT5f {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.scrollableSelect-module__triggerPlaceholder--jagy4 {
  color: var(--color-neutral-500);
}

.scrollableSelect-module__chevron--GjiR_ {
  flex-shrink: 0;
  color: var(--color-neutral-600);
  transition: transform 0.15s ease;
}

.scrollableSelect-module__chevronOpen--UmeKe {
  transform: rotate(180deg);
}

/* Fixed + portaled to body so overflow:auto ancestors do not expand. */
.scrollableSelect-module__menu--tSlds {
  position: fixed;
  z-index: 1100;
  box-sizing: border-box;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  overflow: hidden;
}

.scrollableSelect-module__searchWrap--MKQCO {
  padding: var(--space-1);
  border-bottom: 1px solid var(--color-neutral-200);
}

.scrollableSelect-module__searchInput--IFWVt {
  width: 100%;
  padding: 6px 10px;
  font-size: var(--font-size-s);
  font-family: var(--font-family);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-sm);
  outline: none;
  box-sizing: border-box;
  color: var(--color-neutral-900);
  background: var(--color-white);
}

.scrollableSelect-module__searchInput--IFWVt:focus {
  border-color: var(--color-primary-500);
}

.scrollableSelect-module__searchInput--IFWVt::placeholder {
  color: var(--color-neutral-500);
}

.scrollableSelect-module__optionsList--jWShz {
  margin: 0;
  padding: var(--space-1) 0;
  list-style: none;
  max-height: 200px;
  overflow-y: auto;
  box-sizing: border-box;
}

.scrollableSelect-module__option--puJCI {
  width: 100%;
  border: none;
  background: transparent;
  text-align: left;
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  color: var(--color-neutral-900);
  padding: var(--space-1) var(--space-2);
  cursor: pointer;
}

.scrollableSelect-module__option--puJCI:hover {
  background: var(--color-neutral-100);
}

.scrollableSelect-module__optionSelected--aQbNQ {
  background: var(--color-primary-50);
  color: var(--color-primary-600);
}

.scrollableSelect-module__noResults--GZ3M9 {
  padding: var(--space-2);
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  text-align: center;
}

.scrollableSelect-module__errorText--pUkPT {
  font-size: var(--font-size-s);
  color: var(--color-red-500);
}

.spinner-module__spinner--Nrrzr {
  display: inline-block;
  border: 2px solid var(--color-neutral-200);
  border-top-color: var(--color-primary-500);
  border-radius: 50%;
  animation: spinner-module__spin--zKY8t 0.8s linear infinite;
}

.spinner-module__sm--KTqgO {
  width: 16px;
  height: 16px;
}

.spinner-module__md--WCMfW {
  width: 24px;
  height: 24px;
}

.spinner-module__lg--dXAFY {
  width: 32px;
  height: 32px;
}

@keyframes spinner-module__spin--zKY8t {
  to {
    transform: rotate(360deg);
  }
}

.tabs-module__bar--KDXK0 {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--color-neutral-200);
}

.tabs-module__tab--nxbCf {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-neutral-500);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color var(--duration-fast) var(--ease-default),
              border-color var(--duration-fast) var(--ease-default);
  margin-bottom: -1px;
}

.tabs-module__tab--nxbCf:hover {
  color: var(--color-neutral-700);
}

.tabs-module__active--sxxxF {
  color: var(--color-blue-500);
  border-bottom-color: var(--color-blue-500);
  font-weight: 600;
}

.tabs-module__icon--EL2hh {
  display: inline-flex;
  align-items: center;
}

.checkbox-module__wrapper--WekYe {
  display: flex;
  align-items: center;
  gap: 8px;
}

.checkbox-module__input--MB1ZY {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: var(--color-blue-500);
  margin: 0;
  flex-shrink: 0;
}

.checkbox-module__input--MB1ZY:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.checkbox-module__label--Sg_A7 {
  font-size: 14px;
  color: var(--color-neutral-700);
  cursor: pointer;
  user-select: none;
}

.text-module__text--c0Fe0 {
  font-family: var(--font-family);
  color: var(--color-neutral-900);
}

.text-module__xs--sOqI8 { font-size: var(--font-size-xs); }
.text-module__s--sgn2t { font-size: var(--font-size-s); }
.text-module__m--wc77c { font-size: var(--font-size-m); }
.text-module__l--NgMwz { font-size: var(--font-size-l); }
.text-module__xl--ng9gt { font-size: var(--font-size-xl); }
.text-module__xxl--LIAdJ { font-size: var(--font-size-xxl); }

.text-module__regular--nr5b5 { font-weight: var(--font-weight-regular); }
.text-module__semiBold--aVjuP { font-weight: var(--font-weight-semibold); }
.text-module__bold--VsX8Y { font-weight: var(--font-weight-bold); }

.toast-module__viewport--LwmMd {
  position: fixed;
  top: var(--space-3);
  left: 50%;
  transform: translateX(-50%);
  z-index: var(--z-index-toast);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-1);
  pointer-events: none;
  max-width: calc(100vw - var(--space-4));
}

.toast-module__toast--f_J0M {
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: var(--space-1);
  min-width: 280px;
  max-width: 420px;
  padding: 12px 14px;
  border-radius: 6px;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
  box-shadow: var(--shadow-md);
  border: 1px solid transparent;
  animation: toast-module__slideIn--FC8rl 180ms ease-out;
}

.toast-module__success--FsQR7 {
  background: var(--color-green-50);
  color: var(--color-green-700);
  border-color: var(--color-green-300);
}

.toast-module__error--WPTLb {
  background: var(--color-red-50);
  color: var(--color-red-700);
  border-color: var(--color-red-300);
}

.toast-module__info--vSHd5 {
  background: var(--color-neutral-bg-subtle);
  color: var(--color-neutral-900);
  border-color: var(--color-neutral-300);
}

.toast-module__icon--nagE0 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toast-module__message--UjZ4X {
  flex: 1;
  word-break: break-word;
}

.toast-module__closeBtn--K5fRR {
  flex-shrink: 0;
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  color: inherit;
  cursor: pointer;
  opacity: 0.7;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toast-module__closeBtn--K5fRR:hover {
  opacity: 1;
}

@keyframes toast-module__slideIn--FC8rl {
  from {
    opacity: 0;
    transform: translateY(-12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.scheduleSlotEditor-module__content--UWOEr {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.scheduleSlotEditor-module__sectionTitle--wwy4t {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin: 0;
}

.scheduleSlotEditor-module__sectionDesc--dqRdl {
  font-size: 14px;
  color: var(--color-neutral-500);
  line-height: 1.5;
  margin: 0;
}

.scheduleSlotEditor-module__radioGroup--glHOD {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.scheduleSlotEditor-module__radioLabel--FUK1i {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--color-neutral-700);
  cursor: pointer;
}

.scheduleSlotEditor-module__radioLabel--FUK1i input[type="radio"] {
  accent-color: var(--color-blue-500);
  margin: 0;
}

.scheduleSlotEditor-module__divider--pBrdo {
  height: 1px;
  background: var(--color-neutral-200);
}

.scheduleSlotEditor-module__timeRow--Egat7 {
  display: flex;
  align-items: flex-end;
  gap: 12px;
}

.scheduleSlotEditor-module__timeTo--m0nEz {
  font-size: 14px;
  color: var(--color-neutral-500);
  padding-bottom: 10px;
}

.scheduleSlotEditor-module__customDays--bDbOQ {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.scheduleSlotEditor-module__customSlotRow--X0z5j {
  display: grid;
  grid-template-columns: 120px 1fr max-content;
  column-gap: 12px;
  align-items: center;
}

.scheduleSlotEditor-module__customSlotDay--zvnik {
  min-width: 0;
}

.scheduleSlotEditor-module__daySpacer--ODRm0 {
  display: block;
  width: 24px;
}

.scheduleSlotEditor-module__customSlotTimes--RNN0z {
  display: grid;
  grid-template-columns: 1fr 12px 1fr;
  column-gap: 8px;
  align-items: center;
}

.scheduleSlotEditor-module__timeDash--unEEF {
  height: 1px;
  width: 5px;
  background: var(--color-neutral-900);
  justify-self: center;
}

.scheduleSlotEditor-module__customSlotToggles--xur2y {
  display: grid;
  grid-template-columns: max-content max-content;
  column-gap: 4px;
}

.scheduleSlotEditor-module__slotToggleButton--C_9M1 {
  height: 36px;
  width: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-neutral-300);
  border-radius: 50%;
  background: var(--color-neutral-0);
  color: var(--color-neutral-500);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.scheduleSlotEditor-module__slotToggleButton--C_9M1:hover:not(:disabled) {
  border-color: var(--color-neutral-400);
  color: var(--color-neutral-700);
}

.scheduleSlotEditor-module__slotToggleButton--C_9M1:disabled {
  cursor: default;
}

.scheduleSlotEditor-module__slotToggleHidden--PTOMQ {
  visibility: hidden;
  height: 36px;
  width: 36px;
}

.scheduleSlotEditor-module__customDayRow--oAkDV {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.scheduleSlotEditor-module__dayCheck--H7m1O {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--color-neutral-700);
}

/* Content-sized modals render ~32rem; schedule form is 150% of that baseline. */
.scheduleFormModal-module__wideCard--DX6IA {
  min-width: min(90vw, calc(32rem * 1.5));
}

.scheduleFormModal-module__footer--Wi8nz {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.scheduleFormModal-module__field--Tkg1_ {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.scheduleFormModal-module__label--eIFss {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-neutral-800);
}

.scheduleFormModal-module__input--KHiFO {
  padding: 8px 12px;
  border: 1px solid var(--color-neutral-300);
  border-radius: 6px;
  font-size: 14px;
}

.scheduleFormModal-module__actions--eerdC {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
}

.exportReadingsModal-module__backdrop--kPszN {
  z-index: 1010;
}

.exportReadingsModal-module__root--twPlv {
  border: none;
  padding: 0;
  max-height: none;
  width: 520px;
  max-width: 90vw;
  z-index: 1011;
}

.exportReadingsModal-module__header--gcoG3 { }
.exportReadingsModal-module__title--nUWQW { }
.exportReadingsModal-module__closeBtn--_uzpB { }
.exportReadingsModal-module__body--hewdy { }

.exportReadingsModal-module__field--lAJRd { }
.exportReadingsModal-module__fieldLabel--SpRnL { }
.exportReadingsModal-module__fieldInput--gR4jd { }
.exportReadingsModal-module__fieldSelect--fOA2D { }

.exportReadingsModal-module__dateRow--jIMPI {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.exportReadingsModal-module__footer--wv1SM { }
.exportReadingsModal-module__outlineBtn--VyLKT { }
.exportReadingsModal-module__primaryBtn--nnF4t { }

/* CSS Custom Properties for Theme Colors */
:root {
  /* Base Colors */
  --sensor-details-white: #fff;
  --sensor-details-black: #000;

  /* Neutral Colors */
  --sensor-details-neutral-50: #fafafa;
  --sensor-details-neutral-100: #f2f2f2;
  --sensor-details-neutral-200: #dfe3e8;
  --sensor-details-neutral-300: #dfe3e8;
  --sensor-details-neutral-400: #b8b8b8;
  --sensor-details-neutral-500: #767676;
  --sensor-details-neutral-600: var(--sensor-details-neutral-500);
  --sensor-details-neutral-700: var(--sensor-details-neutral-500);
  --sensor-details-neutral-900: #323233;

  /* Primary Colors */
  --sensor-details-primary-50: #dbe6ee;
  --sensor-details-primary-100: #e2f2ff;
  --sensor-details-primary-500: #0c6ff9;
  --sensor-details-primary-700: #0954bd;

  /* Blue Colors (aliases for primary) */
  --sensor-details-blue-50: var(--sensor-details-primary-50);
  --sensor-details-blue-100: var(--sensor-details-primary-100);
  --sensor-details-blue-500: var(--sensor-details-primary-500);
  --sensor-details-blue-700: var(--sensor-details-primary-700);

  /* Red Colors */
  --sensor-details-red-300: #ffeaef;
  --sensor-details-red-500: #e01e5a;
  --sensor-details-red-600: var(--sensor-details-red-500);
  --sensor-details-red-700: #b90c42;

  /* Green Colors */
  --sensor-details-green-50: #d0dfe0;
  --sensor-details-green-300: #e6f6e7;
  --sensor-details-green-500: #00875a;
  --sensor-details-green-700: #036645;

  /* Orange Colors */
  --sensor-details-orange-500: #ec7d10;
  --sensor-details-orange-600: var(--sensor-details-orange-500);

  /* Purple Colors */
  --sensor-details-purple-300: #d5d7e8;
  --sensor-details-purple-500: #8777d9;

  /* Special Colors */
  --sensor-details-card-border-positive: #eb8e90;
  --sensor-details-card-bg-positive: #fff7f7;
  --sensor-details-trend-positive: #717680;
  --sensor-details-trend-negative: #218358;
}

/* Card Base Styles */
.sensor-details-card {
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.sensor-details-card-rounded {
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Card Padding Variants */
.sensor-details-card-padding-xs {
  padding: 8px;
}

.sensor-details-card-padding-sm {
  padding: 16px;
}

.sensor-details-card-padding-md {
  padding: 24px;
}

.sensor-details-card-padding-lg {
  padding: 32px;
}

.sensor-details-card-padding-xl {
  padding: 48px;
}

.sensor-details-card-padding-xxl {
  padding: 64px;
}

/* Layout Utilities - Flex */
.sensor-details-flex {
  display: flex;
}

.sensor-details-flex-row {
  display: flex;
  flex-direction: row;
}

.sensor-details-flex-col {
  display: flex;
  flex-direction: column;
}

.sensor-details-flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.sensor-details-flex-between {
  display: flex;
  justify-content: space-between;
}

.sensor-details-flex-align-center {
  display: flex;
  align-items: center;
}

.sensor-details-flex-wrap {
  flex-wrap: wrap;
}

/* Layout Utilities - Gap */
.sensor-details-gap-xs {
  gap: 4px;
}

.sensor-details-gap-sm {
  gap: 8px;
}

.sensor-details-gap-md {
  gap: 16px;
}

.sensor-details-gap-lg {
  gap: 24px;
}

.sensor-details-gap-xl {
  gap: 32px;
}

/* Layout Utilities - Spacing */
.sensor-details-margin-top-xs {
  margin-top: 4px;
}

.sensor-details-margin-top-sm {
  margin-top: 8px;
}

.sensor-details-margin-top-md {
  margin-top: 16px;
}

.sensor-details-margin-top-lg {
  margin-top: 24px;
}

.sensor-details-margin-top-xl {
  margin-top: 32px;
}

.sensor-details-margin-bottom-xs {
  margin-bottom: 4px;
}

.sensor-details-margin-bottom-sm {
  margin-bottom: 8px;
}

.sensor-details-margin-bottom-md {
  margin-bottom: 16px;
}

.sensor-details-margin-bottom-lg {
  margin-bottom: 24px;
}

.sensor-details-margin-bottom-xl {
  margin-bottom: 32px;
}

/* Text Alignment */
.sensor-details-text-left {
  text-align: left;
}

.sensor-details-text-right {
  text-align: right;
}

.sensor-details-text-center {
  text-align: center;
}

/* Width Utilities */
.sensor-details-width-full {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.sensor-details-overflow-hidden {
  overflow: hidden;
}

.sensor-details-overflow-x-hidden {
  overflow-x: hidden;
}

/* Position Utilities */
.sensor-details-relative {
  position: relative;
}

.sensor-details-absolute {
  position: absolute;
}

/* Responsive Utilities - Mobile Padding */
@media (max-width: 767px) {
  .sensor-details-mobile-padding-h {
    padding-left: 16px;
    padding-right: 16px;
  }

  .sensor-details-mobile-padding-v {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .sensor-details-mobile-margin-top {
    margin-top: 24px;
  }

  .sensor-details-mobile-gap {
    gap: 24px;
  }
}

/* Responsive Typography - Tablet and Mobile */
/* Tablet (768px - 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
  .sensor-details-beta-main {
    font-size: 13px;
  }

  .sensor-details-control-bar,
  .sensor-details-latest-readings,
  .sensor-details-filter-container,
  .sensor-details-incidents-section {
    font-size: 13px;
  }
}

/* Mobile (max-width: 767px) */
@media (max-width: 767px) {
  .sensor-details-beta-main {
    font-size: 12px;
  }

  .sensor-details-control-bar,
  .sensor-details-latest-readings,
  .sensor-details-filter-container,
  .sensor-details-incidents-section {
    font-size: 12px;
  }

  .sensor-details-graph-container,
  .sensor-details-graph-header,
  .sensor-details-graph-property-chips,
  .sensor-details-summary-card,
  .sensor-details-heatmap-card,
  .sensor-details-table-container {
    font-size: 12px;
  }
}

/* Empty State Card */
.sensor-details-empty-state {
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  padding: 48px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  min-height: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.sensor-details-empty-state-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 24px;
}

/* Tooltip */
.sensor-details-tooltip {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-neutral-900);
  color: var(--sensor-details-white);
  padding: 8px 12px;
  border-radius: 4px;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  line-height: 1.4;
}

@media (max-width: 767px) {
  .sensor-details-tooltip {
    max-width: calc(100vw - 32px);
    width: calc(100vw - 32px);
  }
}

@media (min-width: 768px) {
  .sensor-details-tooltip {
    max-width: 500px;
    width: 450px;
  }
}

/* Summary Card */
.sensor-details-summary-card {
  border-radius: 10px;
  padding: 24px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.sensor-details-summary-card-positive {
  background-color: var(--sensor-details-card-bg-positive);
  border: 1px solid var(--sensor-details-card-border-positive);
}

.sensor-details-summary-card-neutral {
  background-color: var(--sensor-details-white);
  border: 1px solid #e0e1e6;
}

.sensor-details-summary-card-content {
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.sensor-details-summary-card-trend {
  display: flex;
  align-items: center;
  gap: 8px;
}

.sensor-details-summary-card-value {
  text-align: right;
}

@media (max-width: 767px) {
  .sensor-details-summary-card {
    padding: 16px;
  }
}

/* Heatmap */
.sensor-details-heatmap-card {
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 10px;
  padding: 16px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
}

.sensor-details-heatmap-container {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.sensor-details-heatmap-row {
  display: flex;
}

.sensor-details-heatmap-time-labels {
  display: flex;
  flex-direction: column;
  padding-right: 16px;
}

.sensor-details-heatmap-time-label {
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: 12px;
}

.sensor-details-heatmap-grid {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.sensor-details-heatmap-row-container {
  display: flex;
  flex-direction: column;
}

.sensor-details-heatmap-cell-row {
  display: flex;
  gap: 4px;
  height: 20px;
  margin-bottom: 12px;
}

.sensor-details-heatmap-cell {
  flex: 1;
  border-radius: 7px;
  height: 20px;
  min-height: 20px;
}

.sensor-details-heatmap-days {
  display: flex;
  justify-content: space-between;
  margin-top: 8px;
}

.sensor-details-heatmap-day {
  text-align: center;
  flex: 1;
  font-size: 12px;
}

/* Table Styles - Enhanced */
.sensor-details-table-container {
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  padding: 32px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.sensor-details-table-title {
  margin-bottom: 24px;
}

.sensor-details-table {
  overflow: hidden;
}

.sensor-details-table-header {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  background-color: var(--sensor-details-white);
  padding: 12px;
  border-bottom: 1px solid var(--sensor-details-neutral-200);
}

.sensor-details-table-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  padding: 12px;
}

.sensor-details-table-row-even {
  background-color: var(--sensor-details-white);
}

.sensor-details-table-row-odd {
  background-color: var(--sensor-details-white);
}

.sensor-details-table-empty {
  padding: 64px;
  text-align: center;
}

.sensor-details-table-cell-center {
  display: flex;
  align-items: center;
}

/* Graph Container */
.sensor-details-graph-container {
  padding: 24px;
  background-color: var(--sensor-details-white);
  border-radius: 6px;
  border: 1px solid var(--sensor-details-neutral-300);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.sensor-details-graph-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.sensor-details-graph-header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.sensor-details-graph-dropdown {
  position: relative;
}

.sensor-details-graph-dropdown-list {
  z-index: 1000;
}

.sensor-details-graph-property-chips {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.sensor-details-graph-property-chip {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 5px 10px;
  border-radius: 3px;
  cursor: pointer;
  transition: opacity 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.sensor-details-graph-property-chip:hover {
  opacity: 0.9;
}

.sensor-details-graph-property-chip-selected {
  box-shadow: 0 0 0 1px var(--sensor-details-blue-500);
}

.sensor-details-graph-loading {
  margin-top: 24px;
  padding: 32px;
  background-color: var(--sensor-details-white);
  border-radius: 6px;
  border: 1px solid var(--sensor-details-neutral-300);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 400px;
}

.sensor-details-graph-error {
  margin-top: 24px;
  padding: 32px;
  background-color: var(--sensor-details-white);
  border-radius: 6px;
  border: 1px solid var(--sensor-details-neutral-300);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  text-align: center;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sensor-details-graph-chart-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.sensor-details-graph-clear-all {
  cursor: pointer;
  padding: 4px 8px;
}

/* Filter Controls */
.sensor-details-filter-container {
  grid-column: 1 / span 1;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  background-color: var(--sensor-details-white);
}

.sensor-details-filter-inner {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background-color: var(--sensor-details-white);
  padding: 16px;
  border-radius: 6px;
  border: 1px solid var(--sensor-details-neutral-300);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

@media (min-width: 768px) {
  .sensor-details-filter-inner {
    padding: 24px;
  }
}

.sensor-details-filter-controls {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .sensor-details-filter-controls {
    flex-direction: row;
    align-items: center;
  }
}

.sensor-details-date-dropdown-wrapper {
  position: relative;
  width: 100%;
}

@media (min-width: 768px) {
  .sensor-details-date-dropdown-wrapper {
    width: 380px;
  }
}

.sensor-details-date-dropdown {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  background-color: var(--sensor-details-white);
  cursor: pointer;
  width: 100%;
}

@media (min-width: 768px) {
  .sensor-details-date-dropdown {
    width: 380px;
  }
}

.sensor-details-date-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  padding: 8px 0;
  min-width: 200px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
}

.sensor-details-date-dropdown-item {
  padding: 8px 12px;
  cursor: pointer;
  background-color: var(--sensor-details-white);
}

.sensor-details-date-dropdown-item:hover {
  background-color: var(--sensor-details-neutral-50);
}

.sensor-details-date-dropdown-item-active {
  background-color: var(--sensor-details-neutral-100);
}

.sensor-details-custom-date-picker {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  padding: 16px;
  min-width: 300px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
}

.sensor-details-custom-date-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sensor-details-custom-date-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 6px;
  font-size: 13px;
}

.sensor-details-custom-date-label {
  min-width: 0;
  flex-shrink: 0;
}

.sensor-details-custom-date-inputs {
  display: flex;
  gap: 4px;
  flex: 1;
  min-width: 0;
}

.sensor-details-custom-date-warning {
  margin-top: 8px;
  margin-bottom: 4px;
}

.sensor-details-custom-date-input {
  flex: 1;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 4px;
  font-size: 14px;
}

.sensor-details-custom-date-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
}

.sensor-details-custom-date-button {
  padding: 6px 12px;
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 4px;
  cursor: pointer;
  background-color: var(--sensor-details-white);
}

.sensor-details-custom-date-button-apply {
  background-color: var(--sensor-details-blue-500);
  border-color: var(--sensor-details-blue-500);
  cursor: pointer;
  opacity: 1;
}

.sensor-details-custom-date-button-apply:disabled {
  background-color: var(--sensor-details-neutral-300);
  border-color: var(--sensor-details-neutral-300);
  cursor: not-allowed;
  opacity: 0.6;
}

.sensor-details-split-view-wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
}

.sensor-details-split-view-dropdown-wrapper {
  position: relative;
  width: 100%;
}

@media (min-width: 768px) {
  .sensor-details-split-view-dropdown-wrapper {
    width: 320px;
  }
}

.sensor-details-split-view-dropdown {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  background-color: var(--sensor-details-white);
  cursor: pointer;
  width: 100%;
}

.sensor-details-split-view-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  padding: 8px 0;
  width: 100%;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
}

.sensor-details-split-view-dropdown-item {
  padding: 12px 16px;
  cursor: pointer;
  background-color: transparent;
}

.sensor-details-split-view-dropdown-item:hover {
  background-color: var(--sensor-details-neutral-50);
}

.sensor-details-split-view-dropdown-item-active {
  background-color: var(--sensor-details-neutral-100);
}

.sensor-details-view-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  padding: 12px;
  width: 100%;
  max-height: 320px;
  overflow-y: auto;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
}

.sensor-details-view-dropdown-select-all {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--sensor-details-neutral-200);
}

.sensor-details-view-dropdown-checkbox-label {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding: 4px 0;
}

.sensor-details-view-dropdown-checkbox {
  width: 16px;
  height: 16px;
  cursor: pointer;
}

.sensor-details-view-dropdown-property-item {
  margin-bottom: 4px;
}

.sensor-details-click-away-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99;
}

/* Incidents Section */
.sensor-details-incidents-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 24px;
}

@media (min-width: 768px) {
  .sensor-details-incidents-section {
    gap: 32px;
    margin-top: 32px;
  }
}

.sensor-details-incidents-header {
  display: flex;
  align-items: center;
  gap: 8px;
}

.sensor-details-incidents-tooltip-icon {
  position: relative;
  cursor: help;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sensor-details-incidents-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-neutral-900);
  color: var(--sensor-details-white);
  padding: 16px 24px;
  border-radius: 4px;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  max-width: 500px;
  width: 450px;
  line-height: 1.4;
  transform: translateX(0);
}

@media (max-width: 767px) {
  .sensor-details-incidents-tooltip {
    max-width: calc(100vw - 32px);
    width: calc(100vw - 32px);
  }
}

.sensor-details-incidents-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  background-color: var(--sensor-details-white);
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.sensor-details-incidents-grid {
  display: grid;
  gap: 16px;
}

@media (min-width: 1201px) {
  .sensor-details-incidents-grid {
    grid-template-columns: 1fr 0 1.25fr;
    gap: 16px;
  }
}

@media (max-width: 1200px) {
  .sensor-details-incidents-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
}

/* Control Bar Beta */
.sensor-details-control-bar {
  grid-column: 1 / span 1;
  grid-row: 1 / span 1;
  display: grid;
  align-items: center;
  border-bottom: 2px solid var(--sensor-details-primary-500);
  background-color: var(--sensor-details-white);
  min-width: 0;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  position: sticky;
  top: 0;
  z-index: 10;
}

/* Latest Readings */
.sensor-details-latest-readings {
  grid-column: 1 / span 1;
  background-color: var(--sensor-details-white);
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.sensor-details-latest-readings-grid {
  display: grid;
  margin-top: 24px;
}

.sensor-details-latest-readings-title {
  margin-bottom: 0;
}

/* Main Container */
.sensor-details-beta-main {
  position: fixed;
  min-height: 100vh;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: 100%;
  max-width: 100%;
  background-color: var(--sensor-details-white);
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows:
    min-content
    min-content
    min-content
    1fr;
  overflow-y: auto;
  box-sizing: border-box;
}

.sensor-details-beta-loading {
  position: fixed;
  min-height: 100vh;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: 100%;
  background-color: var(--sensor-details-white);
  display: grid;
  align-items: center;
  justify-content: center;
}

/* Reading Block */
.sensor-details-reading-block {
  position: relative;
  border-radius: 8px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  cursor: default;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  min-height: 65px;
}

@media (min-width: 768px) and (max-width: 1023px) {
  .sensor-details-reading-block {
    min-height: 56px;
  }
}

@media (max-width: 767px) {
  .sensor-details-reading-block {
    min-height: 52px;
  }
}

.sensor-details-reading-block-label {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
}

.sensor-details-reading-block-label-text {
  color: #60646c;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.sensor-details-reading-block-value {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  min-width: 0;
}

/* Highcharts Overrides */
.highcharts-reset-zoom {
  display: none !important;
  visibility: hidden !important;
}

.highcharts-button {
  display: none !important;
  visibility: hidden !important;
}

/* Control Bar Beta - Responsive Grid Layouts */
.sensor-details-control-bar {
  min-height: 60px;
  height: 60px;
  row-gap: 0;
  padding: 0;
}

.sensor-details-control-bar-compact {
  min-height: auto;
  height: auto;
  grid-template-rows:
    [row1] min-content
    [row2] min-content;
  row-gap: 12px;
  padding: 12px 0;
}

@media (max-width: 767px) {
  .sensor-details-control-bar-compact {
    grid-template-columns:
      16px
      [back-button] max-content
      8px
      [divider] max-content
      16px
      [header-text] minmax(0, 1fr)
      16px
      [view-toggle] max-content
      16px;
  }
}

@media (min-width: 768px) {
  .sensor-details-control-bar-compact {
    grid-template-columns:
      16px
      [back-button] max-content
      8px
      [divider] max-content
      16px
      [header-text] minmax(0, 1fr)
      16px
      [view-toggle] max-content
      16px;
  }
}

@media (min-width: 768px) {
  .sensor-details-control-bar {
    grid-template-columns:
      32px
      [back-button] max-content
      8px
      [divider] max-content
      16px
      [header-text] max-content
      16px
      [view-toggle] max-content
      1fr
      [metadata] max-content
      16px
      [dropdown-menu] max-content
      16px;
    grid-template-rows: [row1] 1fr;
  }
}

.sensor-details-control-bar-back-button {
  grid-column: back-button / span 1;
  grid-row: row1 / span 1;
}

.sensor-details-control-bar-divider {
  grid-column: divider / span 1;
  grid-row: row1 / span 1;
}

.sensor-details-control-bar-header-text {
  grid-column: header-text / span 1;
  grid-row: row1 / span 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  max-width: 100%;
}

.sensor-details-control-bar-view-toggle {
  grid-column: view-toggle / span 1;
  grid-row: row1 / span 1;
}

/* Metadata Display - Responsive Layouts */
.sensor-details-metadata-display {
  grid-column: metadata / span 1;
  grid-row: row1 / span 1;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

@media (min-width: 768px) {
  .sensor-details-metadata-display {
    flex-wrap: nowrap;
    width: max-content;
    min-width: 0;
  }
}

.sensor-details-metadata-display-compact {
  grid-column: 1 / -1;
  grid-row: row2 / span 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  justify-self: stretch;
  padding-left: 16px;
  padding-right: 16px;
  width: 100%;
  flex-wrap: nowrap;
  gap: 12px;
}

@media (min-width: 768px) {
  .sensor-details-metadata-display-compact {
    padding-left: 16px;
    padding-right: 16px;
    flex-wrap: nowrap;
  }
}

@media (max-width: 400px) {
  .sensor-details-metadata-display-compact {
    flex-wrap: wrap;
  }
}

.sensor-details-metadata-display-group {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.sensor-details-metadata-display-group-main {
  flex: 0 1 auto;
  min-width: 0;
}

.sensor-details-metadata-display-compact
  .sensor-details-metadata-display-group:first-child {
  flex: 1 1 0;
  min-width: 0;
  max-width: calc(100% - 180px);
  flex-wrap: nowrap;
  overflow: hidden;
}

.sensor-details-metadata-display-group-secondary {
  flex: 0 0 auto;
  flex-shrink: 0;
  margin-left: 0;
  min-width: 0;
  box-sizing: border-box;
}

@media (min-width: 768px) {
  .sensor-details-metadata-display-group-secondary {
    margin-left: auto;
  }
}

.sensor-details-metadata-display-compact
  .sensor-details-metadata-display-group-secondary {
  flex: 0 0 auto;
  flex-shrink: 0;
  margin-left: auto;
  white-space: nowrap;
  flex-wrap: nowrap;
}

@media (max-width: 400px) {
  .sensor-details-metadata-display-group-secondary {
    flex-basis: 100%;
    margin-left: 0;
    margin-top: 12px;
    width: 100%;
    justify-content: flex-end;
  }

  .sensor-details-metadata-display-compact
    .sensor-details-metadata-display-group-secondary {
    flex-basis: 100%;
    margin-left: 0;
    margin-top: 12px;
    width: 100%;
    justify-content: flex-end;
  }

  .sensor-details-metadata-display-compact
    .sensor-details-metadata-display-group:first-child {
    max-width: 100%;
  }
}

.sensor-details-metadata-display-icon-group {
  display: grid;
  grid-template-columns: max-content max-content;
  grid-column-gap: 4px;
  align-items: center;
}

.sensor-details-metadata-display-icon {
  fill: var(--sensor-details-neutral-500);
  width: 18px;
  height: 18px;
}

.sensor-details-metadata-display-timestamp {
  display: inline;
  color: var(--sensor-details-neutral-900);
}

.sensor-details-metadata-display-dropdown-wrapper {
  position: relative;
}

/* Latest Readings - Responsive Grid */
@media (max-width: 767px) {
  .sensor-details-latest-readings {
    padding: 24px 16px;
  }
}

@media (min-width: 768px) {
  .sensor-details-latest-readings {
    padding: 24px 32px;
  }
}

@media (max-width: 480px) {
  .sensor-details-latest-readings-grid {
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
    grid-gap: 12px;
  }
}

@media (min-width: 481px) and (max-width: 767px) {
  .sensor-details-latest-readings-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    grid-gap: 12px;
  }
}

@media (min-width: 768px) {
  .sensor-details-latest-readings-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    grid-gap: 16px;
  }

  .sensor-details-reading-block {
    max-width: 300px;
  }
}

@media (min-width: 1024px) {
  .sensor-details-latest-readings-grid {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 16px;
  }

  .sensor-details-reading-block {
    max-width: 100%;
  }
}

/* Reading Block - Responsive Padding and Gap */
@media (max-width: 767px) {
  .sensor-details-reading-block {
    padding: 12px 16px;
    gap: 8px;
  }

  .sensor-details-reading-block-icon {
    width: 16px;
    height: 16px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .sensor-details-reading-block {
    padding: 12px 20px;
    gap: 16px;
  }

  .sensor-details-reading-block-icon {
    width: 18px;
    height: 18px;
  }
}

@media (min-width: 1024px) {
  .sensor-details-reading-block {
    padding: 16px 20px;
    gap: 16px;
  }

  .sensor-details-reading-block-icon {
    width: 20px;
    height: 20px;
  }
}

.sensor-details-reading-block-icon {
  fill: #8B8D98;
}

.sensor-details-reading-block-value-container {
  display: flex;
  align-items: baseline;
  gap: 4px;
  min-width: 0;
  overflow: hidden;
}

.sensor-details-reading-block-value-text {
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.sensor-details-reading-block-value-unit {
  flex-shrink: 0;
}

.sensor-details-reading-block-info {
  position: relative;
  cursor: help;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sensor-details-reading-block-tooltip {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  background-color: var(--sensor-details-neutral-900);
  color: var(--sensor-details-white);
  padding: 8px 12px;
  border-radius: 4px;
  white-space: nowrap;
  z-index: 1000;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.sensor-details-reading-block-tooltip-text {
  color: var(--sensor-details-white);
}

.sensor-details-reading-block-tooltip-arrow {
  position: absolute;
  top: -4px;
  right: 8px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid var(--sensor-details-neutral-900);
}

/* Metadata Row - Responsive Layout */
.sensor-details-metadata-row {
  grid-column: 1 / span 1;
  grid-row: 2 / span 1;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 16px 24px;
  padding: 24px 32px;
  background-color: var(--sensor-details-white);
  border-bottom: 1px solid var(--sensor-details-neutral-300);
  align-items: center;
  justify-content: flex-start;
}

@media (max-width: 767px) {
  .sensor-details-metadata-row {
    padding: 16px 16px;
    justify-content: flex-start;
  }

  .sensor-details-metadata-row-group-right {
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .sensor-details-metadata-row {
    justify-content: space-between;
  }

  .sensor-details-metadata-row-group-right {
    margin-left: auto;
  }
}

.sensor-details-metadata-row-group {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  align-items: center;
}

.sensor-details-metadata-row-item {
  display: flex;
  align-items: center;
  gap: 4px;
}

.sensor-details-metadata-row-item-with-gap {
  gap: 8px;
  min-width: 0;
}

.sensor-details-metadata-row-type-badge {
  padding: 4px 12px;
  border: 1px solid var(--sensor-details-neutral-300);
  border-radius: 4px;
}

.sensor-details-metadata-row-icon {
  color: var(--sensor-details-neutral-500);
  fill: none;
}

.sensor-details-metadata-row-schedule {
  max-width: 160px;
  min-width: 0;
  overflow: hidden;
}

.sensor-details-metadata-row-truncate {
  max-width: 160px;
  min-width: 0;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Filter Container - Responsive Padding */
@media (max-width: 767px) {
  .sensor-details-filter-container {
    padding: 16px 16px;
    margin-top: 24px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .sensor-details-filter-container {
    padding: 24px 24px;
    margin-top: 0;
  }
}

@media (min-width: 1024px) {
  .sensor-details-filter-container {
    padding: 24px 32px;
    margin-top: 0;
  }
}

.sensor-details-filter-empty-state-wrapper {
  margin-top: 24px;
}

/* Graph Components */
.sensor-details-graph-hint-text {
  margin-left: 16px;
}

.sensor-details-graph-property-chip-close {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
}

.sensor-details-graph-property-chip-text {
  color: var(--sensor-details-neutral-900);
}

.sensor-details-graph-clear-all {
  font-weight: 500;
}

/* Date Range Filter */
.sensor-details-date-dropdown-icon {
  fill: var(--sensor-details-neutral-500);
}

.sensor-details-date-dropdown-text {
  flex: 1;
}

.sensor-details-custom-date-header {
  margin-bottom: 16px;
}

.sensor-details-custom-date-warning {
  font-style: italic;
  font-size: 12px;
}

.sensor-details-custom-date-button-apply.disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

/* View Dropdown */
.sensor-details-view-dropdown-label {
  margin-right: 4px;
}

.sensor-details-view-dropdown-selected {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Split View Dropdown */
.sensor-details-split-view-dropdown-label {
  margin-right: 4px;
}

.sensor-details-split-view-dropdown-selected {
  flex: 1;
}

.sensor-details-split-view-dropdown-item-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.sensor-details-split-view-dropdown-item-label {
  font-weight: 600;
  color: var(--sensor-details-neutral-900);
}

/* Incidents Section */
.sensor-details-incidents-icon {
  fill: var(--sensor-details-neutral-500);
  width: 18px;
  height: 18px;
}

.sensor-details-incidents-tooltip-text {
  color: var(--sensor-details-white);
}

/* Summary card Grid */
.sensor-details-summary-card-grid {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  grid-template-rows: auto auto;
  gap: 32px;
  height: auto;
}

@media (max-width: 767px) {
  .sensor-details-summary-card-grid {
    gap: 24px;
  }
}

.sensor-details-summary-card-grid-compact {
  grid-column: 1 / -1;
}

/* Summary Card Conditional Styles */
.sensor-details-summary-card-content-with-title-lines {
  flex: 1;
  min-width: 0;
}

.sensor-details-summary-card-title-with-lines {
  line-height: 1.2;
  word-break: break-word;
  overflow-wrap: break-word;
}

.sensor-details-summary-card-icon {
  width: 30px;
  height: 30px;
}

.sensor-details-summary-card-value-with-title-lines {
  flex-shrink: 0;
  margin-left: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Heatmap Card */
.sensor-details-heatmap-card-compact {
  grid-column: 1 / -1;
  grid-row: 2;
}

@media (min-width: 1201px) {
  .sensor-details-heatmap-card {
    grid-column: 3;
    grid-row: 1 / 3;
  }
}

.sensor-details-heatmap-title {
  margin-bottom: 24px;
}

@media (max-width: 767px) {
  .sensor-details-heatmap-time-labels {
    width: 80px;
  }
}

@media (min-width: 768px) {
  .sensor-details-heatmap-time-labels {
    width: 130px;
  }
}

.sensor-details-heatmap-time-label-text {
  text-align: right;
  font-size: 12px;
}

/* Table Row - Remove Border from Last Child */
.sensor-details-table-row:last-child {
  border-bottom: none;
}

/* Empty State */
.sensor-details-empty-state-icon {
  fill: var(--sensor-details-neutral-400);
  margin-bottom: 4px;
}

.sensor-details-empty-state-message {
  text-align: center;
  max-width: 300px;
}

/* Edit sidebar overlay (portal-rendered) */
.sensor-details-edit-backdrop {
  position: fixed;
  inset: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.sensor-details-edit-sidebar {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: #fff;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .sensor-details-edit-sidebar {
    width: 100%;
  }
}

.confirmDialog-module__overlay--niMRe {
  border: none;
  padding: 0;
  margin: 0;
  max-width: none;
  max-height: none;
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

.confirmDialog-module__backdrop--nADXl {
  appearance: none;
  position: fixed;
  inset: 0;
  border: none;
  padding: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  cursor: default;
}

.confirmDialog-module__card--fsuAv {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  background: var(--color-white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  padding: var(--space-3);
  max-width: 420px;
  width: 90vw;
}

.confirmDialog-module__title--ZzKu3 {
  font-size: var(--font-size-l);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-900);
  margin-bottom: var(--space-1);
}

.confirmDialog-module__message--Eg78S {
  font-size: var(--font-size-m);
  color: var(--color-neutral-600);
  line-height: var(--line-height-paragraph);
  margin-bottom: var(--space-3);
}

.confirmDialog-module__actions--Ij2Jv {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-1);
}

.confirmDialog-module__cancelBtn--RVjic {
  all: unset;
  cursor: pointer;
  padding: var(--space-1) var(--space-2);
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  font-family: inherit;
  color: var(--color-neutral-900);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-md);
  transition: background var(--duration-fast) var(--ease-default);
  box-sizing: border-box;
}

.confirmDialog-module__cancelBtn--RVjic:hover {
  background: var(--color-neutral-100);
}

.confirmDialog-module__confirmBtn--cJQf0 {
  all: unset;
  cursor: pointer;
  padding: var(--space-1) var(--space-2);
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  font-family: inherit;
  color: var(--color-white);
  background: var(--color-red-500);
  border-radius: var(--radius-md);
  transition: background var(--duration-fast) var(--ease-default);
  box-sizing: border-box;
}

.confirmDialog-module__confirmBtn--cJQf0:hover {
  background: var(--color-red-700);
}

.attachScheduleDialog-module__panel--WcDxw {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 400px;
}

.attachScheduleDialog-module__loading--njOY2 {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 120px;
}

.attachScheduleDialog-module__footer--MR28D {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 8px;
}

.attachScheduleDialog-module__footerRight--JazRq {
  display: flex;
  align-items: center;
  gap: 8px;
}

.attachScheduleDialog-module__createBtn--aaIiB {
  background: none;
  border: none;
  color: var(--color-primary-500);
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  padding: 0;
}

.attachScheduleDialog-module__createBtn--aaIiB:hover {
  text-decoration: underline;
}

.attachScheduleDialog-module__removeBtn--gZLAX {
  background: none;
  border: none;
  color: var(--color-red-500);
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  padding: 0;
}

.attachScheduleDialog-module__removeBtn--gZLAX:hover {
  text-decoration: underline;
}

.attachScheduleDialog-module__currentRow--z7w3t {
  display: flex;
  align-items: center;
  gap: 6px;
}

.attachScheduleDialog-module__currentLabel--iPyor {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-neutral-900);
  margin: 0;
}

.attachScheduleDialog-module__editBtn--CHmOe {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  border: none;
  background: none;
  color: var(--color-neutral-600);
  cursor: pointer;
  border-radius: 4px;
  flex-shrink: 0;
}

.attachScheduleDialog-module__editBtn--CHmOe:hover {
  color: var(--color-neutral-900);
  background: var(--color-neutral-hover);
}

.sensorScheduleLink-module__scheduleAttached--FI9zY {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  max-width: 100%;
  min-width: 0;
  background: none;
  border: none;
  padding: 0;
  font-size: 14px;
  line-height: 20px;
  color: var(--color-neutral-600);
  cursor: pointer;
  text-align: left;
}

.sensorScheduleLink-module__scheduleName--Mq_0r {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sensorScheduleLink-module__scheduleAttached--FI9zY > :first-child {
  flex-shrink: 0;
}

.sensorScheduleLink-module__scheduleAttached--FI9zY:hover {
  text-decoration: underline;
}

.sensorScheduleLink-module__scheduleLink--O5uA2,
.sensorScheduleLink-module__scheduleAdd--rkAad {
  display: flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: none;
  padding: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-primary-500);
  cursor: pointer;
}

.sensorScheduleLink-module__scheduleLink--O5uA2:hover,
.sensorScheduleLink-module__scheduleAdd--rkAad:hover {
  text-decoration: underline;
}

.selectionBar-module__bar--ZUo02 {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 20px;
  background: var(--color-neutral-900);
  color: var(--color-white);
  border-radius: 10px;
  box-shadow: var(--shadow-lg);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}

.selectionBar-module__count--SjzAr {
  font-weight: 600;
}

.selectionBar-module__note--Rm_y6 {
  display: block;
  font-size: 11px;
  font-weight: 400;
  opacity: 0.65;
}

.selectionBar-module__divider--V6VzC {
  width: 1px;
  height: 20px;
  background: rgba(255, 255, 255, 0.25);
  flex-shrink: 0;
}

.selectionBar-module__action--W8CsF {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  background: rgba(255, 255, 255, 0.12);
  color: var(--color-white);
  border: none;
  border-radius: 6px;
  cursor: pointer;
}

.selectionBar-module__action--W8CsF:hover {
  background: rgba(255, 255, 255, 0.2);
}

.selectionBar-module__checkbox--_Amk6 {
  accent-color: var(--color-blue-500);
  cursor: pointer;
}

.selectionBar-module__close--E33mm {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  background: none;
  border: none;
  color: var(--color-white);
  cursor: pointer;
  border-radius: 4px;
  opacity: 0.7;
}

.selectionBar-module__close--E33mm:hover {
  opacity: 1;
  background: rgba(255, 255, 255, 0.12);
}

.summaryCard-module__root--oM_uj {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 22px;
  min-height: 78px;
  font: inherit;
  color: inherit;
  text-align: left;
  background: var(--color-white);
  border: 2px solid var(--color-neutral-200);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-sm);
  cursor: pointer;
  transition: box-shadow 0.15s ease, transform 0.1s ease;
  user-select: none;
}

.summaryCard-module__root--oM_uj:hover { box-shadow: var(--shadow-md); }

.summaryCard-module__active--IH6Uf {
  outline: 3px solid currentColor;
  outline-offset: -1px;
  transform: scale(1.02);
}

.summaryCard-module__left--lBiLb {
  display: flex;
  align-items: center;
  gap: 12px;
}

.summaryCard-module__iconWrap--Hdwjc {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.summaryCard-module__iconWrap--Hdwjc svg { width: 28px; height: 28px; }

.summaryCard-module__label--FHc79 {
  font-size: var(--font-size-l);
  color: var(--color-neutral-600);
}

.summaryCard-module__right--Atmb9 {
  display: flex;
  align-items: center;
  gap: 12px;
}

.summaryCard-module__value--e__Z3 {
  font-size: var(--font-size-xxl);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-600);
}

.summaryCard-module__info--ujCHd {
  position: relative;
  display: flex;
  align-items: center;
  cursor: help;
  color: var(--color-neutral-700);
}

.summaryCard-module__info--ujCHd svg { width: 16px; height: 16px; }

.summaryCard-module__info--ujCHd::after {
  content: attr(data-tooltip);
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  padding: 6px 10px;
  width: max-content;
  max-width: 350px;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  background: var(--color-neutral-900);
  border-radius: var(--radius-md);
  white-space: normal;
  line-height: 1.4;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.1s ease;
  z-index: 10;
}

.summaryCard-module__info--ujCHd:hover::after {
  opacity: 1;
}

/* Variants */
.summaryCard-module__alert--pj8a_ { border-color: var(--color-red-300); background: var(--color-red-50); }
.summaryCard-module__alert--pj8a_ .summaryCard-module__iconWrap--Hdwjc { color: #CE2C31; }
.summaryCard-module__alert--pj8a_ .summaryCard-module__value--e__Z3 { color: var(--color-red-500); }

.summaryCard-module__outOfRange--riPZC { border-color: var(--color-orange-300, #FFBA6B); background: var(--color-orange-50, #FFF3EB); }
.summaryCard-module__outOfRange--riPZC .summaryCard-module__iconWrap--Hdwjc { color: var(--color-orange-500, #ec7d10); }
.summaryCard-module__outOfRange--riPZC .summaryCard-module__value--e__Z3 { color: var(--color-orange-500, #ec7d10); }

.summaryCard-module__warning--YjLNW { border-color: var(--color-amber-300); background: var(--color-amber-50); }
.summaryCard-module__warning--YjLNW .summaryCard-module__iconWrap--Hdwjc { color: var(--color-amber-500); }
.summaryCard-module__warning--YjLNW .summaryCard-module__value--e__Z3 { color: var(--color-amber-500); }

.summaryCard-module__connected--l7fy3 { border-color: var(--color-green-300); background: var(--color-green-50); }
.summaryCard-module__connected--l7fy3 .summaryCard-module__value--e__Z3 { color: var(--color-neutral-900); }

.summaryCard-module__disconnected--Qa7gv { border-color: var(--color-neutral-300); background: var(--color-neutral-bg); }
.summaryCard-module__disconnected--Qa7gv .summaryCard-module__value--e__Z3 { color: var(--color-neutral-900); }

.summaryCards-module__root--VCXmy {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 32px;
}

.summaryCards-module__root--VCXmy > * {
  flex: 1;
  min-width: 180px;
}

.controlBar-module__root--Arx1p {
  display: flex;
  flex-direction: column;
  background: #FFFFFF;
  border: 1px solid #DFE3E8;
  border-radius: 8px;
  margin-bottom: 24px;
}

/* ── Row 1: Actions ── */
.controlBar-module__top--WzG8H {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 24px;
  border-bottom: 1px solid #DFE3E8;
  gap: 12px;
}

.controlBar-module__topLeft--tdTeM {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.controlBar-module__pageTitle--LCKHI {
  font-size: 20px;
  font-weight: 600;
  color: #323233;
  white-space: nowrap;
}

.controlBar-module__results--YZNoq {
  font-size: 14px;
  font-weight: 600;
  color: #323233;
  white-space: nowrap;
}

.controlBar-module__vertDivider--y4sld {
  width: 1px;
  height: 28px;
  background: #DFE3E8;
  flex-shrink: 0;
}

.controlBar-module__vertDividerSmall--G0_R8 { height: 24px; }

.controlBar-module__searchWrapper--j5uW9 {
  position: relative;
  width: 340px;
  flex-shrink: 0;
}

.controlBar-module__searchInput--dGoZO {
  width: 100%;
  padding: 7px 12px;
  font-size: 14px;
  font-family: inherit;
  border: 1px solid #DFE3E8;
  border-radius: 4px;
  outline: none;
}

.controlBar-module__searchInputHasText--QZCZP { padding-right: 28px; }

.controlBar-module__searchInput--dGoZO:focus,
.controlBar-module__searchInputHasText--QZCZP { border-color: #0C6FF9; }
.controlBar-module__searchInput--dGoZO::placeholder { color: #8B8D98; }

.controlBar-module__searchClear--kh8MX {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px;
  font-size: 16px;
  line-height: 1;
  color: #8B8D98;
}

.controlBar-module__searchClear--kh8MX:hover { color: #323233; }

.controlBar-module__topRight--eZvI4 {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}

.controlBar-module__toggleSwitch--pQRHr {
  position: relative;
  display: inline-block;
  width: 64px;
  height: 32px;
  cursor: pointer;
  flex-shrink: 0;
}

.controlBar-module__toggleSwitch--pQRHr input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.controlBar-module__toggleTrack--KG3SG {
  position: absolute;
  inset: 0;
  background: #B8B8B8;
  border-radius: 16px;
  transition: background 0.2s;
}

.controlBar-module__toggleTrack--KG3SG::before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  left: 4px;
  top: 4px;
  background: #FFFFFF;
  border-radius: 50%;
  transition: transform 0.2s;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.controlBar-module__toggleSwitch--pQRHr input:checked + .controlBar-module__toggleTrack--KG3SG { background: #0C6FF9; }
.controlBar-module__toggleSwitch--pQRHr input:checked + .controlBar-module__toggleTrack--KG3SG::before { transform: translateX(32px); }

.controlBar-module__toggleLabel--KnmY2 {
  font-size: 14px;
  font-weight: 500;
  color: #323233;
  margin-left: 8px;
  white-space: nowrap;
}

.controlBar-module__outlineBtn--I2qqn {
  padding: 7px 14px;
  white-space: nowrap;
}

.controlBar-module__primaryBtn--KprB9 {
  padding: 7px 14px;
  white-space: nowrap;
}

/* ── Row 2: Filters ── */
.controlBar-module__bottom--COSPT {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  padding: 10px 24px;
  background: #F8F9FA;
  gap: 7px;
  border-radius: 0 0 8px 8px;
}

.controlBar-module__scrollWrap--WPZPM {
  position: relative;
  min-width: 0;
}

.controlBar-module__scrollWrap--WPZPM::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  background: linear-gradient(to right, transparent, #F8F9FA);
  pointer-events: none;
  z-index: 1;
}

.controlBar-module__scrollSection--pWb__ {
  display: flex;
  align-items: center;
  gap: 7px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-right: 24px;
}

.controlBar-module__scrollSection--pWb__::-webkit-scrollbar { display: none; }

.controlBar-module__scrollSection--pWb__ > * { flex-shrink: 0; }

.controlBar-module__filtersBtn--LclXR {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
}

.controlBar-module__filtersBtn--LclXR:hover { background: var(--color-neutral-100); }

.controlBar-module__filtersBtnActive--iGcuw {
  border-color: var(--color-primary-500);
  background: var(--color-primary-50);
  color: var(--color-primary-500);
}

.controlBar-module__filtersBtnActive--iGcuw:hover { background: var(--color-primary-50); }

.controlBar-module__resetBtn--g9M42 {
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  color: #0C6FF9;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

.controlBar-module__resetBtn--g9M42:hover { color: #0954BD; text-decoration: underline; }

.controlBar-module__rightGroup--Fh8na {
  display: flex;
  align-items: center;
  gap: 12px;
}

.controlBar-module__layoutToggle--Dxn9W {
  display: inline-flex;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  overflow: hidden;
  flex-shrink: 0;
}

.controlBar-module__layoutBtn--guq2e {
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1;
  border: none;
  background: var(--color-white);
  color: var(--color-neutral-700);
  cursor: pointer;
  white-space: nowrap;
}

.controlBar-module__layoutBtn--guq2e:hover {
  background: var(--color-neutral-100);
}

.controlBar-module__layoutBtnActive--NmnNL {
  background: var(--color-primary-50);
  color: var(--color-primary-500);
}

.controlBar-module__layoutBtnActive--NmnNL:hover {
  background: var(--color-primary-50);
}

.savedViewsModal-module__backdrop--xPzqA {
  z-index: 1002;
}

.savedViewsModal-module__root--ITD0K {
  border: none;
  padding: 0;
  max-height: none;
  width: 400px;
  max-width: 90vw;
  z-index: 1003;
}

.savedViewsModal-module__header--Y9UoF { }

.savedViewsModal-module__title--a7TVJ {
  font-size: 16px;
}

.savedViewsModal-module__closeBtn--ArBbc { }

.savedViewsModal-module__body--c3baX { padding: 20px; }

.savedViewsModal-module__field--F876m { }
.savedViewsModal-module__fieldLabel--iDx8A { }
.savedViewsModal-module__fieldInput--uRC4c { }

.savedViewsModal-module__deleteText--yCyXV {
  font-size: 14px;
  color: var(--color-neutral-900);
}

.savedViewsModal-module__footer--SSCYi {
  gap: 8px;
}

.savedViewsModal-module__outlineBtn--l4Fot { }
.savedViewsModal-module__primaryBtn--fq4_t { }

.savedViewsModal-module__dangerBtn--mk6lA {
  background: var(--color-red-500);
}

.savedViewsModal-module__dangerBtn--mk6lA:hover { background: var(--color-red-700); }

.dropdownBase-module__wrapper--DdR18 {
  position: relative;
}

.dropdownBase-module__trigger--Cxivd {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  border: 1px solid #B8B8B8;
  border-radius: 4px;
  background: #FFFFFF;
  color: #323233;
  cursor: pointer;
  white-space: nowrap;
  line-height: 20px;
}

.dropdownBase-module__trigger--Cxivd:hover {
  background: #F2F2F2;
}

.dropdownBase-module__triggerActive--QrOSU {
  background: #E2F2FF;
  border-color: #0C6FF9;
  color: #0954BD;
}

.dropdownBase-module__triggerActive--QrOSU:hover {
  background: #F4FAFE;
}

.dropdownBase-module__chevron--QM4Rd {
  display: flex;
  flex-shrink: 0;
  transition: transform 0.15s ease;
}

.dropdownBase-module__chevronOpen--7ymyf {
  transform: rotate(180deg);
}

.dropdownBase-module__popover--QQDmZ {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  background: #FFFFFF;
  border: 1px solid #DFE3E8;
  border-radius: 6px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  z-index: 50;
}

.dropdownBase-module__option--i0GI2 {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  cursor: pointer;
  font-size: 13px;
  color: #323233;
}

.dropdownBase-module__option--i0GI2:hover {
  background: #F2F2F2;
}

.dropdownBase-module__backdrop--JR9_4 {
  position: fixed;
  inset: 0;
  z-index: 49;
}

.savedViewsMenu-module__root--QtTTX {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-left: auto;
}

.savedViewsMenu-module__saveBtn--bHFgg {
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  color: #0C6FF9;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  white-space: nowrap;
}

.savedViewsMenu-module__saveBtn--bHFgg:hover { background: #F2F2F2; }

.savedViewsMenu-module__saveBtnSecondary--M9zyv {
  color: #8B8D98;
}

.savedViewsMenu-module__divider--w_eM5 {
  width: 1px;
  height: 24px;
  background: #DFE3E8;
  flex-shrink: 0;
}

.savedViewsMenu-module__triggerWrap--rvgde { position: relative; }

.savedViewsMenu-module__trigger--Zv5oW {
  gap: 4px;
  font-size: 13px;
  font-weight: 600;
  color: #323233;
  background: transparent;
  border: none;
  padding: 4px 8px;
  max-width: 180px;
}

.savedViewsMenu-module__trigger--Zv5oW:hover { background: #F2F2F2; }

.savedViewsMenu-module__triggerLabel--vaKg0 {
  display: flex;
  align-items: center;
  gap: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.savedViewsMenu-module__modifiedDot--fK86k {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #E54D2E;
  flex-shrink: 0;
}

.savedViewsMenu-module__chevron--v1Wk2 { }
.savedViewsMenu-module__chevronOpen--PMVNh { }

.savedViewsMenu-module__dropdown--SD19A {
  right: 0;
  left: auto;
  min-width: 200px;
  max-width: 280px;
  padding: 4px 0;
}

.savedViewsMenu-module__dropdownItem--O0JVV {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  padding: 8px 12px;
  font-size: 13px;
  font-family: inherit;
  color: #323233;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
}

.savedViewsMenu-module__dropdownItem--O0JVV:hover { background: #F2F2F2; }

.savedViewsMenu-module__clearItem--d7rja { color: #8B8D98; }

.savedViewsMenu-module__itemName--M2awp {
  all: unset;
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.savedViewsMenu-module__defaultBadge--NeDnf {
  color: #F5A623;
  font-size: 10px;
  flex-shrink: 0;
}

.savedViewsMenu-module__itemActions--_9_2y {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

.savedViewsMenu-module__itemActionBtn--sLjay {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  background: none;
  border: none;
  cursor: pointer;
  color: #8B8D98;
  border-radius: 2px;
}

.savedViewsMenu-module__itemActionBtn--sLjay:hover { color: #323233; background: #E8E8E8; }

.savedViewsMenu-module__backdrop--VKErJ { }

.groupByDropdown-module__wrapper--dQNGM {
  margin-left: auto;
}

.groupByDropdown-module__trigger--_eZAc {
  border-color: var(--color-neutral-400);
  color: var(--color-neutral-900);
}

.groupByDropdown-module__trigger--_eZAc:hover { background: var(--color-neutral-100); }

.groupByDropdown-module__triggerActive--tY2IX {
  border-color: var(--color-primary-500);
  color: var(--color-primary-600);
}

.groupByDropdown-module__triggerHighlighted--VKTB4 {
  background: #E2F2FF;
  border-color: #0C6FF9;
  color: #0954BD;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.groupByDropdown-module__triggerHighlighted--VKTB4:hover,
.groupByDropdown-module__triggerHighlighted--VKTB4:focus { background: #F4FAFE; }

.groupByDropdown-module__chevron--HhMFB {
  width: 14px;
  height: 14px;
}

.groupByDropdown-module__chevronOpen--h8jRq { }

.groupByDropdown-module__menu--qfpa4 {
  right: 0;
  left: auto;
  min-width: 140px;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  padding: 4px 0;
}

.groupByDropdown-module__option--JeuR_ {
  display: block;
  width: 100%;
  font-size: 14px;
  font-family: inherit;
  background: none;
  border: none;
  text-align: left;
  color: var(--color-neutral-900);
}

.groupByDropdown-module__option--JeuR_:hover { background: var(--color-neutral-100); }

.groupByDropdown-module__optionActive--iE6hG {
  color: var(--color-primary-600);
  font-weight: 600;
}

.groupByDropdown-module__backdrop--aYiX5 { }

.statusPill-module__btnReset--FuRZL {
  appearance: none;
  border: none;
  background: none;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

.statusPill-module__root--hAqXj {
  border-radius: var(--radius-full);
  padding: 6px 12px;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  line-height: 20px;
  border: 1px solid var(--color-neutral-200);
  background: var(--color-neutral-50);
  color: var(--color-neutral-900);
  white-space: nowrap;
  transition: box-shadow 0.15s ease, transform 0.1s ease;
}

.statusPill-module__clickable--l0ULd { cursor: pointer; user-select: none; }
.statusPill-module__clickable--l0ULd:hover { box-shadow: 0 0 0 1px currentColor; }

.statusPill-module__active--pMtav {
  outline: 2px solid currentColor;
  outline-offset: -1px;
  font-weight: var(--font-weight-semibold);
}

.statusPill-module__info--bRXXv {
  border-color: var(--color-primary-input-border);
  background: var(--color-primary-50);
  color: var(--color-primary-600);
}

.statusPill-module__neutral--gWlYx {
  border-color: var(--color-neutral-300);
  background: var(--color-neutral-bg);
  color: var(--color-neutral-600);
}

.statusPill-module__risk--UWCCy {
  border-color: var(--color-red-300);
  background: var(--color-red-50);
  color: var(--color-red-500);
}

.statusPill-module__warning--AWd7k {
  border-color: var(--color-amber-300);
  background: var(--color-amber-50);
  color: var(--color-amber-500);
}

/* Expanded container with collapse animation */
.sensorRowExpanded-module__root--Rkixi {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--color-neutral-300);
  overflow: visible;
  transition:
    max-height var(--duration-slow) var(--ease-default),
    opacity 0.3s ease-in-out,
    margin-top var(--duration-slow) var(--ease-default),
    padding-top var(--duration-slow) var(--ease-default),
    visibility 0.3s ease-in-out;
  max-height: 2000px;
  opacity: 1;
  visibility: visible;
  cursor: default;
}

.sensorRowExpanded-module__collapsed--OcGAp {
  max-height: 0;
  opacity: 0;
  margin-top: 0;
  padding-top: 0;
  border-top: none;
  gap: 0;
  pointer-events: none;
  visibility: hidden;
  overflow: hidden;
}

/* Tabs */
.sensorRowExpanded-module__tabs--OLqqm {
  display: flex;
  align-items: center;
  gap: 0;
  border-bottom: 2px solid var(--color-neutral-300);
  margin-bottom: 4px;
}

.sensorRowExpanded-module__tab--yVVL6 {
  padding: 10px 20px 12px;
  margin: 0;
  border: none;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  background: none;
  font-size: 15px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-700);
  cursor: pointer;
  transition: color var(--duration-fast) ease, border-color var(--duration-fast) ease;
}

.sensorRowExpanded-module__tab--yVVL6:hover { color: var(--color-neutral-600); }

.sensorRowExpanded-module__tabActive--GgI8C {
  color: var(--color-neutral-900);
  border-bottom-color: var(--color-neutral-900);
}

.sensorRowExpanded-module__viewDetails--EBRGn {
  margin-left: auto;
  margin-bottom: 10px;
  padding: 8px 16px;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  background: var(--color-primary-500);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
}

.sensorRowExpanded-module__viewDetails--EBRGn:hover { opacity: 0.9; }

/* Readings grid */
.sensorRowExpanded-module__readingsList--ssq_u {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 8px 12px;
  font-size: var(--font-size-s);
}

.sensorRowExpanded-module__readingsListStack--p1Zer {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: var(--font-size-s);
}

.sensorRowExpanded-module__tableWrap--G_F9L {
  overflow-x: auto;
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-lg);
}

.sensorRowExpanded-module__table--aWuxL {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--font-size-s);
}

.sensorRowExpanded-module__table--aWuxL th,
.sensorRowExpanded-module__table--aWuxL td {
  padding: 16px;
  text-align: left;
  border-bottom: 1px solid var(--color-neutral-300);
}

.sensorRowExpanded-module__table--aWuxL th {
  font-weight: var(--font-weight-extrabold);
  color: var(--color-neutral-600);
  background: var(--color-neutral-bg);
  font-size: 15px;
}

.sensorRowExpanded-module__table--aWuxL tbody tr:last-child td { border-bottom: none; }

.sensorRowExpanded-module__actionsCell--r6e32 { position: relative; vertical-align: middle; }

.sensorRowExpanded-module__actionsBtn--qgZQ5 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  border: 1px solid var(--color-neutral-300);
  border-radius: var(--radius-md);
  background: var(--color-white);
  cursor: pointer;
  color: var(--color-neutral-900);
}

.sensorRowExpanded-module__actionsBtn--qgZQ5:hover { background: var(--color-neutral-hover); }

.sensorRowExpanded-module__createWorkOrderButton--wXr25 {
  padding: 8px 12px;
  border: 1px solid var(--color-primary-500);
  border-radius: var(--radius-md);
  background: var(--color-white);
  color: var(--color-primary-500);
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
}

.sensorRowExpanded-module__createWorkOrderButton--wXr25:hover {
  background: var(--color-primary-50);
}

.sensorRowExpanded-module__actionsMenu--o7HPn {
  min-width: 180px;
  padding: 8px 0;
  background: var(--color-white);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-neutral-300);
  box-shadow: var(--shadow-md);
}

.sensorRowExpanded-module__actionsMenuItem--bPyeZ {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
  cursor: pointer;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
}

.sensorRowExpanded-module__actionsMenuItem--bPyeZ:hover { background: var(--color-neutral-hover); }

/* Status badges in alerts table */
.sensorRowExpanded-module__statusBadge--CZWMa {
  display: inline-block;
  padding: 2px 8px;
  border-radius: var(--radius-lg);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  white-space: nowrap;
}

.sensorRowExpanded-module__statusAlert--Ersfe {
  background: var(--color-red-50);
  color: var(--color-red-500);
}

.sensorRowExpanded-module__statusOutOfRange--Rru2I {
  background: var(--color-orange-50);
  color: var(--color-orange-500);
}

.sensorRowExpanded-module__statusWarning--GqIlf {
  background: var(--color-amber-50);
  color: var(--color-amber-500);
}

.sensorRowExpanded-module__valueAlert--YFCfo { color: var(--color-red-500); }
.sensorRowExpanded-module__valueOutOfRange--GL48z { color: var(--color-orange-500); }
.sensorRowExpanded-module__valueWarning--fZsH8 { color: var(--color-amber-500); }

.sensorRowExpanded-module__alertLink--SOGgJ {
  color: var(--color-primary-500);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  background: none;
  border: none;
  padding: 0;
  font-size: inherit;
  cursor: pointer;
}

.sensorRowExpanded-module__alertLink--SOGgJ:hover {
  text-decoration: underline;
}

.sensorRowExpanded-module__empty--wqz6h {
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
}

/* Insights */
.sensorRowExpanded-module__insightsSection--AZUFu {
  border-top: 1px solid var(--color-neutral-300);
  padding-top: 16px;
}

.sensorRowExpanded-module__insightsHeader--y2ErT {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 8px;
}

.sensorRowExpanded-module__insightsHeading--pQEuB {
  font-size: 16px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
  margin-bottom: 0;
}

.sensorRowExpanded-module__generateBtn--Lq4C_ {
  padding: 4px 12px;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  color: var(--color-primary-700);
  background: var(--color-primary-50);
  border: 1px solid var(--color-primary-700);
  border-radius: var(--radius-md);
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, opacity 0.15s;
}

.sensorRowExpanded-module__generateBtn--Lq4C_:hover:not(:disabled) {
  background: var(--color-primary-100);
}

.sensorRowExpanded-module__generateBtn--Lq4C_:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.sensorRowExpanded-module__insightsGrid--vxyB0 {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.sensorRowExpanded-module__insightCard--TOfNl {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: var(--radius-md);
  border-left: 3px solid var(--color-neutral-400);
  background: var(--color-neutral-bg);
}

.sensorRowExpanded-module__insightCardActionable--WSSZM {
  border-left-color: var(--color-amber-500);
  background: var(--color-amber-50);
}

.sensorRowExpanded-module__insightCardPositive--LW6Ir {
  border-left-color: var(--color-green-500);
  background: var(--color-green-50);
}

.sensorRowExpanded-module__insightText--Vdivu {
  flex: 1;
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
}

.sensorRowExpanded-module__insightActions--fGoaa {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-shrink: 0;
  line-height: var(--line-height-normal);
}

.sensorRowExpanded-module__insightLoading--VFOWx {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  padding: 12px 0;
}

.sensorRowExpanded-module__backdrop--q27jt {
  position: fixed;
  inset: 0;
  z-index: 9998;
}

.sensorRowExpanded-module__actionsMenuFixed--nLtVX {
  position: fixed;
  z-index: var(--z-index-insight-menu);
}

.sensorAlertSidebar-module__backdrop--EuzzN {
  position: fixed;
  inset: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.sensorAlertSidebar-module__sidebar--XcwUQ {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: #fff;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .sensorAlertSidebar-module__sidebar--XcwUQ {
    width: 100%;
  }
}

.connectionStatusBadge-module__root--uYwei {
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: 0.04px;
  white-space: nowrap;
}

.connectionStatusBadge-module__connected--ik6XV {
  color: #005C33;
  border: 1px solid rgba(0, 145, 64, 0.44);
  background: #e8f7ee;
}

.connectionStatusBadge-module__disconnected--qC45Y {
  color: #60646c;
  border: 1px solid #e0e1e6;
  background: #fcfcfd;
}

.sensorRowDropdown-module__root--c5SxN {
  position: fixed;
  min-width: 240px;
  padding: 12px 0;
  background: var(--color-white);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-neutral-300);
  box-shadow: var(--shadow-md);
  z-index: 1000;
}

.sensorRowDropdown-module__item--f7FZr {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 16px;
  padding: 8px 20px;
  font-size: var(--font-size-m);
  color: var(--color-neutral-900);
  text-decoration: none;
  cursor: pointer;
  background: none;
  border: none;
  box-sizing: border-box;
}

.sensorRowDropdown-module__item--f7FZr:hover {
  background: var(--color-neutral-hover);
}

.sensorShared-module__metaIconGroup--pyxwe {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.sensorShared-module__metaIconLabel--H9R1l {
  font-size: var(--font-size-xs);
  color: var(--color-neutral-600);
  line-height: 16px;
}

.sensorShared-module__telemetryGroup--FU028 {
  display: flex;
  align-items: center;
  gap: 12px;
}

.sensorShared-module__optionsButton--znzHd {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: none;
  border-radius: var(--radius-sm);
  background: transparent;
  cursor: pointer;
  padding: 0;
}

.sensorShared-module__optionsButton--znzHd svg {
  width: 16px;
  height: 16px;
}

.sensorShared-module__optionsButton--znzHd:hover:not(:disabled) {
  background: var(--color-neutral-hover);
}

.sensorShared-module__optionsButton--znzHd:focus-visible {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 2px;
}

.sensorShared-module__lastReadingLabel--zSut2 {
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  line-height: 20px;
  letter-spacing: 0.25px;
}

.sensorShared-module__lastReadingLabelRight--Pjg7W {
  text-align: right;
}

.sensorShared-module__lastReadingLabel--zSut2 strong {
  font-weight: var(--font-weight-medium);
}

.sensorShared-module__inlineBtn--je3lo {
  all: unset;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.sensorShared-module__inlineBtn--je3lo:focus-visible {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 2px;
  border-radius: var(--radius-sm);
  background: var(--color-primary-50);
}

.sensorShared-module__statusCountsInner--_4uC_ {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
}

.sensorShared-module__countBadge--nOQWj {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 8px;
  border-radius: 4px;
  font-size: var(--font-size-xs);
  cursor: pointer;
  position: relative;
}

.sensorShared-module__countBadgeWarning--leX93 {
  background: var(--color-amber-50);
  color: var(--color-amber-500);
}

.sensorShared-module__countBadgeWarning--leX93 svg {
  stroke: var(--color-amber-500);
}

.sensorShared-module__countBadgeAlert--p9Yc5 {
  background: var(--color-red-50);
  color: var(--color-red-500);
}

.sensorShared-module__countBadgeAlert--p9Yc5 svg {
  stroke: var(--color-red-500);
}

.sensorShared-module__countBadgeOutOfRange--xY7CC {
  background: var(--color-orange-50);
  color: var(--color-amber-500);
}

.sensorShared-module__countBadgeOutOfRange--xY7CC svg {
  color: var(--color-amber-500);
}

.sensorShared-module__countBadgeWo--Wwljh {
  background: var(--color-primary-50);
  color: var(--color-primary-600);
}

.sensorShared-module__countBadgeWo--Wwljh svg {
  stroke: var(--color-primary-600);
}

.sensorShared-module__countBadgeText--OuK5H {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  line-height: 16px;
}

.sensorShared-module__countBadgeTip--bG41_ {
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-neutral-900);
  color: var(--color-white);
  font-size: 12px;
  font-weight: 400;
  padding: 6px 10px;
  border-radius: 4px;
  white-space: nowrap;
  z-index: 1000;
  box-shadow: var(--shadow-md);
  pointer-events: none;
}

.sensorShared-module__countBadgeTipArrow--LHB8w {
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid var(--color-neutral-900);
}

.sensorTitleSection-module__root--tSM3L {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.sensorTitleSection-module__rootList--QNyyS {
  cursor: pointer;
}

.sensorTitleSection-module__name--gcFyg {
  border: none;
  background: none;
  padding: 0;
  font-family: inherit;
  font-weight: 700;
  color: var(--color-neutral-900);
  cursor: pointer;
  align-self: flex-start;
  width: fit-content;
  text-align: left;
}

.sensorTitleSection-module__nameCard--t6kDK {
  font-size: 18px;
  line-height: 28px;
}

.sensorTitleSection-module__nameList--ngjd2 {
  font-size: 20px;
  line-height: 32px;
  color: #1c2024;
}

.sensorTitleSection-module__name--gcFyg:hover {
  text-decoration: underline;
}

.sensorTitleSection-module__deviceType--HMj9h {
  font-size: 14px;
  line-height: 20px;
  color: var(--color-neutral-600);
  text-align: left;
  align-self: flex-start;
  width: fit-content;
  border: none;
  background: none;
  padding: 0;
  font-family: inherit;
  cursor: pointer;
}

.sensorRow-module__root--IUvGt {
  display: flex;
  flex-direction: column;
  padding: 16px;
  border: 1px solid #e0e1e6;
  border-radius: 8px;
  background: #fcfcfd;
  cursor: pointer;
}

.sensorRow-module__rootExpanded--VttSq {
  padding: 16px;
  border: 2px solid #60646c;
  background: #f9f9fb;
}

.sensorRow-module__selected--P5228 {
  box-shadow: var(--shadow-lg);
}

/* Top section */
.sensorRow-module__top--B8uIS {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
}

.sensorRow-module__headerLeft--wPkeG {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.sensorRow-module__selectCheckbox--mJp6d {
  width: 16px;
  height: 16px;
  cursor: pointer;
  flex-shrink: 0;
}

.sensorRow-module__expandable--zYgIx .sensorRow-module__top--B8uIS,
.sensorRow-module__expandable--zYgIx .sensorRow-module__divider--qsFnN,
.sensorRow-module__expandable--zYgIx .sensorRow-module__bottom--CoyQR { cursor: pointer; }

.sensorRow-module__topDropdownOpen--ZFkZT { position: relative; z-index: 20; }

/* Meta section */
.sensorRow-module__meta--RPbUo {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  position: relative;
}

.sensorRow-module__expandButton--A8LPm {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  height: 32px;
  width: 32px;
  border: 1px solid #e0e1e6;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  transition: transform var(--duration-normal) ease;
  color: var(--color-neutral-900);
}

.sensorRow-module__expandButtonExpanded--Ldnep { transform: rotate(180deg); }

.sensorRow-module__expandButton--A8LPm:hover:not(:disabled) { background: var(--color-neutral-hover); }
.sensorRow-module__expandButton--A8LPm:disabled { cursor: default; opacity: 0.6; }

/* Divider */
.sensorRow-module__divider--qsFnN {
  height: 1px;
  background: #e0e1e6;
  margin: 16px 0;
  flex-shrink: 0;
}

/* Bottom section */
.sensorRow-module__bottom--CoyQR {
  display: flex;
  align-items: center;
  gap: 16px;
}

.sensorRow-module__locationSection--wRXFI {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  min-width: 0;
}

.sensorRow-module__scheduleRow--NpzSo {
  display: flex;
  align-items: center;
}

.sensorRow-module__lastReading--xFl7D {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-left: auto;
  flex-wrap: wrap;
}

/* Left border — blended status */
.sensorRow-module__borderConnected--Bvdr6 { border-left: 4px solid var(--color-success-500, #218358); }
.sensorRow-module__borderWarning--X1zkL { border-left: 4px solid var(--color-warning-500, #f79009); }
.sensorRow-module__borderOutOfRange--zsT15 { border-left: 4px solid var(--color-orange-500, #e5580c); }
.sensorRow-module__borderAlert--TKzCp { border-left: 4px solid var(--color-error-500, #ce2c31); }
.sensorRow-module__borderDisconnected--NPPjO { border-left: 4px solid var(--color-neutral-300, #b9bbc6); }

/* Loading state */
.sensorRow-module__loading--pDloG {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 28px;
  border: 2px solid var(--color-neutral-300);
  border-radius: var(--radius-lg);
  background: var(--color-neutral-bg);
}

@keyframes sensorRow-module__spin--j7GC3 {
  to { transform: rotate(360deg); }
}

.sensorRow-module__spinner--TtQgN {
  width: 24px;
  height: 24px;
  border: 3px solid var(--color-neutral-300);
  border-top-color: var(--color-primary-600);
  border-radius: 50%;
  animation: sensorRow-module__spin--j7GC3 0.7s linear infinite;
}

.sensorLocationLinks-module__location--Z1LWq {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--color-neutral-600);
  min-width: 0;
}

.sensorLocationLinks-module__stack--Z7NfJ {
  display: grid;
  gap: 8px;
}

.sensorLocationLinks-module__inlineGroup--N7n8L {
  display: flex;
  align-items: center;
  gap: 20px;
}

.sensorLocationLinks-module__link--OeNur {
  font-size: 14px;
  line-height: 20px;
  color: var(--color-neutral-600);
  text-decoration: none;
  cursor: pointer;
  overflow-wrap: anywhere;
}

.sensorLocationLinks-module__link--OeNur:hover {
  text-decoration: underline;
}

.sensorLocationLinks-module__text--quZYH {
  font-size: 14px;
  line-height: 20px;
  color: var(--color-neutral-600);
  overflow-wrap: anywhere;
}

.sensorCard-module__root--XYzF2 {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 14px;
  border: 1px solid var(--color-neutral-300);
  border-radius: 8px;
  background: var(--color-neutral-bg);
  max-width: 450px;
  width: 100%;
}

.sensorCard-module__selected--oDRLL {
  box-shadow: var(--shadow-lg);
}

.sensorCard-module__cardMain--esdzC {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}

.sensorCard-module__borderConnected--he0_O { border-top: 4px solid var(--color-green-500); }
.sensorCard-module__borderWarning--ZWqKq { border-top: 4px solid var(--color-amber-500); }
.sensorCard-module__borderOutOfRange--HP392 { border-top: 4px solid var(--color-orange-500); }
.sensorCard-module__borderAlert--EyOx8 { border-top: 4px solid var(--color-red-500); }
.sensorCard-module__borderDisconnected--_Bj9y { border-top: 4px solid var(--color-neutral-300); }

.sensorCard-module__statusRow--taBVt {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 12px;
}

.sensorCard-module__statusRowDropdownOpen--rJyj4 {
  position: relative;
  z-index: 20;
}

.sensorCard-module__statusLeft--C5MMj {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  min-width: 0;
}

.sensorCard-module__statusCenter--pOUFX {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}

.sensorCard-module__selectCheckbox--ylO1B {
  width: 16px;
  height: 16px;
  cursor: pointer;
  flex-shrink: 0;
}

.sensorCard-module__metaLeft--_Es1u {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.sensorCard-module__scheduleRow--E6qbN {
  display: flex;
  align-items: center;
}

.sensorCard-module__statusRight--fHteB {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.sensorCard-module__divider--_l43B {
  height: 1px;
  background: var(--color-neutral-300);
  margin: 12px 0;
  flex-shrink: 0;
}

.sensorCard-module__titleSection--AHmwt {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.sensorCard-module__metaRow--Nz3_m {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  align-items: start;
  flex-shrink: 0;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--color-neutral-300);
}

@media (max-width: 520px) {
  .sensorCard-module__metaRow--Nz3_m {
    grid-template-columns: 1fr;
  }
}

.sensorCard-module__activityCol--hnfmp {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  min-width: 0;
}

.sensorCard-module__tabContent--hErmL {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  margin-top: 8px;
  min-height: 0;
}

/* Matches readingsListStack gap (8px) + ~one ReadingCard row (padding + label + value). */
.sensorCard-module__tabPanelViewport--SiaOI {
  --sensor-card-panel-gap: 8px;
  --sensor-card-panel-slot: 66px;
  --sensor-card-panel-height: calc(3 * var(--sensor-card-panel-slot) + 2 * var(--sensor-card-panel-gap));
  min-height: var(--sensor-card-panel-height);
  max-height: var(--sensor-card-panel-height);
  overflow-y: auto;
  scrollbar-width: thin;
  padding-right: 2px;
}

.sensorCard-module__tabPanelViewport--SiaOI::-webkit-scrollbar {
  width: 6px;
}

.sensorCard-module__tabPanelViewport--SiaOI::-webkit-scrollbar-thumb {
  background: var(--color-neutral-300);
  border-radius: 3px;
}

.sensorCard-module__alertsScroll--IitL9 {
  display: flex;
  flex-direction: column;
  gap: 10px;
}


.cardAlertItem-module__alertCard--NsAXs {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--color-neutral-300);
  border-radius: 8px;
  background: var(--color-neutral-bg-subtle);
}

.cardAlertItem-module__alertCardHeader--ztxeC {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.cardAlertItem-module__alertCardTitle--jstKI {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  color: var(--color-neutral-900);
}

.cardAlertItem-module__alertStatusBadge--mcFtE {
  flex-shrink: 0;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  line-height: 16px;
  white-space: nowrap;
}

.cardAlertItem-module__alertStatusWarning--vJXDf {
  background: var(--color-amber-50);
  color: var(--color-amber-500);
}

.cardAlertItem-module__alertStatusOutOfRange--Pk6rj {
  background: var(--color-orange-50);
  color: var(--color-amber-500);
}

.cardAlertItem-module__alertStatusAlert--ojMjI {
  background: var(--color-red-50);
  color: var(--color-red-500);
}

.cardAlertItem-module__alertStats--u6sV1 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 12px;
}

.cardAlertItem-module__alertStat--x7BUL {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.cardAlertItem-module__alertStatLabel--T_T62 {
  font-size: 12px;
  line-height: 16px;
  color: var(--color-neutral-600);
}

.cardAlertItem-module__alertStatValue--oS9Qh {
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  color: var(--color-neutral-900);
  font-variant-numeric: tabular-nums;
}

.cardAlertItem-module__alertValueWarning--Mgg8S { color: var(--color-amber-500); }
.cardAlertItem-module__alertValueOutOfRange--NjONH { color: var(--color-orange-500); }
.cardAlertItem-module__alertValueAlert--QQr7P { color: var(--color-red-500); }

.cardAlertItem-module__alertNameRow--p3V3W {
  margin: 0;
  padding-top: 2px;
}

.cardAlertItem-module__alertNameLink--QQoFE {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  line-height: 18px;
  color: var(--color-primary-500);
  text-decoration: none;
}

.cardAlertItem-module__alertNameLink--QQoFE:hover {
  text-decoration: underline;
}

.cardAlertItem-module__alertCardFooter--KuQzO {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--color-neutral-300);
}

.cardAlertItem-module__alertWoGroup--nnGSP {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.cardAlertItem-module__alertWoLabel--nrJXA {
  font-size: 11px;
  font-weight: 600;
  line-height: 14px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--color-neutral-700);
}

.cardAlertItem-module__alertWoValue--cgAyq {
  min-height: 24px;
  display: flex;
  align-items: center;
}

.cardAlertItem-module__alertWoEmpty--lvN1C {
  font-size: 13px;
  color: var(--color-neutral-700);
}

.cardAlertItem-module__alertCreateWoBtn--YFCBj {
  flex-shrink: 0;
  padding: 6px 10px;
  border: 1px solid var(--color-primary-500);
  border-radius: 6px;
  background: var(--color-white);
  color: var(--color-primary-500);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  white-space: nowrap;
  cursor: pointer;
}

.cardAlertItem-module__alertCreateWoBtn--YFCBj:hover {
  background: var(--color-primary-50);
}

.cardAlertItem-module__alertCreateWoBtn--YFCBj:focus-visible {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 2px;
  box-shadow: 0 0 0 2px var(--color-primary-50);
}

.cardAlertItem-module__alertsEmpty--Hm0GT {
  margin: 0;
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
}

.assetGroup-module__root--lJWsT {
  background: var(--color-white);
  border: 1px solid #e0e1e6;
  border-radius: 8px;
}

.assetGroup-module__header--EZ8zS {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 12px;
  padding: 24px;
}

.assetGroup-module__title--uv2tu {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--color-neutral-900);
}

.assetGroup-module__selectControl--m1gZL {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.assetGroup-module__selectControlSlot--D3W9V {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}

/* Idle CTA — solid blue button */
.assetGroup-module__manageSchedulesBtn--J610q {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  font-family: inherit;
  line-height: 20px;
  border: none;
  border-radius: var(--radius-full);
  background: var(--color-blue-500);
  color: var(--color-white);
  appearance: none;
  margin: 0;
  white-space: nowrap;
  cursor: pointer;
}

.assetGroup-module__manageSchedulesBtn--J610q:hover {
  background: var(--color-blue-600);
}

/* Active selection — StatusPill info colors */
.assetGroup-module__manageSchedulesActive--ku6nR {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  font-family: inherit;
  line-height: 20px;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-primary-input-border);
  background: var(--color-primary-50);
  color: var(--color-primary-600);
  margin: 0;
  white-space: nowrap;
  cursor: pointer;
}

.assetGroup-module__manageSchedulesLabel--yEZA7 {
  font-size: inherit;
  font-weight: inherit;
  line-height: 20px;
  color: inherit;
  white-space: nowrap;
}

.assetGroup-module__groupSelectCheckbox--Q_UZh {
  margin: 0;
  padding: 0;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  align-self: center;
  display: block;
  cursor: pointer;
}

.assetGroup-module__titleText--pYJnM {
  font-size: var(--font-size-l);
  font-weight: var(--font-weight-bold);
  line-height: 26px;
  color: #1c2024;
}

.assetGroup-module__titleLink--CwdBT {
  font-size: var(--font-size-l);
  font-weight: var(--font-weight-bold);
  line-height: 26px;
  color: #1c2024;
  text-decoration: none;
}

.assetGroup-module__titleLink--CwdBT:hover {
  text-decoration: underline;
}

.assetGroup-module__badges--eMot6 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: flex-end;
}

.assetGroup-module__chevronBtn--BdHEF {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid #e0e1e6;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  transition: transform var(--duration-normal) ease;
  color: var(--color-neutral-900);
  padding: 0;
}

.assetGroup-module__chevronBtn--BdHEF:hover { background: var(--color-neutral-hover); }

.assetGroup-module__chevronBtnCollapsed--sbt1y {
  transform: rotate(-90deg);
}

.assetGroup-module__bodyCards--ROrbd {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 450px), 1fr));
  column-gap: 12px;
  row-gap: 20px;
}

.assetGroup-module__body--ZaDt7 {
  display: grid;
  gap: 12px;
  padding: 0 24px 24px;
  /* overflow visible when expanded so card tooltips (e.g. count badges) are not clipped */
  transition:
    max-height var(--duration-slow) var(--ease-default),
    opacity 0.3s ease-in-out,
    padding var(--duration-slow) var(--ease-default),
    visibility 0.3s ease-in-out;
  max-height: 10000px;
  opacity: 1;
  visibility: visible;
}

.assetGroup-module__bodyCollapsed--N4GWo {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  pointer-events: none;
  visibility: hidden;
}

.sensorGrid-module__root--jAH1o {
  display: grid;
  gap: 32px;
  transition: opacity 0.15s ease;
}

.sensorGrid-module__refetching--P1l7k {
  opacity: 0.5;
  pointer-events: none;
}

.sensorGrid-module__flatSensors--E4Kzr {
  display: grid;
  gap: 12px;
}

.sensorGrid-module__flatCards--H1JoP {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 450px), 1fr));
  column-gap: 12px;
  row-gap: 20px;
}

.sensorGrid-module__loadingMore--CGWNr {
  display: flex;
  justify-content: center;
  padding: 24px 0;
}

@keyframes sensorGrid-module__spin--AS7ia {
  to { transform: rotate(360deg); }
}

.sensorGrid-module__spinner--dRpKi {
  width: 24px;
  height: 24px;
  border: 3px solid var(--color-neutral-300);
  border-top-color: var(--color-primary-600);
  border-radius: 50%;
  animation: sensorGrid-module__spin--AS7ia 0.7s linear infinite;
}

.addFilterMenu-module__root--KtoWn {
  position: relative;
  display: inline-flex;
}

.addFilterMenu-module__trigger--MtWpF {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-primary-500);
  background: none;
  border: none;
  cursor: pointer;
  border-radius: 4px;
}

.addFilterMenu-module__trigger--MtWpF:hover { background: var(--color-primary-50); }

.addFilterMenu-module__popover--iFNzt {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  min-width: 200px;
  background: #fff;
  border: 1px solid #DFE3E8;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 10;
  padding: 4px 0;
}

.addFilterMenu-module__item--tPUjD {
  display: block;
  width: 100%;
  text-align: left;
  padding: 8px 14px;
  font-size: 13px;
  font-family: inherit;
  color: #323233;
  background: none;
  border: none;
  cursor: pointer;
}

.addFilterMenu-module__item--tPUjD:hover { background: #F2F2F2; }

.addFilterMenu-module__backdrop--tcDA_ {
  position: fixed;
  inset: 0;
  background: transparent;
  z-index: 5;
}

.filterModal-module__backdrop--VBHqy {
  z-index: 1000;
}

.filterModal-module__root--jjxuH {
  border: none;
  padding: 0;
  min-width: 480px;
  width: 90%;
  max-width: 520px;
  max-height: 90vh;
  z-index: 1001;
  overflow: visible;
}

.filterModal-module__header--pSmPz { }
.filterModal-module__title--ZVwfe { }

.filterModal-module__closeBtn--Rr0rt {
  justify-content: center;
}

.filterModal-module__body--wwpn2 {
  padding: 20px;
  flex: 1;
  min-height: 0;
  max-height: calc(90vh - 140px);
  overflow-y: auto;
  gap: 20px;
}

.filterModal-module__section--AtUN9 {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.filterModal-module__sectionHeader--By9Nd {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.filterModal-module__sectionLabel--SDK4Q {
  font-size: 13px;
  font-weight: 600;
  color: #666;
  letter-spacing: 0.3px;
}

.filterModal-module__removeBtn--wb26z {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 500;
  color: #767676;
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 4px;
  font-family: inherit;
}

.filterModal-module__removeBtn--wb26z:hover { background: transparent; }

.filterModal-module__emptyState--UyT7I {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 32px 16px;
}

.filterModal-module__emptyTitle--oyZkY {
  font-size: 14px;
  font-weight: 600;
  color: #323233;
}

.filterModal-module__emptyHint--cwdPF {
  font-size: 13px;
  color: #8B8D98;
}

.filterModal-module__footer--HPfKE {
  justify-content: space-between;
}

.filterModal-module__footerActions--YVbmo {
  display: flex;
  align-items: center;
  gap: 12px;
}
.filterModal-module__outlineBtn--bygEl { }
.filterModal-module__primaryBtn--utmQD { }

.sensorsEmptyState-module__root--iWb34 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: var(--space-8) var(--space-4);
  text-align: center;
}

.sensorsEmptyState-module__title--N0sGT {
  font-size: var(--font-size-l);
  font-weight: 600;
  color: var(--color-neutral-900);
}

.sensorsEmptyState-module__hint--RCUyM {
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
  margin-bottom: var(--space-2);
}

.addSensorPanel-module__editBackdrop--Q56yA {
  all: unset;
  position: fixed;
  inset: 0;
  z-index: 3;
  background: var(--color-overlay);
  cursor: default;
}

.addSensorPanel-module__editSidebar--UjKAU {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: var(--color-white);
  overflow-y: auto;
  box-shadow: -4px 0 24px var(--color-shadow);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .addSensorPanel-module__editSidebar--UjKAU {
    width: 100%;
  }
}

.batchAttachScheduleDialog-module__panel--sJdnc {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 480px;
}

.batchAttachScheduleDialog-module__message--Flnrd {
  font-size: 14px;
  color: var(--color-neutral-700);
  margin: 0;
}

.batchAttachScheduleDialog-module__group--CV9ir {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.batchAttachScheduleDialog-module__groupLabel--PQPwm {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-neutral-600);
}

.batchAttachScheduleDialog-module__chips--JJo4h {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.batchAttachScheduleDialog-module__chip--k2dof {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-radius: 16px;
  background: var(--color-neutral-100);
  font-size: 13px;
  color: var(--color-neutral-800);
}

.batchAttachScheduleDialog-module__chipRemove--A_r4C {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-neutral-500);
  font-size: 16px;
  line-height: 1;
  padding: 0;
}

.batchAttachScheduleDialog-module__createBtn--KDV7X {
  background: none;
  border: none;
  color: var(--color-primary-500);
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  padding: 0;
}

.batchAttachScheduleDialog-module__createBtn--KDV7X:hover {
  text-decoration: underline;
}

.batchAttachScheduleDialog-module__removeBtn--R37TA {
  background: none;
  border: none;
  color: var(--color-red-500);
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  padding: 0;
}

.batchAttachScheduleDialog-module__removeBtn--R37TA:hover:not(:disabled) {
  text-decoration: underline;
}

.batchAttachScheduleDialog-module__removeBtn--R37TA:disabled {
  color: var(--color-neutral-400);
  cursor: not-allowed;
}

.batchAttachScheduleDialog-module__footer--ei40g {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
}

.batchAttachScheduleDialog-module__footerRight--trvkL {
  display: flex;
  gap: 8px;
}

.sensorsPage-module__root--ycm8n {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  height: fit-content;
  padding: var(--space-4);
  background: var(--color-neutral-50);
}

.sensorsPage-module__loading--y0z2J {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60vh;
}

:root {
  /* Neutral */
  --color-white: #fff;
  --color-black: #000;
  --color-overlay: rgba(0, 0, 0, 0.35);
  --color-shadow: rgba(0, 0, 0, 0.12);
  --color-neutral-50: #fafafa;
  --color-neutral-100: #f2f2f2;
  --color-neutral-200: #dfe3e8;
  --color-neutral-300: #E0E1E6;
  --color-neutral-400: #b8b8b8;
  --color-neutral-500: #767676;
  --color-neutral-600: #60646C;
  --color-neutral-700: #8B8D98;
  --color-neutral-900: #1C2024;
  --color-neutral-bg: #FCFCFD;
  --color-neutral-bg-subtle: #F9F9FB;
  --color-neutral-hover: #F4F4F5;

  /* Primary / Blue */
  --color-primary-50: #EDF2FE;
  --color-primary-100: #DDE5FC;
  --color-primary-200: #C1CFF9;
  --color-primary-400: #7B93DB;
  --color-primary-500: #3E63DD;
  --color-primary-600: #3A5BC7;
  --color-primary-700: #3A5BC7;
  --color-primary-input-border: #ABBDF9;

  /* Blue accent (brand action color) */
  --color-blue-500: #0C6FF9;
  --color-blue-600: #0954BD;
  --color-blue-shadow: rgba(12, 111, 249, 0.4);
  --color-blue-shadow-hover: rgba(12, 111, 249, 0.5);

  /* Red / Alert */
  --color-red-50: #FFF7F7;
  --color-red-100: #FFEAEF;
  --color-red-300: #FDBDBE;
  --color-red-500: #CE2C31;
  --color-red-700: #b90c42;

  /* Success alpha (connected badge) */
  --color-success-alpha-2: rgba(0, 163, 47, 0.04);
  --color-success-alpha-7: rgba(0, 145, 64, 0.44);
  --color-success-alpha-11: rgba(0, 113, 63, 0.87);

  /* Green / Connected */
  --color-green-50: #F4FBF6;
  --color-green-100: #E8F5E9;
  --color-green-300: #ADDDC0;
  --color-green-400: #81C784;
  --color-green-500: #218358;
  --color-green-700: #036645;

  /* Amber / Warning */
  --color-amber-50: #FEFBE9;
  --color-amber-300: #F3D673;
  --color-amber-500: #AB6400;

  /* Orange / Out of Range */
  --color-orange-50: #FFF3EB;
  --color-orange-300: #FFBA6B;
  --color-orange-500: #ec7d10;

  /* Purple */
  --color-purple-300: #d5d7e8;
  --color-purple-500: #8777d9;

  /* Typography */
  --font-family: 'Lato', sans-serif;
  --font-size-xs: 12px;
  --font-size-s: 14px;
  --font-size-m: 15px;
  --font-size-l: 18px;
  --font-size-xl: 22px;
  --font-size-xxl: 30px;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --line-height-ui: 1;
  --line-height-tight: 1.3;
  --line-height-paragraph: 1.5;

  /* Spacing (base 8px) */
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --space-5: 40px;
  --space-6: 48px;
  --space-8: 64px;

  /* Shadows */
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);

  /* Border radius */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --radius-full: 9999px;

  /* Transitions */
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast: 0.15s;
  --duration-normal: 0.2s;
  --duration-slow: 0.4s;

  /* Layering */
  --z-index-insight-menu: 9999;
  --z-index-toast: 10000;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  color: var(--color-neutral-900);
  background-color: var(--color-white);
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
button { font-family: inherit; }

.dateRangePicker-module__root--vBgAS {
  position: relative;
  display: inline-flex;
}

.dateRangePicker-module__trigger--d3jx4 {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 16px 20px;
  height: 100%;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  font-family: inherit;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-md);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  box-shadow: var(--shadow-xs);
}

.dateRangePicker-module__trigger--d3jx4:hover {
  background: var(--color-neutral-hover);
}

.dateRangePicker-module__icon--nUSEr {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--color-neutral-500);
}

.dateRangePicker-module__label--xIcz1 {
  font-weight: var(--font-weight-semibold);
}

.dateRangePicker-module__span--AGgfJ {
  color: var(--color-neutral-500);
}

.dateRangePicker-module__chevron--smc82 {
  font-size: 12px;
  color: var(--color-neutral-500);
}

.dateRangePicker-module__dropdown--qRbUq {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  min-width: 160px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  z-index: 100;
  display: flex;
  flex-direction: column;
  padding: 4px;
}

.dateRangePicker-module__option--WJ8mj {
  display: block;
  width: 100%;
  padding: 8px 12px;
  font-size: var(--font-size-s);
  font-family: inherit;
  text-align: left;
  background: none;
  border: none;
  border-radius: var(--radius-sm);
  color: var(--color-neutral-900);
  cursor: pointer;
}

.dateRangePicker-module__option--WJ8mj:hover {
  background: var(--color-neutral-hover);
}

.dateRangePicker-module__optionActive--vOug8 {
  background: var(--color-primary-50);
  color: var(--color-primary-600);
  font-weight: var(--font-weight-medium);
}

.dateRangePicker-module__optionActive--vOug8:hover {
  background: var(--color-primary-100);
}

.dateRangePicker-module__customSection--orA5J {
  border-top: 1px solid var(--color-neutral-200);
  margin-top: 4px;
  padding-top: 4px;
}

.dateRangePicker-module__customInputs--u09i7 {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  flex-wrap: wrap;
}

.dateRangePicker-module__dateField--MfslP {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 120px;
}

.dateRangePicker-module__dateLabel--SuvwJ {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-600);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.dateRangePicker-module__dateInput--u9z_f {
  width: 100%;
  padding: 5px 8px;
  font-size: var(--font-size-s);
  font-family: inherit;
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-sm);
  outline: none;
  color: var(--color-neutral-900);
}

.dateRangePicker-module__dateInput--u9z_f:focus { border-color: var(--color-primary-500); }

.dateRangePicker-module__dateSep--Jjkf3 {
  color: var(--color-neutral-500);
  flex-shrink: 0;
  margin-top: 18px;
}

.dateRangePicker-module__applyBtn--OyDae {
  padding: 5px 12px;
  font-size: var(--font-size-s);
  font-family: inherit;
  font-weight: var(--font-weight-medium);
  background: var(--color-primary-500);
  color: var(--color-white);
  border: none;
  border-radius: var(--radius-sm);
  cursor: pointer;
  white-space: nowrap;
}

.dateRangePicker-module__applyBtn--OyDae:disabled { opacity: 0.5; cursor: not-allowed; }
.dateRangePicker-module__applyBtn--OyDae:not(:disabled):hover { background: var(--color-primary-600); }

.alertStatusCards-module__root--a0wL8 {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.alertStatusCards-module__left--voqmm {
  display: flex;
  align-items: stretch;
  gap: 16px;
  flex: 1;
}

.alertStatusCards-module__left--voqmm > button {
  flex: 1;
}

.alertStatusCards-module__right--qNdJw {
  display: flex;
  align-items: stretch;
  align-self: stretch;
  margin-left: 32px;
}

.alertStatusCards-module__avgCard--bLS9_ {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  min-width: 200px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  white-space: nowrap;
}

.alertStatusCards-module__avgLeft--t3dj1 {
  display: flex;
  align-items: center;
  gap: 8px;
}

.alertStatusCards-module__avgIcon--nRhox {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: var(--color-neutral-100);
  border-radius: 8px;
  flex-shrink: 0;
  color: var(--color-neutral-500);
}

.alertStatusCards-module__avgLabel--BkUfJ {
  font-size: 15px;
  font-weight: 500;
  color: var(--color-neutral-500);
}

.alertStatusCards-module__avgValue--TC1ZL {
  font-size: 28px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin-left: 8px;
}

.alertsControlBar-module__root--uEMiV {
  display: flex;
  flex-direction: column;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  margin-bottom: 24px;
}

/* ── Row 1: Results + Search ── */
.alertsControlBar-module__top--tS9dB {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 24px;
  border-bottom: 1px solid var(--color-neutral-200);
  gap: 12px;
}

.alertsControlBar-module__topLeft--Vb580 {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 1;
}

.alertsControlBar-module__pageTitle--bSONP {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-neutral-900);
  white-space: nowrap;
}

.alertsControlBar-module__results--gLA3A {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-neutral-900);
  white-space: nowrap;
}

.alertsControlBar-module__vertDivider--yOnvW {
  width: 1px;
  height: 28px;
  background: var(--color-neutral-200);
  flex-shrink: 0;
}

.alertsControlBar-module__vertDividerSmall--e6k7Y { height: 24px; }

.alertsControlBar-module__searchWrapper--SQWCX {
  position: relative;
  flex: 1;
  min-width: 180px;
  max-width: 340px;
}

.alertsControlBar-module__searchInput--LaeRO {
  width: 100%;
  padding: 7px 12px;
  font-size: 14px;
  font-family: inherit;
  border: 1px solid var(--color-neutral-200);
  border-radius: 4px;
  outline: none;
  box-sizing: border-box;
}

.alertsControlBar-module__searchInputHasText--jUQ4M { padding-right: 28px; }

.alertsControlBar-module__searchInput--LaeRO:focus,
.alertsControlBar-module__searchInputHasText--jUQ4M { border-color: var(--color-blue-500); }
.alertsControlBar-module__searchInput--LaeRO::placeholder { color: var(--color-neutral-700); }

.alertsControlBar-module__searchClear--Clexu {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px;
  font-size: 16px;
  line-height: 1;
  color: var(--color-neutral-700);
}

.alertsControlBar-module__searchClear--Clexu:hover { color: var(--color-neutral-900); }

.alertsControlBar-module__topRight--E_CCh {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

/* ── Row 2: Filters ── */
.alertsControlBar-module__bottom--jvnxK {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  padding: 10px 24px;
  background: var(--color-neutral-50);
  gap: 7px;
  border-radius: 0 0 8px 8px;
}

.alertsControlBar-module__scrollWrap--B6vwa {
  position: relative;
  min-width: 0;
}

.alertsControlBar-module__scrollWrap--B6vwa::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  background: linear-gradient(to right, transparent, var(--color-neutral-50));
  pointer-events: none;
  z-index: 1;
}

.alertsControlBar-module__scrollSection--kC3ko {
  display: flex;
  align-items: center;
  gap: 7px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-right: 24px;
}

.alertsControlBar-module__scrollSection--kC3ko::-webkit-scrollbar { display: none; }

.alertsControlBar-module__scrollSection--kC3ko > * { flex-shrink: 0; }

.alertsControlBar-module__filtersBtn--lSLyY {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  line-height: 1;
  flex-shrink: 0;
}

.alertsControlBar-module__filtersBtn--lSLyY:hover { background: var(--color-neutral-100); }

.alertsControlBar-module__filtersBtnActive--s4VcV {
  background: var(--color-primary-50);
  border-color: var(--color-blue-500);
  color: var(--color-blue-600);
}

.alertsControlBar-module__filtersBtnActive--s4VcV:hover { background: var(--color-primary-50); }

.alertsControlBar-module__resetBtn--m_Uv2 {
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-blue-500);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

.alertsControlBar-module__resetBtn--m_Uv2:hover { color: var(--color-blue-600); text-decoration: underline; }

.alertsControlBar-module__rightGroup--_vGqK {
  display: flex;
  align-items: center;
  gap: 12px;
}

.alertRow-module__row--xuBq4 {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 0.9fr 0.9fr 1.5fr 0.6fr 60px;
  align-items: center;
  padding: 16px 24px;
  border-bottom: 1px solid var(--color-neutral-100);
  font-size: 14px;
  color: var(--color-neutral-900);
  cursor: pointer;
}

.alertRow-module__row--xuBq4:hover { background: var(--color-neutral-50); }

.alertRow-module__rowActive--LbrMX { background: var(--color-red-50); }
.alertRow-module__rowActive--LbrMX:hover { background: var(--color-red-100); }

.alertRow-module__cell--IXpnt {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 8px;
  text-align: left;
}

.alertRow-module__cell--IXpnt:first-child { padding-left: 0; }
.alertRow-module__cell--IXpnt:last-child { padding-right: 0; }

.alertRow-module__dot--duoa6 {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.alertRow-module__dotActive--WDDtU { background: var(--color-red-500); }
.alertRow-module__dotResolved--DSKvI { background: var(--color-green-500); }

.alertRow-module__empty--ieZUu { color: var(--color-neutral-700); }

.alertRow-module__sensorLink--lbNwR {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-align: left;
  min-width: 0;
  overflow: hidden;
}

.alertRow-module__truncated--fcD5G {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 160px;
}

.alertRow-module__workOrders--v6gsu {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.alertRow-module__woLink--k9k2d {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 500;
  color: var(--color-primary-600);
  background: var(--color-primary-50);
  border: 1px solid var(--color-primary-100);
  border-radius: 12px;
  text-decoration: none;
}

.alertRow-module__woLink--k9k2d:hover { background: var(--color-primary-100); }

.alertRow-module__woExtra--TaYyQ {
  font-size: 13px;
  color: var(--color-neutral-700);
}

.alertRow-module__actionsCell--zYN4Z {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  padding-right: 0;
}

.alertRow-module__actionsBtn--cxBXY {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  color: var(--color-neutral-700);
  font-size: 16px;
  line-height: 1;
  letter-spacing: 1px;
}

.alertRow-module__actionsBtn--cxBXY:hover { background: var(--color-neutral-100); color: var(--color-neutral-900); }

.alertRow-module__actionsMenu--DqW0B {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 100;
  min-width: 140px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  box-shadow: var(--shadow-md);
  padding: 4px 0;
}

.alertRow-module__actionsMenuItem--JI9NQ {
  display: block;
  width: 100%;
  padding: 8px 14px;
  font-size: 14px;
  font-family: inherit;
  color: var(--color-neutral-900);
  text-decoration: none;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  white-space: nowrap;
}

.alertRow-module__actionsMenuItem--JI9NQ:hover { background: var(--color-neutral-50); }

.alertRow-module__alertName--LcLQL { font-weight: 600; }

.alertsList-module__root--asxE6 {
  display: block;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-100);
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
}

.alertsList-module__root--asxE6 thead,
.alertsList-module__root--asxE6 tbody {
  display: block;
}

.alertsList-module__header--M1ZMi {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 0.9fr 0.9fr 1.5fr 0.6fr 60px;
  padding: 10px 24px;
  background: var(--color-neutral-50);
  border-bottom: 1px solid var(--color-neutral-200);
}

.alertsList-module__headerCell--peKNS {
  padding: 0 8px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-neutral-500);
  text-align: left;
}

.alertsList-module__headerCell--peKNS:first-child { padding-left: 0; }
.alertsList-module__headerCell--peKNS:last-child { padding-right: 0; }

.alertsList-module__center--KYvE7 {
  display: flex;
  justify-content: center;
  padding: 48px;
}

.alertsList-module__sentinel--FpLvP {
  height: 1px;
}

.alertHistorySection-module__root--UsoLP {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.alertHistorySection-module__toolbar--PIECk {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.alertHistorySection-module__label--LPNPo {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-700);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.alertHistorySection-module__controls--Ca4I7 {
  display: flex;
  align-items: center;
  gap: 8px;
}

.alertHistorySection-module__propertySelect--bCo2p {
  font-size: var(--font-size-s);
  padding: 4px 8px;
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-sm);
  background: var(--color-white);
  color: var(--color-neutral-700);
  cursor: pointer;
}

.alertHistorySection-module__propertySelect--bCo2p:focus {
  outline: 2px solid var(--color-primary-300);
  outline-offset: -1px;
}

.alertHistorySection-module__toggle--PlttA {
  display: flex;
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-sm);
  overflow: hidden;
}

.alertHistorySection-module__toggleBtn--Hk7wq {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 8px;
  background: var(--color-white);
  border: none;
  color: var(--color-neutral-500);
  cursor: pointer;
}

.alertHistorySection-module__toggleBtn--Hk7wq + .alertHistorySection-module__toggleBtn--Hk7wq {
  border-left: 1px solid var(--color-neutral-200);
}

.alertHistorySection-module__toggleBtnActive--Ey3RJ {
  background: var(--color-primary-50);
  color: var(--color-primary-600);
}

.alertHistorySection-module__chart--tmO8u {
  margin: 0 -4px;
}

.alertHistorySection-module__center--La5yZ {
  display: flex;
  justify-content: center;
  padding: 24px;
}

.alertHistorySection-module__empty--g_tuE {
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
  text-align: center;
  padding: 24px 0;
}

.alertHistorySection-module__tableWrap--_lgzO {
  max-height: 220px;
  overflow-y: auto;
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-sm);
}

.alertHistorySection-module__table--ZiF9c {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--font-size-s);
}

.alertHistorySection-module__table--ZiF9c th {
  position: sticky;
  top: 0;
  padding: 6px 12px;
  background: var(--color-neutral-50);
  text-align: left;
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-600);
  border-bottom: 1px solid var(--color-neutral-200);
}

.alertHistorySection-module__table--ZiF9c td {
  padding: 6px 12px;
  color: var(--color-neutral-800);
  border-bottom: 1px solid var(--color-neutral-100);
}

.alertHistorySection-module__table--ZiF9c tr:last-child td {
  border-bottom: none;
}

.alertHistorySection-module__table--ZiF9c td.alertHistorySection-module__exceeded--ohNx0 {
  color: var(--color-danger-600, #DC2626);
  font-weight: var(--font-weight-medium);
}

.alertHistorySection-module__table--ZiF9c td.alertHistorySection-module__warning--Ndarn {
  color: var(--color-warning-600, #D97706);
  font-weight: var(--font-weight-medium);
}

.alertDetailModal-module__backdrop--AQ5ok {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1000;
}

.alertDetailModal-module__dialog--QGBOX {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
  background: var(--color-white);
  border: none;
  border-radius: var(--radius-xl);
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.08);
  width: 860px;
  max-width: calc(100vw - 32px);
  max-height: calc(100vh - 64px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.alertDetailModal-module__header--hscbm {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
  flex-shrink: 0;
}

.alertDetailModal-module__title--eqwEY {
  font-size: var(--font-size-l);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
  margin: 0;
}

.alertDetailModal-module__headerActions--Z8ahg {
  display: flex;
  align-items: center;
  gap: 4px;
}

.alertDetailModal-module__menuWrap--EYvcY {
  position: relative;
}

.alertDetailModal-module__iconBtn--lDJ6K {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: none;
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  color: var(--color-neutral-500);
  font-size: 16px;
  letter-spacing: 1px;
}

.alertDetailModal-module__iconBtn--lDJ6K:hover { background: var(--color-neutral-hover); color: var(--color-neutral-900); }

.alertDetailModal-module__menu--EFd3B {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 10;
  min-width: 160px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  padding: 4px 0;
}

.alertDetailModal-module__menuItem--eWV9C {
  display: block;
  width: 100%;
  padding: 8px 14px;
  font-size: var(--font-size-s);
  font-family: inherit;
  color: var(--color-neutral-900);
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  white-space: nowrap;
}

.alertDetailModal-module__menuItem--eWV9C:hover { background: var(--color-neutral-bg-subtle); }

.alertDetailModal-module__body--Fyr30 {
  display: flex;
  flex: 1;
  overflow: hidden;
}

.alertDetailModal-module__left--i_LN0 {
  flex: 0 0 58%;
  padding: 20px 24px;
  border-right: 1px solid var(--color-neutral-200);
  display: flex;
  flex-direction: column;
  gap: 16px;
  overflow-y: auto;
}

.alertDetailModal-module__right--mcrVC {
  flex: 0 0 42%;
  padding: 20px 24px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.alertDetailModal-module__timer--uSxpS {
  display: flex;
  align-items: center;
  gap: 10px;
}

.alertDetailModal-module__timerIcon--JCDBa {
  color: var(--color-red-500);
  flex-shrink: 0;
}

.alertDetailModal-module__timerValue--TR2UW {
  display: block;
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
  line-height: 1.2;
}

.alertDetailModal-module__timerLabel--zgYiC {
  display: block;
  font-size: var(--font-size-xs);
  color: var(--color-neutral-500);
}

.alertDetailModal-module__createWoBtn--Ccqte {
  align-self: flex-start;
  padding: 9px 20px;
  background: var(--color-primary-500);
  color: var(--color-white);
  border: none;
  border-radius: var(--radius-md);
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  font-family: inherit;
  cursor: pointer;
}

.alertDetailModal-module__createWoBtn--Ccqte:hover { background: var(--color-primary-600); }

.alertDetailModal-module__historySection--TI6u1 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

.alertDetailModal-module__sectionLabel--rZMMc {
  font-size: 13px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.alertDetailModal-module__chartPlaceholder--N1h7d {
  flex: 1;
  min-height: 180px;
  background: var(--color-neutral-bg-subtle);
  border: 1px dashed var(--color-neutral-200);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  color: var(--color-neutral-500);
}

.alertDetailModal-module__details--hOCDH {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.alertDetailModal-module__detailRow--i_wyJ {
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: baseline;
  padding: 8px 0;
  border-bottom: 1px solid var(--color-neutral-hover);
  gap: 12px;
}

.alertDetailModal-module__detailRow--i_wyJ:last-child { border-bottom: none; }

.alertDetailModal-module__detailRow--i_wyJ dt {
  font-size: 11px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-700);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.alertDetailModal-module__detailRow--i_wyJ dd {
  margin: 0;
  font-size: 13px;
  color: var(--color-neutral-900);
}

.alertDetailModal-module__detailLink--yy18y {
  color: var(--color-primary-500);
  text-decoration: none;
}

.alertDetailModal-module__detailLink--yy18y:hover { text-decoration: underline; }

.alertDetailModal-module__statusPill--_9RTS {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 12px;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
}

.alertDetailModal-module__statusActive--aU3Gk {
  background: var(--color-red-50);
  color: var(--color-red-500);
  border: 1px solid var(--color-red-300);
}

.alertDetailModal-module__statusResolved--DBzPH {
  background: var(--color-green-50);
  color: var(--color-green-700);
  border: 1px solid var(--color-green-300);
}

.alertDetailModal-module__woList--Yjve2 {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.alertEditSidebar-module__backdrop--YSHoP {
  position: fixed;
  inset: 0;
  z-index: 1100;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.alertEditSidebar-module__sidebar--tlx7W {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 1101;
  background-color: var(--color-white);
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .alertEditSidebar-module__sidebar--tlx7W {
    width: 100%;
  }
}

.alertFilterModal-module__backdrop--Jm5NH {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1000;
  border: none;
  cursor: default;
}

.alertFilterModal-module__dialog--_cdlV {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  background: #FFFFFF;
  border: none;
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
  min-width: 480px;
  width: 90%;
  max-width: 520px;
  max-height: 90vh;
  z-index: 1001;
  padding: 0;
  overflow: visible;
}

.alertFilterModal-module__header--tKVE0 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid #DFE3E8;
}

.alertFilterModal-module__title--ZF3Tn {
  font-size: 18px;
  font-weight: 600;
  color: #323233;
}

.alertFilterModal-module__closeBtn--KONGS {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  background: none;
  border: none;
  cursor: pointer;
  color: #8B8D98;
  border-radius: 4px;
}

.alertFilterModal-module__closeBtn--KONGS:hover { color: #323233; background: #F2F2F2; }

.alertFilterModal-module__body--fyNJ8 {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 1;
  min-height: 0;
  max-height: calc(90vh - 140px);
  overflow-y: auto;
}

.alertFilterModal-module__emptyState--lqMwD {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 32px 16px;
}

.alertFilterModal-module__emptyTitle--s3Tk2 { font-size: 14px; font-weight: 600; color: #323233; }
.alertFilterModal-module__emptyHint--TBvE5 { font-size: 13px; color: #8B8D98; }

.alertFilterModal-module__section--dkqlC { display: flex; flex-direction: column; gap: 8px; }

.alertFilterModal-module__sectionHeader--LCvQc { display: flex; align-items: center; justify-content: space-between; }

.alertFilterModal-module__sectionLabel--YS3bf { font-size: 13px; font-weight: 600; color: #666; letter-spacing: 0.3px; }

.alertFilterModal-module__removeBtn--kVkv4 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 500;
  color: #767676;
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 4px;
  font-family: inherit;
}

.alertFilterModal-module__removeBtn--kVkv4:hover { background: transparent; }

.alertFilterModal-module__footer--maSts {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-top: 1px solid #DFE3E8;
}

.alertFilterModal-module__footerActions--RbbPj { display: flex; align-items: center; gap: 12px; }

.alertFilterModal-module__outlineBtn--KoYBH {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  border: 1px solid #B8B8B8;
  border-radius: 4px;
  background: #FFFFFF;
  color: #323233;
  cursor: pointer;
}

.alertFilterModal-module__outlineBtn--KoYBH:hover { background: #F2F2F2; }

.alertFilterModal-module__primaryBtn--PmczH {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  border: none;
  border-radius: 4px;
  background: #0C6FF9;
  color: #FFFFFF;
  cursor: pointer;
}

.alertFilterModal-module__primaryBtn--PmczH:hover { background: #0954BD; }

/* Add Filter */
.alertFilterModal-module__addFilterWrap--membP { position: relative; display: inline-flex; }

.alertFilterModal-module__addFilterBtn--UB3Ik {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-primary-500);
  background: none;
  border: none;
  cursor: pointer;
  border-radius: 4px;
}

.alertFilterModal-module__addFilterBtn--UB3Ik:hover { background: var(--color-primary-50); }

.alertFilterModal-module__addFilterBackdrop--QOA65 {
  position: fixed;
  inset: 0;
  background: transparent;
  z-index: 5;
  border: none;
  cursor: default;
}

.alertFilterModal-module__addFilterMenu--W2Fey {
  position: absolute;
  bottom: calc(100% + 4px);
  left: 0;
  min-width: 180px;
  background: #fff;
  border: 1px solid #DFE3E8;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 10;
  padding: 4px 0;
}

.alertFilterModal-module__addFilterItem--c4pgv {
  display: block;
  width: 100%;
  text-align: left;
  padding: 8px 14px;
  font-size: 13px;
  font-family: inherit;
  color: #323233;
  background: none;
  border: none;
  cursor: pointer;
}

.alertFilterModal-module__addFilterItem--c4pgv:hover { background: #F2F2F2; }

.alertsPage-module__root--VMGiH {
  padding: var(--space-4);
  min-height: 100vh;
}

.alertsPage-module__header--musx9 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.alertsPage-module__title--s7Xry {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-neutral-900);
  margin: 0 0 12px;
}

.alertsPage-module__topDivider--aoiL9 {
  width: 1px;
  height: 18px;
  background: var(--color-neutral-300);
  flex-shrink: 0;
}

.alertsPage-module__settingsBtn--Nh69_ {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  font-size: 15px;
  font-weight: 500;
  font-family: inherit;
  border: none;
  border-radius: 6px;
  background: var(--color-blue-500);
  color: var(--color-white);
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0 2px 6px var(--color-blue-shadow);
}

.alertsPage-module__settingsBtn--Nh69_:hover { background: var(--color-blue-600); box-shadow: 0 2px 8px var(--color-blue-shadow-hover); }

.runtimeDatePicker-module__root--aC0iH {
  position: relative;
}

.runtimeDatePicker-module__trigger--Tmm7P {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-300);
  border-radius: 6px;
  cursor: pointer;
  color: var(--color-neutral-700);
  white-space: nowrap;
}

.runtimeDatePicker-module__trigger--Tmm7P:hover {
  border-color: var(--color-neutral-400);
  background: var(--color-neutral-50);
}

.runtimeDatePicker-module__label--Cxdjv {
  color: var(--color-neutral-900);
}

.runtimeDatePicker-module__chevron--FGDE_ {
  font-size: 10px;
  color: var(--color-neutral-500);
}

.runtimeDatePicker-module__dropdown--fFiEe {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 20;
  width: 260px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  box-shadow: var(--shadow-md);
  padding: 6px;
}

.runtimeDatePicker-module__option--TUgCx {
  display: block;
  width: 100%;
  padding: 9px 12px;
  font-size: 14px;
  font-family: inherit;
  font-weight: 500;
  text-align: left;
  background: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  color: var(--color-neutral-700);
}

.runtimeDatePicker-module__option--TUgCx:hover {
  background: var(--color-neutral-50);
}

.runtimeDatePicker-module__optionActive--MBfEi {
  background: var(--color-primary-50);
  color: var(--color-blue-500);
}

.runtimeDatePicker-module__optionActive--MBfEi:hover {
  background: var(--color-primary-50);
}

.runtimeDatePicker-module__divider--HP8jE {
  height: 1px;
  background: var(--color-neutral-200);
  margin: 6px 0;
}

.runtimeDatePicker-module__customSection--SKJ75 {
  padding: 8px 12px;
}

.runtimeDatePicker-module__customLabel--mM5dr {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--color-neutral-500);
  margin-bottom: 10px;
}

.runtimeDatePicker-module__customInputs--Iq4iG {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 10px;
}

.runtimeDatePicker-module__dateField--DcBA1 {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.runtimeDatePicker-module__dateLabel--nN4mI {
  font-size: 11px;
  font-weight: 600;
  color: var(--color-neutral-500);
}

.runtimeDatePicker-module__dateInput--T6xEr {
  padding: 6px 8px;
  font-size: 13px;
  font-family: inherit;
  border: 1px solid var(--color-neutral-300);
  border-radius: 4px;
  outline: none;
  color: var(--color-neutral-900);
}

.runtimeDatePicker-module__dateInput--T6xEr:focus {
  border-color: var(--color-blue-500);
}

.runtimeDatePicker-module__applyBtn--Mzhc2 {
  width: 100%;
  padding: 7px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  background: var(--color-blue-500);
  color: var(--color-white);
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.runtimeDatePicker-module__applyBtn--Mzhc2:hover {
  background: var(--color-blue-600);
}

.runtimeDatePicker-module__applyBtn--Mzhc2:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.runtimeControlBar-module__root--ePUie {
  display: flex;
  flex-direction: column;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 12px;
  margin-bottom: 20px;
}

/* ── Row 1 ── */
.runtimeControlBar-module__top--DLPbS {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 24px;
  border-bottom: 1px solid var(--color-neutral-200);
  gap: 12px;
}

.runtimeControlBar-module__topLeft--pqrEE {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 1;
}

.runtimeControlBar-module__results--MV4wS {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-neutral-900);
  white-space: nowrap;
}

.runtimeControlBar-module__vertDivider--VcMFy {
  width: 1px;
  height: 28px;
  background: var(--color-neutral-200);
  flex-shrink: 0;
}

.runtimeControlBar-module__exportBtn--BQHTy {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  background: var(--color-white);
  color: var(--color-neutral-700);
  cursor: pointer;
  white-space: nowrap;
  transition: background var(--duration-fast) var(--ease-default);
}

.runtimeControlBar-module__exportBtn--BQHTy:hover {
  background: var(--color-neutral-50);
}

.runtimeControlBar-module__searchWrapper--floSj {
  position: relative;
  flex: 1;
  min-width: 180px;
  max-width: 340px;
}

.runtimeControlBar-module__searchInput--OJzCV {
  width: 100%;
  padding: 7px 12px;
  font-size: 14px;
  font-family: inherit;
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  outline: none;
  box-sizing: border-box;
  transition: border-color var(--duration-fast) var(--ease-default);
}

.runtimeControlBar-module__searchInputHasText--_3U64 { padding-right: 28px; }

.runtimeControlBar-module__searchInput--OJzCV:focus,
.runtimeControlBar-module__searchInputHasText--_3U64 { border-color: var(--color-blue-500); }
.runtimeControlBar-module__searchInput--OJzCV::placeholder { color: var(--color-neutral-500); }

.runtimeControlBar-module__searchClear--Y9aJx {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px;
  font-size: 16px;
  line-height: 1;
  color: var(--color-neutral-700);
}

.runtimeControlBar-module__searchClear--Y9aJx:hover { color: var(--color-neutral-900); }

.runtimeControlBar-module__topRight--m6liN {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

/* ── Row 2 ── */
.runtimeControlBar-module__bottom--zoOFp {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 24px;
  background: var(--color-neutral-50);
  gap: 12px;
  border-radius: 0 0 12px 12px;
}

.runtimeControlBar-module__vertDividerSmall--KGOse {
  width: 1px;
  height: 24px;
  background: var(--color-neutral-200);
  flex-shrink: 0;
}

.runtimeControlBar-module__filtersBtn--VEkWB {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
}

.runtimeControlBar-module__filtersBtn--VEkWB:hover { background: var(--color-neutral-100); }

.runtimeControlBar-module__filtersBtnActive--cuLNb {
  border-color: var(--color-primary-500);
  background: var(--color-primary-50);
  color: var(--color-primary-500);
}

.runtimeControlBar-module__filtersBtnActive--cuLNb:hover { background: var(--color-primary-50); }

.runtimeControlBar-module__scrollWrap--kiDIP {
  position: relative;
  min-width: 0;
  flex: 1;
}

.runtimeControlBar-module__scrollWrap--kiDIP::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  background: linear-gradient(to right, transparent, var(--color-neutral-50));
  pointer-events: none;
  z-index: 1;
}

.runtimeControlBar-module__scrollSection--uZluU {
  display: flex;
  align-items: center;
  gap: 7px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-right: 24px;
}

.runtimeControlBar-module__scrollSection--uZluU::-webkit-scrollbar { display: none; }
.runtimeControlBar-module__scrollSection--uZluU > * { flex-shrink: 0; }

.runtimeControlBar-module__selectBtn--mABgI {
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-700);
  cursor: pointer;
  white-space: nowrap;
  transition: background var(--duration-fast) var(--ease-default),
              border-color var(--duration-fast) var(--ease-default);
}

.runtimeControlBar-module__selectBtn--mABgI:hover { background: var(--color-neutral-50); }

.runtimeControlBar-module__selectBtnActive--_8oFO {
  background: var(--color-blue-50);
  border-color: var(--color-blue-500);
  color: var(--color-blue-600);
}

.runtimeControlBar-module__selectBtnActive--_8oFO:hover { background: var(--color-blue-100); }

.runtimeControlBar-module__resetBtn--cgMiX {
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-blue-500);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  transition: color var(--duration-fast) var(--ease-default);
}

.runtimeControlBar-module__resetBtn--cgMiX:hover { color: var(--color-blue-600); text-decoration: underline; }

.runtimeControlBar-module__rightGroup--CMpl3 {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.runtimeControlBar-module__sortSelect--l1Orw {
  padding: 7px 10px;
  font-size: 13px;
  font-family: inherit;
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  background: var(--color-white);
  color: var(--color-neutral-700);
  cursor: pointer;
  outline: none;
  transition: border-color var(--duration-fast) var(--ease-default);
}

.runtimeControlBar-module__sortSelect--l1Orw:focus {
  border-color: var(--color-blue-500);
}

.runtimeFilterModal-module__backdrop--iuhJt {
  position: fixed;
  inset: 0;
  z-index: 1000;
  border: none;
  background: rgba(0, 0, 0, 0.4);
}

.runtimeFilterModal-module__dialog--tWM2K {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  width: min(520px, 90vw);
  max-height: 90vh;
  overflow: hidden;
  border: none;
  border-radius: 8px;
  background: var(--color-white);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
  z-index: 1001;
  padding: 0;
}

.runtimeFilterModal-module__header--FjDxh {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--color-neutral-200);
}

.runtimeFilterModal-module__footer--ilaxG {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 20px;
  border-top: 1px solid var(--color-neutral-200);
}

.runtimeFilterModal-module__title--nWXJ5 { font-size: 18px; font-weight: 600; color: var(--color-neutral-900); }
.runtimeFilterModal-module__closeBtn--PWOrX { border: none; background: none; cursor: pointer; color: var(--color-neutral-700); }
.runtimeFilterModal-module__body--xOZFz {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
  flex: 1;
  min-height: 0;
  max-height: calc(90vh - 140px);
  overflow-y: auto;
}
.runtimeFilterModal-module__section--NVLlv { border: 1px solid var(--color-neutral-200); border-radius: 8px; padding: 12px; display: flex; flex-direction: column; gap: 10px; }
.runtimeFilterModal-module__sectionHeader--Xz0HA { display: flex; align-items: center; justify-content: space-between; }
.runtimeFilterModal-module__sectionLabel--kL4XS { font-size: 12px; font-weight: 600; color: var(--color-neutral-600); text-transform: uppercase; letter-spacing: 0.03em; }
.runtimeFilterModal-module__removeBtn--B_OcA { display: inline-flex; align-items: center; gap: 6px; border: none; background: transparent; color: var(--color-danger-600); font-size: 12px; font-weight: 500; cursor: pointer; }
.runtimeFilterModal-module__removeBtn--B_OcA:hover { background: transparent; }
.runtimeFilterModal-module__emptyState--yiTrq {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 32px 16px;
  text-align: center;
}

.runtimeFilterModal-module__emptyTitle--yghgj { font-size: 14px; font-weight: 600; color: var(--color-neutral-900); }
.runtimeFilterModal-module__emptyHint--lO751 { font-size: 13px; color: var(--color-neutral-700); }
.runtimeFilterModal-module__select--KTlyp { height: 38px; border: 1px solid var(--color-neutral-400); border-radius: 6px; padding: 0 10px; font-size: 13px; font-family: inherit; }
.runtimeFilterModal-module__addFilterWrap--vgwIz { position: relative; }
.runtimeFilterModal-module__addFilterBtn--JanRJ { border: none; background: transparent; color: var(--color-primary-500); font-size: 13px; font-weight: 600; cursor: pointer; padding: 6px 8px; border-radius: 4px; }
.runtimeFilterModal-module__addFilterBtn--JanRJ:hover { background: var(--color-primary-50); }
.runtimeFilterModal-module__addFilterBackdrop--UGaCe { position: fixed; inset: 0; border: none; background: transparent; z-index: 1; }
.runtimeFilterModal-module__addFilterMenu--XB3Z3 { position: absolute; left: 0; bottom: calc(100% + 8px); width: 220px; background: var(--color-white); border: 1px solid var(--color-neutral-200); border-radius: 6px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15); overflow: hidden; z-index: 2; }
.runtimeFilterModal-module__addFilterItem--Z90i_ { width: 100%; border: none; border-bottom: 1px solid var(--color-neutral-100); background: var(--color-white); text-align: left; padding: 10px 12px; font-size: 13px; color: var(--color-neutral-900); cursor: pointer; }
.runtimeFilterModal-module__addFilterItem--Z90i_:last-child { border-bottom: none; }
.runtimeFilterModal-module__addFilterItem--Z90i_:hover { background: var(--color-primary-50); }
.runtimeFilterModal-module__footerActions--BTN5G { margin-left: auto; display: inline-flex; align-items: center; gap: 12px; }

.runtimeFilterModal-module__outlineBtn--M5OIM,
.runtimeFilterModal-module__primaryBtn--rLrCR {
  height: 36px;
  padding: 0 16px;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
}

.runtimeFilterModal-module__outlineBtn--M5OIM {
  border: 1px solid var(--color-neutral-400);
  background: var(--color-white);
  color: var(--color-neutral-900);
}

.runtimeFilterModal-module__primaryBtn--rLrCR {
  border: none;
  background: var(--color-primary-500);
  color: var(--color-white);
}

.runtimeSummaryStats-module__root--Hq9eF {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 20px;
}

@media (max-width: 900px) {
  .runtimeSummaryStats-module__root--Hq9eF {
    grid-template-columns: repeat(2, 1fr);
  }
}

.runtimeSummaryStats-module__card--duz3W {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  border-radius: 16px;
  border: 1px solid transparent;
}

/* ── Color variants ── */
.runtimeSummaryStats-module__blue--OqeVW {
  background: var(--color-primary-50);
  border-color: var(--color-primary-100);
}

.runtimeSummaryStats-module__green--qE3PK {
  background: var(--color-green-50);
  border-color: var(--color-green-300);
}

.runtimeSummaryStats-module__red--Zz_z1 {
  background: var(--color-red-50);
  border-color: var(--color-red-300);
}

.runtimeSummaryStats-module__amber--gTShl {
  background: var(--color-amber-50);
  border-color: var(--color-amber-300);
}

/* ── Left side: icon + label ── */
.runtimeSummaryStats-module__left--f3enN {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.runtimeSummaryStats-module__iconBox--EgFwx {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  flex-shrink: 0;
  border: 1px solid transparent;
}

.runtimeSummaryStats-module__blue--OqeVW .runtimeSummaryStats-module__iconBox--EgFwx {
  border-color: var(--color-primary-100);
  color: var(--color-blue-500);
}

.runtimeSummaryStats-module__green--qE3PK .runtimeSummaryStats-module__iconBox--EgFwx {
  border-color: var(--color-green-300);
  color: var(--color-green-500);
}

.runtimeSummaryStats-module__red--Zz_z1 .runtimeSummaryStats-module__iconBox--EgFwx {
  border-color: var(--color-red-300);
  color: var(--color-red-500);
}

.runtimeSummaryStats-module__amber--gTShl .runtimeSummaryStats-module__iconBox--EgFwx {
  border-color: var(--color-amber-300);
  color: var(--color-amber-500);
}

.runtimeSummaryStats-module__label--YXBX9 {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-neutral-900);
  line-height: 1.3;
}

/* ── Right side: value + unit ── */
.runtimeSummaryStats-module__right--q9yBv {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}

.runtimeSummaryStats-module__value--KpELS {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-neutral-900);
  line-height: 1;
  white-space: nowrap;
}

.runtimeSummaryStats-module__unit--NEsTn {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-neutral-500);
  margin-top: 4px;
}

/* ── Clickable variant ── */
.runtimeSummaryStats-module__clickable--fNOi6 {
  cursor: pointer;
  font-family: inherit;
  text-align: left;
  transition: box-shadow var(--duration-fast) var(--ease-default),
              border-color var(--duration-fast) var(--ease-default);
}

.runtimeSummaryStats-module__clickable--fNOi6:hover {
  box-shadow: var(--shadow-xs);
}

.runtimeSummaryStats-module__clickable--fNOi6.runtimeSummaryStats-module__active--OdYSk {
  box-shadow: 0 0 0 1px currentcolor;
}

.runtimeSummaryStats-module__amber--gTShl.runtimeSummaryStats-module__clickable--fNOi6.runtimeSummaryStats-module__active--OdYSk {
  border-color: var(--color-amber-500);
}

.runtimeSummaryStats-module__red--Zz_z1.runtimeSummaryStats-module__clickable--fNOi6.runtimeSummaryStats-module__active--OdYSk {
  border-color: var(--color-red-500);
}

.statusBadge-module__badge--v19Zr {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 12px;
  white-space: nowrap;
}

.statusBadge-module__dot--peEjC {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

.statusBadge-module__connected--EVvYj {
  background: var(--color-green-50);
  color: var(--color-green-700);
}

.statusBadge-module__connected--EVvYj .statusBadge-module__dot--peEjC {
  background: var(--color-green-500);
}

.statusBadge-module__overloaded--ewzUN {
  background: var(--color-amber-50);
  color: var(--color-amber-500);
}

.statusBadge-module__overloaded--ewzUN .statusBadge-module__dot--peEjC {
  background: var(--color-amber-500);
}

.statusBadge-module__disconnected--afHE1 {
  background: var(--color-red-50);
  color: var(--color-red-500);
}

.statusBadge-module__disconnected--afHE1 .statusBadge-module__dot--peEjC {
  background: var(--color-red-500);
}

.runtimeCard-module__card--_r7E2 {
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  overflow: hidden;
  transition: border-color var(--duration-fast) var(--ease-default),
              box-shadow var(--duration-fast) var(--ease-default);
}

.runtimeCard-module__card--_r7E2:hover {
  border-color: var(--color-neutral-400);
}

.runtimeCard-module__statusConnected--iLvKW { background: var(--color-green-50); }
.runtimeCard-module__statusOverloaded--Vx2X2 { background: var(--color-amber-50); }
.runtimeCard-module__statusDisconnected--j4EiW { background: var(--color-red-50); }

.runtimeCard-module__cardSelected--HBHcB {
  border-color: var(--color-blue-500);
  box-shadow: 0 0 0 1px var(--color-blue-500);
}

/* ── Header ── */
.runtimeCard-module__header--Vu43U {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--color-neutral-100);
}

.runtimeCard-module__timeAgo--ZFYDw {
  font-size: 12px;
  color: var(--color-neutral-500);
  flex: 1;
}

/* ── Body ── */
.runtimeCard-module__body--vPn3o {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  gap: 12px;
}

.runtimeCard-module__bodyClickable--mSEsF { cursor: pointer; }

.runtimeCard-module__bodyLeft--Z0y_p {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex: 1;
  min-width: 0;
}

.runtimeCard-module__checkbox--kcdE7 {
  margin-top: 3px;
  cursor: pointer;
  accent-color: var(--color-blue-500);
  opacity: 0;
  transition: opacity var(--duration-fast) var(--ease-default);
}

.runtimeCard-module__checkboxVisible--UINAF {
  opacity: 1;
}

.runtimeCard-module__info--IXUe2 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.runtimeCard-module__deviceName--VsqrM {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-neutral-900);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color var(--duration-fast) var(--ease-default);
}

.runtimeCard-module__card--_r7E2:hover .runtimeCard-module__deviceName--VsqrM {
  color: var(--color-blue-500);
}

.runtimeCard-module__location--jzYFv {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--color-neutral-500);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.runtimeCard-module__bodyRight--tEB3F {
  flex-shrink: 0;
}

/* ── Donut ── */
.runtimeCard-module__donut--UrPkQ {
  width: 80px;
  height: 80px;
}

.runtimeCard-module__donutBg--alqX7 {
  fill: none;
  stroke: var(--color-neutral-100);
  stroke-width: 4;
}

.runtimeCard-module__donutFill--C6uBF {
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
  transition: stroke-dashoffset var(--duration-fast) var(--ease-default);
}

.runtimeCard-module__donut_connected--sJyVS { stroke: var(--color-green-500); }
.runtimeCard-module__donut_overloaded--eZdmO { stroke: var(--color-amber-500); }
.runtimeCard-module__donut_disconnected--gnh_C { stroke: var(--color-red-300); }

.runtimeCard-module__donutPct--nfTzd {
  font-size: 14px;
  font-weight: 800;
  fill: var(--color-neutral-900);
  text-anchor: middle;
}

.runtimeCard-module__donutHrs--CLcP3 {
  font-size: 10px;
  font-weight: 500;
  fill: var(--color-neutral-500);
  text-anchor: middle;
}

/* ── Footer ── */
.runtimeCard-module__footer--ilK2z {
  padding: 10px 16px;
  border-top: 1px solid var(--color-neutral-100);
}

.runtimeCard-module__meter--z7ZKV {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.runtimeCard-module__meterName--lykfy {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--color-neutral-600);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── Toggle switch ── */
.runtimeCard-module__toggle--WYus_ {
  position: relative;
  width: 32px;
  height: 18px;
  border-radius: 9px;
  border: none;
  background: var(--color-neutral-300);
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  transition: background var(--duration-fast) var(--ease-default);
}

.runtimeCard-module__toggle--WYus_:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.runtimeCard-module__toggleOn--OmrDN {
  background: var(--color-blue-500);
}

.runtimeCard-module__toggleThumb--W7euU {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--color-white);
  transition: left var(--duration-fast) var(--ease-default);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.runtimeCard-module__toggleOn--OmrDN .runtimeCard-module__toggleThumb--W7euU {
  left: 16px;
}

/* ── Sync meter link ── */
.runtimeCard-module__syncMeterLink--yu0w8 {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-blue-500);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font-family: inherit;
}

.runtimeCard-module__syncMeterLink--yu0w8:hover {
  text-decoration: underline;
}

/* ── 3-dot menu ── */
.runtimeCard-module__menuWrap--Cr8Y6 {
  position: relative;
}

.runtimeCard-module__menuBtn--Z98qK {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--color-neutral-200);
  background: none;
  border-radius: 6px;
  cursor: pointer;
  color: var(--color-neutral-500);
  transition: background var(--duration-fast) var(--ease-default),
              color var(--duration-fast) var(--ease-default);
}

.runtimeCard-module__menuBtn--Z98qK:hover {
  background: var(--color-neutral-100);
  color: var(--color-neutral-900);
}

.runtimeCard-module__menuDropdown--WAycL {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 10;
  min-width: 120px;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  box-shadow: var(--shadow-sm);
  padding: 4px;
}

.runtimeCard-module__menuItem--tgPYN {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 8px 10px;
  font-size: 13px;
  font-family: inherit;
  color: var(--color-neutral-700);
  background: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.runtimeCard-module__menuItem--tgPYN:hover {
  background: var(--color-neutral-50);
  color: var(--color-neutral-900);
}

/* ── Sync Meter Dialog ── */
.syncMeterDialog-module__content--DBzsG {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 400px;
}

.syncMeterDialog-module__fieldLabel--R3S2Z {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-neutral-900);
  margin: 0;
}

/* ── Total runtime input with unit ── */
.syncMeterDialog-module__inputWithUnit--i51fq {
  position: relative;
}

.syncMeterDialog-module__unitSuffix--f52mz {
  position: absolute;
  right: 12px;
  bottom: 10px;
  font-size: 13px;
  color: var(--color-neutral-500);
  pointer-events: none;
}

/* ── Enable meter syncing toggle row ── */
.syncMeterDialog-module__toggleRow--EmJu9 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0;
}

.syncMeterDialog-module__toggleLabel--CeNYe {
  font-size: 14px;
  color: var(--color-neutral-900);
}

.syncMeterDialog-module__toggle--C3rg3 {
  position: relative;
  width: 44px;
  height: 24px;
  border-radius: 12px;
  border: none;
  background: var(--color-neutral-300);
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  transition: background var(--duration-fast) var(--ease-default);
}

.syncMeterDialog-module__toggleOn--oMwVH {
  background: var(--color-blue-500);
}

.syncMeterDialog-module__toggleThumb--QUDa2 {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--color-white);
  transition: left var(--duration-fast) var(--ease-default);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.syncMeterDialog-module__toggleOn--oMwVH .syncMeterDialog-module__toggleThumb--QUDa2 {
  left: 23px;
}

/* ── Footer ── */
.syncMeterDialog-module__footer--bRtpe {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--color-neutral-200);
}

.runtimeCardGrid-module__grid--EYbhO {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

@media (max-width: 1024px) {
  .runtimeCardGrid-module__grid--EYbhO {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .runtimeCardGrid-module__grid--EYbhO {
    grid-template-columns: 1fr;
  }
}

.runtimeCardGrid-module__cardWrapper--rhAoP {
  animation: runtimeCardGrid-module__cardAppear--VkmLQ 0.35s cubic-bezier(0.16, 1, 0.3, 1) both;
  animation-delay: var(--delay, 0ms);
}

@keyframes runtimeCardGrid-module__cardAppear--VkmLQ {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.runtimeCardGrid-module__skeleton--jPi5W {
  height: 220px;
  background: var(--color-neutral-100);
  border-radius: 12px;
  animation: runtimeCardGrid-module__pulse--L6IN9 1.5s ease-in-out infinite;
}

@keyframes runtimeCardGrid-module__pulse--L6IN9 {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.runtimeCardGrid-module__empty--kS49G {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 64px 24px;
  text-align: center;
}

.runtimeCardGrid-module__emptyIcon--mpD2t {
  color: var(--color-neutral-300);
  margin-bottom: 12px;
}

.runtimeCardGrid-module__emptyTitle--oBi9t {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-neutral-900);
}

.runtimeCardGrid-module__emptyText--SSIQ9 {
  font-size: 13px;
  color: var(--color-neutral-500);
  margin-top: 4px;
}

.selectionBar-module__bar--X0iwh {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 20px;
  background: var(--color-neutral-900);
  color: var(--color-white);
  border-radius: 10px;
  box-shadow: var(--shadow-lg);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}

.selectionBar-module__count--SVbIq {
  font-weight: 600;
}

.selectionBar-module__divider--SNJTq {
  width: 1px;
  height: 20px;
  background: rgba(255, 255, 255, 0.25);
  flex-shrink: 0;
}

.selectionBar-module__action--E1KUQ {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  background: rgba(255, 255, 255, 0.12);
  color: var(--color-white);
  border: none;
  border-radius: 6px;
  cursor: pointer;
}

.selectionBar-module__action--E1KUQ:hover {
  background: rgba(255, 255, 255, 0.2);
}

.selectionBar-module__checkbox--D1668 {
  accent-color: var(--color-blue-500);
  cursor: pointer;
}

.selectionBar-module__close--BpKDo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  background: none;
  border: none;
  color: var(--color-white);
  cursor: pointer;
  border-radius: 4px;
  opacity: 0.7;
}

.selectionBar-module__close--BpKDo:hover {
  opacity: 1;
  background: rgba(255, 255, 255, 0.12);
}

/* ── Dialog layout ── */
.editRuntimeDialog-module__loading--Hsz17 {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 200px;
}

.editRuntimeDialog-module__panel--dsyCX {
  padding: 20px 24px;
  width: 520px;
  height: 400px;
  overflow-y: auto;
}

/* ── Footer ── */
.editRuntimeDialog-module__footer--pd63D {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 24px;
  border-top: 1px solid var(--color-neutral-200);
}

.editRuntimeDialog-module__footerRight--LbDXN {
  display: flex;
  align-items: center;
  gap: 8px;
}

.editRuntimeDialog-module__resetText--ihCE7 {
  color: var(--color-red-500);
  font-weight: 500;
}

/* ── Tab content ── */
.editRuntimeDialog-module__tabContent--YeA43 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.editRuntimeDialog-module__sectionTitle--kBllb {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin: 0;
}

.editRuntimeDialog-module__sectionDesc--s2r07 {
  font-size: 14px;
  color: var(--color-neutral-500);
  line-height: 1.5;
  margin: 0;
}

.editRuntimeDialog-module__fieldLabel--a4qyu {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-neutral-700);
}

/* ── Threshold row ── */
.editRuntimeDialog-module__thresholdRow--ah0Ca {
  display: flex;
  align-items: flex-end;
  gap: 12px;
}

.editRuntimeDialog-module__thresholdInput--fRuCF {
  position: relative;
  flex: 1;
}

.editRuntimeDialog-module__inputWithUnit--RcMqC {
  position: relative;
}

.editRuntimeDialog-module__unitSuffix--EivCu {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 13px;
  color: var(--color-neutral-500);
  pointer-events: none;
}

.editRuntimeDialog-module__thresholdInput--fRuCF .editRuntimeDialog-module__unitSuffix--EivCu {
  top: 50%;
}

.editRuntimeDialog-module__inputWithUnit--RcMqC .editRuntimeDialog-module__unitSuffix--EivCu {
  top: auto;
  bottom: 10px;
  transform: none;
}

/* ── Radio group ── */
.editRuntimeDialog-module__radioGroup--m7lZa {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.editRuntimeDialog-module__radioLabel--pfleN {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--color-neutral-700);
  cursor: pointer;
}

.editRuntimeDialog-module__radioLabel--pfleN input[type="radio"] {
  accent-color: var(--color-blue-500);
  margin: 0;
}

.editRuntimeDialog-module__divider--q7Yi5 {
  height: 1px;
  background: var(--color-neutral-200);
}

/* ── Time pickers ── */
.editRuntimeDialog-module__timeRow--rko5d {
  display: flex;
  align-items: flex-end;
  gap: 12px;
}

.editRuntimeDialog-module__timeTo--jZUzg {
  font-size: 14px;
  color: var(--color-neutral-500);
  padding-bottom: 8px;
}

/* ── Custom schedule ── */
.editRuntimeDialog-module__customDays--KZrQm {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.editRuntimeDialog-module__customDayRow--lpUs3 {
  display: flex;
  align-items: center;
  gap: 16px;
}

.editRuntimeDialog-module__dayCheck--bNRtn {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 120px;
  font-size: 14px;
  color: var(--color-neutral-700);
  cursor: pointer;
}

.editRuntimeDialog-module__dayCheck--bNRtn input[type="checkbox"] {
  accent-color: var(--color-blue-500);
  width: 16px;
  height: 16px;
  margin: 0;
}

.runtimePage-module__root--lWie6 {
  padding: var(--space-4);
  min-height: 100vh;
  background: var(--color-neutral-50);
}

.runtimePage-module__title--sSWt5 {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-neutral-900);
  margin: 0 0 12px;
}

.runtimePage-module__topDivider--J4xax {
  width: 1px;
  height: 18px;
  background: var(--color-neutral-300);
  flex-shrink: 0;
}

.detailHeader-module__header--KDfhF {
  display: flex;
  align-items: center;
  gap: 12px;
}

.detailHeader-module__backBtn--Dei7O {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  background: none;
  cursor: pointer;
  color: var(--color-neutral-600);
  font-size: 18px;
  flex-shrink: 0;
  transition: background var(--duration-fast) var(--ease-default);
}

.detailHeader-module__backBtn--Dei7O:hover {
  background: var(--color-neutral-100);
  color: var(--color-neutral-900);
}

.detailHeader-module__name--i7uN8 {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.detailHeader-module__spacer--qZBZK { flex: 1; }

.detailHeader-module__exportBtn--t9dsz {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-neutral-700);
  background: none;
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  cursor: pointer;
  white-space: nowrap;
  transition: background var(--duration-fast) var(--ease-default);
}

.detailHeader-module__exportBtn--t9dsz:hover {
  background: var(--color-neutral-100);
}

.detailStats-module__grid--ikGZ6 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.detailStats-module__stat--acBoy {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  border-radius: 8px;
  border: 1px solid var(--color-neutral-200);
  background: var(--color-white);
}

.detailStats-module__statRuntime--AZ0PY {
  background: var(--color-primary-50);
  border-color: var(--color-primary-100);
}

.detailStats-module__statDowntime--Hu1KR {
  background: var(--color-red-50);
  border-color: var(--color-red-300);
}

.detailStats-module__icon--rtHOS {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 2px solid currentColor;
}

.detailStats-module__iconRuntime--iP2pe { color: var(--color-blue-500); }
.detailStats-module__iconDowntime--sTJ0b { color: var(--color-red-500); }
.detailStats-module__iconAverage--mS1L_ { color: var(--color-neutral-400); }

.detailStats-module__iconChar--lAtLK {
  font-size: 16px;
  line-height: 1;
}

.detailStats-module__info--qYe8U {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.detailStats-module__label--WQwR5 {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.detailStats-module__labelLight--CpWQy { color: rgba(255, 255, 255, 0.8); }
.detailStats-module__labelDark--T7kIA { color: var(--color-neutral-500); }

.detailStats-module__valueRow--oYcLY {
  display: flex;
  align-items: baseline;
  gap: 6px;
}

.detailStats-module__value--utDNE {
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
}

.detailStats-module__valueLight--sFEN0 { color: var(--color-white); }
.detailStats-module__valueDark--OKe7q { color: var(--color-neutral-900); }

.detailStats-module__unit--k3dRv {
  font-size: 13px;
  font-weight: 500;
}

.detailStats-module__unitLight--NFmwy { color: rgba(255, 255, 255, 0.7); }
.detailStats-module__unitDark--ewITq { color: var(--color-neutral-500); }

/* ── Small donut for runtime card ── */
.detailStats-module__donut--FxUWz {
  width: 48px;
  height: 48px;
  margin-left: auto;
  flex-shrink: 0;
}

.detailStats-module__donutBg--KXYea {
  fill: none;
  stroke: var(--color-primary-100);
  stroke-width: 3;
}

.detailStats-module__donutFill--gTIwU {
  fill: none;
  stroke: var(--color-blue-500);
  stroke-width: 3;
  stroke-linecap: round;
}

.detailStats-module__donutText--WBA_R {
  font-size: 10px;
  font-weight: 700;
  fill: var(--color-neutral-900);
  text-anchor: middle;
}

@media (max-width: 768px) {
  .detailStats-module__grid--ikGZ6 { grid-template-columns: 1fr; }
}

.dailyRuntimeChart-module__card--H_Ttc {
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  padding: 20px;
}

.dailyRuntimeChart-module__header--rRf5o {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 16px;
}

.dailyRuntimeChart-module__titleGroup--CZgJ4 {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.dailyRuntimeChart-module__title--dT31b {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin: 0;
}

.dailyRuntimeChart-module__subtitle--c5ccV {
  font-size: 12px;
  color: var(--color-neutral-500);
  margin: 0;
}

.dailyRuntimeChart-module__thresholdBadge--bd6r2 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 500;
  color: var(--color-neutral-700);
  border: 1px solid var(--color-neutral-200);
  border-radius: 16px;
  padding: 4px 10px;
  white-space: nowrap;
}

/* ── Chart area ── */
.dailyRuntimeChart-module__chartWrap--coHUw {
  display: flex;
  gap: 4px;
  height: 220px;
}

.dailyRuntimeChart-module__yAxis--Mx3nX {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 20px;
  width: 32px;
  flex-shrink: 0;
}

.dailyRuntimeChart-module__yLabel--q2J0P {
  font-size: 10px;
  color: var(--color-neutral-400);
  text-align: right;
}

.dailyRuntimeChart-module__barsArea--iYL6z {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.dailyRuntimeChart-module__bars--meWwe {
  flex: 1;
  display: flex;
  align-items: flex-end;
  gap: 2px;
}

.dailyRuntimeChart-module__bar--VQfVH {
  /* reset native button styles when rendered as <button> */
  border: none;
  padding: 0;
  appearance: none;
  flex: 1;
  min-width: 4px;
  height: var(--bar-h, 0%);
  background: var(--color-primary-500);
  border-radius: 2px 2px 0 0;
  transition: opacity var(--duration-fast) var(--ease-default);
  position: relative;
  cursor: pointer;
}

.dailyRuntimeChart-module__bar--VQfVH:hover {
  background: var(--color-primary-500);
}

.dailyRuntimeChart-module__bars--meWwe:hover .dailyRuntimeChart-module__bar--VQfVH:not(:hover, .dailyRuntimeChart-module__barSelected--rrpua, .dailyRuntimeChart-module__barDimmed--UDoi5) {
  background: var(--color-primary-400);
}

.dailyRuntimeChart-module__barDimmed--UDoi5 {
  background: var(--color-primary-200);
}

.dailyRuntimeChart-module__barDimmed--UDoi5:hover {
  background: var(--color-primary-500);
}

.dailyRuntimeChart-module__barSelected--rrpua {
  background: var(--color-primary-500);
}

.dailyRuntimeChart-module__barSelected--rrpua:hover {
  background: var(--color-primary-500);
}

.dailyRuntimeChart-module__bar--VQfVH:hover::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: calc(100% + 4px);
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-neutral-900);
  color: var(--color-white);
  font-size: 11px;
  padding: 3px 6px;
  border-radius: 4px;
  white-space: nowrap;
  z-index: 5;
  pointer-events: none;
}

.dailyRuntimeChart-module__xAxis--ncTjh {
  display: flex;
  gap: 2px;
  padding-top: 6px;
}

.dailyRuntimeChart-module__xLabel--xZQ7f {
  flex: 1;
  font-size: 9px;
  color: var(--color-neutral-400);
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
}

.dailyRuntimeChart-module__empty--ndxgn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 220px;
  color: var(--color-neutral-400);
  font-size: 14px;
}

.dayDrillDown-module__card--ANreu {
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  padding: 20px;
}

.dayDrillDown-module__header--_gMEf {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 16px;
}

.dayDrillDown-module__headerLeft--dzj00 {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.dayDrillDown-module__dateTitle--EHJxW {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin: 0;
}

.dayDrillDown-module__subtitle--S2gmW {
  font-size: 12px;
  color: var(--color-neutral-500);
  margin: 0;
}

.dayDrillDown-module__headerRight--GPkim {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dayDrillDown-module__closeBtn--TLLpL {
  background: none;
  border: none;
  font-size: 20px;
  color: var(--color-neutral-400);
  cursor: pointer;
  padding: 4px;
  line-height: 1;
}

.dayDrillDown-module__closeBtn--TLLpL:hover {
  color: var(--color-neutral-700);
}

.dayDrillDown-module__donut--JhvyT {
  position: relative;
  width: 64px;
  height: 64px;
  flex-shrink: 0;
}

.dayDrillDown-module__donutLabel--GzL1C {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.dayDrillDown-module__donutPct--YE4te {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-blue-600);
  line-height: 1.1;
}

.dayDrillDown-module__donutHours--VjSBl {
  font-size: 10px;
  color: var(--color-neutral-500);
}

/* ── Timeline ── */
.dayDrillDown-module__timelineWrap--EL1_W {
  margin-bottom: 20px;
}

.dayDrillDown-module__timeline--C8ZwT {
  position: relative;
  height: 24px;
  background: var(--color-neutral-100);
  border-radius: 4px;
  overflow: hidden;
}

.dayDrillDown-module__timelineSegment--Gx0Fr {
  position: absolute;
  top: 0;
  height: 100%;
  left: var(--seg-left, 0%);
  width: var(--seg-width, 0%);
  cursor: pointer;
  transition: filter 0.15s ease, background-color 0.15s ease;
}

.dayDrillDown-module__timelineSegment--Gx0Fr[data-status='connected'] {
  background: var(--color-primary-500);
}

.dayDrillDown-module__timelineSegment--Gx0Fr[data-status='disconnected'] {
  background: var(--color-neutral-200);
}

/* dim non-hovered connected segments when hovering the timeline */
.dayDrillDown-module__timeline--C8ZwT:hover .dayDrillDown-module__timelineSegment--Gx0Fr[data-status='connected']:not(:hover) {
  background: var(--color-primary-200);
}

/* dim non-active connected segments when one is expanded */
.dayDrillDown-module__timeline--C8ZwT[data-has-active='true'] .dayDrillDown-module__timelineSegment--Gx0Fr[data-status='connected']:not(.dayDrillDown-module__timelineSegmentActive--zydmC) {
  background: var(--color-primary-200);
}

/* keep hovered segment bright even when others are dimmed */
.dayDrillDown-module__timeline--C8ZwT[data-has-active='true'] .dayDrillDown-module__timelineSegment--Gx0Fr[data-status='connected']:not(.dayDrillDown-module__timelineSegmentActive--zydmC):hover {
  background: var(--color-primary-400);
}

.dayDrillDown-module__timelineSegmentActive--zydmC[data-status='connected'] {
  background: var(--color-primary-600);
  outline: 2px solid var(--color-primary-700);
  outline-offset: -2px;
}

.dayDrillDown-module__timelineSegmentActive--zydmC[data-status='disconnected'] {
  filter: brightness(0.9);
  outline: 2px solid var(--color-neutral-400);
  outline-offset: -2px;
}

.dayDrillDown-module__timelineLabels--DqLvi {
  display: flex;
  justify-content: space-between;
  padding-top: 4px;
}

.dayDrillDown-module__timelineLabel--wAC28 {
  font-size: 10px;
  color: var(--color-neutral-400);
}

/* ── Readings table ── */
.dayDrillDown-module__table--BUJes {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.dayDrillDown-module__table--BUJes thead th {
  text-align: left;
  font-weight: 600;
  color: var(--color-neutral-900);
  padding: 8px 12px;
  border-bottom: 1px solid var(--color-neutral-200);
  font-size: 13px;
}

.dayDrillDown-module__table--BUJes tbody td {
  padding: 6px 12px;
  border-bottom: 1px solid var(--color-neutral-100);
  color: var(--color-neutral-800);
}

.dayDrillDown-module__colExpand--Mjcyw {
  width: 28px;
  padding-left: 8px !important;
  padding-right: 0 !important;
}

.dayDrillDown-module__chevron--FLqWU {
  display: inline-block;
  font-size: 16px;
  line-height: 1;
  color: var(--color-neutral-400);
  transform: rotate(0deg);
  transition: transform 0.15s ease;
  user-select: none;
}

.dayDrillDown-module__chevronOpen--uouRv {
  transform: rotate(90deg);
}

.dayDrillDown-module__summaryRow--lEqKF {
  cursor: pointer;
}

.dayDrillDown-module__summaryRow--lEqKF:hover td {
  background: var(--color-primary-50);
}

.dayDrillDown-module__summaryRowExpanded--eh4Hh td {
  background: var(--color-primary-50);
  border-bottom: none;
}

.dayDrillDown-module__summaryRowExpanded--eh4Hh:hover td {
  background: var(--color-primary-100);
}

.dayDrillDown-module__detailRow--k5kec td {
  padding: 0 !important;
  background: var(--color-neutral-50);
  border-bottom: 2px solid var(--color-neutral-200);
}

.dayDrillDown-module__detailCell--RpLun {
  padding: 0 !important;
}

.dayDrillDown-module__detailTableWrap--sZ2Ox {
  border-left: 3px solid var(--color-primary-200);
  margin-left: 28px;
  background: var(--color-white);
  border-radius: 0 0 4px 4px;
  overflow: hidden;
  box-shadow: inset 0 1px 0 var(--color-neutral-200);
}

.dayDrillDown-module__detailTable--bPdOk {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
}

.dayDrillDown-module__detailTable--bPdOk th {
  text-align: left;
  font-weight: 600;
  color: var(--color-neutral-500);
  padding: 6px 12px;
  border-bottom: 1px solid var(--color-neutral-200);
  background: var(--color-neutral-50);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.dayDrillDown-module__detailTable--bPdOk td {
  padding: 5px 12px;
  border-bottom: none;
  color: var(--color-neutral-700);
}

.dayDrillDown-module__detailTable--bPdOk tbody tr:nth-child(even) td {
  background: var(--color-neutral-50);
}

.dayDrillDown-module__detailTable--bPdOk tbody tr:hover td {
  background: var(--color-primary-50);
  color: var(--color-neutral-900);
}

.dayDrillDown-module__timeRange--CxfDQ {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.dayDrillDown-module__timeRangeSep--u_wN2 {
  margin: 0 6px;
  color: var(--color-neutral-400);
}

.dayDrillDown-module__statusBadge--o9egC {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 500;
  padding: 2px 8px;
  border-radius: 10px;
}

.dayDrillDown-module__statusConnected--i4j7E {
  background: var(--color-primary-50);
  color: var(--color-primary-700);
}

.dayDrillDown-module__statusDisconnected--zJSbs {
  background: var(--color-neutral-100);
  color: var(--color-neutral-600);
}

.dayDrillDown-module__tableWrap--t11qL {
  max-height: 400px;
  overflow-y: auto;
}

.dayDrillDown-module__empty--D0Cz6 {
  text-align: center;
  padding: 40px 0;
  color: var(--color-neutral-400);
  font-size: 14px;
}

.sensorDetails-module__card--PIKJQ {
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  padding: 20px;
}

.sensorDetails-module__title--g6P0O {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-neutral-900);
  margin: 0 0 16px;
}

.sensorDetails-module__row--YkjfX {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid var(--color-neutral-100);
}

.sensorDetails-module__row--YkjfX:last-child {
  border-bottom: none;
}

.sensorDetails-module__label--h0c73 {
  font-size: 13px;
  color: var(--color-neutral-500);
}

.sensorDetails-module__value--WWW3h {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-neutral-900);
  text-align: right;
}

.sensorDetails-module__meterRow--cOf9l {
  display: flex;
  align-items: center;
  gap: 8px;
}

.sensorDetails-module__meterName--dasum {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-blue-500);
  max-width: 120px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.runtimeDetailPage-module__root--Z3Mu2 {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 20px;
  background: var(--color-neutral-50);
}

.runtimeDetailPage-module__mainContent--xR0Qk {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 16px;
}

.runtimeDetailPage-module__loading--rxO5w {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 400px;
}

@media (max-width: 900px) {
  .runtimeDetailPage-module__mainContent--xR0Qk {
    grid-template-columns: 1fr;
  }
}

.settingsHeader-module__header--caO34 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3) var(--space-4);
  padding-bottom: var(--space-3);
  border-bottom: 1px solid var(--color-neutral-200);
}

.settingsHeader-module__title--ZxT8b {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-900);
  line-height: var(--line-height-tight);
}

.settingsTabs-module__tabBar--Q_XDv {
  display: flex;
  gap: var(--space-3);
  padding: 0 var(--space-4);
  border-bottom: 1px solid var(--color-neutral-200);
}

.settingsTabs-module__tab--NXf_O {
  position: relative;
  padding: var(--space-1) 0;
  font-family: var(--font-family);
  font-size: var(--font-size-m);
  font-weight: var(--font-weight-medium);
  color: var(--color-neutral-500);
  background: none;
  border: none;
  cursor: pointer;
  transition: color var(--duration-fast) var(--ease-default);
}

.settingsTabs-module__tab--NXf_O:hover {
  color: var(--color-neutral-900);
}

.settingsTabs-module__tab--NXf_O::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background: transparent;
  border-radius: var(--radius-sm);
  transition: background var(--duration-fast) var(--ease-default);
}

.settingsTabs-module__tabActive--IbzR_ {
  color: var(--color-primary-500);
  font-weight: var(--font-weight-semibold);
}

.settingsTabs-module__tabActive--IbzR_::after {
  background: var(--color-primary-500);
}

.alertsTable-module__wrapper--iwEIk {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  border: 1px solid var(--color-neutral-200, #dfe3e8);
  border-radius: 8px;
}

.alertsTable-module__table--kywqd {
  width: max-content;
  min-width: 100%;
  border-collapse: collapse;
}

.alertsTable-module__headerRow--x0y6M {
  border-bottom: 1px solid var(--color-neutral-200);
}

.alertsTable-module__th--u3b_P {
  padding: 0;
  text-align: left;
  font-weight: var(--font-weight-bold, 700);
  font-size: var(--font-size-s, 14px);
  color: var(--color-neutral-600);
  white-space: nowrap;
  vertical-align: middle;
  position: relative;
}

.alertsTable-module__thCenter--HURmx {
  text-align: center;
}

.alertsTable-module__th--u3b_P:hover .alertsTable-module__resizeLine--PzwE7 {
  opacity: 1;
}

.alertsTable-module__thInner--L34Ki {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: var(--space-1);
  min-height: 36px;
}

.alertsTable-module__thInnerCenter--kFeLS {
  justify-content: center;
}

.alertsTable-module__thInnerStart--Uyjbh {
  justify-content: flex-start;
  align-items: flex-start;
}

.alertsTable-module__thInnerNoPad--wNs6h {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0;
}

.alertsTable-module__thSortBtn--vEbsm {
  all: unset;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  user-select: none;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  color: inherit;
  white-space: nowrap;
  transition: color 0.15s;
}

.alertsTable-module__thSortBtn--vEbsm:hover { color: var(--color-neutral-900); }

.alertsTable-module__thSortBtnActive--I3iAa { color: var(--color-neutral-900); }

.alertsTable-module__sortArrow--Ekea3 {
  font-size: var(--font-size-xs);
  color: var(--color-neutral-400);
  line-height: 1;
}

.alertsTable-module__sortArrowActive--WbPpZ {
  font-size: var(--font-size-xs);
  color: var(--color-primary-500, #0c6ff9);
  line-height: 1;
}

.alertsTable-module__resizeHandle--pDcLr {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 8px;
  cursor: col-resize;
  z-index: 1;
}

.alertsTable-module__resizeLine--PzwE7 {
  position: absolute;
  top: 0;
  right: 3px;
  bottom: 0;
  width: 1px;
  background-color: var(--color-neutral-400, #a0a3a8);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s, background-color 0.15s, width 0.15s;
}

.alertsTable-module__resizeHandle--pDcLr:hover .alertsTable-module__resizeLine--PzwE7 {
  opacity: 1;
  background-color: var(--color-primary-500, #0c6ff9);
  width: 2px;
  right: 3px;
}

.alertsTable-module__thResizing--tfWjn .alertsTable-module__resizeLine--PzwE7 {
  opacity: 1;
  background-color: var(--color-primary-500, #0c6ff9);
  width: 2px;
}

/* Row pin animation - flash effect */
@keyframes alertsTable-module__rowPinFlash--BpW6X {
  0% { background-color: var(--color-primary-100, #dde5fc); }
  100% { background-color: transparent; }
}

.alertsTable-module__rowPinning--ZLesf {
  animation: alertsTable-module__rowPinFlash--BpW6X 0.6s ease-out;
}

/* Smooth row transitions */
.alertsTable-module__row--sMAQD {
  transition: background-color 0.2s ease, transform 0.3s ease;
}

.alertsTable-module__rowPinned--cg5Pa {
  background-color: var(--color-primary-50, #edf2fe);
}

.skeletonRows-module__row--MX2Qu {
  border-bottom: 1px solid var(--color-neutral-200);
}

.skeletonRows-module__cell--pgbEo {
  padding: 14px 12px;
}

.skeletonRows-module__shimmer--qtThj {
  height: 14px;
  border-radius: var(--radius-sm);
  background: linear-gradient(
    90deg,
    var(--color-neutral-100) 25%,
    var(--color-neutral-200) 50%,
    var(--color-neutral-100) 75%
  );
  background-size: 200% 100%;
  animation: skeletonRows-module__shimmerMove--Evnpv 1.5s infinite ease-in-out;
}

.skeletonRows-module__w40--ZZ9Zb { width: 40%; }
.skeletonRows-module__w55--gJOJx { width: 55%; }
.skeletonRows-module__w60--QCEax { width: 60%; }
.skeletonRows-module__w70--i0Qhr { width: 70%; }
.skeletonRows-module__w85--fZa1S { width: 85%; }

@keyframes skeletonRows-module__shimmerMove--Evnpv {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

.alertRow-module__row--z12bs {
  border-bottom: 1px solid var(--color-neutral-200);
  transition: background var(--duration-fast) var(--ease-default);
  cursor: pointer;
}

.alertRow-module__row--z12bs:hover {
  background: var(--color-neutral-hover);
}

.alertRow-module__cell--nARd6 {
  padding: var(--space-1);
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.alertRow-module__cellCenter--Yzqjt {
  text-align: center;
}

.alertRow-module__pinCellGap--GB6eh {
  text-align: left;
  padding: 0;
}

.alertRow-module__enabledCellGap--RT8g6 {
  text-align: left;
  padding-left: 0;
  padding-right: 0;
}

.alertRow-module__devicesCell--tRG68 {
  overflow: visible;
  position: relative;
  z-index: 2;
}

.alertRow-module__actionsCell--K0OB1 {
  padding: var(--space-1);
  width: 48px;
  text-align: right;
  vertical-align: middle;
}

.alertRow-module__name--lV46d {
  font-weight: var(--font-weight-medium);
}

.alertRow-module__value--k2qSP {
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
}

.alertRow-module__addLink--HiREd {
  all: unset;
  font-size: var(--font-size-s);
  color: var(--color-primary-600);
  cursor: pointer;
  white-space: nowrap;
}

.alertRow-module__addLink--HiREd:hover {
  color: var(--color-primary-700);
  text-decoration: underline;
}

.alertRow-module__toggle--uuHxw {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 36px;
  height: 20px;
  padding: 0;
  background: var(--color-neutral-300);
  border: none;
  border-radius: var(--radius-full);
  cursor: pointer;
  transition: background var(--duration-fast) var(--ease-default);
}

.alertRow-module__toggleOn--mrOFt {
  background: var(--color-primary-500);
}

.alertRow-module__toggleThumb--o_b8E {
  position: absolute;
  left: 2px;
  width: 16px;
  height: 16px;
  background: var(--color-white);
  border-radius: var(--radius-full);
  transition: transform var(--duration-fast) var(--ease-default);
  box-shadow: var(--shadow-xs);
}

.alertRow-module__toggleOn--mrOFt .alertRow-module__toggleThumb--o_b8E {
  transform: translateX(16px);
}

.alertRow-module__pinnedRow--gSS6c {
  background: var(--color-primary-50);
}

/* Pin flash animation */
@keyframes alertRow-module__pinFlash--Qncj2 {
  0% { background-color: var(--color-primary-200, #c1cff9); }
  50% { background-color: var(--color-primary-100, #dde5fc); }
  100% { background-color: var(--color-primary-50, #edf2fe); }
}

.alertRow-module__rowPinning--E6r3R {
  animation: alertRow-module__pinFlash--Qncj2 0.5s ease-out;
}

.alertRow-module__rowUnpinning--HV1Ff {
  animation: alertRow-module__pinFlash--Qncj2 0.5s ease-out reverse;
}

.alertRow-module__allDevices--KHdOL {
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
  font-style: italic;
}

.alertRow-module__dash--orEQX {
  color: var(--color-neutral-400);
}

.alertRow-module__pinBtn--K32uu {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: var(--radius-sm);
  color: var(--color-neutral-400);
  cursor: pointer;
}

.alertRow-module__pinBtn--K32uu:hover,
.alertRow-module__pinBtn--K32uu:focus-visible {
  color: var(--color-neutral-400);
}

.alertRow-module__pinBtnActive--BHOe_ {
  color: var(--color-primary-500);
}

.alertRow-module__pinBtnActive--BHOe_:hover,
.alertRow-module__pinBtnActive--BHOe_:focus-visible {
  color: var(--color-primary-500);
}

.alertRow-module__pinStatic--bgcE_ {
  cursor: default;
}

.alertRow-module__pinIconWrap--jyRlw {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform var(--duration-fast) var(--ease-default);
}

.alertRow-module__row--z12bs:hover .alertRow-module__pinIconWrap--jyRlw {
  transform: none;
}

.alertRow-module__selectCell--afS8V {
  text-align: center;
  padding: 0;
  vertical-align: middle;
}

.alertRow-module__selectCheckbox--dcjRh {
  width: 18px;
  height: 18px;
  margin: 0;
  cursor: pointer;
  opacity: 1;
}

.alertRow-module__selectionHeaderInner--hjVy9 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
}

.alertRow-module__headerSelectCheckbox--kf3Cu {
  width: 18px;
  height: 18px;
  margin: 0;
  cursor: pointer;
}

.alertRow-module__selectCheckboxLabel--WCLAG {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  cursor: pointer;
}

.alertRow-module__controlTooltipTrigger--fz5L0 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.alertRow-module__visuallyHidden--bqcTt {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}


.rowActionsMenu-module__trigger--AGBXa {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: var(--radius-2xs, 4px);
  color: var(--color-neutral-600, #60646c);
}

.rowActionsMenu-module__trigger--AGBXa:hover,
.rowActionsMenu-module__trigger--AGBXa:focus-visible {
  background: var(--color-neutral-alpha-3, rgba(0, 0, 0, 0.06));
  outline: none;
}

.rowActionsMenu-module__menu--Zijs2 {
  position: fixed;
  z-index: 12000;
  min-width: 160px;
  padding: var(--space-1, 4px) 0;
  background: #fff;
  border: 1px solid var(--color-neutral-200, #e0e1e6);
  border-radius: var(--radius-xs, 8px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.rowActionsMenu-module__backdrop--qVLhZ {
  position: fixed;
  inset: 0;
  z-index: 11999;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
}

.rowActionsMenu-module__item--AdM1Z {
  display: block;
  width: 100%;
  padding: 8px 14px;
  border: none;
  background: transparent;
  text-align: left;
  font-size: 14px;
  cursor: pointer;
  color: var(--color-neutral-900, #1c2024);
}

.rowActionsMenu-module__item--AdM1Z:hover {
  background: var(--color-neutral-alpha-3, rgba(0, 0, 0, 0.06));
}

.deviceChips-module__wrapper--c6wq5 {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}

.deviceChips-module__chip--MXhjA {
  display: inline-flex;
  align-items: center;
  padding: 2px var(--space-1);
  font-size: var(--font-size-s);
  line-height: var(--line-height-tight);
  color: var(--color-primary-600);
  background: var(--color-primary-50);
  border-radius: var(--radius-full);
  white-space: nowrap;
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  cursor: pointer;
}

.deviceChips-module__chip--MXhjA:hover {
  background: var(--color-primary-100);
  color: var(--color-primary-700);
}

.deviceChips-module__overflowChip--aAl_e {
  display: inline-flex;
  align-items: center;
  padding: 2px var(--space-1);
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  background: var(--color-neutral-100);
  border-radius: var(--radius-full);
  border: none;
  font-family: inherit;
  line-height: inherit;
  cursor: default;
  z-index: 1;
}

.deviceChips-module__tooltip--EeJqr {
  position: fixed;
  transform: translateX(-50%);
  z-index: 2000;
  min-width: 160px;
  max-height: 180px;
  overflow-y: auto;
  padding: var(--space-1) 12px;
  background: var(--color-white);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  font-size: var(--font-size-s);
}

.deviceChips-module__tooltipItem--idYRl {
  padding: 2px 0;
  color: var(--color-neutral-900);
  white-space: nowrap;
}

.deviceChips-module__tooltipLink--EwulZ {
  display: block;
  padding: 2px 0;
  color: var(--color-neutral-900);
  white-space: nowrap;
  text-decoration: none;
}

.deviceChips-module__tooltipLink--EwulZ:hover {
  color: var(--color-primary-600);
}

.legacyAlertSidebar-module__backdrop--Ksx_u {
  position: fixed;
  inset: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.legacyAlertSidebar-module__sidebar--d8JvP {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: #fff;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .legacyAlertSidebar-module__sidebar--d8JvP {
    width: 100%;
  }
}

.settingsFilterModal-module__backdrop--sroJq {
  z-index: 1000;
}

.settingsFilterModal-module__root--fkmf0 {
  border: none;
  padding: 0;
  min-width: 480px;
  width: 90%;
  max-width: 520px;
  max-height: 90vh;
  overflow: visible;
  z-index: 1001;
}

.settingsFilterModal-module__header--el1hB {
}

.settingsFilterModal-module__title--Sx0Lk {
}

.settingsFilterModal-module__closeBtn--Y93ri {
  justify-content: center;
}

.settingsFilterModal-module__body--mlL9q {
  padding: 20px;
  gap: 20px;
  flex: 1;
  min-height: 0;
  max-height: calc(90vh - 140px);
  overflow-y: auto;
}

.settingsFilterModal-module__section--cOSEF {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.settingsFilterModal-module__sectionHeader--XMZwT {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.settingsFilterModal-module__sectionLabel--XXcgB {
  font-size: 13px;
  font-weight: 600;
  color: #666;
  letter-spacing: 0.3px;
}

.settingsFilterModal-module__removeBtn--feW7M {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 500;
  color: #767676;
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 4px;
  font-family: inherit;
}

.settingsFilterModal-module__removeBtn--feW7M:hover { background: transparent; }

.settingsFilterModal-module__emptyState--WbIl1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 32px 16px;
}

.settingsFilterModal-module__emptyTitle--aWsLK {
  font-size: 14px;
  font-weight: 600;
  color: #323233;
}

.settingsFilterModal-module__emptyHint--s6TnY {
  font-size: 13px;
  color: #8b8d98;
}

.settingsFilterModal-module__footer--ftjXQ {
  justify-content: space-between;
}

.settingsFilterModal-module__footerActions--fSH6q {
  display: flex;
  align-items: center;
  gap: 12px;
}

.settingsFilterModal-module__outlineBtn--sPZFU {
}

.settingsFilterModal-module__primaryBtn--VFNNj {
}

/* Add filter menu */
.settingsFilterModal-module__addMenu--uyFav {
  position: relative;
  display: inline-flex;
}

.settingsFilterModal-module__addTrigger--fIVCf {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  color: var(--color-primary-500);
  background: none;
  border: none;
  cursor: pointer;
  border-radius: 4px;
}

.settingsFilterModal-module__addTrigger--fIVCf:hover {
  background: var(--color-primary-50);
}

.settingsFilterModal-module__addPopover--rQCDh {
  position: absolute;
  bottom: calc(100% + 4px);
  left: 0;
  min-width: 200px;
  max-height: 220px;
  overflow-y: auto;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 20;
  padding: 4px 0;
}

.settingsFilterModal-module__addItem--lLUwZ {
  display: block;
  width: 100%;
  text-align: left;
  padding: 8px 14px;
  font-size: 13px;
  font-family: inherit;
  color: #323233;
  background: none;
  border: none;
  cursor: pointer;
}

.settingsFilterModal-module__addItem--lLUwZ:hover {
  background: #f2f2f2;
}

.settingsFilterModal-module__addBackdrop--E_pRW {
  position: fixed;
  inset: 0;
  background: transparent;
  z-index: 5;
}

/* Multi-select chip box */
.settingsFilterModal-module__multiRoot--nTuwW {
  position: relative;
  width: 100%;
}

.settingsFilterModal-module__chipBox--IEahB {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  min-height: 38px;
  padding: 4px 8px;
  border: 1px solid #dfe3e8;
  border-radius: 6px;
  background: #fff;
  cursor: text;
}

.settingsFilterModal-module__chipBox--IEahB:focus-within {
  border-color: #0c6ff9;
}

.settingsFilterModal-module__chip--FGxgU {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 6px 2px 8px;
  background: #e8f0fe;
  border-radius: 4px;
  font-size: 13px;
  color: #323233;
  white-space: nowrap;
}

.settingsFilterModal-module__chipRemove--LmgqI {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: none;
  background: none;
  cursor: pointer;
  padding: 0;
  color: #666;
  font-size: 14px;
  line-height: 1;
  border-radius: 2px;
}

.settingsFilterModal-module__chipRemove--LmgqI:hover {
  color: #1f2937;
  background: #dfe3e8;
}

.settingsFilterModal-module__searchInput--oaKAR {
  flex: 1;
  min-width: 60px;
  border: none;
  outline: none;
  font-size: 13px;
  font-family: inherit;
  padding: 4px 0;
  background: transparent;
}

.settingsFilterModal-module__searchInput--oaKAR::placeholder {
  color: #8b8d98;
}

.settingsFilterModal-module__dropdown--XWG25 {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  max-height: 200px;
  overflow-y: auto;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 30;
}

.settingsFilterModal-module__optionItem--Q32dd {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  cursor: pointer;
  font-size: 13px;
}

.settingsFilterModal-module__optionItem--Q32dd:hover {
  background: #f2f2f2;
}

.settingsFilterModal-module__checkbox--DXldW {
  width: 16px;
  height: 16px;
  accent-color: #0c6ff9;
  flex-shrink: 0;
  cursor: pointer;
}

.settingsFilterModal-module__noResults--Auim6 {
  padding: 12px;
  font-size: 13px;
  color: #8b8d98;
  text-align: center;
}

.columnPicker-module__wrapper--m_MdT {
  position: relative;
  display: inline-block;
}

.columnPicker-module__trigger--kDNRd {
  all: unset;
  cursor: pointer;
  user-select: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: var(--font-size-s);
  font-family: inherit;
  border: none;
  border-radius: var(--radius-md);
  background: var(--color-white);
  color: #1C2024;
  white-space: nowrap;
  box-sizing: border-box;
  transition: background var(--duration-fast) var(--ease-default);
}

.columnPicker-module__trigger--kDNRd:hover {
  background: var(--color-neutral-100);
}

.columnPicker-module__backdrop--MemjG {
  position: fixed;
  inset: 0;
  z-index: 49;
  background: transparent;
  border: none;
  padding: 0;
  cursor: default;
}

.columnPicker-module__popover--TdfN0 {
  position: fixed;
  z-index: 50;
  background: var(--color-white);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  min-width: 220px;
  max-height: 400px;
  overflow-y: auto;
  padding: 6px 0;
}

.columnPicker-module__list--mtoYw {
  list-style: none;
  margin: 0;
  padding: 0;
}

.columnPicker-module__item--UoGqu {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px 6px 8px;
  transition: background-color 0.1s;
  cursor: grab;
}

.columnPicker-module__item--UoGqu:hover {
  background-color: var(--color-neutral-50, #f5f6f7);
}

.columnPicker-module__itemDragging--MYCB1 {
  opacity: 0.4;
}

.columnPicker-module__itemOver--IXNXv {
  border-top: 2px solid var(--color-primary-500, #0c6ff9);
}

.columnPicker-module__dragHandle--BsZGN {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  flex-shrink: 0;
  color: var(--color-neutral-400, #a0a3a8);
  cursor: grab;
}

.columnPicker-module__dragHandle--BsZGN:active {
  cursor: grabbing;
}

.columnPicker-module__dragHandleSpacer--fWA9m {
  display: inline-block;
  width: 16px;
  flex-shrink: 0;
}

.columnPicker-module__option--GSwAv {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  cursor: pointer;
  font-size: 14px;
  font-family: inherit;
  user-select: none;
}

.columnPicker-module__checkbox--ZwdOw {
  width: 18px;
  height: 18px;
  accent-color: var(--color-primary-500, #0c6ff9);
  flex-shrink: 0;
  cursor: pointer;
  border-radius: 3px;
}

.columnPicker-module__checkbox--ZwdOw:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.columnPicker-module__label--af48M {
  color: var(--color-neutral-900, #1a1c1e);
}

.columnPicker-module__labelLocked--mXjwZ {
  color: var(--color-neutral-500, #60646c);
}

.devicesSortDropdown-module__container--fJY_N {
  position: relative;
  display: inline-block;
}

.devicesSortDropdown-module__trigger--baD7c {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  font-size: 14px;
  font-family: inherit;
  font-weight: 500;
  color: #1C2024;
  background: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.15s;
}

.devicesSortDropdown-module__trigger--baD7c:hover {
  border-color: #c4cdd5;
}

.devicesSortDropdown-module__triggerLabel--jqipf {
  font-weight: 600;
}

.devicesSortDropdown-module__triggerValue--C_gjW {
  font-weight: 400;
}

.devicesSortDropdown-module__triggerChevron--pLAho {
  margin-left: 2px;
  color: var(--color-neutral-500, #60646c);
}

.devicesSortDropdown-module__backdrop--SDA8K {
  position: fixed;
  inset: 0;
  z-index: 49;
  background: transparent;
  border: none;
  padding: 0;
  cursor: default;
}

.devicesSortDropdown-module__popover--EiXD9 {
  position: fixed;
  z-index: 50;
  min-width: 220px;
  background: #fff;
  border: 1px solid #e0e1e6;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  padding: 6px 0;
}

.devicesSortDropdown-module__section--VgcsS {
  padding: 0;
}

.devicesSortDropdown-module__sectionTitle--mITms {
  padding: 8px 16px 4px;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-neutral-900, #1a1c1e);
  user-select: none;
}

.devicesSortDropdown-module__optionList--rfEIY {
  list-style: none;
  margin: 0;
  padding: 0;
}

.devicesSortDropdown-module__option--Mmexr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 8px 16px;
  font-size: 14px;
  font-family: inherit;
  color: var(--color-neutral-700, #3e4248);
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  transition: background-color 0.1s;
}

.devicesSortDropdown-module__option--Mmexr:hover {
  background-color: var(--color-neutral-50, #f5f6f7);
}

.devicesSortDropdown-module__optionSelected--G1jPx {
  color: var(--color-neutral-900, #1a1c1e);
  font-weight: 500;
}

.devicesSortDropdown-module__divider--p8x6z {
  height: 1px;
  background: #e0e1e6;
  margin: 6px 0;
}

.alertsTab-module__root--wM0Eb {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding-bottom: var(--space-8);
  min-width: 0;
}

.alertsTab-module__toolbar--zHPFa {
  display: flex;
  flex-direction: column;
  background: var(--color-surface, #ffffff);
  border: 1px solid var(--color-neutral-200, #dfe3e8);
  border-radius: var(--radius-sm, 8px);
  position: relative;
  z-index: 2;
}

.alertsTab-module__vertDivider--wzeHQ {
  width: 1px;
  height: 24px;
  background: #dfe3e8;
  flex-shrink: 0;
}

.alertsTab-module__rowTop--Mm3JV {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px var(--space-2);
  border-bottom: 1px solid var(--color-neutral-200, #dfe3e8);
  gap: var(--space-2);
  flex-wrap: wrap;
}

.alertsTab-module__countLabel--b6yH1 {
  margin-right: auto;
  text-align: left;
}

.alertsTab-module__rowTopRight--eZncE {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  flex-wrap: wrap;
}

.alertsTab-module__rowBottom--Zov5c {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  padding: 10px 16px;
  gap: 7px;
  background: #f8f9fa;
  border-radius: 0 0 8px 8px;
}

.alertsTab-module__filtersBtn--SBgcu {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  line-height: 1;
  flex-shrink: 0;
}

.alertsTab-module__filtersBtn--SBgcu:hover { background: #f2f2f2; }

.alertsTab-module__filtersBtnActive--xYo_g {
  background: var(--color-primary-50);
  border-color: var(--color-primary-500);
  color: var(--color-primary-500);
}

.alertsTab-module__filtersBtnActive--xYo_g:hover { background: var(--color-primary-50); }

.alertsTab-module__scrollWrap--wmpY2 {
  position: relative;
  min-width: 0;
}

.alertsTab-module__scrollWrap--wmpY2::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  background: linear-gradient(to right, transparent, #f8f9fa);
  pointer-events: none;
  z-index: 1;
}

.alertsTab-module__scrollSection--maSo1 {
  display: flex;
  align-items: center;
  gap: 7px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-right: 24px;
}

.alertsTab-module__scrollSection--maSo1::-webkit-scrollbar { display: none; }

.alertsTab-module__scrollSection--maSo1 > * { flex-shrink: 0; }

.alertsTab-module__rightGroup--Wt_II {
  display: flex;
  align-items: center;
  gap: 12px;
}

.alertsTab-module__resetLink--YtKCn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: var(--font-size-s);
  color: var(--color-primary-500);
  padding: 0;
}

.alertsTab-module__resetLink--YtKCn:hover {
  text-decoration: underline;
}

.alertsTab-module__count--gJ8Vn {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-neutral-700);
  white-space: nowrap;
}

.alertsTab-module__loadMoreTrigger--PRh3E {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.alertsTab-module__loadMoreTriggerHidden--HhNoo {
  visibility: hidden;
}

.alertsTab-module__loadingText--XcgcU {
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
}

.deviceRow-module__row--NgTaT {
  border-bottom: 1px solid var(--color-neutral-200);
  cursor: pointer;
}

.deviceRow-module__row--NgTaT:hover {
  background: var(--color-neutral-hover);
}

.deviceRow-module__nameCell--Ww9FI {
  padding: var(--space-1);
  min-width: 150px;
  width: 100%;
  font-size: var(--font-size-s);
}

.deviceRow-module__name--VwQLp {
  display: block;
  max-width: 300px;
  font-weight: var(--font-weight-medium);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.deviceRow-module__cell--NsKcy {
  padding: var(--space-1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: var(--font-size-s);
}

.deviceRow-module__cellCenter--gIDhO {
  text-align: center;
}

.deviceRow-module__selectCell--ILcne {
  text-align: center;
  padding: 0;
  vertical-align: middle;
  width: 32px;
  min-width: 32px;
  max-width: 32px;
}

.deviceRow-module__selectCheckbox--T5PTx {
  width: 18px;
  height: 18px;
  margin: 0;
  cursor: pointer;
}

.deviceRow-module__statusDotCell--lBCq1 {
  padding: var(--space-1);
  text-align: center;
  overflow: visible;
}

.deviceRow-module__statusDot--g6jhx {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.deviceRow-module__statusDotTrigger--fovJp {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.deviceRow-module__statusDotConnected--B24i_ {
  background: var(--color-green-500, #218358);
}

.deviceRow-module__statusDotDisconnected--P4TJo {
  background: var(--color-neutral-400, #b9bbc6);
}

.deviceRow-module__meterCell--Bt15d {
  padding: var(--space-1);
  text-align: center;
}

.deviceRow-module__actionsCell--Ue_9n {
  padding: var(--space-1);
  width: 48px;
  text-align: right;
}

.deviceRow-module__subtle--jvdsi {
  color: var(--color-neutral-600);
  font-size: var(--font-size-s);
}

.deviceRow-module__addLink--nuQ1q {
  background: none;
  border: none;
  color: var(--color-primary-500);
  cursor: pointer;
  font-size: var(--font-size-s);
  padding: 0;
}

.deviceRow-module__addLink--nuQ1q:hover {
  text-decoration: underline;
}

.deviceRow-module__iconSynced--QsfQK {
  color: var(--color-green-500);
}

.deviceRow-module__iconNeutral--Q7XZV {
  color: var(--color-neutral-400);
}

.deviceRow-module__coreLink--d2bLW {
  display: block;
  color: var(--color-neutral-600);
  text-decoration: none;
  font-size: var(--font-size-s);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.deviceRow-module__coreLink--d2bLW:hover {
  text-decoration: underline;
}

.deviceRow-module__meterStatusIconWrap--YCSGw {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.deviceRow-module__meterStatusTooltipTrigger--hsZg3 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.deviceRow-module__meterStatusIcon--nSW0d {
  width: 16px;
  height: 16px;
}

.deviceRow-module__meterStatusIconSynced--XhLHT {
  color: #3a5bc7;
}

.deviceRow-module__meterStatusIconUnsynced--RweY8 {
  color: #b9bbc6;
}

.deviceRow-module__scheduleCell--SeWnx {
  padding: var(--space-1);
  text-align: center;
  overflow: visible;
}

.deviceRow-module__scheduleIconBtn--GKdsm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: var(--color-primary-500);
}

.deviceRow-module__scheduleTooltipTrigger--edfcm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.deviceRow-module__scheduleIcon--poTnB {
  width: 16px;
  height: 16px;
  color: var(--color-primary-500);
}

.deviceRow-module__scheduleIconAdd--YIFK1 {
  width: 16px;
  height: 16px;
  color: var(--color-neutral-400, #b9bbc6);
  transform: rotate(45deg);
  transition: transform 500ms ease, color 500ms ease;
}

.deviceRow-module__scheduleIconBtn--GKdsm:hover .deviceRow-module__scheduleIconAdd--YIFK1,
.deviceRow-module__scheduleIconBtn--GKdsm:focus-visible .deviceRow-module__scheduleIconAdd--YIFK1 {
  color: var(--color-primary-500);
  transform: rotate(0deg);
}

.devicesTable-module__wrapper--kGwnj {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  border: 1px solid var(--color-neutral-200, #dfe3e8);
  border-radius: 8px;
}

.devicesTable-module__table--phWJT {
  width: max-content;
  min-width: 100%;
  border-collapse: collapse;
}

.devicesTable-module__th--ZkMGQ {
  padding: 0;
  text-align: left;
  font-weight: var(--font-weight-bold, 700);
  font-size: var(--font-size-s, 14px);
  color: var(--color-neutral-600);
  white-space: nowrap;
  border-bottom: 1px solid var(--color-neutral-200);
  vertical-align: middle;
  position: relative;
}

.devicesTable-module__thCenter--wMQkq {
  text-align: center;
}

.devicesTable-module__th--ZkMGQ:hover .devicesTable-module__resizeLine--aMGxd {
  opacity: 1;
}

.devicesTable-module__thInner--ctZlb {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: var(--space-1);
  min-height: 36px;
  min-width: 0;
}

.devicesTable-module__thInnerCenter--RLtk6 {
  justify-content: center;
}

.devicesTable-module__thInnerNoPad--adlAO {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0;
}

.devicesTable-module__selectColumn--JWQY3 {
  width: 32px;
  min-width: 32px;
  max-width: 32px;
}

.devicesTable-module__thLabel--fdARw {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.devicesTable-module__thSortBtn--IVoUS {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  cursor: pointer;
  user-select: none;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  color: inherit;
  white-space: nowrap;
  transition: color 0.15s;
  min-width: 0;
  max-width: 100%;
}

.devicesTable-module__thSortBtn--IVoUS:hover {
  color: var(--color-neutral-900);
}

.devicesTable-module__thSortBtnActive--WMQqu {
  color: var(--color-neutral-900);
}

.devicesTable-module__sortArrow--POd98 {
  font-size: var(--font-size-xs);
  color: var(--color-neutral-400);
  line-height: 1;
}

.devicesTable-module__sortArrowActive--YZomG {
  font-size: var(--font-size-xs);
  color: var(--color-primary-500, #0c6ff9);
  line-height: 1;
}

.devicesTable-module__resizeHandle--pHowP {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 8px;
  cursor: col-resize;
  z-index: 1;
}

.devicesTable-module__resizeLine--aMGxd {
  position: absolute;
  top: 0;
  right: 3px;
  bottom: 0;
  width: 1px;
  background-color: var(--color-neutral-400, #a0a3a8);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s, background-color 0.15s, width 0.15s;
}

.devicesTable-module__resizeHandle--pHowP:hover .devicesTable-module__resizeLine--aMGxd {
  opacity: 1;
  background-color: var(--color-primary-500, #0c6ff9);
  width: 2px;
  right: 3px;
}

.devicesTable-module__thResizing--mzdkx .devicesTable-module__resizeLine--aMGxd {
  opacity: 1;
  background-color: var(--color-primary-500, #0c6ff9);
  width: 2px;
}

.legacyDeviceSidebar-module__backdrop--DseFQ {
  position: fixed;
  inset: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.legacyDeviceSidebar-module__sidebar--l6KwP {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: #fff;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .legacyDeviceSidebar-module__sidebar--l6KwP {
    width: 100%;
  }
}

.devicesTab-module__root--Ziejz {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding-bottom: var(--space-8);
  min-width: 0;
}

.devicesTab-module__toolbar--bBXxD {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  position: relative;
  z-index: 2;
}

.devicesTab-module__rowTop--W8N_J {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  border-bottom: 1px solid #dfe3e8;
  gap: 12px;
  flex-wrap: wrap;
}

.devicesTab-module__countLabel--pN8Na {
  margin-right: auto;
  text-align: left;
}

.devicesTab-module__rowTopRight--DQC68 {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.devicesTab-module__rowBottom--SDN3m {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  padding: 10px 16px;
  gap: 7px;
  background: #f8f9fa;
  border-radius: 0 0 8px 8px;
}

.devicesTab-module__filtersBtn--jLACF {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  line-height: 1;
  flex-shrink: 0;
}

.devicesTab-module__filtersBtn--jLACF:hover { background: #f2f2f2; }

.devicesTab-module__filtersBtnActive--UL4UO {
  background: var(--color-primary-50);
  border-color: var(--color-primary-500);
  color: var(--color-primary-500);
}

.devicesTab-module__filtersBtnActive--UL4UO:hover { background: var(--color-primary-50); }

.devicesTab-module__scrollWrap--c_W5q {
  position: relative;
  min-width: 0;
}

.devicesTab-module__scrollWrap--c_W5q::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  background: linear-gradient(to right, transparent, #f8f9fa);
  pointer-events: none;
  z-index: 1;
}

.devicesTab-module__scrollSection--tpY6o {
  display: flex;
  align-items: center;
  gap: 7px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-right: 24px;
}

.devicesTab-module__scrollSection--tpY6o::-webkit-scrollbar { display: none; }

.devicesTab-module__scrollSection--tpY6o > * { flex-shrink: 0; }

.devicesTab-module__rightGroup--FanBm {
  display: flex;
  align-items: center;
  gap: 12px;
}

.devicesTab-module__vertDivider--VbrB8 {
  width: 1px;
  height: 24px;
  background: #dfe3e8;
  flex-shrink: 0;
}

.devicesTab-module__resetLink--RpB3y {
  background: none;
  border: none;
  color: var(--color-primary-500);
  cursor: pointer;
  font-size: var(--font-size-s);
  padding: 0;
}

.devicesTab-module__resetLink--RpB3y:hover {
  text-decoration: underline;
}

.devicesTab-module__itemCount--Pu9pD {
  color: var(--color-neutral-700);
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}

.devicesTab-module__editBackdrop--wiUM9 {
  position: fixed;
  inset: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.devicesTab-module__editSidebar--FDTa2 {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: #fff;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .devicesTab-module__editSidebar--FDTa2 {
    width: 100%;
  }
}

.devicesTab-module__loadMoreTrigger--D4cYf {
  display: flex;
  align-items: center;
  justify-content: center;
}

.devicesTab-module__loadMoreTriggerExpanded--lGI9E {
  height: 40px;
  margin: 16px 0;
}

.devicesTab-module__loadMoreTriggerCollapsed--Bqagw {
  height: 0;
  margin: 0;
  opacity: 0;
  pointer-events: none;
  overflow: hidden;
}

.devicesTab-module__loadingText--e2a10 {
  color: var(--color-neutral-600);
  font-size: 14px;
  font-style: italic;
}

.generalSettingsTab-module__root--HQ7xX {
  max-width: 600px;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.generalSettingsTab-module__section--x54aQ {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.generalSettingsTab-module__sectionTitle--VKwPi {
  font-size: var(--font-size-m);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
}

.generalSettingsTab-module__radioGroup--Q3Xdy {
  display: flex;
  gap: var(--space-3);
}

.generalSettingsTab-module__radioLabel--peYMS {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  cursor: pointer;
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
}

.generalSettingsTab-module__radioLabel--peYMS input[type='radio'] {
  accent-color: var(--color-primary-500);
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
}

.generalSettingsTab-module__checkboxLabel--XJnBR {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  cursor: pointer;
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
}

.generalSettingsTab-module__checkboxLabel--XJnBR input[type='checkbox'] {
  accent-color: var(--color-primary-500);
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
}

.generalSettingsTab-module__footer--pJVcJ {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding-top: var(--space-2);
}

.generalSettingsTab-module__loadingText--iYYPL {
  color: var(--color-neutral-500);
  font-size: var(--font-size-s);
}

.activeHoursCell-module__slotList--FXnjh {
  max-height: 220px;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  list-style: none;
  white-space: normal;
}

.activeHoursCell-module__slotItem--dXIjA {
  padding: 6px 2px;
}

.activeHoursCell-module__slotItem--dXIjA + .activeHoursCell-module__slotItem--dXIjA {
  border-top: 1px solid var(--color-neutral-200);
}

.attachedDevicesCell-module__root--FvV7x {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  min-width: 0;
}

.attachedDevicesCell-module__pill--lfSCD {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-width: 0;
  padding: 4px 10px;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-neutral-300);
  background: var(--color-white);
}

.attachedDevicesCell-module__pillLink--XobFu {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: underline;
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
}

.attachedDevicesCell-module__pillLink--XobFu:hover {
  text-decoration: none;
}

.attachedDevicesCell-module__extra--CSK16 {
  flex-shrink: 0;
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  cursor: default;
}

.attachedDevicesCell-module__deviceList--tRSjw {
  max-height: 220px;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  list-style: none;
  white-space: normal;
}

.attachedDevicesCell-module__deviceItem--SdyXv {
  padding: 6px 2px;
}

.attachedDevicesCell-module__deviceItem--SdyXv + .attachedDevicesCell-module__deviceItem--SdyXv {
  border-top: 1px solid var(--color-neutral-200);
}

.attachedDevicesCell-module__tooltipLink--FUQ4V {
  text-decoration: underline;
  font-size: var(--font-size-s);
  color: var(--color-neutral-900);
  word-break: break-word;
}

.attachedDevicesCell-module__tooltipLink--FUQ4V:hover {
  text-decoration: none;
}

.schedulesTable-module__wrapper--_7LDa {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  border: 1px solid var(--color-neutral-200, #dfe3e8);
  border-radius: 8px;
}

.schedulesTable-module__table--oA8iX {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.schedulesTable-module__th--aMeD8 {
  padding: 0;
  text-align: left;
  font-weight: var(--font-weight-bold, 700);
  font-size: var(--font-size-s, 14px);
  color: var(--color-neutral-600);
  white-space: nowrap;
  border-bottom: 1px solid var(--color-neutral-200);
  vertical-align: middle;
  position: relative;
}

.schedulesTable-module__th--aMeD8:hover .schedulesTable-module__resizeLine--W7sYW {
  opacity: 1;
}

.schedulesTable-module__thInner--wZIyP {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: var(--space-1);
  min-height: 36px;
  min-width: 0;
}

.schedulesTable-module__thLabel--RHgCX {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.schedulesTable-module__thSortBtn--hpdaa {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  cursor: pointer;
  user-select: none;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  color: inherit;
  white-space: nowrap;
  transition: color 0.15s;
  min-width: 0;
  max-width: 100%;
}

.schedulesTable-module__thSortBtn--hpdaa:hover {
  color: var(--color-neutral-900);
}

.schedulesTable-module__thSortBtnActive--OzKUs {
  color: var(--color-neutral-900);
}

.schedulesTable-module__sortArrow--VwWg_ {
  font-size: var(--font-size-xs);
  color: var(--color-neutral-400);
  line-height: 1;
}

.schedulesTable-module__sortArrowActive--B7YAx {
  font-size: var(--font-size-xs);
  color: var(--color-primary-500, #0c6ff9);
  line-height: 1;
}

.schedulesTable-module__resizeHandle--sOCZS {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 8px;
  cursor: col-resize;
  z-index: 1;
}

.schedulesTable-module__resizeLine--W7sYW {
  position: absolute;
  top: 0;
  right: 3px;
  bottom: 0;
  width: 1px;
  background-color: var(--color-neutral-400, #a0a3a8);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s, background-color 0.15s, width 0.15s;
}

.schedulesTable-module__resizeHandle--sOCZS:hover .schedulesTable-module__resizeLine--W7sYW {
  opacity: 1;
  background-color: var(--color-primary-500, #0c6ff9);
  width: 2px;
  right: 3px;
}

.schedulesTable-module__thResizing--iPX6w .schedulesTable-module__resizeLine--W7sYW {
  opacity: 1;
  background-color: var(--color-primary-500, #0c6ff9);
  width: 2px;
}

.schedulesTable-module__row--zRIvH {
  border-bottom: 1px solid var(--color-neutral-200);
  background: var(--color-neutral-bg);
  cursor: pointer;
}

.schedulesTable-module__row--zRIvH:last-child {
  border-bottom: none;
}

.schedulesTable-module__cell--H0A_3 {
  padding: var(--space-1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: var(--font-size-s);
  color: var(--color-neutral-600);
  vertical-align: middle;
}

.schedulesTable-module__nameCell--mBysx {
  font-weight: 600;
  color: var(--color-neutral-900);
}

.schedulesTable-module__actionsCell--NSQ87 {
  padding: var(--space-1);
  width: 48px;
  text-align: right;
  vertical-align: middle;
}

.schedulesTable-module__noResults--sTS2F {
  padding: 32px;
  text-align: center;
  color: var(--color-neutral-500);
}

.schedulesTab-module__root--S2pGU {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding-bottom: var(--space-8);
  min-width: 0;
}

.schedulesTab-module__toolbar--upEHM {
  display: flex;
  flex-direction: column;
  background: var(--color-surface, #ffffff);
  border: 1px solid var(--color-neutral-200, #dfe3e8);
  border-radius: var(--radius-sm, 8px);
  position: relative;
  z-index: 2;
}

.schedulesTab-module__vertDivider--lX_gk {
  width: 1px;
  height: 24px;
  background: #dfe3e8;
  flex-shrink: 0;
}

.schedulesTab-module__rowTop--UZ61j {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px var(--space-2);
  border-bottom: 1px solid var(--color-neutral-200, #dfe3e8);
  gap: var(--space-2);
  flex-wrap: wrap;
}

.schedulesTab-module__countLabel--yJUH9 {
  margin-right: auto;
  text-align: left;
}

.schedulesTab-module__rowTopRight--GqjNx {
  display: flex;
  align-items: center;
  gap: var(--space-1);
  flex-wrap: wrap;
}

.schedulesTab-module__rowBottom--DTpKG {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  padding: 10px 16px;
  gap: 7px;
  background: #f8f9fa;
  border-radius: 0 0 8px 8px;
}

.schedulesTab-module__filtersBtn--b71OA {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  border: 1px solid var(--color-neutral-400);
  border-radius: 4px;
  background: var(--color-white);
  color: var(--color-neutral-900);
  cursor: pointer;
  white-space: nowrap;
  line-height: 1;
  flex-shrink: 0;
}

.schedulesTab-module__filtersBtn--b71OA:hover { background: #f2f2f2; }

.schedulesTab-module__filtersBtnActive--MWeZg {
  background: var(--color-primary-50);
  border-color: var(--color-primary-500);
  color: var(--color-primary-500);
}

.schedulesTab-module__filtersBtnActive--MWeZg:hover { background: var(--color-primary-50); }

.schedulesTab-module__scrollWrap--tVZuU {
  position: relative;
  min-width: 0;
}

.schedulesTab-module__scrollWrap--tVZuU::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 32px;
  background: linear-gradient(to right, transparent, #f8f9fa);
  pointer-events: none;
  z-index: 1;
}

.schedulesTab-module__scrollSection--qXtyK {
  display: flex;
  align-items: center;
  gap: 7px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-right: 24px;
}

.schedulesTab-module__scrollSection--qXtyK::-webkit-scrollbar { display: none; }

.schedulesTab-module__scrollSection--qXtyK > * { flex-shrink: 0; }

.schedulesTab-module__rightGroup--hHX9O {
  display: flex;
  align-items: center;
  gap: 12px;
}

.schedulesTab-module__resetLink--zd9TB {
  background: none;
  border: none;
  cursor: pointer;
  font-size: var(--font-size-s);
  color: var(--color-primary-500);
  padding: 0;
}

.schedulesTab-module__resetLink--zd9TB:hover {
  text-decoration: underline;
}

.schedulesTab-module__count--f7Yx9 {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-neutral-700);
  white-space: nowrap;
}

.schedulesTab-module__loadMoreTrigger--Yzqa6 {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.schedulesTab-module__loadMoreTriggerHidden--ilEyG {
  visibility: hidden;
}

.schedulesTab-module__loadingText--Pb6_K {
  font-size: var(--font-size-s);
  color: var(--color-neutral-500);
}

.schedulesTab-module__empty--oFl9f {
  padding: 32px;
  text-align: center;
  color: var(--color-neutral-500);
}

.settingsPage-module__root--NKfHi {
  min-height: 100vh;
  background: var(--color-neutral-bg);
  overflow-x: hidden;
}

.settingsPage-module__tabContent--ukqf4 {
  padding: var(--space-3) var(--space-4);
  border-top: 1px solid var(--color-neutral-200);
}

.settingsPage-module__placeholder--mMD7o {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  color: var(--color-neutral-500);
  font-size: var(--font-size-m);
}

.connectedSensors-module__root--OPLEZ {
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  overflow: hidden;
  background: var(--color-surface, #fff);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.connectedSensors-module__header--MRhkn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
}

.connectedSensors-module__title--l89Sa { margin: 0; font-size: 16px; color: var(--color-neutral-900); }

.connectedSensors-module__badge--FbQZT {
  font-size: 12px;
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-neutral-600);
  background: var(--color-neutral-100, #f0f1f3);
  padding: 2px 10px;
  border-radius: 12px;
}

.connectedSensors-module__loading--pRvDx { display: flex; justify-content: center; padding: 32px; }

.connectedSensors-module__tableWrap--_Boml { overflow: auto; max-height: 500px; }

.connectedSensors-module__table--L2ZOy { width: 100%; border-collapse: collapse; }

.connectedSensors-module__table--L2ZOy th,
.connectedSensors-module__table--L2ZOy td {
  text-align: left;
  padding: 10px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
  white-space: nowrap;
}

.connectedSensors-module__table--L2ZOy th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--color-surface, #fff);
  font-size: 12px;
  color: var(--color-neutral-600);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.connectedSensors-module__row--rqoBy { cursor: pointer; }
.connectedSensors-module__row--rqoBy:hover { background: var(--color-neutral-50, #f7f7f8); }
.connectedSensors-module__rowExpanded--ZsJow { background: var(--color-neutral-50, #f7f7f8); }

.connectedSensors-module__sensorLink--StIpY {
  color: var(--color-primary-600, #3b82f6);
  text-decoration: none;
  font-weight: var(--font-weight-medium, 500);
}
.connectedSensors-module__sensorLink--StIpY:hover { text-decoration: underline; }

.connectedSensors-module__coreLink--_2s5W {
  color: var(--color-neutral-500);
  text-decoration: none;
  font-size: 13px;
}
.connectedSensors-module__coreLink--_2s5W:hover { text-decoration: underline; }

.connectedSensors-module__noAsset--lXJZ2 { color: var(--color-neutral-400); font-size: 13px; }
.connectedSensors-module__empty--zZO2o { color: var(--color-neutral-600); text-align: center; padding: 28px 16px !important; }
.connectedSensors-module__timestamp--wgGvz { font-size: 13px; color: var(--color-neutral-700); }

.connectedSensors-module__statusCell--zhjBg { display: inline-flex; align-items: center; gap: 6px; }

.connectedSensors-module__gatewayMismatch--hpsUZ {
  display: inline-flex;
  align-items: center;
  cursor: help;
  color: var(--color-amber-500);
}

/* Expand chevron */
.connectedSensors-module__expandCol--inqRb { width: 36px; text-align: center; }
.connectedSensors-module__chevron--bc5lE {
  display: inline-flex;
  transition: transform 0.2s ease;
  color: var(--color-neutral-500);
}
.connectedSensors-module__chevronOpen--n90k6 { transform: rotate(180deg); }

/* Expanded row */
.connectedSensors-module__expandedRow--cMal4 td { padding: 0; border-bottom: 1px solid var(--color-neutral-200); }
.connectedSensors-module__expandedCell--BBeYC { padding: 12px 16px !important; background: var(--color-neutral-50, #f9fafb); }

/* Readings grid — matches v2 sensors list page */
.connectedSensors-module__readingsList--fpfaA {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 8px 12px;
}

.connectedSensors-module__readingsLoading--k1ZBU { display: flex; justify-content: center; padding: 12px 0; }
.connectedSensors-module__readingsEmpty--xo3S4 { font-size: 13px; color: var(--color-neutral-500); margin: 0; padding: 4px 0; }


.batteryTrendChart-module__section--sLVR3 {
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  overflow: visible;
  background: var(--color-white, #fff);
  box-shadow: var(--shadow-sm);
}

.batteryTrendChart-module__header--uYixH {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
}

.batteryTrendChart-module__title--P2BKX {
  margin: 0;
  font-size: 16px;
  color: var(--color-neutral-900);
  white-space: nowrap;
}

.batteryTrendChart-module__headerMeta--bG2xb {
  font-size: 13px;
  font-weight: 400;
  color: var(--color-neutral-500);
}

.batteryTrendChart-module__spacer--FNoX6 {
  flex: 1;
}

.batteryTrendChart-module__syncBtn--YTPIP {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  border: 1px solid var(--color-neutral-300);
  border-radius: 4px;
  background: var(--color-white, #fff);
  color: var(--color-neutral-600, #555);
  cursor: pointer;
  flex-shrink: 0;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
}

.batteryTrendChart-module__syncBtn--YTPIP:hover {
  color: var(--color-neutral-800, #333);
  border-color: var(--color-neutral-400);
  background: var(--color-neutral-50);
}

.batteryTrendChart-module__syncBtnActive--Z1fIr {
  color: var(--color-primary-600, #3451b2);
  border-color: var(--color-primary-300, #93b4ff);
  background: var(--color-primary-50, #edf2fe);
}

.batteryTrendChart-module__syncBtnActive--Z1fIr:hover {
  color: var(--color-primary-700, #2a3f8f);
  background: var(--color-primary-100, #d5dff6);
}

.batteryTrendChart-module__tooltip--frB2F {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  white-space: nowrap;
  background: var(--color-neutral-900, #1a1a1a);
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 400;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.15s;
  z-index: 10;
}

.batteryTrendChart-module__syncBtn--YTPIP:hover .batteryTrendChart-module__tooltip--frB2F {
  opacity: 1;
}

.batteryTrendChart-module__chart--OjDBp {
  padding: 12px 16px 8px;
}

.batteryTrendChart-module__center--BBzea {
  display: flex;
  justify-content: center;
  padding: 32px;
}

.batteryTrendChart-module__empty--Xz9bP {
  color: var(--color-neutral-600);
  text-align: center;
  padding: 28px 16px;
  font-size: 14px;
}

.heartbeatDetail-module__root--uAa4a {
  border-top: 1px solid var(--color-neutral-200);
  padding: 12px 16px;
  background: var(--color-neutral-50, #f9fafb);
}

.heartbeatDetail-module__header--rLFSP {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.heartbeatDetail-module__ts--zWuSI {
  font-weight: 600;
  font-size: 13px;
  color: var(--color-neutral-900);
}

.heartbeatDetail-module__count--qxtEO {
  font-size: 12px;
  color: var(--color-neutral-500);
}

.heartbeatDetail-module__close--hazdQ {
  margin-left: auto;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 14px;
  color: var(--color-neutral-500);
  padding: 2px 6px;
  border-radius: 4px;
}

.heartbeatDetail-module__close--hazdQ:hover {
  background: var(--color-neutral-200);
  color: var(--color-neutral-900);
}

.heartbeatDetail-module__empty--leh0o {
  color: var(--color-neutral-500);
  font-size: 13px;
  margin: 0;
  padding: 4px 0;
}

.heartbeatDetail-module__loading--ZgRLv {
  display: flex;
  justify-content: center;
  padding: 16px 0;
}

.heartbeatDetail-module__sensors--nY67c {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Sensor card — mirrors SensorRow from sensors list page */
.heartbeatDetail-module__sensorCard--KXyTl {
  display: flex;
  flex-direction: column;
  padding: 16px;
  border: 1px solid #e0e1e6;
  border-radius: 8px;
  background: #fcfcfd;
}

.heartbeatDetail-module__sensorTop--Mq4_f {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
}

.heartbeatDetail-module__sensorTitleSection--_cC_U {
  display: flex;
  flex-direction: column;
}

.heartbeatDetail-module__sensorName--Labhe {
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  color: #1c2024;
  text-decoration: none;
}

.heartbeatDetail-module__sensorName--Labhe:hover {
  text-decoration: underline;
}

.heartbeatDetail-module__sensorType--gJMeg {
  font-size: 13px;
  line-height: 20px;
  color: #60646c;
}

.heartbeatDetail-module__sensorMeta--ZSmKf {
  display: flex;
  align-items: center;
  gap: 12px;
}

.heartbeatDetail-module__metaIconGroup--DiktK {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 52px;
}

.heartbeatDetail-module__metaIconLabel--NEzRh {
  font-size: var(--font-size-s);
  line-height: 20px;
  color: #60646c;
  letter-spacing: 0.25px;
  white-space: nowrap;
}

.heartbeatDetail-module__sensorDivider--WuNIV {
  height: 1px;
  background: #e0e1e6;
  margin: 12px 0;
  flex-shrink: 0;
}

.heartbeatDetail-module__sensorBottom--w81R1 {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.heartbeatDetail-module__sensorLocationGroup--_HxDu {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: #60646c;
}

.heartbeatDetail-module__sensorLocation--oLpm1 {
  font-size: 13px;
  color: #60646c;
  text-decoration: none;
}

.heartbeatDetail-module__sensorLocation--oLpm1:hover {
  text-decoration: underline;
}

.heartbeatDetail-module__sensorLocationText--TN9Zk {
  font-size: 13px;
  color: #60646c;
}

.heartbeatDetail-module__sensorLastReading--rBlWz {
  font-size: var(--font-size-s);
  color: #60646c;
  margin-left: auto;
}

.heartbeatDetail-module__sensorLastReading--rBlWz strong {
  font-weight: 500;
}

/* Readings grid — matches sensors list expanded row */
.heartbeatDetail-module__readingsList--uqrN5 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 8px 12px;
  margin-top: 12px;
}


.heartbeatRangePicker-module__root--Rw9q9 {
  position: relative;
}

.heartbeatRangePicker-module__trigger--nGBzU {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: min(620px, 100%);
  justify-content: flex-start;
  padding: 10px 14px;
  font-size: 16px;
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  background: var(--color-surface, #fff);
  color: var(--color-neutral-800);
  cursor: pointer;
}

.heartbeatRangePicker-module__triggerLabel--Lyuap {
  white-space: nowrap;
}

.heartbeatRangePicker-module__chevron--WL3kP {
  margin-left: auto;
  font-size: 20px;
  color: var(--color-neutral-500);
}

.heartbeatRangePicker-module__dropdown--aMcSk {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 20;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  background: var(--color-surface, #fff);
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  min-width: 320px;
}

.heartbeatRangePicker-module__option--p8Gxt {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 8px 10px;
  border: none;
  border-radius: 4px;
  background: transparent;
  font-size: 14px;
  color: var(--color-neutral-900);
  cursor: pointer;
  text-align: left;
  line-height: 1.2;
}

.heartbeatRangePicker-module__option--p8Gxt:hover {
  background: var(--color-neutral-100);
}

.heartbeatRangePicker-module__optionActive--lMnDm {
  background: var(--color-blue-50, #eff6ff);
  color: var(--color-blue-700, #1d4ed8);
}

.heartbeatRangePicker-module__divider--LF4DR {
  height: 1px;
  background: var(--color-neutral-200);
  margin: 4px 0;
}

.heartbeatRangePicker-module__field--cEh5b {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.heartbeatRangePicker-module__fieldLabel--QHclj {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-neutral-500);
}

.heartbeatRangePicker-module__timeRow--tWEk_ {
  display: flex;
  gap: 8px;
}

.heartbeatRangePicker-module__input--of5iM {
  padding: 8px 10px;
  font-size: 14px;
  border: 1px solid var(--color-neutral-300);
  border-radius: 4px;
  color: var(--color-neutral-900);
  width: 100%;
}

.heartbeatRangePicker-module__input--of5iM:focus {
  outline: none;
  border-color: var(--color-blue-400, #60a5fa);
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.heartbeatRangePicker-module__apply--lMe7t {
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 600;
  border: none;
  border-radius: 4px;
  background: var(--color-blue-700, #1d4ed8);
  color: #fff;
  cursor: pointer;
}

.heartbeatRangePicker-module__apply--lMe7t:hover:not(:disabled) {
  background: var(--color-blue-800, #1e40af);
}

.heartbeatRangePicker-module__apply--lMe7t:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.heartbeatRangePicker-module__actions--ThKmA {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 6px;
}

.heartbeatRangePicker-module__cancel--fZa_0 {
  padding: 7px 16px;
  font-size: 14px;
  font-weight: 600;
  border: 1px solid var(--color-neutral-300);
  border-radius: 4px;
  background: var(--color-surface, #fff);
  color: var(--color-neutral-800);
  cursor: pointer;
}

.heartbeatRangePicker-module__customTitle--DwnCb {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--color-neutral-700);
}

.heartbeatRangePicker-module__note--XniXC {
  margin: 0;
  font-size: 14px;
  color: var(--color-neutral-500);
  font-style: italic;
  line-height: 1.3;
}

.heartbeatSparkline-module__root--aDIbZ {
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  overflow: visible;
  background: var(--color-surface, #fff);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.heartbeatSparkline-module__header--RNke5 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
}

.heartbeatSparkline-module__title--F4S6e {
  margin: 0;
  font-size: 16px;
  color: var(--color-neutral-900);
}

.heartbeatSparkline-module__titleInterval--V347d {
  margin-left: 6px;
  font-size: 13px;
  font-weight: 400;
  color: var(--color-neutral-500);
}

.heartbeatSparkline-module__subtitle--SYjGj {
  font-size: 12px;
  color: var(--color-neutral-600);
}

.heartbeatSparkline-module__spacer--TA5Pb {
  flex: 1;
}

.heartbeatSparkline-module__resetZoom--LKx6q {
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 500;
  color: var(--color-neutral-700);
  background: var(--color-neutral-100);
  border: 1px solid var(--color-neutral-300);
  border-radius: 4px;
  cursor: pointer;
  white-space: nowrap;
}

.heartbeatSparkline-module__resetZoom--LKx6q:hover {
  background: var(--color-neutral-200);
}

.heartbeatSparkline-module__center--YSaVa {
  display: flex;
  justify-content: center;
  padding: 32px;
}

.heartbeatSparkline-module__empty--re92X {
  color: var(--color-neutral-600);
  text-align: center;
  padding: 28px 16px;
}

.heartbeatSparkline-module__chart--Op8oG {
  padding: 8px 12px 4px;
}

.settingsGatewayDetailPage-module__root--PacQR {
  display: grid;
  grid-template-rows: auto auto 1fr;
  background: var(--color-surface, #fff);
  border: 1px solid var(--color-neutral-200);
  border-radius: 8px;
  min-height: calc(100vh - 180px);
}

.settingsGatewayDetailPage-module__headerRow--vaDnM {
  min-height: 60px;
  display: grid;
  grid-template-columns: 1fr max-content;
  align-items: center;
  gap: 16px;
  padding: 0 24px;
  border-bottom: 2px solid var(--color-primary-500);
  background: var(--color-surface, #fff);
}

.settingsGatewayDetailPage-module__headerLeft--mKHQu {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.settingsGatewayDetailPage-module__headerRight--Ae91G {
  display: flex;
  align-items: center;
  gap: 12px;
}

.settingsGatewayDetailPage-module__backBtn--YHZqK {
  flex-shrink: 0;
}

.settingsGatewayDetailPage-module__headerDivider--COFed {
  width: 1px;
  height: 24px;
  background-color: var(--color-neutral-300, #d1d5db);
  flex-shrink: 0;
}

.settingsGatewayDetailPage-module__title--zanwc {
  margin: 0;
  color: var(--color-neutral-900);
  font-size: 20px;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settingsGatewayDetailPage-module__timestamp--gKyWJ {
  color: var(--color-neutral-900);
}

.settingsGatewayDetailPage-module__metaText--tqM8G {
  font-size: 12px;
  color: var(--color-neutral-900);
}

.settingsGatewayDetailPage-module__metaTextMuted--SRgMk {
  font-size: 12px;
  color: var(--color-neutral-600);
}

.settingsGatewayDetailPage-module__iconStat--HSGEc {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.settingsGatewayDetailPage-module__metadataRow--QRXmH {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  padding: 16px 24px;
  border-bottom: 1px solid var(--color-neutral-200);
  align-items: center;
  justify-content: space-between;
  background: var(--color-surface, #fff);
}

.settingsGatewayDetailPage-module__metadataLeft--KVLE4,
.settingsGatewayDetailPage-module__metadataRight--WcgGN {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  align-items: center;
}

.settingsGatewayDetailPage-module__metadataRight--WcgGN {
  margin-left: auto;
}

.settingsGatewayDetailPage-module__metaItem--tW7h5 {
  display: flex;
  align-items: center;
  gap: 4px;
}

.settingsGatewayDetailPage-module__metaItemWithGap--xlNMu {
  gap: 8px;
}

.settingsGatewayDetailPage-module__typeBadge--MNKjN {
  padding: 4px 12px;
  border: 1px solid var(--color-neutral-300);
  border-radius: 4px;
}

.settingsGatewayDetailPage-module__typeText--Dzcsr {
  font-size: 12px;
  font-weight: var(--font-weight-semibold, 600);
}

.settingsGatewayDetailPage-module__scheduleChangeBtn--ZbMuS {
  background: none;
  border: none;
  padding: 0;
  margin-left: 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary-500);
  cursor: pointer;
}

.settingsGatewayDetailPage-module__scheduleChangeBtn--ZbMuS:hover {
  text-decoration: underline;
}

.settingsGatewayDetailPage-module__metaIcon--LAypS {
  color: var(--color-neutral-500);
}

.settingsGatewayDetailPage-module__coreLink--zd_tl {
  font-size: 12px;
  color: var(--color-neutral-500);
  text-decoration: none;
}

.settingsGatewayDetailPage-module__coreLink--zd_tl:hover {
  text-decoration: underline;
}

.settingsGatewayDetailPage-module__threeDotBtn--EuXhD {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: var(--radius-2xs, 4px);
  color: var(--color-neutral-600, #60646c);
}

.settingsGatewayDetailPage-module__threeDotBtn--EuXhD:hover,
.settingsGatewayDetailPage-module__threeDotBtn--EuXhD:focus-visible {
  background: var(--color-neutral-alpha-3, rgba(0, 0, 0, 0.06));
  outline: none;
}

.settingsGatewayDetailPage-module__actionsMenu--in4_0 {
  position: fixed;
  z-index: 12000;
  min-width: 160px;
  padding: 4px 0;
  background: #fff;
  border: 1px solid var(--color-neutral-200, #e0e1e6);
  border-radius: var(--radius-xs, 8px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.settingsGatewayDetailPage-module__actionsMenuItem--wckKn {
  display: block;
  width: 100%;
  padding: 8px 14px;
  border: none;
  background: transparent;
  text-align: left;
  font-size: 14px;
  cursor: pointer;
  color: var(--color-neutral-900, #1c2024);
}

.settingsGatewayDetailPage-module__actionsMenuItem--wckKn:hover {
  background: var(--color-neutral-alpha-3, rgba(0, 0, 0, 0.06));
}

.settingsGatewayDetailPage-module__actionsMenuItemDanger--OSSNL {
  color: var(--color-danger-500, #e5484d);
}

.settingsGatewayDetailPage-module__content--dzfb2 {
  display: grid;
  gap: 20px;
  padding: 20px 24px 24px;
  align-content: start;
}

.settingsGatewayDetailPage-module__metricsGrid--vpZed {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 16px;
}

.settingsGatewayDetailPage-module__card--NyWn3 {
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  padding: 14px 16px;
  background: var(--color-surface, #fff);
  display: grid;
  gap: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.settingsGatewayDetailPage-module__cardLabel--e730q {
  color: var(--color-neutral-600);
  font-size: 13px;
}

.settingsGatewayDetailPage-module__cardValue--NuOnL {
  font-size: 22px;
  color: var(--color-neutral-900);
  line-height: 1.2;
}

.settingsGatewayDetailPage-module__section--qm7Gj {
  border: 1px solid var(--color-neutral-200);
  border-radius: 6px;
  overflow: hidden;
  background: var(--color-surface, #fff);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.settingsGatewayDetailPage-module__sectionTitle--JAt03 {
  margin: 0;
  padding: 14px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
  font-size: 16px;
}

.settingsGatewayDetailPage-module__loading--DddM2 {
  display: flex;
  justify-content: center;
  padding: 32px;
}

.settingsGatewayDetailPage-module__tableWrap--i1FSX {
  overflow: auto;
  max-height: 380px;
}

.settingsGatewayDetailPage-module__table--kzXAJ {
  width: 100%;
  border-collapse: collapse;
}

.settingsGatewayDetailPage-module__table--kzXAJ th,
.settingsGatewayDetailPage-module__table--kzXAJ td {
  text-align: left;
  padding: 10px 16px;
  border-bottom: 1px solid var(--color-neutral-200);
  white-space: nowrap;
}

.settingsGatewayDetailPage-module__table--kzXAJ th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--color-surface, #fff);
  font-size: 12px;
  color: var(--color-neutral-600);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.settingsGatewayDetailPage-module__table--kzXAJ tbody tr:hover {
  background: var(--color-neutral-50, #f7f7f8);
}

.settingsGatewayDetailPage-module__empty--CQ9ry {
  color: var(--color-neutral-600);
  text-align: center;
  padding: 28px 16px !important;
}

.settingsGatewayDetailPage-module__editBackdrop--LOZeV {
  position: fixed;
  inset: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.4);
  border: none;
  padding: 0;
  cursor: default;
}

.settingsGatewayDetailPage-module__editSidebar--P5saM {
  position: fixed;
  top: 0;
  right: 0;
  width: 640px;
  height: 100%;
  z-index: 4;
  background-color: #fff;
  overflow-y: auto;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
  transform: translateZ(0);
}

@media (max-width: 767px) {
  .settingsGatewayDetailPage-module__editSidebar--P5saM {
    width: 100%;
  }

  .settingsGatewayDetailPage-module__root--PacQR {
    min-height: 0;
  }

  .settingsGatewayDetailPage-module__headerRow--vaDnM {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 12px 16px;
    gap: 10px;
  }

  .settingsGatewayDetailPage-module__headerRight--Ae91G {
    flex-wrap: wrap;
    gap: 8px;
  }

  .settingsGatewayDetailPage-module__metadataRow--QRXmH {
    gap: 12px 16px;
    padding: 12px 16px;
    justify-content: flex-start;
  }

  .settingsGatewayDetailPage-module__metadataRight--WcgGN {
    margin-left: 0;
  }

  .settingsGatewayDetailPage-module__content--dzfb2 {
    padding: 16px;
    gap: 16px;
  }

  .settingsGatewayDetailPage-module__metricsGrid--vpZed {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .settingsGatewayDetailPage-module__tableWrap--i1FSX {
    max-height: 320px;
  }
}

.settingsDeviceFormPage-module__root--nlNng {
  padding: var(--space-3) var(--space-4);
  max-width: 720px;
}

.settingsDeviceFormPage-module__centered--N1xXz {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  min-height: 240px;
  padding: var(--space-4);
}

.settingsDeviceFormPage-module__title--stvaw {
  margin: var(--space-3) 0 var(--space-4);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-900);
}

.settingsDeviceFormPage-module__toolbar--k5WbW {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.settingsDeviceFormPage-module__toolbarRight--WBs9M {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.settingsDeviceFormPage-module__grid--OXnLZ {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-3);
}

@media (min-width: 600px) {
  .settingsDeviceFormPage-module__grid--OXnLZ {
    grid-template-columns: repeat(2, 1fr);
  }
}

.settingsDeviceFormPage-module__field--ztEXS {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.settingsDeviceFormPage-module__label--tE75O {
  font-size: var(--font-size-s);
  font-weight: var(--font-weight-medium);
  color: var(--color-neutral-700);
}

.settingsDeviceFormPage-module__input--T_OXL {
  width: 100%;
  padding: var(--space-2) var(--space-2);
  font-size: var(--font-size-m);
  font-family: var(--font-family);
  color: var(--color-neutral-900);
  background: var(--color-surface, #fff);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-2xs, 4px);
  box-sizing: border-box;
}

.settingsDeviceFormPage-module__input--T_OXL:disabled {
  color: var(--color-neutral-600);
  background: var(--color-neutral-50, #f7f7f8);
  cursor: not-allowed;
}

.settingsDeviceFormPage-module__input--T_OXL:focus:not(:disabled) {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 1px;
}

/* FONT FACES */
@font-face {
  font-family: Lato;
  font-weight: 400;
  src: url('/ui/fonts/Lato-Regular.woff2') format('woff2'),
    url('/ui/fonts/Lato-Regular.woff') format('woff');
}

@font-face {
  font-family: Lato;
  font-weight: 600;
  src: url('/ui/fonts/Lato-Semibold.woff2') format('woff2'),
    url('/ui/fonts/Lato-Semibold.woff') format('woff');
}

@font-face {
  font-family: Lato;
  font-weight: 800;
  src: url('/ui/fonts/Lato-Heavy.woff2') format('woff2'),
    url('/ui/fonts/Lato-Heavy.woff') format('woff');
}

/* GLOBAL SETUP */
html {
  box-sizing: border-box;
  min-height: 100vh;
  height: auto;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  margin: 0;
  font-family: Lato, sans-serif;
  color: #323233; /* gray900 */
  font-size: 15px;
  line-height: 1;
  min-height: 100vh;
  height: auto;
}

#app-root {
  min-height: 100vh;
  height: auto;
}

/* RESETS */
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

ul, ol {
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
}

a {
  text-decoration: none;
  color: hsl(209, 47%, 26%); /* grey900 */
}

button {
  padding: 0;
  background: none;
  border: none;
  outline: none;
}

::-webkit-input-placeholder {
  color: hsl(208, 13%, 81%); /* grey500 */
  font-style: italic;
}

::-moz-placeholder {
  color: hsl(208, 13%, 81%); /* grey500 */
  font-style: italic;
  opacity: 1;
}

:-ms-input-placeholder {
  color: hsl(208, 13%, 81%); /* grey500 */
  font-style: italic;
}

input[type="radio"] {
  margin: 0;
}

/* styles for modal window*/

#modal-root > div {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 4;
  background-color: rgba(0,0,0,0.5);
}

