@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600&display=swap";:root{--figma-color-blue-200: #afd6ff;--figma-color-blue-400: #2b91ff;--figma-color-blue-500: #0076f5;--figma-color-blue-700: #003b7a;--figma-color-blue-800: #002349;--figma-color-red-500: #cc2836;--figma-color-red-600: #e00000;--figma-color-red-800: #521016;--figma-color-red-200: #f6d3d6;--figma-color-red-300: #ff6b6b;--figma-color-border-error: #eda6ac;--figma-color-border-warning: #ecb07f;--figma-color-borders-error-200: #f6d3d6;--figma-color-borders-error-300: #eda6ac;--figma-color-borders-success-200: #d3eab1;--figma-color-borders-warning-200: #f2caaa;--figma-color-borders-warning-300: #ecb07f;--figma-color-green-600: #00a870;--figma-color-borders-default: #e4e4e4;--figma-color-borders-primary: #e4f1ff;--figma-color-text-body-default: #181818;--figma-color-text-body-neutral: #7a7a7a;--figma-color-text-body-neutral-not-active: #959595;--figma-color-text-body-white: #ffffff;--figma-color-text-button-primary: #ffffff;--figma-color-text-button-secondary: #003b7a;--figma-color-text-disabled-400: #959595;--figma-color-text-error-default: #cc2836;--figma-color-text-heading-default: #002349;--figma-color-text-warning-default: #df7c2a;--figma-color-icons-default: #0053ab;--figma-color-icons-default-hover: #003b7a;--figma-color-icons-disabled: #959595;--figma-color-icons-error: #cc2836;--figma-color-icons-neutral: #626262;--figma-color-icons-success: #90c93b;--figma-color-icons-warning: #df7c2a;--figma-color-surface-background-default: #ffffff;--figma-color-surface-background-neutral-50: #f8f8f8;--figma-color-surface-background-neutral-100: #f2f2f2;--figma-color-surface-background-primary: #f7fbff;--figma-color-surface-background-error: #fbe9ea;--figma-color-surface-background-success-100: #f4faeb;--figma-color-surface-background-success-500: #90c93b;--figma-color-surface-background-warning: #fcf2ea;--figma-color-surface-button-error: #fbe9ea;--figma-color-surface-button-disabled: #f8f8f8;--figma-color-surface-button-primary: #002349;--figma-color-surface-button-secondary: #f7fbff;--figma-color-surface-button-secondary-hover: #e4f1ff;--figma-color-neutral-200: #e4e4e4;--figma-color-neutral-900: #181818;--figma-scale-1: 1px;--figma-scale-32: 32px;--figma-spacing-none: 0;--figma-spacing-2: 2px;--figma-spacing-4: 4px;--figma-spacing-8: 8px;--figma-spacing-12: 12px;--figma-spacing-16: 16px;--figma-spacing-24: 24px;--figma-spacing-32: 32px;--figma-spacing-40: 40px;--figma-spacing-48: 48px;--figma-spacing-52: 52px;--figma-radius-2: 2px;--figma-radius-4: 4px;--figma-radius-8: 8px;--figma-font-family-default: "Outfit", sans-serif;--figma-font-size-body-sm: 12px;--figma-font-size-body-md: 16px;--figma-font-size-body-lg: 20px;--figma-font-size-heading-h3: 40px;--figma-font-size-heading-h4: 32px;--figma-font-size-heading-h5: 24px;--figma-font-size-heading-h6: 20px;--figma-font-size-heading-temperature: 80px;--figma-font-weight-regular: 400;--figma-font-weight-medium: 500;--figma-font-weight-semibold: 600;--figma-font-weight-bold: 600;--app-font-weight-heading: var(--figma-font-weight-semibold);--app-font-weight-heading-h1: var(--figma-font-weight-medium);--figma-line-height-body-sm: 20px;--figma-line-height-body-md: 24px;--figma-line-height-body-lg: 28px;--figma-line-height-heading-h3: 48px;--figma-line-height-heading-h4: 40px;--figma-line-height-heading-h5: 32px;--figma-line-height-heading-h6: 24px;--figma-line-height-heading-temperature: 92px;--figma-letter-spacing-default: 0;--figma-gradient-cold: linear-gradient( 90deg, var(--figma-color-blue-800) 0%, var(--figma-color-blue-700) 37.5%, var(--figma-color-blue-400) 100% );--figma-gradient-warm: linear-gradient(90deg, var(--figma-color-red-800) 0%, var(--figma-color-red-500) 100%);--app-color-background: var(--figma-color-surface-background-default);--app-color-background-muted: var(--figma-color-surface-background-neutral-50);--app-color-background-selected: var(--figma-color-surface-background-neutral-100);--app-color-background-primary: var(--figma-color-surface-background-primary);--app-color-background-error: var(--figma-color-surface-background-error);--app-color-background-success-light: var(--figma-color-surface-background-success-100);--app-color-background-warning: var(--figma-color-surface-background-warning);--app-color-background-success: var(--figma-color-surface-background-success-500);--app-color-button-primary: var(--figma-color-surface-button-primary);--app-color-button-secondary: var(--figma-color-surface-button-secondary);--app-color-border: var(--figma-color-borders-default);--app-color-border-primary: var(--figma-color-borders-primary);--app-color-focus: var(--figma-color-blue-500);--app-color-modal-overlay: rgb(24 24 24 / 30%);--app-color-text: var(--figma-color-text-body-default);--app-color-text-heading: var(--figma-color-text-heading-default);--app-color-text-muted: var(--figma-color-text-disabled-400);--app-color-text-neutral: var(--figma-color-text-body-neutral);--app-color-text-on-dark: var(--figma-color-text-body-white);--app-color-text-error: var(--figma-color-text-error-default);--app-color-text-warning: var(--figma-color-text-warning-default);--app-color-text-button-primary: var(--figma-color-text-button-primary);--app-color-text-button-secondary: var(--figma-color-text-button-secondary);--app-color-chart-temperature: var(--figma-color-icons-success);--app-color-chart-max: var(--figma-color-icons-error);--app-color-chart-min: var(--figma-color-icons-default);--app-color-chart-outage: var(--app-color-background-muted);--app-color-chart-failure: var(--app-color-background-error);--app-color-chart-grid: var(--app-color-border);--app-color-chart-axis: var(--app-color-text-muted);--app-color-chart-label: var(--app-color-text-neutral);--app-gradient-cold: var(--figma-gradient-cold);--app-gradient-warm: var(--figma-gradient-warm);--app-shadow-default: 0 4px 20px var(--figma-color-neutral-200);--app-frame-sensors-height: 805px;--app-frame-gateways-height: 837px;--app-header-height: 73px;--app-header-content-height: 72px;--app-header-tabs-left: 546px;--app-status-tabs-height: 104px;--app-card-grid-gap: 16px;--app-device-card-height: 260px;--app-gateway-card-height: 108px;--app-gateways-grid-height: 660px;--app-temperature-block-height: 156px;--app-card-footer-height: 90px;--app-tabs-height: 40px;--app-tab-height: 30px;--app-icon-size: 24px;--app-profile-size: 32px;--app-tabs-gap: 6px;--app-border-width: var(--figma-scale-1);--app-dashboard-min-width: 1024px;--app-header-brand-width: 287px;--app-header-tab-min-width: 125px;--app-status-tab-min-width: 103px;--app-tablet-breakpoint: 900px;--app-desktop-compact-breakpoint: 1180px;--app-radius-pill: 100px;--app-temperature-unit-offset-bottom: 16px;--app-temperature-unit-offset-left: 12px;--app-color-icons-hover: var(--figma-color-icons-default-hover);--app-color-button-secondary-hover: var(--figma-color-surface-button-secondary-hover);--app-hover-tab-background: var(--app-color-background-primary);--app-hover-alert-tab-background: var(--app-color-background-error);--app-hover-discover-background: var(--app-color-button-secondary-hover);--app-hover-menu-background: var(--app-color-background-primary);--app-icon-hover-filter: brightness(0) saturate(100%) invert(15%) sepia(95%) saturate(1904%) hue-rotate(191deg) brightness(90%) contrast(103%);--app-icon-disabled-filter: brightness(0) saturate(100%) invert(65%) sepia(0%) saturate(1%) hue-rotate(179deg) brightness(92%) contrast(88%);--app-action-hover-opacity: .72;--app-action-pressed-scale: .96;--app-action-pressed-offset: var(--figma-scale-1);--app-popover-offset: var(--figma-spacing-8);--app-profile-menu-width: 205px;--app-notifications-panel-width: 440px;--app-side-panel-width: 540px;--app-side-panel-height: 850px;--app-field-height: 40px;--app-panel-device-icon-box: 56px;--app-small-icon-size: 16px;--app-sensor-menu-width: 221px;--app-sensor-menu-height: 168px;--app-gateway-menu-width: 187px;--app-gateway-menu-height: 112px;--app-temperature-summary-height: 136px;--app-chart-height: 331px;--app-delete-popup-width: 561px;--app-delete-popup-height: 314px;--app-success-popup-height: 200px;--app-settings-content-width: 600px;--app-settings-content-height: 681px}@media (min-width: 1181px) and (max-width: 1600px){:root{--figma-font-size-body-lg: 18px;--figma-line-height-body-lg: 26px;--figma-font-size-heading-h4: 30px;--figma-line-height-heading-h4: 38px;--figma-font-size-heading-h5: 22px;--figma-line-height-heading-h5: 30px;--figma-font-size-heading-temperature: 72px;--figma-line-height-heading-temperature: 84px}}@media (min-width: 901px) and (max-width: 1180px){:root{--figma-font-size-body-lg: 18px;--figma-line-height-body-lg: 26px;--figma-font-size-heading-h4: 28px;--figma-line-height-heading-h4: 36px;--figma-font-size-heading-h5: 22px;--figma-line-height-heading-h5: 30px;--figma-font-size-heading-temperature: 64px;--figma-line-height-heading-temperature: 76px}}*{box-sizing:border-box}.visually-hidden{position:absolute;width:var(--figma-scale-1);height:var(--figma-scale-1);padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html,body,#app{min-height:100%}body{margin:0;background:var(--app-color-background);color:var(--app-color-text);font-family:var(--figma-font-family-default);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);letter-spacing:var(--figma-letter-spacing-default)}button{border:0;color:inherit;font:inherit}.dashboard-shell{width:100%;min-width:var(--app-dashboard-min-width);min-height:var(--app-frame-sensors-height);background:var(--app-color-background)}.dashboard-shell.has-settings-page{min-height:100vh;background:var(--app-color-background-muted)}.app-header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;width:100%;height:var(--app-header-height);padding:var(--figma-spacing-16) var(--figma-spacing-24);border-bottom:var(--app-border-width) solid var(--app-color-border);background:var(--app-color-background)}.brand-group,.brand,.header-actions,.discover-label,.tabs,.tab,.device-title-row,.app-chip,.battery-chip,.temperature-row,.alert-line,.offline-heading{display:flex;align-items:center}.brand-group{flex:0 0 var(--app-header-brand-width);gap:var(--figma-spacing-8)}.brand{gap:var(--figma-spacing-8);padding:var(--figma-spacing-none);border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.brand-mark{width:var(--figma-scale-32);height:var(--figma-scale-32);border-radius:var(--figma-radius-4);background:var(--app-gradient-cold)}.brand-word{color:var(--app-color-text-heading);font-size:var(--figma-font-size-body-lg);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-lg);white-space:nowrap}.brand-word strong{color:var(--app-color-focus);font-weight:var(--figma-font-weight-medium)}.brand-divider{width:var(--app-border-width);height:var(--figma-scale-32);background:var(--app-color-border)}.company-name{color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-lg);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-lg);white-space:nowrap}.tabs{gap:var(--app-tabs-gap);padding:var(--figma-spacing-4);border:var(--app-border-width) solid var(--app-color-border);border-radius:var(--figma-radius-4);background:var(--app-color-background)}.tab{height:var(--app-tab-height);gap:var(--figma-spacing-8);align-items:center;justify-content:center;padding:var(--figma-spacing-4) var(--figma-spacing-24);border-radius:var(--figma-radius-2);background:var(--app-color-background);color:var(--app-color-text-muted);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md);white-space:nowrap;cursor:pointer}.tab:hover{background:var(--app-color-background-selected)}.tab:not(.is-active):hover{color:var(--app-color-text-muted)}.tab.is-alert:not(.is-active):hover{color:var(--app-color-text-error)}.tab:focus-visible,.discover-button:focus-visible,.notification-button:focus-visible,.profile-button:focus-visible,.menu-button:focus-visible{outline:var(--figma-spacing-2) solid var(--app-color-focus);outline-offset:var(--figma-spacing-2)}.tab.is-active{background:var(--app-color-background-selected);color:var(--app-color-text)}.tab.is-alert{color:var(--app-color-text-error)}.tab-label{font-weight:var(--figma-font-weight-medium)}.tab-count{font-weight:var(--figma-font-weight-regular)}.header-tabs{position:absolute;left:50%;top:var(--figma-spacing-16);transform:translate(-50%);height:var(--app-tabs-height)}.header-tabs .tab{min-width:var(--app-header-tab-min-width)}.header-actions{gap:var(--figma-spacing-24)}.discover-button{display:flex;align-items:center;justify-content:center;gap:var(--figma-spacing-16);height:var(--app-tabs-height);padding:var(--figma-spacing-4) var(--figma-spacing-16);border:var(--app-border-width) solid var(--app-color-border-primary);border-radius:var(--figma-radius-4);background:var(--app-color-button-secondary);color:var(--figma-color-blue-700);cursor:pointer;transition:background .18s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1)}.discover-button:hover{background:var(--app-hover-discover-background)}.discover-button:disabled{border-color:var(--app-color-border);background:var(--app-color-background-muted);color:var(--app-color-text-muted);cursor:not-allowed}.discover-button:disabled .count-chip{background:var(--app-color-text-muted)}.discover-button:disabled .icon-glyph{filter:var(--app-icon-disabled-filter)}.discover-button:hover .icon-glyph,.notification-button:hover .icon-glyph,.menu-button:hover .icon-glyph,.side-panel-close:hover .icon-glyph,.sensor-actions-menu-item:hover .icon-glyph,.gateway-actions-menu-item:hover .icon-glyph{filter:var(--app-icon-hover-filter)}.discover-button:disabled:hover .icon-glyph{filter:var(--app-icon-disabled-filter)}.profile-button:hover{box-shadow:inset 0 0 0 var(--app-border-width) var(--figma-color-blue-400)}.discover-button:active{transform:translateY(var(--app-action-pressed-offset))}.discover-label{gap:var(--figma-spacing-8);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md)}.count-chip{display:grid;place-items:center;width:var(--app-icon-size);height:var(--app-icon-size);border-radius:var(--figma-radius-4);background:var(--app-color-background-success);color:var(--app-color-text-on-dark);font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-sm)}.notification-button,.menu-button,.profile-button{display:grid;place-items:center;padding:0;background:transparent;cursor:pointer;transition:transform .14s cubic-bezier(.22,1,.36,1)}.notification-button,.menu-button{position:relative;width:var(--app-icon-size);height:var(--app-icon-size)}.notification-dot{position:absolute;top:var(--figma-spacing-2);right:var(--figma-spacing-2);width:6px;height:6px;border-radius:var(--app-radius-pill);background:var(--figma-color-red-600)}.profile-button{width:var(--figma-scale-32);height:var(--figma-scale-32);border-radius:var(--app-radius-pill);background:var(--app-gradient-cold);color:var(--app-color-text-on-dark);font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-sm);transition:box-shadow .18s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1)}.notification-button:active,.menu-button:active,.profile-button:active,.side-panel-close:active,.app-snackbar-close:active,.app-snackbar-retry:active{transform:translateY(var(--app-action-pressed-offset))}.header-popover{position:absolute;z-index:20;top:calc(var(--figma-spacing-16) + var(--figma-scale-32) + var(--app-popover-offset));transform-origin:top right}.profile-popover{right:var(--figma-spacing-24)}.notifications-popover{right:calc(var(--figma-spacing-24) + var(--figma-scale-32) + var(--figma-spacing-24))}.popover-dismiss-layer{position:fixed;inset:var(--figma-spacing-none);z-index:10;background:transparent}.menu-dismiss-layer{position:fixed;inset:var(--figma-spacing-none);z-index:8;background:transparent}.profile-menu,.notifications-panel,.discoverable-panel{border-radius:var(--figma-radius-4);background:var(--app-color-background);box-shadow:var(--app-shadow-default)}.profile-menu{display:flex;flex-direction:column;width:var(--app-profile-menu-width);padding:var(--figma-spacing-16) var(--figma-spacing-none) var(--figma-spacing-none)}.profile-menu-user{display:flex;flex-direction:column;padding:var(--figma-spacing-none) var(--figma-spacing-16) var(--figma-spacing-16)}.profile-menu-user p,.profile-menu-user span,.profile-menu-item,.text-action,.notification-copy h3,.notification-copy p,.notification-time,.side-panel-header h2,.side-panel-header p,.discoverable-device-copy h3,.discoverable-device-copy p,.form-field span,.form-field input,.select-field{letter-spacing:var(--figma-letter-spacing-default)}.profile-menu-user p{margin:var(--figma-spacing-none);color:var(--app-color-text);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md)}.profile-menu-user span{color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.panel-divider{width:100%;height:var(--app-border-width);background:var(--app-color-border)}.profile-menu-item{display:flex;align-items:center;gap:var(--figma-spacing-8);height:56px;width:100%;padding:var(--figma-spacing-16);background:transparent;color:var(--app-color-text);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md);cursor:pointer}.profile-menu-item:hover{background:var(--app-hover-menu-background)}.settings-page{display:flex;flex-direction:column;align-items:center;min-height:calc(100vh - var(--app-header-height));padding:var(--figma-spacing-none);background:var(--app-color-background)}.settings-page-header{display:flex;align-items:center;width:min(var(--app-settings-content-width),calc(100% - var(--figma-spacing-48)));padding:var(--figma-spacing-24) var(--figma-spacing-none)}.settings-back-button{display:flex;align-items:center;gap:var(--figma-spacing-8);min-width:var(--figma-spacing-none);min-height:var(--figma-line-height-heading-h5);background:transparent;color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h5);font-weight:var(--figma-font-weight-semibold);line-height:var(--figma-line-height-heading-h5);cursor:pointer}.settings-back-button:hover .icon-glyph{filter:var(--app-icon-hover-filter)}.settings-page-title{display:block}.settings-content-band{display:flex;flex:1 0 auto;justify-content:center;align-items:flex-start;width:100%;min-height:0;padding:var(--figma-spacing-32);background:var(--app-color-background-muted)}.settings-card{border-radius:var(--figma-radius-8);background:var(--app-color-background);box-shadow:none}.profile-settings-card{display:flex;flex-direction:column;gap:var(--figma-spacing-40);width:min(var(--app-settings-content-width),100%);padding:var(--figma-spacing-24) var(--figma-spacing-none)}.settings-section{display:flex;flex-direction:column;gap:var(--figma-spacing-24);padding:var(--figma-spacing-none) var(--figma-spacing-24)}.settings-section-kicker{margin:var(--figma-spacing-none);color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h6);font-weight:var(--figma-font-weight-semibold);line-height:var(--figma-line-height-heading-h6);letter-spacing:var(--figma-letter-spacing-default);text-transform:none}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--figma-spacing-16)}.settings-form-field-wide{width:100%}.settings-divider{width:100%;height:var(--app-border-width);background:var(--app-color-border)}.settings-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--figma-spacing-16);padding:var(--figma-spacing-none) var(--figma-spacing-24)}.settings-save-status{color:var(--figma-color-icons-success);font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.settings-save-button{min-width:96px}.notification-settings-page{background:var(--app-color-background)}.settings-row-icon{display:grid;place-items:center;flex:0 0 auto;width:56px;height:56px;border-radius:var(--figma-radius-4);background:var(--app-color-background-primary)}.notification-channel-copy p{margin:var(--figma-spacing-none);color:var(--app-color-text-neutral)}.notification-settings-intro,.notification-channel-copy p{font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.notification-settings-card{display:flex;flex-direction:column;gap:var(--figma-spacing-40);width:min(var(--app-settings-content-width),100%);padding:var(--figma-spacing-24) var(--figma-spacing-none)}.notification-settings-intro{width:auto;margin:var(--figma-spacing-none);padding:var(--figma-spacing-none) var(--figma-spacing-24);color:var(--app-color-text);white-space:nowrap}.notification-settings-list{display:flex;flex-direction:column;justify-content:space-between;height:248px;padding:var(--figma-spacing-none) var(--figma-spacing-24)}.notification-settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--figma-spacing-24)}.notification-method-main{display:flex;align-items:center;gap:var(--figma-spacing-8);min-width:var(--figma-spacing-none)}.notification-channel-copy{min-width:var(--figma-spacing-none)}.notification-channel-copy h2{margin:var(--figma-spacing-none);color:var(--app-color-text);font-size:var(--figma-font-size-body-lg);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-lg)}.settings-toggle{position:relative;flex:0 0 auto;display:grid;place-items:center;width:var(--app-icon-size);height:var(--app-icon-size);padding:var(--figma-spacing-none);background:transparent;cursor:pointer}.settings-toggle-track{position:relative;display:block;width:var(--app-icon-size);height:15px;border-radius:var(--app-radius-pill);background:transparent url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20style='display:%20block;'%20viewBox='0%200%2024%2015'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Icon'%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M7.5%200H16.5C20.6421%200%2024%203.35786%2024%207.5C24%2011.6421%2020.6421%2015%2016.5%2015H7.5C3.35786%2015%200%2011.6421%200%207.5C0%203.35786%203.35786%200%207.5%200ZM12.8561%202.25H16.5C19.3995%202.25%2021.75%204.60051%2021.75%207.5C21.75%2010.3995%2019.3995%2012.75%2016.5%2012.75H12.8561C14.1823%2011.3972%2015%209.54409%2015%207.5C15%205.45591%2014.1823%203.60281%2012.8561%202.25ZM7.5%202.25C4.60051%202.25%202.25%204.60051%202.25%207.5C2.25%2010.3995%204.60051%2012.75%207.5%2012.75C10.3995%2012.75%2012.75%2010.3995%2012.75%207.5C12.75%204.60051%2010.3995%202.25%207.5%202.25Z'%20fill='var(--fill-0,%20%230053AB)'/%3e%3c/svg%3e") center / 100% 100% no-repeat;transition:opacity .16s ease}.settings-toggle.is-on .settings-toggle-track{background-image:url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20style='display:%20block;'%20viewBox='0%200%2024%2015'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Icon'%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M16.5%200H7.5C3.35786%200%200%203.35786%200%207.5C0%2011.6421%203.35786%2015%207.5%2015H16.5C20.6421%2015%2024%2011.6421%2024%207.5C24%203.35786%2020.6421%200%2016.5%200ZM11.1439%202.25H7.5C4.6005%202.25%202.25%204.60051%202.25%207.5C2.25%2010.3995%204.6005%2012.75%207.5%2012.75H11.1439C9.81774%2011.3972%209%209.54409%209%207.5C9%205.45591%209.81774%203.60281%2011.1439%202.25ZM16.5%202.25C19.3995%202.25%2021.75%204.60051%2021.75%207.5C21.75%2010.3995%2019.3995%2012.75%2016.5%2012.75C13.6005%2012.75%2011.25%2010.3995%2011.25%207.5C11.25%204.60051%2013.6005%202.25%2016.5%202.25Z'%20fill='var(--fill-0,%20%230053AB)'/%3e%3c/svg%3e")}.settings-toggle:focus-visible{outline:var(--figma-spacing-2) solid var(--app-color-focus);outline-offset:var(--figma-spacing-2)}.settings-toggle-thumb{position:absolute;top:1.5px;left:10.5px;display:none;width:12px;height:12px;border-radius:50%;background:transparent url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20style='display:%20block;'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20id='Ellipse%202'%20cx='6'%20cy='6'%20r='6'%20fill='var(--fill-0,%20%23002349)'/%3e%3c/svg%3e") center / 100% 100% no-repeat;box-shadow:none;transform:none;transition:none}.settings-toggle.is-on .settings-toggle-thumb{display:block;transform:none}.settings-toggle:disabled{cursor:not-allowed}.settings-toggle:disabled .settings-toggle-track{background-image:url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20style='display:%20block;'%20viewBox='0%200%2024%2015'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20id='Icon'%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M7.5%200H16.5C20.6421%200%2024%203.35786%2024%207.5C24%2011.6421%2020.6421%2015%2016.5%2015H7.5C3.35786%2015%200%2011.6421%200%207.5C0%203.35786%203.35786%200%207.5%200ZM12.8561%202.25H16.5C19.3995%202.25%2021.75%204.60051%2021.75%207.5C21.75%2010.3995%2019.3995%2012.75%2016.5%2012.75H12.8561C14.1823%2011.3972%2015%209.54409%2015%207.5C15%205.45591%2014.1823%203.60281%2012.8561%202.25ZM7.5%202.25C4.60051%202.25%202.25%204.60051%202.25%207.5C2.25%2010.3995%204.60051%2012.75%207.5%2012.75C10.3995%2012.75%2012.75%2010.3995%2012.75%207.5C12.75%204.60051%2010.3995%202.25%207.5%202.25Z'%20fill='var(--fill-0,%20%23959595)'/%3e%3c/svg%3e")}.snackbar-motion-layer{position:fixed;z-index:60;bottom:var(--figma-spacing-24);left:var(--figma-spacing-24);will-change:transform,opacity}.app-snackbar{display:flex;align-items:center;gap:var(--figma-spacing-40);padding:var(--figma-spacing-8) var(--figma-spacing-16);border:var(--app-border-width) solid var(--figma-color-borders-success-200);border-radius:var(--figma-radius-4);background:var(--app-color-background-success-light);box-shadow:none}.app-snackbar.is-error{border-color:var(--figma-color-border-error);background:var(--app-color-background-error)}.app-chip{display:inline-flex;align-items:center;justify-content:center;width:fit-content;gap:var(--figma-spacing-4);min-height:20px;padding:var(--figma-spacing-2) var(--figma-spacing-8);border:var(--app-border-width) solid var(--figma-color-borders-warning-200);border-radius:var(--figma-radius-2);background:var(--app-color-background-warning);color:var(--app-color-text);font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-sm);white-space:nowrap}.app-chip .chip-icon{width:16px;height:16px;flex:0 0 16px}.app-chip .chip-icon .icon-glyph{top:50%;left:50%;transform:translate(-50%,-50%)}.app-chip .icon-battery-full .icon-glyph,.app-chip .icon-battery-half .icon-glyph,.app-chip .icon-battery-success .icon-glyph,.app-chip .icon-battery-empty .icon-glyph{width:16px;height:12px}.app-chip .icon-battery-muted .icon-glyph,.app-chip .icon-error .icon-glyph,.app-chip .icon-history-check .icon-glyph{width:16px;height:16px}.app-chip .icon-gateway-signal-good .icon-glyph,.app-chip .icon-gateway-signal-no .icon-glyph{width:14px;height:16px}.app-chip .icon-gateway-signal-medium .icon-glyph{width:12px;height:16px}.app-chip .icon-gateway-signal-weak .icon-glyph{width:10px;height:16px}.app-chip.is-success{border-color:var(--figma-color-borders-success-200);background:var(--app-color-background-success-light)}.app-chip.is-warning{border-color:var(--figma-color-borders-warning-200);background:var(--app-color-background-warning)}.app-chip.is-error{border-color:var(--figma-color-borders-error-200);background:var(--app-color-background-error);color:var(--app-color-text)}.app-chip.is-muted{border-color:var(--app-color-border);background:var(--app-color-background-muted);color:var(--app-color-text-muted)}.app-snackbar-content{display:flex;align-items:center;gap:var(--figma-spacing-16)}.app-snackbar-message{display:flex;align-items:center;gap:6px}.app-snackbar-message p{margin:var(--figma-spacing-none);color:var(--app-color-text);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md);white-space:nowrap}.app-snackbar-retry,.app-snackbar-close{display:flex;align-items:center;justify-content:center;padding:var(--figma-spacing-none);background:transparent;cursor:pointer}.app-snackbar-retry{color:var(--app-color-text-error);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md)}.app-snackbar-close{width:16px;height:16px}.app-snackbar-close:hover .icon-glyph{filter:var(--app-icon-hover-filter)}.notifications-panel{display:flex;flex-direction:column;gap:var(--figma-spacing-16);width:var(--app-notifications-panel-width);padding:var(--figma-spacing-16) var(--figma-spacing-none)}.notifications-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--figma-spacing-24);min-height:423px;padding:var(--figma-spacing-16)}.notifications-empty-illustration{display:block;width:140px;height:140px}.notifications-empty-state p{margin:0;color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h6);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h6);text-align:center}.panel-loading-state{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:var(--figma-spacing-24);min-height:320px;padding:var(--figma-spacing-32) var(--figma-spacing-24);color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md);text-align:center}.panel-loading-state p{margin:0}.notifications-header,.notifications-title,.notification-main,.notification-copy-row,.notification-time{display:flex;align-items:center}.notifications-header{justify-content:space-between;width:100%;padding:var(--figma-spacing-none) var(--figma-spacing-16)}.notifications-title{gap:var(--figma-spacing-8)}.notifications-title h2{margin:var(--figma-spacing-none);color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h6);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h6)}.text-action{padding:var(--figma-spacing-none);background:transparent;color:var(--app-color-text-button-secondary);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md);cursor:pointer}.notification-row{display:flex;flex-direction:column;gap:var(--figma-spacing-8);width:100%;padding:var(--figma-spacing-none) var(--figma-spacing-16)}.notification-main{justify-content:space-between;align-items:flex-start;width:100%}.notification-copy-row{gap:var(--figma-spacing-8)}.notification-copy h3,.notification-copy p{margin:var(--figma-spacing-none);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md);white-space:nowrap}.notification-copy h3{color:var(--app-color-text);font-weight:var(--app-font-weight-heading)}.notification-copy p{color:var(--app-color-text-neutral);font-weight:var(--figma-font-weight-regular)}.mark-read-button{display:grid;place-items:center;width:var(--app-icon-size);height:var(--app-icon-size);padding:var(--figma-spacing-none);background:transparent;cursor:pointer}.mark-read-button .icon{width:var(--figma-spacing-16);height:var(--figma-spacing-16)}.mark-read-button .icon-mark-as-read{--icon-glyph-width: 13.06px;--icon-glyph-height: 9.59px}.notification-time{gap:var(--figma-spacing-4);padding-left:var(--figma-spacing-32);color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.small-icon{width:var(--app-small-icon-size);height:var(--app-small-icon-size)}.loading-matrix{position:relative;display:block;width:40px;aspect-ratio:1;flex:0 0 auto;--loader-color: var(--figma-color-icons-default);contain:layout paint}.loading-matrix-rect{position:absolute;display:block;box-sizing:border-box;border:2px solid var(--loader-color);border-radius:var(--figma-radius-2);background:transparent;animation:loading-matrix 1.5s infinite}.loading-matrix-rect.is-top-left{top:0;left:0;width:25px;height:11px}.loading-matrix-rect.is-top-right{top:0;right:0;width:11px;height:11px;animation-delay:.1s}.loading-matrix-rect.is-bottom-right{right:0;bottom:0;width:11px;height:25px;animation-delay:.2s}.loading-matrix-rect.is-bottom-left{bottom:0;left:0;width:25px;height:25px;animation-delay:.3s}@keyframes loading-matrix{0%{transform:scaleY(.44);transform-origin:top left}25%{transform:scaleY(1)}50%{transform:scaleX(.44)}75%{transform:scale(1)}to{transform:scaleY(.44);transform-origin:top left}}@media (prefers-reduced-motion: reduce){.loading-matrix-rect{animation:none}}.status-tabs-section{width:100%;height:var(--app-status-tabs-height);padding:var(--figma-spacing-32) var(--figma-spacing-24);overflow-x:auto}.side-panel-layer{position:fixed;inset:var(--figma-spacing-none);z-index:30;display:flex;align-items:flex-start;justify-content:flex-end;pointer-events:auto}.modal-layer{position:fixed;inset:var(--figma-spacing-none);z-index:40;display:grid;place-items:center;background:var(--app-color-modal-overlay)}.discoverable-panel{display:flex;flex-direction:column;gap:var(--figma-spacing-32);width:var(--app-side-panel-width);height:100vh;min-height:100vh;overflow:hidden}.side-panel-header{display:flex;flex-direction:column;gap:var(--figma-spacing-2);width:100%;padding:var(--figma-spacing-24) var(--figma-spacing-24) var(--figma-spacing-none)}.side-panel-title-row,.discoverable-device,.discoverable-device-summary,.discoverable-name-row,.primary-action-button,.secondary-action-button,.activate-sensor-button,.select-field{display:flex;align-items:center}.side-panel-title-row{justify-content:space-between;width:100%}.side-panel-header h2{margin:var(--figma-spacing-none);color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h4);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h4);white-space:nowrap}.side-panel-header p{margin:var(--figma-spacing-none);color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.side-panel-close{display:grid;place-items:center;width:var(--app-icon-size);height:var(--app-icon-size);padding:var(--figma-spacing-none);background:transparent;cursor:pointer}.discoverable-list{display:flex;flex-direction:column;width:100%}.discoverable-device{justify-content:space-between;width:100%;padding:var(--figma-spacing-24)}.discoverable-device-summary{gap:var(--figma-spacing-8)}.device-icon-box{display:grid;place-items:center;width:var(--app-panel-device-icon-box);height:var(--app-panel-device-icon-box);border-radius:var(--figma-radius-4);background:var(--app-color-background-primary)}.discoverable-device-copy{display:flex;flex-direction:column;gap:var(--figma-spacing-2)}.discoverable-name-row{gap:var(--figma-spacing-12)}.discoverable-device-copy h3{margin:var(--figma-spacing-none);color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h6);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h6);white-space:nowrap}.discoverable-device-copy p{margin:var(--figma-spacing-none);color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md);white-space:nowrap}.signal-chip.is-strong{background:var(--app-color-background-success-light)}.primary-action-button,.activate-sensor-button{justify-content:center;gap:var(--figma-spacing-8);height:var(--app-field-height);padding:var(--figma-spacing-4) var(--figma-spacing-16);border-radius:var(--figma-radius-4);background:var(--app-color-button-primary);color:var(--app-color-text-button-primary);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md);cursor:pointer;transition:background .18s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1)}.primary-action-button:hover,.activate-sensor-button:hover{background:var(--figma-color-blue-800)}.primary-action-button:disabled,.activate-sensor-button:disabled{background:var(--app-color-background-muted);color:var(--app-color-text-muted);cursor:not-allowed}.primary-action-button:disabled .icon-glyph,.activate-sensor-button:disabled .icon-glyph{filter:var(--app-icon-disabled-filter)}.secondary-action-button{justify-content:center;gap:var(--figma-spacing-8);height:var(--app-field-height);padding:var(--figma-spacing-4) var(--figma-spacing-16);border:var(--app-border-width) solid var(--app-color-border-primary);border-radius:var(--figma-radius-4);background:var(--app-color-button-secondary);color:var(--app-color-text-button-secondary);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md);cursor:pointer;transition:background .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),color .18s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1)}.secondary-action-button:hover{background:var(--app-color-button-secondary-hover)}.primary-action-button:active,.activate-sensor-button:active,.secondary-action-button:active{transform:translateY(var(--app-action-pressed-offset))}.activation-form{display:flex;flex-direction:column;gap:var(--figma-spacing-16);width:100%;padding:var(--figma-spacing-none) var(--figma-spacing-24) var(--figma-spacing-24)}.form-field{display:flex;flex-direction:column;gap:var(--figma-spacing-2);position:relative;min-width:var(--figma-spacing-none);width:100%}.form-field>span:first-child{color:var(--app-color-text);font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.form-field input,.select-field{width:100%;height:var(--app-field-height);padding:var(--figma-spacing-8) var(--figma-spacing-16);border:var(--app-border-width) solid var(--app-color-border-primary);border-radius:var(--figma-radius-4);background:var(--app-color-background);color:var(--app-color-text);font:inherit;font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.form-field.has-error input,.form-field.has-error input:hover,.form-field.has-error input:focus-visible{border-color:var(--app-color-text-error)}.form-field input:hover,.select-field:hover{border-color:var(--figma-color-blue-200);background:var(--app-color-background)}.form-field input:focus-visible,.select-field:focus-visible{border-color:var(--figma-color-blue-200);background:var(--app-color-background);outline:none}.secondary-action-button:focus-visible,.primary-action-button:focus-visible,.activate-sensor-button:focus-visible,.danger-action-button:focus-visible{outline:var(--figma-spacing-2) solid var(--app-color-focus);outline-offset:var(--figma-spacing-2)}.form-field input::placeholder{color:var(--app-color-text-neutral);opacity:1}.form-error,.form-helper{font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.form-error{color:var(--app-color-text-error)}.form-helper{color:var(--app-color-text-neutral)}.select-field{justify-content:space-between;padding-right:var(--figma-spacing-8)}.select-field-button{cursor:pointer;text-align:left}.select-field-button.is-open{border-color:var(--figma-color-blue-200)}.select-menu{position:absolute;z-index:5;top:calc(var(--figma-line-height-body-sm) + var(--figma-spacing-2) + var(--app-field-height) + var(--figma-spacing-4));right:var(--figma-spacing-none);left:var(--figma-spacing-none);display:flex;flex-direction:column;padding:var(--figma-spacing-4) var(--figma-spacing-none);border:var(--app-border-width) solid var(--app-color-border);border-radius:var(--figma-radius-4);background:var(--app-color-background);box-shadow:var(--app-shadow-default)}.select-option{width:100%;padding:var(--figma-spacing-8) var(--figma-spacing-16);background:transparent;color:var(--app-color-text);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md);text-align:left;cursor:pointer}.select-option:hover,.select-option[aria-selected=true]{background:var(--app-hover-tab-background)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(var(--figma-spacing-none),1fr));gap:var(--figma-spacing-16);width:100%}.activate-sensor-button{width:100%}.status-tabs{width:max-content;height:var(--app-tabs-height)}.status-tabs .tab{min-width:var(--app-status-tab-min-width)}.cards-grid,.gateway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--figma-spacing-16);width:100%;padding:var(--figma-spacing-24) var(--figma-spacing-24) var(--figma-spacing-32)}.gateway-grid{align-content:start;min-height:var(--app-gateways-grid-height)}.empty-state-view{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--figma-spacing-32);width:100%;min-height:calc(100vh - var(--app-header-height));padding:var(--figma-spacing-32) var(--figma-spacing-24);text-align:center}.empty-state-illustration{display:block;width:140px;height:140px}.empty-state-copy{display:flex;flex-direction:column;align-items:center;gap:var(--figma-spacing-8)}.empty-state-view h2{margin:0;color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h3);font-weight:var(--figma-font-weight-semibold);line-height:var(--figma-line-height-heading-h3)}.empty-state-view p{max-width:640px;margin:0;color:var(--app-color-text);font-size:var(--figma-font-size-body-lg);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-lg)}.device-card{position:relative;overflow:visible;border:var(--app-border-width) solid var(--app-color-border);border-radius:var(--figma-radius-4);background:var(--app-color-background)}.device-card.has-temperature-alert{border-color:var(--figma-color-border-error)}.device-card.is-muted-card,.device-card.has-battery-alert{border-color:var(--figma-color-border-warning)}.device-card:has(.sensor-actions-menu){z-index:10}.gateway-card{position:relative;overflow:visible;height:var(--app-gateway-card-height);border:var(--app-border-width) solid var(--app-color-border);border-radius:var(--figma-radius-4);background:var(--app-color-background)}.device-card.is-loading-card,.gateway-card.is-loading-card{display:flex;align-items:center;justify-content:center;min-height:var(--app-device-card-height);overflow:hidden;border-color:var(--app-color-border-primary);background:var(--app-color-background-primary)}.device-card.is-not-loaded-card,.gateway-card.is-not-loaded-card{display:flex;align-items:center;justify-content:center;min-height:var(--app-device-card-height);overflow:hidden;border-color:var(--figma-color-border-warning);background:var(--app-color-background-warning)}.loading-card-body{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--figma-spacing-16);width:100%;height:100%;color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md);text-align:center}.loading-card-body.is-gateway-loading{flex-direction:row}.loading-card-body p{margin:0}.device-card.is-not-loaded-card .loading-card-body{gap:var(--figma-spacing-24)}.gateway-card.is-not-loaded-card .loading-card-body{flex-direction:row;gap:var(--figma-spacing-40)}.loading-failed-copy{display:flex;align-items:center;color:var(--app-color-text-warning)}.loading-failed-copy.is-sensor{flex-direction:column;gap:var(--figma-spacing-8);min-width:100%}.loading-failed-copy.is-gateway{gap:var(--figma-spacing-8);flex-shrink:0}.loading-failed-copy.is-sensor p{min-width:100%;font-size:24px;font-weight:var(--figma-font-weight-semibold);line-height:32px;text-align:center}.loading-failed-copy.is-gateway p{font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md);text-align:center;white-space:nowrap}.not-loaded-illustration{position:relative;display:block;flex:0 0 auto}.not-loaded-illustration.is-sensor{width:80px;height:80px}.not-loaded-illustration.is-gateway{width:40px;height:40px}.not-loaded-asset{position:absolute;display:block;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;object-fit:contain}.device-card.is-not-loaded-card .loading-card-body,.gateway-card.is-not-loaded-card .loading-card-body{color:var(--app-color-text-warning)}.retry-action-button{display:flex;align-items:center;justify-content:center;gap:var(--figma-spacing-8);height:var(--app-field-height);padding:var(--figma-spacing-4) var(--figma-spacing-16);border-radius:var(--figma-radius-4);background:var(--app-color-button-primary);color:var(--app-color-text-button-primary);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md);cursor:pointer;transition:background .18s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1)}.retry-action-button:hover{background:var(--figma-color-blue-700)}.retry-action-button:active{transform:translateY(var(--app-action-pressed-offset))}.retry-action-button:focus-visible{outline:var(--figma-spacing-2) solid var(--app-color-focus);outline-offset:var(--figma-spacing-2)}.gateway-card:has(.gateway-actions-menu){z-index:10}.gateway-card-inner{display:flex;flex-direction:column;gap:var(--figma-spacing-2);width:100%;height:var(--app-gateway-card-height);padding:var(--figma-spacing-24)}.gateway-title-row,.gateway-title-chip,.signal-chip{display:flex;align-items:center}.gateway-title-row{justify-content:space-between;width:100%}.gateway-title-chip{gap:var(--figma-spacing-12)}.gateway-title-chip h2{margin:0;color:var(--app-color-text-heading);font-size:var(--figma-font-size-body-lg);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-body-md);white-space:nowrap}.gateway-card p{margin:0;color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.gateway-card .loading-failed-copy p{color:var(--app-color-text-warning)}.signal-chip{flex-shrink:0}.signal-chip.is-success{border-color:var(--figma-color-borders-success-200)}.signal-chip.is-warning{border-color:var(--figma-color-borders-warning-200)}.signal-chip.is-error{border-color:var(--figma-color-borders-error-200)}.signal-chip.is-muted{border-color:var(--app-color-border)}.temperature-block{width:100%;border-radius:var(--figma-radius-4) var(--figma-radius-4) var(--figma-spacing-none) var(--figma-spacing-none)}.temperature-block.is-alert{display:flex;flex-direction:column;justify-content:flex-start;min-height:var(--app-temperature-block-height);padding:var(--figma-spacing-32) var(--figma-spacing-24) var(--figma-spacing-8);background:var(--app-gradient-warm);color:var(--app-color-text-on-dark)}.temperature-block.is-live{display:flex;align-items:flex-start;justify-content:flex-start;min-height:var(--app-temperature-block-height);padding:var(--figma-spacing-32) var(--figma-spacing-24) var(--figma-spacing-8);background:var(--app-gradient-cold);color:var(--app-color-text-on-dark)}.temperature-row{align-items:baseline;justify-content:space-between;width:100%}.temperature-reading{display:flex;align-items:baseline;flex-shrink:0}.temperature-value{color:var(--app-color-text-on-dark);font-size:var(--figma-font-size-heading-temperature);font-weight:var(--figma-font-weight-semibold);line-height:var(--figma-line-height-heading-temperature)}.temperature-unit{margin:var(--figma-spacing-none) var(--figma-spacing-none) var(--figma-spacing-none) var(--app-temperature-unit-offset-left);color:var(--app-color-text-on-dark);font-size:var(--figma-font-size-body-lg);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-lg)}.temperature-range{margin-bottom:0;color:var(--app-color-text-on-dark);font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg);flex-shrink:0;white-space:nowrap}.alert-line{gap:var(--figma-spacing-8);margin-top:0;color:var(--app-color-text-on-dark);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md);white-space:nowrap}.temperature-block.is-offline{display:flex;flex-direction:column;justify-content:center;min-height:var(--app-temperature-block-height);gap:var(--figma-spacing-4);padding:var(--figma-spacing-40) var(--figma-spacing-24) var(--figma-spacing-52);background:var(--app-color-background-warning)}.offline-heading{gap:var(--figma-spacing-8);color:var(--app-color-text-warning);font-size:var(--figma-font-size-heading-h5);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h5);white-space:pre}.is-offline p{margin:0;color:var(--app-color-text-warning);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.is-offline .icon-glyph{filter:brightness(0) saturate(100%) invert(58%) sepia(69%) saturate(600%) hue-rotate(340deg) brightness(91%) contrast(92%)}.card-footer{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--figma-spacing-16) var(--figma-spacing-24)}.device-info{min-width:0;width:100%}.device-title-row,.device-title-chip{display:flex;align-items:center}.device-title-row{justify-content:space-between;width:100%}.device-title-chip{gap:var(--figma-spacing-12)}.device-title-row h2{margin:0;color:var(--app-color-text-heading);font-size:var(--figma-font-size-body-lg);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-body-md);white-space:nowrap}.device-info p{margin:var(--figma-spacing-2) var(--figma-spacing-none) var(--figma-spacing-none);color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.battery-chip{flex-shrink:0}.battery-chip.is-success{border-color:var(--figma-color-borders-success-200)}.battery-chip.is-warning{border-color:var(--figma-color-borders-warning-200)}.battery-chip.is-error{border-color:var(--figma-color-borders-error-200)}.battery-chip.is-muted{border-color:var(--app-color-border)}.icon{display:grid;place-items:center;position:relative;width:var(--app-icon-size);height:var(--app-icon-size);flex:0 0 auto}.icon-glyph{display:block;position:absolute;top:var(--icon-glyph-top, 50%);left:var(--icon-glyph-left, 50%);width:min(var(--icon-glyph-width, var(--app-icon-size)),100%);height:min(var(--icon-glyph-height, var(--app-icon-size)),100%);object-fit:contain;transform:translate(var(--icon-glyph-translate-x, -50%),var(--icon-glyph-translate-y, -50%))}.icon.small-icon{width:var(--app-small-icon-size);height:var(--app-small-icon-size)}.icon-activate-add,.icon-activate-signal-good,.icon-add{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-battery-full,.icon-battery-half,.icon-battery-success,.icon-battery-empty{--icon-glyph-width: 20px;--icon-glyph-height: 15px}.icon-battery-muted,.icon-check{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-chevron-down{--icon-glyph-width: 12.6464px;--icon-glyph-height: 7.3839px}.icon-clock{--icon-glyph-width: 13.3333px;--icon-glyph-height: 13.3333px}.icon-cross{--icon-glyph-width: 16.1768px;--icon-glyph-height: 16.1768px}.icon-delete{--icon-glyph-width: 18px;--icon-glyph-height: 20px}.icon-device{--icon-glyph-width: 16px;--icon-glyph-height: 20px}.icon-discoverable-signal-good{--icon-glyph-width: 11.9286px;--icon-glyph-height: 15.7143px;--icon-glyph-left: 9.46px;--icon-glyph-top: 14.14px}.icon-edit,.icon-error{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-export{--icon-glyph-width: 20px;--icon-glyph-height: 21.806px}.icon-eye{--icon-glyph-width: 19.6983px;--icon-glyph-height: 15px}.icon-firmware-device{--icon-glyph-width: 16px;--icon-glyph-height: 20px}.icon-gateway-clock{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-gateway-cross{--icon-glyph-width: 16.1768px;--icon-glyph-height: 16.1768px}.icon-gateway-delete{--icon-glyph-width: 18px;--icon-glyph-height: 20px}.icon-gateway-edit{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-gateway-eye{--icon-glyph-width: 19.6983px;--icon-glyph-height: 15px}.icon-gateway-history{--icon-glyph-width: 20px;--icon-glyph-height: 16px}.icon-gateway-menu{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-gateway-notifications{--icon-glyph-width: 18px;--icon-glyph-height: 20px}.icon-gateway-radar,.icon-gateway-save{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-gateway-signal-good{--icon-glyph-width: 17px;--icon-glyph-height: 20px}.icon-gateway-signal-medium{--icon-glyph-width: 11.9286px;--icon-glyph-height: 15.7143px;--icon-glyph-left: 9.46px;--icon-glyph-top: 14.14px}.icon-gateway-signal-weak{--icon-glyph-width: 7.2143px;--icon-glyph-height: 11.4286px;--icon-glyph-left: 7.11px;--icon-glyph-top: 16.29px}.icon-gateway-signal-no{--icon-glyph-width: 18.9409px;--icon-glyph-height: 22px}.icon-history-check{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-history-clock{--icon-glyph-width: 13.3333px;--icon-glyph-height: 13.3333px}.icon-history-cross{--icon-glyph-width: 16.1768px;--icon-glyph-height: 16.1768px}.icon-history-small-check{--icon-glyph-width: 13.3333px;--icon-glyph-height: 13.3333px}.icon-history{--icon-glyph-width: 20px;--icon-glyph-height: 16px}.icon-infographics{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-logout{--icon-glyph-width: 19.8026px;--icon-glyph-height: 18px}.icon-mark-as-read{--icon-glyph-width: 19.1768px;--icon-glyph-height: 14.1794px}.icon-menu-notifications{--icon-glyph-width: 18px;--icon-glyph-height: 20px}.icon-menu,.icon-no-connection{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-notifications{--icon-glyph-width: 18px;--icon-glyph-height: 20px}.icon-panel-device{--icon-glyph-width: 16px;--icon-glyph-height: 20px}.icon-panel-no-connection{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-panel-warning{--icon-glyph-width: 20px;--icon-glyph-height: 18px}.icon-popup-chevron{--icon-glyph-width: 12.6464px;--icon-glyph-height: 7.3839px}.icon-profile{--icon-glyph-width: 18px;--icon-glyph-height: 20px}.icon-radar,.icon-retry,.icon-save{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-settings-chevron{--icon-glyph-width: 12.6464px;--icon-glyph-height: 7.3839px}.icon-settings-clock{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-settings-cross{--icon-glyph-width: 16.1768px;--icon-glyph-height: 16.1768px}.icon-settings-mail{--icon-glyph-width: 20px;--icon-glyph-height: 15px}.icon-settings-message,.icon-settings-phone{--icon-glyph-width: 20px;--icon-glyph-height: 19px}.icon-settings-signal,.icon-network,.icon-signal-good,.icon-signal-muted,.icon-signal-strong,.icon-signal,.icon-snackbar-check{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-snackbar-cross{--icon-glyph-width: 16px;--icon-glyph-height: 16px}.icon-snackbar-error{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-voltage{--icon-glyph-width: 15px;--icon-glyph-height: 20px}.icon-transfer{--icon-glyph-width: 20px;--icon-glyph-height: 20px}.icon-warning{--icon-glyph-width: 20px;--icon-glyph-height: 18px}.app-snackbar-status-icon{width:24px;height:24px}.app-snackbar-close-icon{width:16px;height:16px;--icon-glyph-width: 10.65px;--icon-glyph-height: 10.65px}.battery-icon{width:var(--app-icon-size);height:var(--app-icon-size)}.menu-button:active,.notification-button:active{transform:scale(var(--app-action-pressed-scale))}.card-menu-anchor{position:relative;display:grid;place-items:center}.sensor-actions-menu{position:absolute;z-index:25;top:calc(var(--app-icon-size) + var(--app-popover-offset));bottom:auto;right:var(--figma-spacing-none);display:flex;flex-direction:column;width:var(--app-sensor-menu-width);min-height:var(--app-sensor-menu-height);padding:var(--figma-spacing-none);border-radius:var(--figma-radius-4);background:var(--app-color-background);box-shadow:var(--app-shadow-default)}.gateway-actions-menu{position:absolute;z-index:25;top:calc(var(--app-icon-size) + var(--app-popover-offset));right:var(--figma-spacing-none);display:flex;flex-direction:column;width:var(--app-gateway-menu-width);min-height:var(--app-gateway-menu-height);padding:var(--figma-spacing-none);border-radius:var(--figma-radius-4);background:var(--app-color-background);box-shadow:var(--app-shadow-default)}.sensor-actions-menu-item,.gateway-actions-menu-item{display:flex;align-items:center;gap:var(--figma-spacing-8);width:100%;padding:var(--figma-spacing-16);border-radius:var(--figma-radius-4);background:transparent;color:var(--app-color-text);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md);cursor:pointer}.sensor-actions-menu-item:hover,.gateway-actions-menu-item:hover{background:var(--app-hover-menu-background)}.sensor-side-panel{position:relative;display:flex;flex-direction:column;box-sizing:border-box;width:var(--app-side-panel-width);height:100vh;min-height:var(--app-side-panel-height);padding-bottom:108px;overflow-y:auto;border-radius:var(--figma-radius-4) var(--figma-spacing-none) var(--figma-spacing-none) var(--figma-radius-4);background:var(--app-color-background);box-shadow:var(--app-shadow-default)}.settings-form,.temperature-panel-content,.gateway-settings-form{display:flex;flex-direction:column;gap:var(--figma-spacing-16);width:100%;padding:var(--figma-spacing-32) var(--figma-spacing-24) var(--figma-spacing-24)}.gateway-info-list{padding-top:var(--figma-spacing-32)}.gateway-info-list .settings-info-line:first-child .icon-glyph{filter:var(--app-icon-hover-filter)}.temperature-panel-content{gap:var(--figma-spacing-32)}.settings-info-list{display:flex;flex-direction:column;gap:var(--figma-spacing-16);width:100%;padding:var(--figma-spacing-32) var(--figma-spacing-24) var(--figma-spacing-none)}.settings-info-line,.settings-info-label,.sensor-panel-actions,.panel-temperature-block,.history-alert-main,.history-status,.history-meta,.history-meta-group{display:flex;align-items:center}.settings-info-line{justify-content:space-between;width:100%}.settings-info-label{gap:var(--figma-spacing-4);color:var(--app-color-text-neutral);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.settings-info-line strong{color:var(--app-color-text);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md)}.sensor-panel-actions{justify-content:flex-end;gap:var(--figma-spacing-8);position:fixed;right:0;bottom:0;z-index:2;width:min(var(--app-side-panel-width),100vw);margin-top:0;padding:var(--figma-spacing-24);background:var(--app-color-background)}.temperature-panel-actions{display:flex;align-items:center;justify-content:flex-end;width:100%;margin-top:auto;padding:var(--figma-spacing-24)}.export-logs-button .icon{width:24px;height:24px}.danger-action-button{display:flex;align-items:center;justify-content:center;gap:var(--figma-spacing-8);height:var(--app-field-height);padding:var(--figma-spacing-4) var(--figma-spacing-16);border:var(--app-border-width) solid var(--figma-color-borders-error-200);border-radius:var(--figma-radius-4);background:var(--figma-color-surface-button-error);color:var(--app-color-text-error);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md);cursor:pointer;transition:background .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.22,1,.36,1)}.danger-action-button:hover{background:var(--figma-color-red-200)}.danger-action-button:active{transform:translateY(var(--app-action-pressed-offset))}.danger-action-button:disabled{border-color:transparent;background:var(--figma-color-surface-button-disabled);color:var(--app-color-text-muted);cursor:not-allowed;transform:none}.danger-action-button:disabled .icon-glyph{filter:var(--app-icon-disabled-filter)}.delete-gateway-popup{display:flex;flex-direction:column;justify-content:space-between;width:var(--app-delete-popup-width);height:var(--app-delete-popup-height);padding:var(--figma-spacing-24);border-radius:var(--figma-radius-8);background:var(--app-color-background)}.delete-popup-content{display:flex;flex-direction:column;gap:var(--figma-spacing-24);width:100%}.delete-popup-copy{display:flex;flex-direction:column;gap:var(--figma-spacing-4);width:100%}.delete-popup-title-row{display:flex;align-items:flex-start;justify-content:space-between;width:100%}.delete-popup-copy h2,.success-popup-copy h2{margin:var(--figma-spacing-none);color:var(--app-color-text-heading);font-size:var(--figma-font-size-heading-h4);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h4)}.popup-close-button{display:grid;place-items:center;width:var(--app-icon-size);height:var(--app-icon-size);padding:var(--figma-spacing-none);background:transparent;cursor:pointer}.delete-popup-copy p,.success-popup-copy p{width:433px;margin:var(--figma-spacing-none);color:var(--app-color-text);font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.placeholder-text{color:var(--app-color-text-neutral)}.delete-transfer-select{padding-right:var(--figma-spacing-8)}.delete-popup-actions{display:flex;justify-content:flex-end;gap:var(--figma-spacing-8);width:100%}.success-popup{display:flex;flex-direction:column;justify-content:space-between;width:var(--app-delete-popup-width);height:var(--app-success-popup-height);padding:var(--figma-spacing-24);border-radius:var(--figma-radius-8);background:var(--app-color-background)}.success-popup-copy{display:flex;flex-direction:column;gap:var(--figma-spacing-4)}.success-popup-copy h2{color:var(--app-color-background-success)}.confirmation-popup{display:flex;flex-direction:column;justify-content:space-between;width:var(--app-delete-popup-width);height:var(--app-success-popup-height);padding:var(--figma-spacing-24);border-radius:var(--figma-radius-8);background:var(--app-color-background)}.confirmation-popup-copy{display:flex;flex-direction:column;gap:var(--figma-spacing-4)}.confirmation-popup-copy h2{margin:var(--figma-spacing-none);color:var(--app-color-text-warning);font-size:var(--figma-font-size-heading-h4);font-weight:var(--app-font-weight-heading);line-height:var(--figma-line-height-heading-h4)}.confirmation-popup-copy p{width:461px;margin:var(--figma-spacing-none);color:var(--app-color-text);font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.confirmation-popup-actions{display:flex;justify-content:flex-end;gap:var(--figma-spacing-8);width:100%}.panel-temperature-block{justify-content:space-between;width:100%;height:var(--app-temperature-summary-height);padding:var(--figma-spacing-16) var(--figma-spacing-24);border-radius:var(--figma-radius-4);background:var(--app-gradient-cold);color:var(--app-color-text-on-dark)}.panel-temperature-block.is-alert{background:var(--app-gradient-warm);height:auto;min-height:var(--app-temperature-summary-height);padding-right:var(--figma-spacing-24);padding-left:var(--figma-spacing-24);padding-top:var(--figma-spacing-24);padding-bottom:var(--figma-spacing-24)}.panel-temperature-block.is-muted{align-items:flex-start;justify-content:center;gap:var(--figma-spacing-4);background:var(--app-color-background-muted);color:var(--app-color-text-muted)}.panel-temperature-block.is-muted p{margin:0;color:var(--app-color-text-muted);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.panel-temperature-block .temperature-value{font-size:80px;font-weight:var(--figma-font-weight-semibold);line-height:92px}.panel-temperature-block .temperature-unit,.panel-temperature-block .temperature-range{margin-bottom:var(--figma-spacing-16);font-size:var(--figma-font-size-body-lg);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-lg)}.panel-temperature-block .alert-line{margin-top:var(--figma-spacing-none);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-md)}.temperature-chart-card{overflow-x:auto;overflow-y:hidden;width:100%;border-radius:var(--figma-radius-4);background:var(--app-color-background)}.temperature-chart-stack{display:flex;flex-direction:column;gap:var(--figma-spacing-4);width:100%}.temperature-chart-wrapper{position:relative;display:inline-block}.temperature-chart-canvas{display:block;height:248px;cursor:crosshair}.chart-tooltip{position:absolute;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;background:var(--app-color-background);border:1px solid var(--app-color-chart-grid, #e4e4e4);border-radius:var(--figma-radius-4, 4px);box-shadow:0 2px 8px #0000001a;white-space:nowrap;z-index:10}.chart-tooltip strong{font-size:var(--figma-font-size-body-md, 14px);color:var(--app-color-text-heading)}.chart-tooltip span{font-size:var(--figma-font-size-body-sm, 12px);color:var(--app-color-text-neutral)}.chart-legend{display:flex;align-items:center;gap:var(--figma-spacing-16);padding:var(--figma-spacing-4) 0}.chart-legend-item{display:flex;align-items:center;gap:var(--figma-spacing-8);color:var(--app-color-chart-label);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md)}.chart-period-group{display:flex;gap:var(--figma-spacing-2);width:100%;padding:var(--figma-spacing-4);border-radius:var(--figma-radius-4);background:var(--app-color-background-selected)}.chart-period-tab{display:flex;flex:1 1 0;align-items:center;justify-content:center;min-width:0;height:var(--app-tab-height);padding:var(--figma-spacing-4) var(--figma-spacing-24);border-radius:var(--figma-radius-2);background:transparent;color:var(--app-color-text-muted);font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-md);transition:background .15s,color .15s,box-shadow .15s;cursor:pointer}.chart-period-tab.is-active{background:var(--app-color-background);color:var(--app-color-text);box-shadow:0 1px 3px #0000001a}.chart-period-tab:not(.is-active):hover{background:var(--app-color-background-muted);color:var(--app-color-text)}.chart-period-tab:focus-visible{outline:var(--figma-spacing-2) solid var(--app-color-focus);outline-offset:var(--figma-spacing-2)}.chart-nav-row{display:flex;align-items:center;justify-content:space-between;margin-top:var(--figma-spacing-8);padding:0 var(--figma-spacing-4)}.chart-nav-label{flex:1;text-align:center;color:var(--app-color-text-muted);font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-medium);line-height:var(--figma-line-height-body-sm)}.chart-nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--figma-radius-2);background:transparent;color:var(--app-color-text-muted);transition:background .15s,color .15s;cursor:pointer}.chart-nav-btn:hover{background:var(--app-color-background-muted);color:var(--app-color-text)}.chart-nav-btn:focus-visible{outline:var(--figma-spacing-2) solid var(--app-color-focus);outline-offset:var(--figma-spacing-2)}.chart-nav-btn:disabled{opacity:.35;cursor:not-allowed}.chart-background{fill:var(--app-color-background)}.temperature-fill-start{stop-color:var(--app-color-chart-temperature);stop-opacity:.22}.temperature-fill-end{stop-color:var(--app-color-chart-temperature);stop-opacity:0}.chart-grid-line,.chart-axis-line{stroke:var(--app-color-chart-grid);stroke-width:1}.chart-axis-line{stroke:var(--app-color-chart-axis)}.chart-max-line{stroke:var(--app-color-chart-max);stroke-width:1.5;stroke-dasharray:6 6}.chart-min-line{stroke:var(--app-color-chart-min);stroke-width:1.5;stroke-dasharray:6 6}.chart-area{fill:url(#temperature-fill)}.chart-line{fill:none;stroke:var(--app-color-chart-temperature);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.chart-current-line{stroke:var(--app-color-focus);stroke-width:1.5;stroke-dasharray:4 4}.chart-current-dot{fill:var(--app-color-focus);stroke:var(--app-color-background);stroke-width:2}.chart-legend-line{stroke-width:3}.chart-axis-label,.chart-legend-label,.chart-block-label{fill:var(--app-color-chart-label);font-family:var(--figma-font-family-default);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md)}.chart-legend-label{font-weight:var(--figma-font-weight-medium)}.chart-block-label{font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-medium)}.chart-stats{display:flex;align-items:center;gap:var(--figma-spacing-none);padding:var(--figma-spacing-12) var(--figma-spacing-none);border-top:1px solid var(--app-color-border, #e5e7eb)}.chart-stat-item{display:flex;flex:1 1 0;flex-direction:column;align-items:center;gap:var(--figma-spacing-2)}.chart-stat-divider{width:1px;height:32px;background:var(--app-color-border, #e5e7eb)}.chart-stat-label{font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-regular);color:var(--app-color-text-muted);line-height:var(--figma-line-height-body-sm)}.chart-stat-value{font-size:var(--figma-font-size-body-md);font-weight:var(--figma-font-weight-semibold);color:var(--app-color-text);line-height:var(--figma-line-height-body-md)}.chart-stat-value--max{color:var(--app-color-chart-max)}.chart-stat-value--min{color:var(--app-color-chart-min)}.chart-outage-block{fill:var(--app-color-chart-outage)}.chart-failure-block{fill:var(--app-color-chart-failure)}.temperature-chart-crop{position:relative;overflow:hidden;width:100%;height:var(--app-chart-height);border-radius:var(--figma-radius-4)}.temperature-chart-crop img{position:absolute;top:-100.47%;left:-186.68%;width:303.9%;height:346.92%;max-width:none}.alerts-history-list{display:flex;flex-direction:column;width:100%;padding-top:var(--figma-spacing-16);overflow-y:auto;flex:1}.history-alert{display:flex;flex-direction:column;gap:var(--figma-spacing-8);width:100%;padding:var(--figma-spacing-24)}.history-alert.is-open{padding-top:var(--figma-spacing-none)}.history-alert-main{align-items:flex-start;justify-content:flex-start;gap:var(--figma-spacing-8);flex-wrap:nowrap}.history-alert-main p{margin:var(--figma-spacing-none);color:var(--app-color-text);font-size:var(--figma-font-size-body-md);line-height:var(--figma-line-height-body-md);flex:0 1 auto}.history-status{height:auto;flex:0 0 auto}.history-meta-group{gap:var(--figma-spacing-16)}.history-meta{gap:var(--figma-spacing-4);color:var(--app-color-text);font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.history-meta .muted{color:var(--app-color-text-muted)}@media (max-width: 600px){.dashboard-shell{min-width:0;min-height:100vh;overflow-x:hidden}.app-header{display:grid;grid-template-areas:"brand actions" "company company" "tabs tabs";grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:156px;align-items:center;column-gap:var(--figma-spacing-24);row-gap:var(--figma-spacing-8);padding:var(--figma-spacing-16)}.brand-group{display:contents}.brand{grid-area:brand;width:max-content;max-width:100%;min-width:0;overflow:visible}.brand-mark{flex:0 0 auto}.brand-word{min-width:auto}.brand-divider{display:none}.company-name{grid-area:company;margin-top:var(--figma-spacing-8);min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.header-actions{grid-area:actions;justify-self:end;gap:var(--figma-spacing-24)}.header-tabs{grid-area:tabs;position:static;transform:none;justify-self:stretch;width:100%;max-width:none;height:var(--app-tabs-height)}.header-tabs .tab{min-width:0;padding-right:var(--figma-spacing-16);padding-left:var(--figma-spacing-16)}.discover-button{position:relative;width:var(--app-icon-size);height:var(--app-icon-size);padding:var(--figma-spacing-none);border:0;background:transparent}.discover-button .discover-label>span:not(.icon),.discover-button .count-chip{display:none}.discover-button:after{position:absolute;top:var(--figma-spacing-none);right:var(--figma-spacing-none);width:6px;height:6px;border-radius:var(--app-radius-pill);background:var(--figma-color-red-600);content:""}.discover-button:disabled:after{content:none}.cards-grid,.gateway-grid{grid-template-columns:1fr;padding:var(--figma-spacing-16)}.empty-state-view{min-height:calc(100vh - 128px);padding:var(--figma-spacing-24) var(--figma-spacing-16)}.empty-state-view h2{font-size:var(--figma-font-size-heading-h3);line-height:var(--figma-line-height-heading-h3)}.empty-state-view p{max-width:600px;font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.status-tabs-section{height:auto;padding:var(--figma-spacing-24) var(--figma-spacing-16) var(--figma-spacing-16)}.status-tabs{min-width:max-content}.side-panel-layer{align-items:stretch}.side-panel-layer>div{width:100%}.sensor-side-panel,.gateway-side-panel,.discoverable-panel{width:100%;max-width:none;height:100dvh;min-height:0;overflow-y:auto;border-radius:var(--figma-spacing-none)}.side-panel-header h2{font-size:var(--figma-font-size-heading-h5);line-height:var(--figma-line-height-heading-h5);white-space:normal}.side-panel-header,.settings-form,.gateway-settings-form,.temperature-panel-content,.settings-info-list,.sensor-panel-actions,.temperature-panel-actions,.discoverable-device,.activation-form{padding-right:var(--figma-spacing-16);padding-left:var(--figma-spacing-16)}.temperature-panel-content{gap:var(--figma-spacing-24)}.panel-temperature-block{min-height:var(--app-temperature-summary-height);height:auto}.temperature-chart-svg{min-width:100%!important}.discoverable-device{align-items:flex-start;gap:var(--figma-spacing-16)}.discoverable-name-row{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.notifications-popover,.profile-popover{right:var(--figma-spacing-16);left:var(--figma-spacing-16);top:calc(var(--figma-spacing-16) + var(--figma-scale-32) + var(--figma-spacing-8))}.notifications-panel,.profile-menu{width:100%;max-width:none}.notifications-panel{max-height:calc(100dvh - var(--app-header-height) - var(--figma-spacing-32));overflow-y:auto}.notifications-header{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--figma-spacing-8)}.text-action{max-width:none;text-align:left;white-space:nowrap}.notification-copy-row,.notification-copy{min-width:0}.notification-copy h3,.notification-copy p{white-space:normal}.notification-main{align-items:flex-start}.mark-read-button{width:var(--figma-spacing-16);height:var(--figma-spacing-16)}.delete-gateway-popup,.success-popup,.confirmation-popup{width:calc(100vw - var(--figma-spacing-32));max-width:338px;height:auto;min-height:0;padding:var(--figma-spacing-16)}.delete-gateway-popup{justify-content:flex-start;gap:var(--figma-spacing-40);border-radius:var(--figma-radius-4)}.success-popup{justify-content:flex-start;gap:var(--figma-spacing-40);max-width:278px;border-radius:var(--figma-radius-4)}.confirmation-popup{justify-content:flex-start;gap:var(--figma-spacing-40);max-width:340px;padding:var(--figma-spacing-16);border-radius:var(--figma-radius-4)}.delete-popup-copy h2,.success-popup-copy h2,.confirmation-popup-copy h2{font-size:24px;line-height:32px}.confirmation-popup-copy p{font-size:20px;line-height:28px}.delete-popup-copy p,.success-popup-copy p{width:auto;font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.confirmation-popup-copy p{width:auto}.delete-popup-actions,.confirmation-popup-actions{flex-wrap:nowrap}.delete-popup-actions .primary-action-button,.delete-popup-actions .secondary-action-button,.confirmation-popup-actions .primary-action-button,.confirmation-popup-actions .secondary-action-button{width:auto;min-width:0}.delete-gateway-popup .delete-popup-actions{flex-direction:column-reverse;align-items:stretch;gap:var(--figma-spacing-8)}.delete-gateway-popup .delete-popup-actions .primary-action-button,.delete-gateway-popup .delete-popup-actions .secondary-action-button,.success-popup .delete-popup-actions .primary-action-button{width:100%}.settings-page{padding:var(--figma-spacing-none)}.settings-page-header{width:calc(100% - var(--figma-spacing-32));padding:var(--figma-spacing-24) var(--figma-spacing-none)}.settings-content-band{padding:var(--figma-spacing-24) var(--figma-spacing-16)}.settings-page-header{width:100%;padding-right:var(--figma-spacing-16);padding-left:var(--figma-spacing-16)}.settings-card{width:100%}.settings-form-grid{grid-template-columns:1fr}.profile-settings-card{gap:var(--figma-spacing-40);padding:var(--figma-spacing-24) var(--figma-spacing-none)}.settings-section,.settings-card-actions,.notification-settings-intro,.notification-settings-list{padding-right:var(--figma-spacing-16);padding-left:var(--figma-spacing-16)}.notification-settings-card{padding:var(--figma-spacing-24) var(--figma-spacing-none);overflow:hidden}.notification-settings-intro{white-space:normal}.notification-settings-list{height:auto;gap:var(--figma-spacing-24)}.notification-settings-row{align-items:flex-start;gap:var(--figma-spacing-12)}.notification-method-main{min-width:0}.notification-channel-copy p{overflow-wrap:anywhere}.settings-toggle{align-self:flex-start}}@media (min-width: 601px) and (max-width: 1180px){:root{--figma-font-size-body-lg: 18px;--figma-line-height-body-lg: 26px;--figma-font-size-heading-h4: 28px;--figma-line-height-heading-h4: 36px;--figma-font-size-heading-h5: 22px;--figma-line-height-heading-h5: 30px;--figma-font-size-heading-temperature: 64px;--figma-line-height-heading-temperature: 76px}.dashboard-shell{min-width:0;overflow-x:hidden}.app-header{display:grid;grid-template-areas:"brand actions" "tabs tabs";grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:128px;align-items:center;gap:var(--figma-spacing-24);padding:var(--figma-spacing-16)}.brand-group{grid-area:brand;flex:1 1 auto;min-width:0}.company-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.header-actions{grid-area:actions;justify-self:end}.header-tabs{grid-area:tabs;position:static;width:100%;height:var(--app-tabs-height);transform:none}.header-tabs .tab{flex:1 1 0;min-width:0}.cards-grid,.gateway-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--figma-spacing-16)}.empty-state-view{min-height:calc(100vh - 128px);padding:var(--figma-spacing-32) var(--figma-spacing-16)}.empty-state-view h2{font-size:var(--figma-font-size-heading-h3);line-height:var(--figma-line-height-heading-h3)}.empty-state-view p{max-width:640px;font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.status-tabs-section{height:auto;padding:var(--figma-spacing-24) var(--figma-spacing-16) var(--figma-spacing-16)}.sensor-side-panel,.gateway-side-panel,.discoverable-panel{width:min(var(--app-side-panel-width),100vw)}.settings-content-band{padding:var(--figma-spacing-24) var(--figma-spacing-16)}}@media (max-width: 560px){:root{--figma-font-size-body-lg: 18px;--figma-line-height-body-lg: 26px;--figma-font-size-heading-h4: 28px;--figma-line-height-heading-h4: 36px;--figma-font-size-heading-h5: 22px;--figma-line-height-heading-h5: 30px;--figma-font-size-heading-temperature: 80px;--figma-line-height-heading-temperature: 92px}.app-header{grid-template-columns:minmax(0,1fr) auto;column-gap:var(--figma-spacing-24);row-gap:var(--figma-spacing-8);padding:var(--figma-spacing-16)}.brand-word,.company-name{font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.brand-mark{width:var(--app-icon-size);height:var(--app-icon-size)}.header-actions{gap:var(--figma-spacing-24)}.menu-button{width:32px;height:32px}.notification-button{width:24px;height:24px}.profile-button{width:var(--app-icon-size);height:var(--app-icon-size);font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.header-tabs{width:100%}.header-tabs .tab{flex:1 1 0;padding-right:var(--figma-spacing-24);padding-left:var(--figma-spacing-24)}.cards-grid,.gateway-grid{padding:var(--figma-spacing-16)}.device-card:not(.is-loading-card):not(.is-not-loaded-card),.gateway-card:not(.is-loading-card):not(.is-not-loaded-card){height:auto}.empty-state-view{gap:var(--figma-spacing-16);min-height:calc(100vh - 116px);padding:var(--figma-spacing-24) var(--figma-spacing-16)}.empty-state-illustration{width:112px;height:112px}.empty-state-view h2{font-size:var(--figma-font-size-heading-h3);line-height:var(--figma-line-height-heading-h3)}.empty-state-view p{max-width:320px;font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.device-title-row,.gateway-title-row{gap:var(--figma-spacing-8)}.device-title-chip,.gateway-title-chip{min-width:0;flex-wrap:wrap;gap:var(--figma-spacing-8)}.device-title-row h2,.gateway-title-chip h2{max-width:none;overflow-wrap:normal;white-space:nowrap}.temperature-block,.card-footer,.gateway-card-inner{padding-right:var(--figma-spacing-16);padding-left:var(--figma-spacing-16)}.temperature-block.is-live{height:124px;padding:var(--figma-spacing-16)}.temperature-block.is-alert{height:148px;padding:var(--figma-spacing-16)}.temperature-block.is-offline{height:136px;padding:var(--figma-spacing-16)}.card-footer{height:auto;min-height:0;padding:var(--figma-spacing-16) var(--figma-spacing-16)!important}.gateway-card-inner{height:auto;padding:var(--figma-spacing-16)}.device-card .temperature-value{font-size:64px;line-height:76px}.device-card .temperature-unit,.device-card .temperature-range{font-size:var(--figma-font-size-body-lg);line-height:var(--figma-line-height-body-lg)}.device-info{display:flex;align-items:flex-start;flex-direction:column;gap:var(--figma-spacing-4)}.device-title-row,.device-title-chip{display:flex;align-items:center;flex-direction:row}.device-title-row{width:100%;justify-content:space-between;align-items:center}.device-title-chip{min-width:0;max-width:calc(100% - (var(--app-icon-size) + var(--figma-spacing-8)));flex-wrap:nowrap;align-items:center}.device-card.has-temperature-alert .device-title-chip,.device-card.has-battery-alert .device-title-chip,.device-card:not(.is-muted-card) .device-title-chip{flex-direction:row;align-items:center}.device-card.is-muted-card .device-title-chip{flex-direction:column;align-items:flex-start;flex-wrap:nowrap}.device-card.is-muted-card .device-title-row{align-items:center}.device-info{gap:var(--figma-spacing-8)}.device-title-row{position:relative;padding-right:calc(var(--app-icon-size) + var(--figma-spacing-16))}.device-title-row,.device-title-chip,.device-info p{gap:var(--figma-spacing-8);margin-top:var(--figma-spacing-none)}.device-info p{margin-bottom:var(--figma-spacing-none)}.device-card .card-menu-anchor{position:absolute;top:var(--figma-spacing-none);right:var(--figma-spacing-none)}.temperature-row{align-items:baseline;gap:var(--figma-spacing-16)}.temperature-reading{align-items:baseline;min-width:0}.panel-temperature-block .temperature-unit,.panel-temperature-block .temperature-range{margin-bottom:var(--figma-spacing-none)}.temperature-value,.panel-temperature-block .temperature-value{font-size:var(--figma-font-size-heading-temperature);line-height:var(--figma-line-height-heading-temperature)}.alert-line,.offline-heading,.history-meta-group{white-space:normal}.history-alert{gap:var(--figma-spacing-16);padding:var(--figma-spacing-24) var(--figma-spacing-16)}.history-alert.is-open{padding-top:var(--figma-spacing-8)}.history-alert-main{flex-direction:column;align-items:flex-start;gap:var(--figma-spacing-4)}.history-status{order:-1}.history-meta-group{flex-direction:column;align-items:flex-start;gap:var(--figma-spacing-4)}.gateway-card.is-not-loaded-card .loading-card-body{gap:var(--figma-spacing-16)}.retry-action-button{min-width:94px}.discoverable-device{flex-direction:column}.discoverable-device .primary-action-button,.discoverable-device .secondary-action-button,.activate-sensor-button,.settings-card-actions .primary-action-button,.settings-card-actions .secondary-action-button,.sensor-panel-actions .primary-action-button,.sensor-panel-actions .danger-action-button{width:100%}.settings-card-actions{flex-direction:column;align-items:stretch}.sensor-panel-actions{flex-direction:column-reverse}.settings-info-line{align-items:flex-start;gap:var(--figma-spacing-16)}.settings-info-list{padding-top:var(--figma-spacing-8);padding-bottom:var(--figma-spacing-16)}.gateway-info-list{padding-top:var(--figma-spacing-16)}.temperature-panel-content{gap:var(--figma-spacing-16);padding-top:var(--figma-spacing-16);padding-bottom:var(--figma-spacing-none)}.alerts-history-list{padding-top:var(--figma-spacing-24)}.delete-popup-copy h2{font-size:24px;line-height:32px}.delete-popup-copy p{font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.confirmation-popup-copy h2{font-size:24px;line-height:32px;font-weight:var(--app-font-weight-heading)}.confirmation-popup-copy p{font-size:var(--figma-font-size-body-sm);font-weight:var(--figma-font-weight-regular);line-height:var(--figma-line-height-body-sm)}.confirmation-popup-actions{flex-direction:column-reverse;align-items:stretch;gap:var(--figma-spacing-8)}.confirmation-popup-actions .primary-action-button,.confirmation-popup-actions .secondary-action-button{width:100%}.delete-transfer-select{min-width:0}.delete-transfer-select>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-popup-actions .primary-action-button{flex:1 1 auto;gap:var(--figma-spacing-4);padding-right:var(--figma-spacing-8);padding-left:var(--figma-spacing-8)}.delete-popup-actions .primary-action-button>span:not(.icon){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-channel-copy p{font-size:var(--figma-font-size-body-sm);line-height:var(--figma-line-height-body-sm)}.temperature-panel-actions{justify-content:stretch;margin-top:var(--figma-spacing-none);padding-top:var(--figma-spacing-24)}.export-logs-button{width:100%}.app-snackbar{width:100%;max-width:none;gap:var(--figma-spacing-12);justify-content:space-between}.snackbar-motion-layer{right:var(--figma-spacing-16);left:var(--figma-spacing-16)}.app-snackbar-content,.app-snackbar-message{min-width:0}.app-snackbar-message p{white-space:normal}}
