@charset "UTF-8";.c-header{display:flex;flex:0 0 auto;align-items:center}.c-footer{display:flex;flex-wrap:wrap;align-items:center;padding:.5rem 1rem}.c-sidebar{display:flex;flex-direction:column;flex:0 0 auto}.c-sidebar-brand{display:flex;text-decoration:none;color:inherit}.c-sidebar-nav{list-style:none;margin:0;padding:0;flex:1 1 auto}.c-sidebar-nav-item,.c-sidebar-nav-dropdown,.c-sidebar-nav-title,.c-sidebar-nav-divider{list-style:none}.c-sidebar-nav-link,.c-sidebar-nav-dropdown-toggle{display:flex;align-items:center;width:100%;text-decoration:none;color:inherit;cursor:pointer}.c-sidebar-nav-dropdown-items{display:none;list-style:none;margin:0;padding:0}.c-sidebar-nav-dropdown.c-show>.c-sidebar-nav-dropdown-items{display:block}.c-sidebar-nav-icon,.c-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.c-switch{position:relative;display:inline-block;width:40px;height:24px;margin-bottom:0;vertical-align:middle}.c-switch-input{position:absolute;z-index:-1;opacity:0}.c-switch-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#c8ced3;border-radius:.25rem;transition:.15s ease}.c-switch-slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background-color:#fff;border-radius:.15rem;transition:.15s ease}.c-switch-input:checked~.c-switch-slider:before{transform:translate(16px)}.c-switch-pill .c-switch-slider,.c-switch-pill .c-switch-slider:before{border-radius:50rem}.c-switch-3d .c-switch-slider{background-color:#c8ced3}.table-outline{border:1px solid var(--border-color, #d8dbe0)}.table-clickable tbody tr{cursor:pointer}@media(max-width:767.98px){.d-md-down-none{display:none!important}}.mfs-auto{margin-left:auto}.sk-spinner-pulse{width:32px;height:32px;margin:0 auto;border-radius:50%;background-color:var(--color-primary, #321fdb);animation:sk-pulse 1s infinite ease-in-out}@keyframes sk-pulse{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}.c-pagination{display:block;width:auto}.c-pagination>.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;width:auto;margin:0;padding:0;top:0;gap:0;list-style:none}.c-pagination .page-link,.pagination .page-item .page-link{min-width:0;width:auto;height:auto;margin-top:0;padding:.5rem .75rem;font-weight:400;font-size:.875rem;line-height:1.25;border-radius:0;cursor:pointer;text-decoration:none}.c-pagination .page-item:first-child .page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.c-pagination .page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}:root{--brand-deep: #0f2138;--brand-mid: #1e3a5f;--brand-light: #3b82f6;--brand-gradient: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 100%);--brand-gradient-soft: linear-gradient(180deg, #2a4f7a 0%, #243f66 100%);--brand-sidebar-gradient: linear-gradient(180deg, #071a35 0%, #031024 100%);--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-secondary: #EF7424;--color-accent: #60a5fa;--color-accent-hover: #3b82f6;--color-success: #22c55e;--color-warning: #f59e0b;--color-error: #ff4d4f;--color-info: #3b82f6;--bg-primary: #eef4fc;--bg-secondary: #e3ebf6;--bg-elevated: #f2f7fc;--bg-surface-soft: #e8f0fa;--bg-sidebar: #071a35;--bg-sidebar-brand: #031024;--bg-header: #1e3a5f;--bg-input: #eef4fc;--bg-gauge: #e8f0fa;--bg-table-header: #1e3a5f;--bg-device-card: #1e3a5f;--bg-overlay: rgba(7, 26, 53, .45);--bg-page-gradient-start: #eef4fc;--bg-page-gradient-end: #e3ebf6;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #64748b;--text-inverse: #FFFFFF;--text-on-primary: #FFFFFF;--text-link: #2563eb;--border-color: #c5d4e8;--border-color-strong: #a8bdd4;--border-color-input: #b8cae0;--border-radius-sm: 4px;--border-radius-md: 6px;--border-radius-lg: 8px;--border-radius-pill: 90px;--font-family-base: Rubik, Helvetica Neue, sans-serif;--font-family-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 500;--line-height-tight: 1.25;--line-height-base: 1.5;--line-height-relaxed: 1.75;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--sidebar-width: 200px;--sidebar-width-min: 64px;--header-height: 48px;--container-max: 100%;--content-padding: clamp(.75rem, 1.2vw, 1.5rem);--shadow-sm: 0 1px 3px rgba(7, 26, 53, .06);--shadow-md: 0 6px 20px rgba(7, 26, 53, .1);--shadow-lg: 0 12px 32px rgba(7, 26, 53, .12);--shadow-card: 0 4px 18px rgba(7, 26, 53, .08);--shadow-modal: 0 16px 48px rgba(7, 26, 53, .18);--transition-fast: .15s ease;--transition-base: .25s ease;--card-bg: var(--bg-elevated);--surface-bg: var(--bg-primary)}[data-theme=dark]{--brand-deep: #0f2138;--brand-mid: #1a2d4a;--brand-light: #60a5fa;--brand-gradient: linear-gradient(135deg, #1a2d4a 0%, #0f2138 100%);--brand-gradient-soft: linear-gradient(180deg, #1a2d4a 0%, #1e3a5f 100%);--brand-sidebar-gradient: linear-gradient(180deg, #071a35 0%, #031024 100%);--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-secondary: #ef7424;--color-accent: #60a5fa;--color-accent-hover: #3b82f6;--color-success: #4ade80;--color-warning: #fbbf24;--color-error: #f87171;--color-info: #60a5fa;--bg-primary: #0f1419;--bg-secondary: #1a2332;--bg-elevated: #1e2a3a;--bg-surface-soft: #243044;--bg-sidebar: #071a35;--bg-sidebar-brand: #031024;--bg-header: #1e3a5f;--bg-input: #243044;--bg-gauge: #1e2a3a;--bg-table-header: #1e3a5f;--bg-device-card: #1e3a5f;--bg-overlay: rgba(0, 0, 0, .65);--bg-page-gradient-start: #0f1419;--bg-page-gradient-end: #1a2332;--text-primary: #e8eaed;--text-secondary: #a8adb8;--text-muted: #94a3b8;--text-inverse: #0f1419;--text-on-primary: #ffffff;--text-link: #60a5fa;--border-color: #2d3a4f;--border-color-strong: #3d4f66;--border-color-input: #3d4f66;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .4);--shadow-card: 0 2px 8px rgba(0, 0, 0, .25);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .5);color-scheme:dark}[data-theme=light]{color-scheme:light;--iot-action-add: #2563eb;--iot-action-edit: #1d4ed8;--iot-action-delete: #ef4444;--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-accent: #60a5fa;--color-accent-hover: #3b82f6;--color-info: #3b82f6;--cat-panel: var(--bg-elevated);--cat-panel-inner: var(--bg-surface-soft);--cat-panel-hover: var(--bg-primary);--cat-page-bg: var(--bg-primary);--cat-header-bg: var(--bg-elevated);--cat-stat-bg: var(--bg-surface-soft);--cat-shadow: var(--shadow-card);--shell-bg: var(--bg-primary);--shell-panel: var(--bg-elevated);--shell-card-bg: var(--bg-elevated);--shell-card-bg-2: var(--bg-primary);--bg-sidebar: #071a35;--bg-sidebar-brand: #031024;--iot-table-row-even: var(--bg-elevated);--iot-table-row-odd: var(--bg-surface-soft);--iot-table-row-hover: color-mix(in srgb, var(--color-primary) 10%, var(--bg-elevated));--bg-table-header: #1e3a5f}html{font-size:16px;width:100%;max-width:100%;height:100%;overflow-x:hidden}html,body,#root{width:100%;max-width:100%;min-width:0;box-sizing:border-box}body{font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-base);color:var(--text-primary);background-color:var(--bg-primary);min-height:100%;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}a{color:var(--text-link)}a:hover{color:var(--color-accent-hover)}.bg-grey{background-color:var(--bg-secondary)!important}.dark-text{color:var(--text-primary)!important}.black{color:var(--text-primary)}.denim-color{background-color:var(--bg-sidebar-brand)!important}.card-themed{background-color:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-card)}.themed-scrollbar{scrollbar-color:var(--text-muted) var(--bg-secondary);scrollbar-width:thin}.themed-scrollbar::-webkit-scrollbar{width:8px;height:8px}.themed-scrollbar::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}.themed-scrollbar::-webkit-scrollbar-track{background:var(--bg-secondary)}.c-default-layout{background-color:var(--bg-primary);display:flex;flex-direction:row;align-items:stretch;width:100vw;max-width:100%;min-width:0;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:hidden;box-sizing:border-box}.c-default-layout>.c-sidebar{flex:0 0 var(--sidebar-width, 200px);width:var(--sidebar-width, 200px);min-width:var(--sidebar-width, 200px);max-width:var(--sidebar-width, 200px);align-self:stretch;height:100%;overflow-x:hidden;overflow-y:auto}@media(min-width:992px){.c-default-layout.sidebar-collapsed>.c-sidebar{flex-basis:var(--sidebar-width-min, 64px);width:var(--sidebar-width-min, 64px);min-width:var(--sidebar-width-min, 64px);max-width:var(--sidebar-width-min, 64px)}}.c-default-layout>.c-wrapper{flex:1;min-width:0;width:100%;max-width:100%;display:flex;flex-direction:column;height:100%;overflow-x:hidden;box-sizing:border-box}.c-body{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto}.app-main-content,.app-main-content>div{min-width:0;width:100%;max-width:100%}.header1.c-header,.app-header.c-header{background-color:var(--bg-header)!important;color:var(--text-inverse)!important;position:relative;display:flex!important;align-items:center;min-height:48px!important;height:48px!important;padding:0!important;border:0}.app-header__inner{display:flex;align-items:center;justify-content:space-between;width:100%;height:48px;padding:0 15px;box-sizing:border-box}.app-header__end{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-height:48px}.email-header{color:var(--text-inverse);font-size:13px;line-height:1.2;margin:0;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(320px,50vw)}.menubar-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center;width:32px;min-width:32px!important;max-width:32px;height:32px;min-height:32px;margin:0!important;padding:0!important;border:1px solid rgba(148,163,184,.35);border-radius:999px;background:#0f172aa6;color:#e2e8f0;cursor:pointer;box-sizing:border-box;line-height:1;box-shadow:inset 0 0 0 1px #ffffff0a;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.menubar-icon:hover,.menubar-icon:focus-visible{background:#3b82f62e;border-color:#93c5fd8c;color:#93c5fd;box-shadow:0 0 0 2px #3b82f633;outline:none}.menubar-icon .menubar-icon__svg{display:block;width:18px;height:18px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;min-width:34px!important;max-width:34px;height:34px;min-height:34px;margin:0!important;padding:0!important;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-input);color:var(--color-primary);cursor:pointer;box-sizing:border-box;line-height:1;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.theme-toggle:hover{background:color-mix(in srgb,var(--color-primary) 12%,var(--bg-input));border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 18%,transparent)}.theme-toggle svg,.theme-toggle .c-icon{width:14px!important;height:14px!important;margin:0!important;flex-shrink:0}.header1.c-header .theme-toggle,.app-header.c-header .theme-toggle{border-color:color-mix(in srgb,var(--text-inverse) 25%,transparent);background:color-mix(in srgb,var(--text-inverse) 8%,transparent);color:var(--color-primary)}.header1.c-header .theme-toggle:hover,.app-header.c-header .theme-toggle:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent);border-color:var(--color-primary);color:var(--text-on-primary)}@media(min-width:992px){.app-header .menubar-icon{display:none}.sidebar-mobile-close{display:none!important}.app-header__inner{justify-content:flex-end}}.c-sidebar-brand-themed{background-color:var(--bg-sidebar-brand);display:flex;justify-content:flex-start;flex-direction:row;align-items:center;padding:54px 10px 24px;box-sizing:border-box}.c-sidebar-logo,.c-sidebar-brand-themed .slid.c-sidebar-logo{width:80px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;object-fit:contain;text-shadow:0 4px 4px rgba(0,0,0,.25)}.c-sidebar-email,.c-sidebar-brand-themed .slid.c-sidebar-email{padding-left:10px;word-break:break-word;font-size:inherit;line-height:1.3}.c-sidebar-nav-themed{background-color:var(--bg-sidebar)}.c-sidebar.c-sidebar-minimized .c-sidebar-brand-themed{padding:1rem .25rem!important;justify-content:center;overflow:hidden}.c-sidebar.c-sidebar-minimized .c-sidebar-brand img,.c-sidebar.c-sidebar-minimized .c-sidebar-logo,.c-sidebar.c-sidebar-minimized .c-sidebar-email,.c-sidebar.c-sidebar-minimized .c-sidebar-brand .slid{display:none!important;width:0!important;height:0!important;font-size:0!important;line-height:0!important;padding:0!important;margin:0!important;overflow:hidden;opacity:0}.c-sidebar.c-sidebar-minimized .c-sidebar-nav-title{display:none!important}.c-sidebar.c-sidebar-minimized .c-sidebar-nav-link,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle{overflow:hidden!important;white-space:nowrap!important;font-size:0!important;line-height:0!important;padding:.75rem 0!important;text-align:center;justify-content:center}.c-sidebar.c-sidebar-minimized .c-sidebar-nav-link .c-sidebar-nav-icon,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-link svg,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-link .c-icon,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle svg,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle .c-icon{font-size:1.25rem!important;width:1.25rem!important;height:1.25rem!important;margin:0 auto!important;flex-shrink:0}.c-sidebar.c-sidebar-minimized .c-sidebar-nav-link .c-badge,.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle .c-badge{display:none!important}.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle:after{display:none!important}.c-sidebar.c-sidebar-minimized .c-sidebar-nav-dropdown-items{display:none!important}.c-sidebar.c-sidebar-minimized .sidebar-minimizer,.c-sidebar.c-sidebar-minimized .sidebar-button{top:-32px!important;right:3px!important;bottom:unset!important;width:50px!important;position:absolute!important}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item{margin-top:6px!important;padding-top:10px!important;border-top:1px solid var(--shell-sidebar-border, var(--border-color))!important;border-radius:8px!important;font-size:.625rem!important;font-weight:400!important;letter-spacing:.06em!important;text-transform:uppercase}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:focus-visible{background:color-mix(in srgb,var(--color-primary) 14%,transparent)!important;box-shadow:none!important;transform:none!important;color:var(--shell-sidebar-text, var(--text-primary))!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-item{border-top:0!important;padding-top:0!important;margin-top:4px!important}.health-stat-link{cursor:pointer}.gauge-page{background:var(--bg-gauge)}.gauge-container{padding:var(--space-4)}.device-overview-header{background-color:var(--bg-device-card)}.chart-container-themed{background-color:var(--bg-elevated)}.form-group-spaced{margin-top:var(--space-5)}.btn-sized-sm{height:40px;width:120px;margin-top:5px}.th-selection{width:1px}.td-action-spaced{margin-left:20px}.login-checkbox-spaced{margin-left:10px}.change-password-page{--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-status: #60a5fa;--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 50%, #0f2138 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-shadow: 0 8px 28px rgba(7, 26, 53, .1);min-height:100%;padding:10px;color:var(--text-primary);background:radial-gradient(circle at top left,color-mix(in srgb,var(--color-primary) 12%,transparent),transparent 34%),var(--bg-primary)}.change-password-page .iot-cat-overview__header{margin-bottom:10px}.change-password-page .iot-cat-overview__header-subtitle{text-transform:none;letter-spacing:.02em;font-weight:500}.mainbody:has(.change-password-page),.app-main-content:has(.change-password-page){padding-top:0!important}.change-password-shell{width:100%;max-width:1180px;margin:0 auto}.change-password-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:74px;padding:10px 16px;margin-bottom:14px;border:1px solid var(--border-color);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));box-shadow:var(--shadow-card)}.change-password-hero h1{margin:0;color:var(--text-primary);font-size:clamp(.92rem,1.6vw,1.12rem);font-weight:800;letter-spacing:-.01em;line-height:1.2}.change-password-hero span{display:block;margin-top:3px;color:var(--text-secondary);font-size:.78rem;line-height:1.4}.change-password-eyebrow{margin:0 0 3px;color:var(--color-primary);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.change-password-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:16px;align-items:start}.change-password-card{overflow:hidden;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-card)}.change-password-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-elevated))}.change-password-card__header h2{margin:0;color:var(--text-primary);font-size:1rem;font-weight:800}.change-password-card__header p{margin:5px 0 0;color:var(--text-secondary);font-size:.78rem}.change-password-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;padding:18px}.change-password-form-grid--password{grid-template-columns:1fr;gap:14px;justify-items:center;padding:16px 18px 18px}.change-password-form-grid--password .change-password-field{width:100%}.change-password-field{display:grid;grid-template-rows:18px 42px;row-gap:7px;align-content:start;min-width:0;margin:0}.change-password-field>span{color:var(--text-secondary);font-size:.74rem;font-weight:800;line-height:18px}.change-password-input{display:flex;align-items:center;box-sizing:border-box;height:42px;min-height:42px;max-height:42px;overflow:hidden;border:1px solid var(--border-color-input);border-radius:var(--border-radius-md);background:var(--bg-input);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.change-password-input>svg{flex:0 0 auto;display:block;width:16px;height:16px;margin-left:12px;color:var(--text-secondary)}.change-password-input>input,.change-password-input>select{flex:1 1 auto;box-sizing:border-box;display:block!important;width:100%;min-width:0;height:100%!important;min-height:0;max-height:none;margin:0!important;padding:0 12px!important;color:var(--text-primary)!important;border:0!important;background:transparent!important;outline:none;box-shadow:none!important;font-size:.84rem;line-height:42px!important;vertical-align:middle}.change-password-input>select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-top:0;padding-bottom:0;line-height:42px!important;cursor:pointer}.change-password-input>input[type=date]{line-height:normal}.change-password-input>input[type=date]::-webkit-calendar-picker-indicator{align-self:center;margin-top:0}.change-password-input>input:disabled{color:var(--text-muted)!important;cursor:not-allowed}.change-password-input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent)}.change-password-input--gender{overflow:visible}.change-password-input--gender .change-password-select{flex:1 1 auto;min-width:0;height:100%;display:flex;align-items:center}.change-password-input--gender .change-password-select>div{flex:1 1 auto;width:100%;min-width:0;height:100%}.change-password-input--gender .change-password-select__control{display:flex;flex-wrap:nowrap;align-items:center;width:100%;height:100%;border:none;background:transparent;box-shadow:none;cursor:pointer}.change-password-input--gender .change-password-select__value-container{display:flex;flex:1 1 auto;align-items:center;min-width:0;height:100%;padding:0 0 0 4px;overflow:hidden}.change-password-input--gender .change-password-select__single-value,.change-password-input--gender .change-password-select__placeholder{margin:0;font-size:.84rem;line-height:1}.change-password-input--gender .change-password-select__placeholder{color:var(--text-muted)}.change-password-input--gender .change-password-select__single-value{color:var(--text-primary)}.change-password-input--gender .change-password-select__input-container{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.change-password-input--gender .change-password-select__indicators{display:flex;flex-shrink:0;align-items:center;height:100%}.change-password-input--gender .change-password-select__indicator-separator{display:none}.change-password-input--gender .change-password-select__dropdown-indicator{display:flex;align-items:center;padding:0 12px 0 4px;color:var(--text-muted);cursor:pointer}.change-password-input--gender .change-password-select__dropdown-indicator svg{display:block;width:14px;height:14px}.change-password-input--gender:focus-within>svg,.change-password-input--gender:focus-within .change-password-select__dropdown-indicator{color:var(--color-primary)}.change-password-select__menu-portal{z-index:100000}.change-password-select__menu{overflow:hidden;margin-top:4px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--bg-elevated);box-shadow:var(--shadow-md)}.change-password-select__menu-list{max-height:240px;padding:4px 0;overflow-y:auto;background:var(--bg-elevated)}.change-password-select__option{padding:8px 12px;color:var(--text-primary);font-size:.84rem;cursor:pointer;background:transparent}.change-password-select__option--is-focused{background:var(--bg-secondary)}.change-password-select__option--is-selected,.change-password-select__option--is-selected.change-password-select__option--is-focused{color:var(--text-on-primary);background:var(--color-primary)}.change-password-security-card{align-self:stretch}.change-password-security-card .change-password-card__header{background:color-mix(in srgb,var(--bg-secondary) 82%,var(--bg-elevated))}.change-password-security-card .change-password-actions{padding-top:18px;padding-bottom:18px}.change-password-input--password{border-color:color-mix(in srgb,var(--border-color-input) 86%,transparent);background:color-mix(in srgb,var(--bg-input) 84%,var(--bg-elevated))}.change-password-input--password>svg{transform:translateY(-1px)}.change-password-input--password>input{letter-spacing:.01em}.change-password-input--password>input::placeholder{color:var(--text-muted);opacity:.78}.change-password-input--password:focus-within{background:var(--bg-input)}.change-password-input--password:focus-within>svg{color:var(--color-primary)}.change-password-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-elevated))}.change-password-btn{display:inline-flex;align-items:center;justify-content:center;min-width:136px;min-height:38px;padding:0 16px;border:1px solid transparent;border-radius:var(--border-radius-md);font-size:.78rem;font-weight:800;line-height:1;transition:background var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast)}.change-password-btn:disabled{cursor:not-allowed;opacity:.7}.change-password-btn--primary{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.change-password-btn--primary:hover:not(:disabled),.change-password-btn--primary:focus:not(:disabled){color:var(--text-on-primary);background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.change-password-btn--secondary{color:var(--text-primary);background:transparent;border-color:var(--border-color)}.change-password-btn--secondary:hover:not(:disabled),.change-password-btn--secondary:focus:not(:disabled){color:var(--text-primary);background:color-mix(in srgb,var(--bg-secondary) 80%,var(--bg-elevated));border-color:color-mix(in srgb,var(--border-color) 70%,var(--color-primary))}.password-regen-page{--password-regen-pad-x: 18px;--password-regen-pad-y: 18px;--password-regen-gap: 14px;--password-regen-input-h: 42px;display:flex;align-items:flex-start;justify-content:center;box-sizing:border-box;width:100%;min-height:100%;padding:16px 16px 24px}.password-regen-shell{width:100%;max-width:520px;margin:0 auto}.password-regen-panel{display:flex;flex-direction:column;width:100%;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-card)}.password-regen-page .password-regen-panel>.iot-cat-overview__header{margin:0;border:0;border-radius:0;box-shadow:none}.password-regen-page .password-regen-panel .iot-cat-overview__header-row{align-items:flex-start;min-height:0;padding:16px var(--password-regen-pad-x)}.password-regen-page .password-regen-panel .iot-cat-overview__header-brand-icon{margin-top:1px}.password-regen-page .password-regen-panel .iot-cat-overview__header-subtitle{text-transform:none;letter-spacing:.02em;font-weight:500;line-height:1.35}.password-regen-form{display:flex;flex-direction:column;width:100%;margin:0}.password-regen-intro{padding:var(--password-regen-pad-y) var(--password-regen-pad-x) 0;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-elevated));padding-bottom:14px}.password-regen-intro h2{margin:0;color:var(--text-primary);font-size:1rem;font-weight:800;line-height:1.25}.password-regen-intro p{margin:5px 0 0;color:var(--text-secondary);font-size:.78rem;line-height:1.4}.password-regen-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--password-regen-gap);width:100%;padding:var(--password-regen-pad-y) var(--password-regen-pad-x);box-sizing:border-box}.password-regen-field{display:grid;grid-template-rows:auto var(--password-regen-input-h);row-gap:7px;width:100%;min-width:0;margin:0}.password-regen-field>span{color:var(--text-secondary);font-size:.74rem;font-weight:800;line-height:1.2}.password-regen-input{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--password-regen-input-h);min-height:var(--password-regen-input-h);max-height:var(--password-regen-input-h);overflow:hidden;border:1px solid color-mix(in srgb,var(--border-color-input) 86%,transparent);border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--bg-input) 84%,var(--bg-elevated));transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.password-regen-input>svg{flex:0 0 auto;align-self:center;display:block;width:16px;height:16px;margin-left:12px;color:var(--text-secondary)}.password-regen-input>input{flex:1 1 auto;align-self:stretch;box-sizing:border-box;display:block!important;width:100%;min-width:0;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0 8px 0 12px!important;color:var(--text-primary)!important;border:0!important;background:transparent!important;outline:none;box-shadow:none!important;font-size:.84rem;line-height:normal!important;letter-spacing:.01em}.password-regen-input>input::placeholder{color:var(--text-muted);opacity:.78}.password-regen-input>input::-ms-reveal,.password-regen-input>input::-ms-clear{display:none;width:0;height:0}.password-regen-input:focus-within{border-color:var(--color-primary);background:var(--bg-input);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent)}.password-regen-input:focus-within>svg{color:var(--color-primary)}.password-regen-input>.password-regen-toggle{flex:0 0 32px!important;align-self:center;display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;max-height:32px!important;margin:0 4px 0 0!important;padding:0!important;border:0!important;border-radius:var(--border-radius-md);background:transparent!important;box-shadow:none!important;color:var(--text-secondary);line-height:0!important;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.password-regen-input>.password-regen-toggle:hover,.password-regen-input>.password-regen-toggle:focus{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent)!important;outline:none}.password-regen-input>.password-regen-toggle svg{display:block;width:15px;height:15px}.password-regen-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;width:100%;box-sizing:border-box;padding:14px var(--password-regen-pad-x);border-top:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-elevated))}@media(max-width:991px){.change-password-grid,.change-password-form-grid{grid-template-columns:1fr}.c-default-layout:has(.change-password-page)>.c-wrapper{overflow:hidden!important}.c-body:has(.change-password-page){flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.c-body:has(.change-password-page) .mainbody,.c-body:has(.change-password-page) .app-main-content{height:auto!important;min-height:100%!important;max-height:none!important;overflow:visible!important}.c-body:has(.change-password-page) .mainbody>div,.c-body:has(.change-password-page) .mainbody>div>.fade,.c-body:has(.change-password-page) .mainbody>div>.fade.show{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.change-password-page{height:auto;min-height:100%;overflow:visible;padding-bottom:16px}.password-regen-page{padding:12px 12px 20px}.password-regen-shell{max-width:100%}}@media(max-width:575px){.change-password-page:not(.password-regen-page){padding:0 5px 24px}.change-password-hero,.change-password-card__header,.change-password-form-grid,.change-password-actions{padding-right:14px;padding-left:14px}.change-password-actions{justify-content:stretch}.change-password-btn{width:100%}.password-regen-page{--password-regen-pad-x: 14px;--password-regen-pad-y: 14px;padding:8px 8px 20px}.password-regen-page .password-regen-panel .iot-cat-overview__header-row{gap:12px;padding-top:14px;padding-bottom:14px}.password-regen-page .password-regen-panel .iot-cat-overview__header-brand-icon{width:38px;height:38px;flex-basis:38px;font-size:.92rem}.password-regen-page .password-regen-panel .iot-cat-overview__header-title{font-size:.9rem}.password-regen-actions{flex-direction:column-reverse;align-items:stretch}.password-regen-actions .change-password-btn{width:100%;min-width:0}}@media(min-width:992px){.password-regen-page{align-items:center;padding-top:28px;padding-bottom:28px}}.switch-toggle{position:relative;display:inline-block;width:60px;height:34px}.switch-toggle input{opacity:0;width:0;height:0}.switch-toggle .switch-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:var(--text-muted);transition:.4s;border-radius:34px}.switch-toggle .switch-slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:var(--bg-primary);transition:.4s;border-radius:50%}.switch-toggle input:checked+.switch-slider{background-color:var(--color-primary)}.switch-toggle input:checked+.switch-slider:before{transform:translate(26px)}.switch-toggle input:disabled+.switch-slider{opacity:.65;cursor:not-allowed}.gauge-container-inner{display:flex;align-items:center;justify-content:center;height:16em}.gauge-container-inner--custom{height:var(--gauge-height, 16em)}.math-function-buttons{gap:6px}.math-function-btn{min-height:auto;height:auto;min-width:auto;padding:2px 8px;font-size:12px!important;font-weight:400;line-height:1.4;border-radius:4px;margin:0!important}.math-function-btn-wrap{display:inline-flex;vertical-align:middle}.math-function-tooltip{--bs-tooltip-opacity: 1;z-index:1080}.math-function-tooltip .tooltip-inner{max-width:200px;padding:0;text-align:left;background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;box-shadow:var(--shadow-md)}.math-function-tooltip .tooltip-arrow{width:.55rem;height:.55rem}.math-function-tooltip.bs-tooltip-top .tooltip-arrow:before,.math-function-tooltip.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--border-color)}.math-function-tooltip.bs-tooltip-bottom .tooltip-arrow:before,.math-function-tooltip.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--border-color)}.math-function-tooltip__content{padding:7px 9px}.math-function-tooltip__title{margin:0 0 2px;font-size:.6875rem;font-weight:600;line-height:1.25;color:var(--text-primary)}.math-function-tooltip__how{margin:0;font-size:.625rem;font-weight:400;line-height:1.35;color:var(--text-secondary)}.math-function-tooltip__example{display:flex;flex-direction:column;gap:2px;margin-top:5px;padding-top:5px;border-top:1px solid var(--border-color)}.math-function-tooltip__example-label{margin-bottom:0;font-size:.5625rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary)}.math-function-tooltip__example code{display:block;font-size:.625rem;font-weight:500;line-height:1.3;color:var(--text-primary);background:color-mix(in srgb,var(--bg-secondary) 70%,var(--bg-elevated));border-radius:3px;padding:2px 5px;white-space:normal;word-break:break-word}.formula-input-wrap{position:relative}.iot-formula-editor__heading{font-size:16px;font-weight:600}.formula-suggestions{position:absolute;z-index:10;width:100%;max-height:150px;margin:0;padding:0;list-style:none;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md)}.formula-suggestion-item{padding:5px 10px;cursor:pointer}.formula-suggestion-item:hover,.formula-suggestion-item.is-active{background:var(--bg-secondary)}.formula-loading-icon{position:absolute;right:10px;top:50%;width:18px;height:18px;border:2px solid var(--border-color);border-top:2px solid var(--bg-table-header);border-radius:50%;animation:formula-spin .7s linear infinite;transform:translateY(-50%)}.formula-suggestion-empty{padding:5px 10px;color:var(--text-muted);cursor:default}@keyframes formula-spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.formula-input--loading{padding-right:2.5rem}.sensor-value-text{font-size:16px}.sensor-value-text--compact{font-size:10px!important}.badge-text-20{font-size:20px}.empty-page--sized{height:var(--empty-page-height, 70vh)}.badge-error-wrap{white-space:pre-wrap;word-break:break-word}.btn-primary-themed{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--text-on-primary)}.btn-primary-themed:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.iot-delete-modal.modal,.modal.iot-delete-modal{overflow:hidden!important}.iot-delete-modal .modal-dialog{max-width:min(420px,calc(100vw - 2rem));margin:1rem auto;overflow:visible}.iot-delete-modal .modal-content{overflow:hidden!important;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-elevated);box-shadow:var(--shadow-modal)}.iot-delete-modal .modal-body,.iot-delete-modal__body{position:relative;max-height:none!important;overflow:hidden!important;overflow-x:hidden!important;overflow-y:hidden!important;padding:28px 24px 12px!important;text-align:center;color:var(--text-primary);background:var(--bg-elevated);scrollbar-width:none;-ms-overflow-style:none}.iot-delete-modal .modal-body::-webkit-scrollbar,.iot-delete-modal__body::-webkit-scrollbar{display:none;width:0;height:0}.iot-delete-modal__close{position:absolute;top:12px;right:12px;z-index:2;width:1.75rem!important;min-width:1.75rem!important;max-width:1.75rem!important;height:1.75rem!important;min-height:1.75rem!important;max-height:1.75rem!important;margin:0!important;padding:0!important;background-color:transparent!important;background-image:var(--bs-btn-close-bg)!important;border:0!important;border-radius:6px!important;box-shadow:none!important;opacity:.75}.iot-delete-modal__close:hover,.iot-delete-modal__close:focus{margin-top:0!important;opacity:1;background-color:color-mix(in srgb,var(--text-primary) 10%,transparent)!important;border:0!important;box-shadow:none!important}.iot-delete-modal__icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0 auto 14px;border-radius:50%;color:var(--color-error);background:color-mix(in srgb,var(--color-error) 14%,transparent);border:1px solid color-mix(in srgb,var(--color-error) 28%,transparent);font-size:1.6rem;line-height:1}.iot-delete-modal__icon-wrap--primary{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 14%,transparent);border-color:color-mix(in srgb,var(--color-primary) 28%,transparent)}.iot-delete-modal__icon-wrap--key{color:#e6a700;background:color-mix(in srgb,#ffc107 18%,transparent);border-color:color-mix(in srgb,#ffc107 42%,transparent)}.iot-delete-modal .generated-password{display:inline-flex;align-items:center;justify-content:center;gap:6px;max-width:100%;margin:2px auto 0;padding:6px 8px 6px 10px;border:1px solid var(--border-color);border-radius:8px;background:color-mix(in srgb,var(--bg-secondary) 78%,var(--bg-elevated))}.iot-delete-modal .generated-password__value{display:block;min-width:0;margin:0;padding:0;overflow:hidden;color:var(--text-primary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.84rem;font-weight:700;letter-spacing:.03em;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;background:transparent;border:0}.iot-delete-modal .generated-password__copy{flex:0 0 22px!important;display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:22px!important;min-width:22px!important;max-width:22px!important;height:22px!important;min-height:22px!important;max-height:22px!important;margin:0!important;padding:0!important;border:1px solid color-mix(in srgb,var(--color-primary) 24%,transparent)!important;border-radius:5px!important;background:color-mix(in srgb,var(--color-primary) 10%,transparent)!important;box-shadow:none!important;color:var(--color-primary)!important;line-height:0!important;font-size:0!important;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.iot-delete-modal .generated-password__copy:hover,.iot-delete-modal .generated-password__copy:focus{background:color-mix(in srgb,var(--color-primary) 18%,transparent)!important;border-color:var(--color-primary)!important;outline:none}.iot-delete-modal .generated-password__copy.is-copied{color:#1b7f3a!important;background:color-mix(in srgb,#22c55e 14%,transparent)!important;border-color:color-mix(in srgb,#22c55e 36%,transparent)!important}.iot-delete-modal .generated-password__copy svg{display:block;width:11px;height:11px}.iot-delete-modal__title{margin:0 0 8px;color:var(--text-primary);font-size:1.0625rem;font-weight:700;line-height:1.3;text-transform:capitalize}.iot-delete-modal__message{margin:0;color:var(--text-secondary);font-size:.875rem;font-weight:500;line-height:1.55}.iot-delete-modal__footer{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:8px 20px 20px!important;border-top:0!important;background:var(--bg-elevated)}.iot-delete-modal__footer .btn,.iot-delete-modal__footer button{min-width:96px!important;width:auto!important;height:auto!important;min-height:34px!important;margin:0!important;padding:7px 16px!important;border-radius:8px!important;font-size:.8125rem!important;font-weight:600!important;box-shadow:none!important}.iot-delete-modal__confirm.iot-setup-btn{color:#fff!important;background:var(--color-error)!important;border-color:var(--color-error)!important}.iot-delete-modal__confirm.iot-setup-btn:hover:not(:disabled),.iot-delete-modal__confirm.iot-setup-btn:focus:not(:disabled){color:#fff!important;background:color-mix(in srgb,var(--color-error) 88%,#000)!important;border-color:color-mix(in srgb,var(--color-error) 88%,#000)!important}.iot-delete-modal__confirm.iot-setup-btn--primary{color:var(--text-on-primary)!important;background:var(--color-primary)!important;border-color:var(--color-primary)!important}.iot-delete-modal__confirm.iot-setup-btn--primary:hover:not(:disabled),.iot-delete-modal__confirm.iot-setup-btn--primary:focus:not(:disabled){color:var(--text-on-primary)!important;background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}[data-theme=dark] .iot-delete-modal .modal-content,[data-theme=dark] .iot-delete-modal .iot-delete-modal__body,[data-theme=dark] .iot-delete-modal .iot-delete-modal__footer{background:var(--bg-elevated)}[data-theme=dark] .iot-delete-modal__message{color:var(--text-secondary)}[data-theme=dark] .iot-delete-modal__close:hover,[data-theme=dark] .iot-delete-modal__close:focus{background-color:color-mix(in srgb,var(--text-primary) 14%,transparent)!important}[data-theme=light] .iot-delete-modal .modal-content{box-shadow:0 16px 40px #1e3a5f24,0 2px 8px #1e3a5f14}[data-theme=light] .iot-delete-modal__message{color:color-mix(in srgb,var(--text-primary) 72%,#64748b)}.u-flex{display:flex}.u-flex-row{display:flex;flex-direction:row}.u-flex-between{display:flex;justify-content:space-between;align-items:center}.u-flex-2{flex:2}.u-flex-center{display:flex;align-items:center;justify-content:center}.u-ml-10{margin-left:10px}.u-mt-5{margin-top:5px}.u-mt-20{margin-top:20px}.u-my-20{margin-top:20px;margin-bottom:20px}.u-p-0{padding:0}.u-w-80{width:80px}.u-h-35{height:35px}.u-h-40{height:40px}.u-h-64{height:64px}.u-w-120{width:120px}.u-w-1{width:1px}.u-w-0{width:0}.u-h-0{height:0}.u-text-muted-sm{font-size:var(--font-size-xs);color:var(--text-muted)}.u-text-bold{font-weight:var(--font-weight-bold)}.u-text-semibold{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.u-text-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.u-text-18-bold{font-size:18px;font-weight:var(--font-weight-bold)}.u-text-16-semibold{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.u-text-20{font-size:20px}.u-word-break{word-break:break-word}.u-pl-10{padding-left:10px}.u-cursor-pointer{cursor:pointer}.u-resize-none{resize:none}.u-opacity-0{opacity:0}.u-pos-static{position:static}.u-pos-initial{position:initial}.u-display-block{display:block}.u-hr-subtle{margin:var(--space-5) 0;border:1px solid var(--border-color)}.u-modal-body-scroll{max-height:70vh;overflow-y:auto;outline:none;scrollbar-width:none;-ms-overflow-style:none}.u-modal-body-scroll::-webkit-scrollbar{display:none}.u-modal-close-btn{background:transparent;border:none;color:var(--text-inverse);font-size:var(--font-size-xl);cursor:pointer;line-height:1;padding:0 4px;opacity:.8}.u-modal-body-scroll-lg{max-height:75vh;overflow-y:auto}.u-modal-body-scroll-xl{max-height:80vh;overflow-y:auto}.u-bg-chart{background:var(--bg-primary)}.u-min-h-200{min-height:200px}.u-chart-h-40{height:40px}.u-chart-h-70{height:70px}.u-hidden{display:none!important}.u-mt-0{margin-top:0}.u-text-error{color:var(--color-error)}.u-table-full{width:100%}.u-pos-bottom-abs{width:92%;position:absolute;bottom:0}.u-pos-relative{position:relative}.u-pad-h-11{padding-left:11px;padding-right:11px}.u-text-12{font-size:12px}.u-text-15-semibold{font-size:15px;font-weight:var(--font-weight-semibold)}.u-text-22-semibold{font-size:22px;font-weight:var(--font-weight-semibold);margin-left:0;margin-top:0}.u-btn-mt-30{margin-top:30px;height:35px}.u-form-h-38{height:38px}.u-settings-btn{margin-top:25px;height:45px}.u-th-w-20{width:20px}.u-card-w-44{width:44%}.u-progress-h-3{height:3px}.u-progress-h-30{height:30px}.u-sensor-pos-bottom{position:absolute;bottom:0}.u-bg-sensor-panel{margin-top:0;background-color:var(--bg-gauge)}.u-tags-btn-row{height:35px;margin-bottom:16px}.u-aspect-75{padding-top:75%}.u-table-header-themed{background-color:var(--bg-table-header);color:var(--text-on-primary)}.u-bg-header{background-color:var(--bg-header)}.u-bg-sidebar-brand{background-color:var(--bg-sidebar-brand)}.u-bg-layout{background-color:var(--bg-primary)}.u-bg-gauge{background:var(--bg-gauge)}.u-bg-device-card{background-color:var(--bg-device-card)}.u-text-inverse{color:var(--text-inverse)}.u-toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.u-toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--text-muted);transition:var(--transition-base);border-radius:24px}.u-toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--bg-primary);transition:var(--transition-base);border-radius:50%}.u-toggle-input:checked+.u-toggle-slider{background-color:var(--color-primary)}.u-toggle-input:checked+.u-toggle-slider:before{transform:translate(26px)}button:disabled{cursor:default}button.disabled{cursor:default}.btn-brand:not(:only-child) .c-icon{margin-top:0!important}.logo{height:100px!important;width:100px!important}.dark-text{color:#222!important}.swiper-pagination-bullet-active,.swiper-pagination-bullet{color:#fff!important}.about-heading{text-decoration-line:underline}.black{color:#000}.header{display:block;width:50%;font-size:60px;font-style:normal;line-height:120px;color:#fff;padding-top:54px;padding-bottom:32px}.sign-label{color:#fff;font-size:30px}.input-block{padding-top:36px;display:flex;flex-direction:column;width:350px}.login-input{background-color:var(--bg-input)!important;background-image:none!important;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:.875rem;font-weight:400;line-height:1.5;vertical-align:middle;border:1px solid;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#768192;border-color:#d8dbe0}input[type=password],select{display:inline-block;box-sizing:border-box;margin-bottom:24px;height:40px;border:2px solid white;border-radius:6px;background:transparent!important;outline:none;font-size:14px;color:#fff;cursor:pointer;width:100%}input::placeholder{color:#768192!important}.input-block-user,.input-block-pass{position:relative}.input-user{position:absolute;right:8px;top:2px;width:32px;height:32px;color:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGkSURBVHgBpVaLUcMwDHVYgIxgNggTkBE6gjfAG6RM0DJBYYKOEDbIMYFhgrKBsMsTVoztpFR3uiTy09PPcaJURYio9Tp4Hb06inKCzXrV6lIJTiCQ4mALOiVrh9WBPPARGRLI+lBJoTojEgk+dol8EOA+Q7aDmsTPiBYOtcy5FVrYO5r3X7asU/O2Ms6m5BpZp+RsD7rFc4d7rrSE1zLAAQ4mCTzC3mcq7nlOVTui5oBtzl5IoC3Zb/zzBvbXxJ+dPlRZPnG9TexPuNpaFtdUEH0xkGmBoMus6VoC2DBOLYB4YAFskFlQS/Fl1LXkigFAtKNl2dUCNOcyvDRNcyfL95ej19CaN6/PXoPtAZB39TP8AfZwf+85vgTHdF6jzKAoHmZ7tSAUX7oxqf53yAwwWDRryQXhHj424bB/tiMG6ihzglYCtBj6Cc8jyQ3gb154YJdmL4JwJw58lYt8SLH06kLxPhvhPz/sADAC0P0jQCf8TQnEZboiqJw9d2C7BDY0/2QaWv/JNGplRloMnmWi+NF3ydqRrvi7sCCVm8BR/G2pbudv5XPftqKafhkAAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center}.input-pass{position:absolute;right:8px;top:2px;width:32px;height:32px;color:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAFrSURBVHgB7VbRccMgDJV7GcAjeIRu0HSDbhBG6Ab2BnUncDJBu4G7QbJBvIG7gSqd5bOOQgI45Cvv7h0cSDyEZAPACiBiSayJZ5zAbUesIBd4cSXowu034BBlEUPcW+PcN3ALOEQbh01DHJVNDWsQInrBNk08RlT5cPEdlc8OYhEr6hEfowpOCidaVPlXuOS8i3H8EqceEiEFN6N6CvQrpR0gHS3xV/rvQR60w1blqIREqKjH0Ii/pWXRsN26Mah1wmBVZlLUOP3hGOdQh50qjDCn/2vUUV+GLYoJP35L9Hj1xB6iDrtS5pnmLqJKGC37jthnE1U+lSWk0WPunJL9FqcXSC9RmxAnryj133DJ48zwGyZFVOZb1xnCSmyIe+kPxNeiKAbLZs7RifipbNdBBWHU2Fby1OHy8ki+i13YeMY/iM+QET5hffEz+QI/QCbhF1Uzs/CBct5ADuBlNJAJ/AL58czx8Z4gE/4ALQ1gwncN7kMAAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center}button{min-width:100px;height:35px;margin-top:36px;background-color:#fd6262;border:1px solid #fd6262;box-sizing:border-box;color:#000;font-size:16px;font-weight:700;cursor:pointer;border-radius:90px}button:hover{background-color:transparent;border:2px solid white;color:#fff}.c-header{background-color:"transparent"!important;height:48px!important;min-height:48px!important}.header1.c-header{padding-top:0;padding-bottom:0}.c-header-toggler-icon{margin-top:-40px!important}.c-header-toggler .d-md-down-none{display:none!important}.table th,.table td{border-top:0px solid}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.btn-login{margin-right:6px;background-color:#fff!important;color:#000!important;max-width:100px;padding:2px!important;height:40px;position:absolute;right:107px;top:2px}.plr--180{padding:0 80px}.bk-separator--120{height:40px}.testimonial-style--3 .quote{margin:0 auto 20px;font-size:28px;width:100px;height:100px;line-height:100px;border:2px solid #c11f1d;border-radius:50%;text-align:center}.serviceblock{height:500px;display:flex;justify-content:center;align-items:center}.booking-form{top:120px;margin:auto auto 150px;padding:20px}.evaluation-form-dropdown{display:inline-block;box-sizing:border-box;margin-bottom:24px;height:40px;border:1px solid #000!important;border-radius:6px;background:transparent!important;outline:none;font-size:14px;color:#000!important;cursor:pointer;width:100%}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{border:1px solid var(--border-color-input, #c5d4e8);-webkit-text-fill-color:var(--text-primary, #1e293b);caret-color:var(--text-primary, #1e293b);-webkit-box-shadow:0 0 0px 1000px var(--bg-input) inset;transition:background-color 5000s ease-in-out 0s}.radia-btn-parent{display:inline-flex!important}.test{border:2px solid green;width:24px;height:24px;background-repeat:no-repeat;background-position:center}.c-switch{height:28px}.c-switch-slider{width:60px!important;padding:4px!important;border:2px solid #8a8a8a!important;border-radius:25px!important}.c-switch-input:checked+.c-switch-slider{background-color:#fff!important}.c-switch-input:checked+.c-switch-slider:before{border-radius:50%;background-color:#249e6b!important;border:1px solid #249e6b!important}.c-switch-input:checked~.c-switch-slider:before{transform:translate(32px)}.c-switch-slider:before{border-radius:50%;background-color:#8a8a8a}.form{background-color:transparent!important;border:2px solid white;color:#fff}.check-toggle{width:200px;display:flex;justify-content:space-around;padding:8px;align-items:center}.c-sidebar{box-shadow:2px 6px 15px 2px #0c0a0bcc;border-radius:12px}.c-sidebar-minimized .slid{font-size:0!important;border-radius:unset!important;background-color:#3c4b64!important;box-shadow:none!important}.c-sidebar-minimized .c-sidebar .c-sidebar-nav-link.c-active{margin:0 2px!important;color:#fd6262!important}select.form-control option{background-color:#8a8a8a!important}.form-control:focus{color:#8a8a8a!important;font-size:16px!important}.form-control:focus option{color:#fff;cursor:pointer}.form-control:focus option:hover{background-color:#1b9e3e!important}.form-control-disabled:focus{color:#8a8a8a!important;font-size:14px!important}.c-sidebar .c-sidebar-nav-link.c-active{color:#fff!important}.c-sidebar-nav-link:hover{background-color:#222326!important;color:#fff!important}.c-sidebar-nav-link:hover .c-sidebar-nav-icon,.c-sidebar .c-sidebar-nav-link.c-active .c-sidebar-nav-icon{color:#fff!important}.c-sidebar-nav{background-color:#313c52}.c-sidebar .c-sidebar-nav-link,.c-sidebar .c-sidebar-nav-dropdown-toggle,.c-sidebar .c-sidebar-nav-link.c-active .c-sidebar-nav-icon{color:#fff!important}.project-icon{width:64px;height:64px;background-repeat:no-repeat;background-position:center}.click-project{color:#fd6262!important;font-weight:700}.project-label{color:#fd6262}.c-sidebar .c-sidebar-minimized .test-chart{border:1px solid red}.c-sidebar #test-chart{border:2px solid green}.section{width:90%;margin:0 auto}.main-section{margin:0 30%}.inspection-section,.dealers-section{width:90%;margin:0 auto}.dealers-section.iot-setup-page,.iot-setup-page.dealers-section{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.car-section{width:90%;margin:0 auto}.active-inactive-padding{padding:0}.modal-body-padding{padding:50px}.read-field{text-align:center;padding:20px}.auction-filter{height:120px;padding:20px 40px 20px 20px}.charts{height:300px;margin-top:40px}.dealers-button{padding:0}.radio-size{width:40px}.sidebar-minimizer{width:50px;position:absolute;right:3px;top:-32px;position:absolute!important;bottom:unset}.modal-body-padding{padding:0}.box-shadow{box-shadow:0 4px 8px #0003,0 6px 20px #00000030;border-radius:8px}.modal-button{display:flex;flex-direction:row;justify-content:flex-end;margin-bottom:20px;margin-right:20px}.modal-date{margin-bottom:50px;margin-top:30px;margin-left:20px}.dropdown-border{border:3px solid white}.container-buttons{display:flex;flex-direction:row;justify-content:flex-end;padding-bottom:5px;margin-top:-45px}select option{margin:40px;color:var(--text-primary);background-color:var(--bg-elevated)!important;text-shadow:none}select{background-color:#eeebdd!important;border:none;color:#ac0d0d}@media only screen and (max-width:640px){.charts{height:200px;margin-top:20px}.request-button{width:100%}.dealers-button{padding:0;font-size:12px}.radio-size{width:30px}.input-block{padding-top:36px;display:flex;flex-direction:column;width:100%;max-width:100%}.header1{display:block}}.read-only-view{height:35px;display:flex;justify-content:flex-start;align-items:center;font-size:10px;margin:8px;cursor:none}body{background-color:var(--bg-primary);margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}h3{color:#3c4b64}.main{margin:0 auto;padding:0;width:100%;display:table}.centerContainer{width:100%;max-width:1000px;margin:0 auto;padding:0 12px;box-sizing:border-box}.heading1{background:#2390e8;padding:10px 0;text-align:center;color:#fff;font-size:28px;font-family:sans-serif;margin:0}.box{border:1px solid #444}.bor1{display:flex}.yellow{background-color:#fee599}.textContent{text-align:center;padding:5px 10px}.textContent dd{margin:0;padding:0}.btnColor{background:"#fff"}.borBtn{border:1px solid #afafaf;padding:0 15px;height:40px;color:#444;position:relative;border-radius:5px}.borBtpos{top:-89px;position:relative}.bore2{position:relative;top:-85px}.arrow2{position:relative;top:30px}.arrow1{position:relative;top:21px}.arrowbr2{position:relative;top:25px}.boxpos{position:relative;top:57px}.btnpos{position:relative;top:75px}.leftSection{width:330px;float:left}.rightSection{float:left}.tops{top:38px;left:-116px}.arrow4{position:relative;top:78px;left:-100px}.waterTank{display:flex}.boxpos3{position:relative;top:65px}.arrow101{position:relative;top:72px;left:-100px}.arrow1021{position:relative;top:72px;left:-130px}.rows{display:flex;margin-top:40px}.cols{margin:0 10px;max-width:33.33%;flex:auto}.btnAutoH{font-size:25px;width:200px}.h290{height:390px}.h200{height:219px}.h90{height:290px}.arrowImage{width:100px}.arrowImage img{margin:40px 0}.arrowImage img:nth-child(3){position:relative;top:7px}.arrowImage img:nth-child(4){position:relative;top:10px}.pos110{position:relative;top:110px}.pos80{position:relative;top:80px}.pos140{position:relative;top:140px}.fourBox{width:80px}.h70{height:70px}.h80{height:80px}.ProcessConet{padding-top:0;width:100%;max-width:900px;margin:0 auto;box-sizing:border-box}.mr15{margin-bottom:15px}.green{background:#aad05f!important}.greenBox{width:80px;height:80px;margin:40px 10px}.arrowUp img{transform:rotate(-90deg)}.arrowUp{position:relative;top:37px;left:66px}.arrowUps{position:relative;top:59px;left:112px;width:80px}.marginLR{margin:55px 48px}.bottomBox{position:relative;left:115px}.bottomBox1{position:relative;left:155px;top:170px}.heading3{font-size:20px;font-family:Arial,Helvetica,sans-serif;text-align:center;margin-bottom:12px;color:#7d7d7d}.pos150{position:relative;top:70px}.pos182{position:relative;top:97px}.mr55{margin-top:55px}.arrowimage2 img:nth-child(2){position:relative;top:20px}.top40{top:47px}.middleBox{width:256px;float:left;position:relative}.middleBox:before{position:absolute;content:"";width:1px;height:87.5%;background-color:#000;top:32px}.flexBox{float:left;width:400px}.buttonContent{display:flex;margin-bottom:70px}.middleBox .bor1{margin-bottom:84px;position:relative}.topmn10{top:-10px}.topmn18{top:-18px}.topmn28{top:-28px}.w160{width:160px}.boxes{width:80px;height:80px;position:relative}.endBox{float:left}.enBox{position:relative}.diverImg{position:absolute}.diver1{right:-90px;top:80px}.boxPos1{left:172px;top:86px}.top68{top:73px}.top135{top:146px}.top204{top:219px}.top270{top:292px}.leftSectionbox{float:left;position:relative;top:530px}.widget{width:140px;background:#2f2e2e;border-radius:5px;height:83px}.widget .Wheader{width:100%;background:#1295d3;border-radius:5px 5px 0 0;height:27px;text-align:left;font-size:16px;color:#fff;line-height:30px;text-indent:15px;display:flex;justify-content:space-between}.widget .badge-dangerrs{width:20px;height:20px;background:#ff0c24;border-radius:10px;margin-top:3px}.widget .badge-succes{width:20px;height:20px;background:#155724;margin-left:10px;border-radius:10px;margin-top:3px}.badge-disable{opacity:.6}.fields{display:flex}.fields span{padding:5px 1px;margin:2px 2.2px;font-size:12px}.spaned{background:#536b7c;color:#fff;width:50px;text-indent:2px}.valueSpan{width:50px;text-indent:2px;background:#b1b1b2;color:#5e5e5e}.valueKHP{background:#000;color:#fff;text-align:center;width:28px;font-size:10px!important}.po196{position:relative;top:-196px}.w89{width:89px}.widPos3{position:relative;left:-100px;top:25px}.widPos33{position:relative;left:-130px;top:25px}.tankImh{width:170px;position:relative}.tankImh>img{width:100%}.ROPlant{width:120px;position:relative}.ROPlant>img{width:100%}.allLabel{white-space:nowrap;padding:15px 0;font-weight:700;position:absolute;transform:rotate(-90deg);left:-37px;top:89px}.waterlabel{font-weight:700;position:absolute;width:100%;text-align:center;top:44%;font-size:20px;color:#565656}.ROplantlabel{font-weight:700;width:100%;text-align:center;font-size:14px;color:#444;display:block}.PHCW{width:100%}.PHCW .fields span.spaned,.PHCW .fields span.valueSpan{width:40%}.PHCW .fields span.valueKHP{width:18%}.marginBottom0{margin-bottom:0}.flexboxs{display:flex;width:75%;overflow-x:scroll;height:480px;padding-top:90px}#style-3::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(2,2,2,.555);background-color:#f5f5f5}#style-3::-webkit-scrollbar{width:6px;height:6px;background-color:#f5f5f5}#style-3::-webkit-scrollbar-thumb{border-radius:10px;background-color:#1295d3}.hotTank,.colTank{width:110px;position:relative;left:-18px}.colTank{left:0;margin-left:5px}.hotTank>img,.colTank>img,.thank>img{width:100%;position:relative;top:130px}.posRel{position:relative}.coolingfan{position:absolute;left:217px}.top180{top:180px}.top164{top:164px}.arrowImages:before{position:absolute;left:30px;background:#000;width:2px;height:193px;content:"";top:44px}.posRel29{position:relative;left:29px}.wt40{width:30px;left:60px}.process{position:absolute;right:10px;top:177px}.boxPro1{background:#1295d3;width:118px;margin:10px 10px 56px;padding:13px;border-radius:5px;color:#fff;text-align:center}.allProsArrow{position:absolute;top:111px;left:150px}.cruAr{position:absolute;right:186px;top:58px;height:163px}.cruAr>img{height:100%}.collingBlowDown{position:absolute;width:80px;right:294px;bottom:-107px}.voll{position:absolute;right:294px;bottom:-107px}.marginTopCon{margin-top:400px}.w140{width:140px}.disFlex{display:flex}.w91{width:91px}.bottomBox2{position:relative;left:155px;top:337px}.right385{right:385px}.right424{right:424px}.right270{right:270px}.marginTop550{margin-top:550px}.w83{width:83px}.fullWidthContainer{width:100%}.col4{width:16%;float:left}.col8{width:100%;margin-left:10px}.menuSide{height:100vh;background:#313c52;position:fixed;top:0}.menuHeader{background:#546b7d;padding:15px;color:#fff;font-size:20px}.menuHeader i{margin-right:15px}.sideMenuList ul{margin:0;padding:0;list-style:none}.sideMenuList ul li{margin:0;padding:12px 30px;text-indent:0px;list-style:none;color:#758bba;transition:.5s}.sideMenuList ul li a{color:#758bba;font-size:14px;text-decoration:none;transition:.5s}.sideMenuList ul li:hover{background:#38445b;color:#f9f9f9;transition:.5s;cursor:pointer}.sideMenuList ul li:hover a{color:#f9f9f9;transition:.5s}.section-heading{min-width:300px;max-width:500px;width:max-content;padding:9px 20px;background-color:#3c4b64;height:60px;border-radius:12px;margin:15px 25px}.section-heading-text{color:#fd6262!important}.custom-select{background-color:var(--bg-input)!important;background-image:none!important}.modal-header:not(.iot-health-modal__header){background-color:#3c4b64;color:#fff}.item-option-edit{cursor:pointer;display:inline-flex;align-items:center;flex-wrap:nowrap;white-space:nowrap}.fa-pencil-square-o:hover{color:#00bcd4}.fa-trash:hover{color:#ed0000}.fa-key:hover{color:#ffab00}.input-text-area{align-items:center;display:grid}.input-textArea{padding:.375rem 1.75rem .375rem .75rem;font-size:.875rem;font-weight:400;border:1px solid;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#768192;border-color:#d8dbe0}.input-textArea:focus{outline:none!important;border-color:#719ece}.bg-grey{background:var(--bg-secondary)!important}.bg-white{background:var(--bg-elevated);border-radius:8px}.border6{border-radius:6px;border-color:#295485!important}.col-md-44{flex:0 0 33.33333%;max-width:31.33333%;margin:10px}.box-shadow2{box-shadow:0 4px 8px}.fa-icon{font-size:30px}.canvasjs-chart-toolbar>button{margin-top:0!important;border-right:none}.canvasjs-chart-toolbar{position:absolute!important;right:8px!important;top:8px!important;border:none;z-index:5}.empty-page{height:100vh;align-items:center;display:flex;justify-content:center}.bg-disabled{background-color:#d2d2d2!important}.a{color:#295485;text-decoration:underline;cursor:pointer}.a:hover{color:#00f;text-decoration:underline}.main-section{padding:1.25rem 1.5625rem;height:calc(100vh - 4rem);overflow-y:auto}.ant-menu-inline{border-right:0}.ant-menu-root .ant-menu-item{min-height:3.375rem;margin-top:.5rem}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon+span{vertical-align:top;line-height:3.4375rem}.ant-menu-item .ant-menu-item-icon,.ant-menu.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-item-icon{font-size:1.375rem;line-height:3.4375rem;min-width:1.875rem;text-align:center}.ant-menu.ant-menu-inline-collapsed>.ant-menu-item{padding:0 calc(50% - 16px)}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#fff;border-color:#fff}.ant-menu-item{color:#6e6f71;border-left:.3125rem solid;border-color:transparent}.ant-menu-item a{color:#000}.ant-menu-item:hover,.ant-menu-item:active,.ant-menu-item a:hover{background-color:#fff}.ant-menu-item:hover{border-color:#1f9a63}.ant-menu-item:hover i,.ant-menu-item a:hover,.ant-menu-item-selected,.ant-menu-item-active{color:#25a96d}.ant-menu-item-selected a,.ant-menu-item-selected a:hover{color:#25a96d;background-color:transparent}.ant-menu-light .ant-menu-item-active{color:#25a96d}.ant-menu-inline .ant-menu-item:after{content:none}.ant-layout-sider-trigger{background-color:#fff;text-align:left;padding-right:1rem;padding-left:1.5rem;transition:all 0s}@media screen and (min-width:768px){.ant-layout-sider-trigger{box-shadow:0 1px #e9ebf8;border-top:1px solid #EAEBF2}.ant-layout-sider-trigger:after{font-size:.75rem;content:"Collapse";margin-left:12;color:#555a67}}@media screen and (max-width:767.98px){.ant-layout-sider-trigger{width:4.0625rem!important;background-color:transparent;top:.5rem;height:2.9375rem;border-top:none;bottom:auto}}.icon-trigger:before{font-family:icomoon;content:"";color:#000;line-height:3rem}.ant-layout-sider-collapsed .icon-trigger:before{content:""}.ant-layout-sider-collapsed .ant-layout-sider-trigger{text-align:center;padding:0}.ant-layout-sider-collapsed .ant-layout-sider-trigger:after{content:"";margin-left:0}@media screen and (max-width:991.98px){.main-container{padding-top:3.8125rem}}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:0;background:transparent;position:relative}.c-wrapper{position:relative}.scada-loader--overlay{position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;min-height:100%!important;margin:0!important;padding:0!important;z-index:20!important;background:var(--bg-primary, #eef4fc)!important;display:flex!important;align-items:center!important;justify-content:center!important}body>.scada-loader--overlay{position:fixed!important;width:auto!important;height:100vh!important;min-height:100vh!important}body:has(.c-default-layout:not(.sidebar-collapsed))>.scada-loader--overlay{left:var(--shell-sidebar-width, 200px)!important}body:has(.c-default-layout.sidebar-collapsed)>.scada-loader--overlay{left:var(--shell-sidebar-collapsed-width, 64px)!important}.c-sidebar.sidebar-nav{z-index:30}section.intro .loading-screen{min-height:0}.highcharts-credits{display:none}.highcharts-legend-title{font-size:2px!important}.remove-btn{position:relative;height:23px;margin-top:-4px;width:5px;align-items:center;right:30px;justify-content:center;display:inline-flex;background:#fff;border-radius:4px}.modal-xl{max-width:min(900px,calc(100vw - 1rem));width:auto}label{margin-bottom:5px!important}.col-md-height{height:70px}.sidebar-button{height:40px;margin-top:37px;box-sizing:border-box;border-radius:4px;color:#000;font-size:16px;font-weight:700;cursor:pointer;width:20px!important;min-width:50px;align-items:center}.form-check-label{cursor:pointer}.btn-light{background:#f8f9fa}.border{border-color:#e5e7eb!important}.bg-light{background-color:#f9fafb!important}.action-icon{cursor:pointer;font-size:16px;padding:6px;border-radius:6px}.action-icon:hover{background:#f1f3f5}.total-records{font-size:15px}.custom-select-wrapper{position:relative;width:100%}.custom-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:40px!important}.custom-select-wrapper--multi [class*=-control]{flex-wrap:nowrap;overflow:hidden;align-items:center}.custom-select-wrapper--multi [class*=-ValueContainer],.custom-select-wrapper--multi [class*=-valueContainer]{flex:1 1 0%;min-width:0;overflow:hidden;flex-wrap:nowrap}.custom-select-wrapper--multi [class*=-multiValue]{flex:0 1 auto;min-width:0;max-width:100%;margin:0 2px}.custom-select-wrapper--multi [class*=-multiValueLabel]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px;font-size:.75rem}.custom-select-wrapper--multi [class*=-IndicatorsContainer],.custom-select-wrapper--multi [class*=-indicatorsContainer]{flex:0 0 auto;align-self:stretch}.custom-select-wrapper--summarize [class*=-clearIndicator],.custom-select-wrapper--summarize [class*=-ClearIndicator]{padding:0 4px}.custom-select-wrapper--summarize [class*=-dropdownIndicator],.custom-select-wrapper--summarize [class*=-DropdownIndicator]{padding:0 6px}.custom-select-wrapper--summarize .custom-select-summary-input{position:absolute!important;left:0;top:0;width:1px!important;max-width:1px;min-width:0!important;opacity:0;margin:0!important;padding:0!important}.custom-select-value-summary{grid-area:1/1/2/3;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);line-height:1.2;padding-left:2px}.custom-select-icon{position:absolute;right:10px;top:29%;pointer-events:none;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:15px;color:#aaa}.emptyContaniner{display:flex;justify-content:center;align-items:center;height:65vh}.custom-handle{margin-top:5px;cursor:pointer}.v3-catPage .custom-handle.dashboard-legend-toolbar{margin-top:2px}.custom-modal-handle{display:flex;justify-content:space-between}.pagination{position:relative;display:flex;align-items:center;justify-content:space-between;top:8px}.searchInput{display:flex;align-items:center;gap:8px;position:relative;right:10px}.innerSearchInput{width:33px;text-align:center}.setup-sort-label{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;display:inline-flex;align-items:center}.setup-sort-label__icon{margin-left:6px;font-size:13px;color:#666}.setup-sort-label__icon--active{color:#111}.password-screen__affix--btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;color:#6c757d;z-index:2}.password-screen__affix--btn:focus{outline:none}@font-face{font-family:Orbitron;src:local("Orbitron"),url(/assets/Orbitron-Regular-89Qrhm09.ttf) format("truetype")}.p-14{padding:14px}a{color:#000}.hexagon-shape{width:175px;height:200px;background-color:var(--bg-elevated, #e8f0fa);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%)}.denim-color{background-color:#313c52!important}.slidein{animation-duration:3s;animation-name:slidein;animation-iteration-count:1;animation-direction:alternate}@keyframes slidein{0%{margin-left:100%;width:300%}to{margin-left:0%;width:100%}}.intro-block{position:relative;display:block;align-items:center;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-weight:500;background:var(--bg-primary, #e1eaf5);color:var(--text-primary, #3a4452)}.mfe-2{color:var(--text-secondary, #5f6b7a);padding:5px}.PageHeading{text-align:center;padding-top:20px;font-size:30px}table thead{color:#4a6278}.heading{font-size:20px;color:#295485;margin-top:-10px;margin-bottom:5px;text-decoration:underline!important}.btn-custom{color:#fff;background-color:#2658a1;border-color:#6c757d;order:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn-custom:hover{color:#fff}.LogoAnimation{animation:bounce 1s;animation-direction:alternate;animation-iteration-count:4}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-50px)}}.CategoryContent{font-size:16px;color:#000;text-align:center}.CategoryContent a{color:#000}.CategoryContent img{padding-top:20px}section.intro{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-weight:500;width:100%}.intro-block{position:relative;align-items:center;height:100%}.hex-bg-big-text{position:absolute;z-index:-1;height:100%;width:100%}.centerfold-wrap{position:relative;justify-content:center;align-items:center;flex:1}.hex-master-wrap{position:fixed;width:100%;min-width:665px;display:flex;flex-wrap:wrap}.border-1,.border-2,.border-3{position:absolute;width:100%;height:88px;top:46px;left:0;border-radius:8px;z-index:2;border-color:#333;-webkit-backface-visibility:hidden;backface-visibility:hidden;text-align:center}.border-2{transform:rotate(60deg)}.border-3{transform:rotate(120deg)}.border-3:before{display:none;position:absolute;content:"";bottom:10%;left:42px;width:50%;height:83%;background-color:#fff0;border-top:1px solid;border-bottom:1px solid;border-color:#fff;border-radius:50%;visibility:visible;z-index:-1}.intro-block .grid-1,.intro-block .grid-2,.intro-block .grid-3{display:flex;align-items:center;justify-content:center;width:75%;margin:0 auto -50px}.hex-wrap{opacity:1;display:block;position:relative;margin:25px 20px 0 6px;transform:scale(1.1)}.hex-wrap .label{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;width:100%;height:58px;color:#f6f6f6;display:flex;justify-content:center;align-items:center;z-index:3}.hex-wrap .label svg,.hex-wrap .label img{height:90px;-webkit-backface-visibility:hidden;backface-visibility:hidden}.hexagon{width:300px;height:150px;margin:15px 0 0 -75px;overflow:hidden;visibility:hidden;-webkit-transform:rotate(120deg);-moz-transform:rotate(120deg);-ms-transform:rotate(120deg);-o-transform:rotate(120deg);transform:rotate(90deg);-webkit-backface-visibility:hidden;backface-visibility:hidden}.hex-inner-1{overflow:hidden;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:rotate(-60deg);-moz-transform:rotate(-60deg);-ms-transform:rotate(-60deg);-o-transform:rotate(-60deg);transform:rotate(-60deg)}.hex-inner-2{position:relative;width:100%;height:100%;background-repeat:no-repeat;background-position:50%;visibility:visible;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:rotate(-60deg);-moz-transform:rotate(-60deg);-ms-transform:rotate(-60deg);-o-transform:rotate(-60deg);transform:rotate(-60deg);overflow:hidden}.hex-inner-2:before,.hex-inner-2:after{position:absolute;background-repeat:no-repeat;background-position:50%;background-size:contain;top:0;left:0;height:110%;width:110%;content:"";-webkit-transform:rotate(30deg);transform:rotate(30deg)}.hex-init{position:absolute;top:46px;left:0;height:46%;width:100%;z-index:9;transform:rotate(-60deg)}.hex-init:after{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;content:"";transform:rotate(-60deg)}.hex-init:before{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;content:"";transform:rotate(60deg)}.overview button{font-size:15px}.headingTable{text-align:center}.row.headingTable{padding-top:20px}.summary-col1{background-color:#0000000d;font-size:18px;font-weight:600;color:#2658a1}.summary-col2{font-size:16px;font-weight:500;color:#2658a1}.summary-col3{background-color:#0000000d;font-size:16px;font-weight:500;color:#2658a1}.summary-row-strip .row:nth-child(2n){background-color:#0000000d}.summary-blue{border-top:1px solid #2658a1}.mainbody{width:100%;border-radius:0;background-color:var(--bg-primary, #e1eaf5)}:root{--app-page-gutter-x: 5px}.app-main-content .container-fluid{padding-left:0;padding-right:0}.app-main-content:not(:has(.category)){padding-left:var(--app-page-gutter-x);padding-right:var(--app-page-gutter-x)}.app-main-content:has(.category){padding-left:0;padding-right:0}.mainbody:not(.app-main-content){padding-left:var(--app-page-gutter-x);padding-right:var(--app-page-gutter-x)}.mainbody:not(.app-main-content) .container-fluid{padding-left:0;padding-right:0}.c-sidebar{box-shadow:none!important;border-radius:0}.flowImage{max-width:100%;margin-bottom:20px}.font10{font-size:12px;text-align:left}.nopadding{padding:0!important;margin:0!important}.WidgetValue{padding-left:0;padding-right:0;font-size:14px}.WidgetCat{font-size:13px}.borderRight{border-right:1px dotted}.borderBottom{border-bottom:1px dotted}.widgetRow:hover{border:1px solid}.subDeptWidget{box-shadow:5px 5px #e8e8e8;border-radius:8px}.subDeptWidget .h4{width:auto;text-transform:uppercase;color:#fff;font-size:1.8em;background:#295485;padding:5px;min-width:170px;margin-bottom:5px}.category h1:not(.iot-cat-overview__header-title):not(.iot-cat-detail__title){background:#313c52;padding:15px;color:#fff;font-size:20px;text-align:center;font-weight:400;line-height:1.5}.WidgetText{font-size:12px;text-align:center}.WidgetText span{font-size:17px}@media only screen and (max-width:600px){.intro-block .grid-1,.intro-block .grid-2,.intro-block .grid-3{margin-left:0}.intro-block{height:auto}}.widgetbig{background:#ccc;border:1px #295485 solid;color:#fff;font-size:100%;text-indent:5%;line-height:180%;width:100%;text-transform:uppercase}.widgetbig .text-dark{color:#000!important;text-align:center}.widgetbig .w-25{background:#343a40!important;text-align:center}.widgetbig .parTitle{width:50%!important}.widgetbig .w-20{background:#343a40!important;text-align:center}.widgetheader{background:#295486;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.widgetbig{background:#ccc;border:1px #295485 solid;color:#fff;font-size:100%;text-indent:2%;line-height:180%;width:100%}.widgetheader{background:#295485;display:flex;flex:1;justify-content:space-between;text-align:left;align-items:center}.badge-successs{width:16px;height:16px;border-radius:8px;background-color:#0f0;margin-right:10px}.badge-disabled{width:16px;height:16px;border-radius:8px;background-color:#d2d2d2;margin-right:10px}.badge-dangerr{width:16px;height:16px;border-radius:8px;background-color:#e55353;margin-right:10px}.badge-warnings{width:16px;height:16px;border-radius:8px;background-color:orange;margin-right:10px}.badge-disabled{width:16px;height:16px;border-radius:8px;background-color:#777;margin-right:10px}.foot-center{padding-left:10px}.col-3-5{flex:0 0 32%;max-width:32%}.searchbox{padding:5px;z-index:999999;background-color:#ccc}.searchbox button{margin-top:4px!important;width:88px;height:40px;float:right;background-color:#313c52}.searchbox button:hover{background-color:#222326}.searchbox label{padding-left:5px;padding-right:5px;margin-top:-4px}.searchbox .sBtn{background-color:var(--bg-input, #dfe9f4)!important}.typebox{position:absolute;padding:5px;z-index:999999;background-color:#ccc;top:188px}.typebox input,.searchbox input{margin-right:5px}.typebox h5,.searchbox h5{text-align:center;text-decoration:underline}.tab-content{background-color:var(--bg-elevated, #eef2f6)!important}.card-text{padding-left:6px;font-size:12px}.cardCat{background-color:#295485;color:#fff!important}.card-body .me-3{padding:24px 12px}.text-12{font-size:11px!important}.categoryBox{border:1px solid;border-color:#d8dbe0;box-shadow:5px 5px #e8e8e8;border-radius:.25rem}.categoryBox h4{text-align:center;padding-top:18px}.categoryBox label{border:1px solid;padding:5px;background-color:#295485;color:#fff}.v2-catPage{box-shadow:none!important}.v2-CatBox{background-color:#295485;padding:5px}.v2-Guage{margin-top:10px;margin-bottom:10px}.v2-Guage img{width:200px}.v2-CatHeading{border:1px solid;border-radius:5px;color:#fff;font-size:29px}.v2-CatHeading a{color:#fff!important}.v2-SecHeading{border:1px solid;border-radius:5px;color:#fff;font-size:20px}.v2-SecHeading a{color:#fff!important}.v2-SubCatBox{padding:5px;border:1px solid;border-radius:5px;background-color:#fff}.v2-SubCatHeading{padding:8px;border:1px solid;border-radius:5px;background-color:#295485;color:#fff}.v2-SubCatHeading a{color:#fff!important}.v2-CatTotalizer,.v2-CatConsmp{border:1px solid;border-radius:5px;color:#fff;background-color:#295485;font-size:20px;font-family:Orbitron,sans-serif;width:100%;font-weight:1000;letter-spacing:2px}.v2-subHeading{background:#313c52;color:#fff;font-weight:400;line-height:1.5;font-size:20px;padding:5px}.v2-bg-theme{background-color:#295485}.v2-widgetbig{background:#ccc;border:1px #295485 solid;color:#fff;font-size:100%;text-indent:2%;line-height:180%;width:100%}.v2-bgWidget{background:#343a40!important;text-align:center}.v2-widgetvalue{color:#000;font-size:15px;font-family:Orbitron,sans-serif;width:100%;font-weight:1000;letter-spacing:2px;text-align:center;background-color:#fff}legend{width:auto;text-align:center;text-transform:uppercase}.data-title{width:30%;text-transform:uppercase}.data-unit{padding-left:5px;width:20%;text-transform:uppercase}.data-value1{background-color:#fafa9f;border:.5px solid #000;text-align:center;border-collapse:collapse;width:15%}.data-value2{background-color:#000c;color:#fff;text-align:center;border-collapse:collapse;border:.5px solid #6c757d;width:15%}.data-value3{background-color:#eee;color:#000;text-align:center;border-collapse:collapse;border:.5px solid #000;width:15%}.text-black{color:#000}.v3-catPage{box-shadow:none!important}.v3-catBox legend{width:auto;text-align:center;text-transform:uppercase;color:#fff;font-size:2em;background:#295485;padding:5px;min-width:170px}.v3-catBox{padding:20px}.v3-catBox h1{color:#295485;letter-spacing:1px;font-weight:700;font-size:2.8rem;line-height:1;background-color:transparent;text-align:center;font-family:PT Sans,sans-serif}.v3-dottedSeparator{border-top:1px dashed #359756}.v3-catBox h5{color:#295485;letter-spacing:1px;font-weight:700;font-size:1.75rem;line-height:1;background-color:transparent;text-align:center;font-family:PT Sans,sans-serif}.v3-catBox span{font-size:1.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.v3-container-layout{padding:20px 30px}.v3-container-layout h2{font-weight:700;margin:34px 0 0;line-height:1.2;font-size:2.25rem}.v3-dataHeight{height:70vh;overflow:auto}.text-ellipese{white-space:nowrap;width:160px;overflow:hidden;display:inline-block;text-overflow:ellipsis}.v3-labelBox{background-color:#000;color:#fff;padding:5px;width:125px;border:5px solid #ccc;margin-right:10px;font-size:1.3em}a:hover{text-decoration:none}.cursor-pointer:hover{cursor:pointer}.card0{box-shadow:0 4px 8px #757575;border-radius:0}.card2{margin:0 40px}.Loginlogo{width:105px;height:98px;margin-top:20px;margin-left:35px}.image{width:360px;height:280px}.bg-blue{color:#fff;background-color:#295485}.loginPage input,textarea{padding:10px 12px;border:1px solid lightgrey;border-radius:2px;margin-bottom:5px;margin-top:2px;width:100%;box-sizing:border-box;color:#2c3e50;font-size:14px;letter-spacing:1px}.loginPage input:focus,textarea:focus{-moz-box-shadow:none!important;-webkit-box-shadow:none!important;box-shadow:none!important;border:1px solid #295485;outline-width:0}.loginPage ::placeholder{color:#bdbdbd;opacity:1;font-weight:300}.loginPage :-ms-input-placeholder{color:#bdbdbd;font-weight:300}.loginPage ::-ms-input-placeholder{color:#bdbdbd;font-weight:300}.loginPage a{color:#fff}.pass_show{position:relative}.pass_show .ptxt{position:absolute;top:50%;right:10px;z-index:1;color:#f36c01;margin-top:-10px;cursor:pointer;transition:.3s ease all}.pass_show .ptxt:hover{color:#333}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-xxl{font-size:2.66667rem;width:8rem;height:8rem}.formHr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1);width:73%;margin-left:11px}.guages{width:100%;height:100%}input[type=password],select{background-color:var(--bg-input, #dfe9f4)!important;background-image:none!important;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:.875rem;font-weight:400;line-height:1.5;vertical-align:middle;border:1px solid;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#768192;border-color:#d8dbe0}.accordion{padding:1.5rem;margin-right:0;margin-left:0;border-width:1px;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#212529;text-align:left;background-color:#fff;border:0;border-radius:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;margin-top:0}.accordion-header{margin-bottom:0}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.accordion-button:focus{z-index:3;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.accordion-button:not(.collapsed){color:#0c63e4;background-color:#e7f1ff}.accordion-body{padding:1rem 1.25rem}.accordion-button:hover{cursor:pointer;color:#000}.table-text{font-size:11px}.renderunit{position:absolute;bottom:15%;left:49%}.canvasjs-chart-credit{display:none!important}.loader{height:100vh;background:#f6f8ff80;position:fixed;top:0;left:0;right:0;z-index:999;flex:1;display:flex;align-items:center;justify-content:center;color:#295485;flex-direction:column}.ant-space-item{margin:0 auto}.my-4{width:100%}.nav{margin:10px 0}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{background-color:#313c52!important}.nav-fill .nav-item{cursor:pointer}.empty-state{display:flex;flex:1;justify-content:center;align-items:center;height:calc(100vh - 160px);overflow:hidden}.empty-step{padding:4px 0;margin-top:8px}.empty-step>.row{margin-left:0;margin-right:0}.empty-step-heading{font-size:16px;line-height:1.3;color:var(--text-primary, #000)}.empty-step-content{font-size:14px;line-height:1.35;color:var(--text-secondary, #212529)}.empty-step-content:hover{font-size:14px;color:#2658a1}.empty-step-border{border-radius:6px;border-color:#295485!important;border-width:8px!important;border-style:solid}.empty-step-icon{display:flex;justify-content:center;align-items:center;margin-right:10px}.empty-step-parent-heading{display:block;text-align:left;font-size:20px;line-height:1.3;color:var(--text-primary, #000);font-weight:700}.bg-disabled{background-color:"#d2d2d2"!important}.display-7{font-size:.75rem!important}.check-box-input{margin-left:20!important}.form-check-input-custom{position:relative;margin-left:0!important}.small-circle{width:10px;height:10px;border-radius:5px;margin-right:0}.status-row{display:flex;justify-content:space-around;align-items:center;text-align:center;gap:6px}.status-box{display:flex;align-items:center}.status-icon{width:8px;height:8px;border-radius:50%;margin-right:4px}.legend-row{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#f8f9fa;border-radius:8px;border:1px solid #ddd;gap:15px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;white-space:nowrap}.legend-divider{width:1px;height:20px;background:#d0d0d0}.legend-circle{width:14px;height:14px;border-radius:50%;display:inline-block}.legend-box{padding:2px 8px;border-radius:4px;min-width:38px;text-align:center;font-size:12px}.legend-text{font-size:13px;color:#444}.dashboard-legend-toolbar.legend-row{flex-wrap:nowrap!important}.dashboard-legend-toolbar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:10px;padding:4px 10px!important;min-height:unset}.dashboard-legend-toolbar .legend-item{font-size:11px;gap:4px;line-height:1.15;padding:0}.dashboard-legend-toolbar__stats{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;flex:1;min-width:0}.dashboard-legend-toolbar__actions{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;margin-left:auto;align-self:center}.dashboard-sort-dropdown .dashboard-sort-toggle{display:inline-flex!important;align-items:center;gap:0;padding:0!important;min-height:26px;font-size:11px;font-weight:600;line-height:1.1;border-radius:5px!important;background-color:#3c4b64!important;border-color:#2e4f7c!important;box-shadow:0 1px 3px #00000026;white-space:nowrap;margin:0}.dashboard-sort-dropdown .dashboard-sort-toggle:after{display:none}.dashboard-sort-dropdown .dashboard-sort-toggle:hover,.dashboard-sort-dropdown .dashboard-sort-toggle:focus,.dashboard-sort-dropdown .dashboard-sort-toggle:active,.dashboard-sort-dropdown .dashboard-sort-toggle.show{background-color:#2e4f7c!important;border-color:#295485!important;box-shadow:0 2px 6px #0000002e}.dashboard-sort-dropdown .dashboard-sort-toggle__direction{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;cursor:pointer;border-right:1px solid rgba(255,255,255,.22);font-size:12px;opacity:.95}.dashboard-sort-dropdown .dashboard-sort-toggle__direction:hover{background:#ffffff1a}.dashboard-sort-dropdown .dashboard-sort-toggle__open{display:inline-flex;align-items:center;gap:5px;padding:3px 8px 3px 6px;cursor:pointer}.dashboard-sort-dropdown .dashboard-sort-toggle__icon{font-size:12px;opacity:.95}.dashboard-sort-dropdown .dashboard-sort-toggle__label{letter-spacing:.02em}.dashboard-sort-dropdown .dashboard-sort-toggle__value{font-weight:500;opacity:.92;padding-left:6px;margin-left:2px;border-left:1px solid rgba(255,255,255,.28);font-size:11px}.dashboard-sort-dropdown .dashboard-sort-toggle__caret{font-size:10px;opacity:.85;margin-left:2px}.dashboard-sort-menu{min-width:200px;margin-top:4px!important;padding:4px;border:1px solid #d8dde3;border-radius:8px;box-shadow:0 6px 18px #2c3e5024}.dashboard-sort-menu .dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px;border-radius:5px;font-size:12px;padding:6px 10px;color:#333}.dashboard-sort-menu .dropdown-item.active,.dashboard-sort-menu .dropdown-item:active{background-color:#e8f0fa;color:#1e293b}.dashboard-sort-menu .dropdown-item:hover:not(.active){background-color:#f0f3f7}.dashboard-sort-menu .dashboard-sort-menu__text{flex:1}.dashboard-sort-menu .dashboard-sort-menu__check{font-size:12px;opacity:.95;color:#3b82f6}.iot-dashboard{min-height:calc(100vh - 56px);padding:18px 0 28px;background:var(--shell-bg, var(--bg-primary, #eef4fc))}.iot-dashboard .container-fluid{max-width:none}.iot-dashboard .iot-dashboard__hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:stretch;padding:24px;margin:8px 0 16px;overflow:hidden;position:relative;color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:linear-gradient(135deg,#0e2034f5,#113e5ceb),repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 56px);box-shadow:0 22px 60px #07182747}.iot-dashboard .iot-dashboard__hero:before{content:"";position:absolute;inset:-35% auto auto 50%;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(47,210,255,.2),transparent 64%);pointer-events:none}.iot-dashboard .iot-dashboard__hero-copy{position:relative;z-index:1}.iot-dashboard .iot-dashboard__hero-copy h2{margin:6px 0 8px;font-size:clamp(1.65rem,3vw,2.6rem);font-weight:800;letter-spacing:-.04em;color:#fff}.iot-dashboard .iot-dashboard__hero-copy p{max-width:560px;margin:0;color:#e8f4ffcc;font-size:.98rem}.iot-dashboard .iot-dashboard__eyebrow{display:inline-flex;align-items:center;gap:8px;color:#54e6b3;font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.iot-dashboard .iot-dashboard__eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:#54e6b3;box-shadow:0 0 0 6px #54e6b324}.iot-dashboard .iot-dashboard__health-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:12px;min-width:0;width:100%}.iot-dashboard .iot-health-card{display:flex;align-items:center;gap:12px;padding:16px;color:#fff;text-align:left;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:#ffffff14;box-shadow:inset 0 1px #ffffff1f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.iot-dashboard .iot-health-card:hover,.iot-dashboard .iot-health-card:focus{transform:translateY(-2px);border-color:#54e6b380;background:#ffffff1f;outline:none}.iot-dashboard .iot-health-card--sensor .iot-health-card__icon{color:#65c7ff;background:#65c7ff24}.iot-dashboard .iot-health-card__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;flex:0 0 46px;color:#54e6b3;border-radius:14px;background:#54e6b324}.iot-dashboard .iot-health-card__content{display:flex;flex-direction:column;gap:2px}.iot-dashboard .iot-health-card__label{color:#e8f4ffb8;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.iot-dashboard .iot-health-card strong{color:#fff;font-size:1.55rem;line-height:1}.iot-dashboard .iot-dashboard__toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px;padding:12px 14px!important;color:#d7e8f8;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#091929bd;box-shadow:0 12px 34px #07182733;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.iot-dashboard .iot-dashboard__status{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.82rem;font-weight:700}.iot-dashboard .iot-dashboard__pulse{width:10px;height:10px;border-radius:50%;background:#54e6b3;box-shadow:0 0 #54e6b3b3;animation:iotPulse 1.8s infinite}.iot-dashboard .iot-dashboard__status-count{color:#d7e8f8b8;font-weight:600}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle{color:#0d2336!important;background:#54e6b3!important;border-color:#54e6b3!important;box-shadow:0 10px 24px #54e6b338}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle:hover,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle:focus,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle:active,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.show{color:#071827!important;background:#65c7ff!important;border-color:#65c7ff!important}.iot-dashboard .iot-category-card{height:100%;position:relative;border-radius:22px;background:linear-gradient(180deg,#fffffff5,#f4f9fcf0),linear-gradient(135deg,#54e6b338,#65c7ff29);box-shadow:0 18px 44px #07182729;overflow:hidden;transition:box-shadow .22s ease}.iot-dashboard .iot-category-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#54e6b3,#65c7ff,#295485)}.iot-dashboard .iot-category-card:hover{box-shadow:0 26px 60px #07182738}.iot-dashboard .iot-category-card__link{display:flex;flex-direction:column;min-height:100%;padding:20px;color:inherit;text-decoration:none}.iot-dashboard .iot-category-card__link:hover{color:inherit;text-decoration:none}.iot-dashboard .iot-category-card__header{display:flex;justify-content:space-between;gap:14px;margin-bottom:20px}.iot-dashboard .iot-category-card__kicker{color:#6e7e8d;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.iot-dashboard .iot-category-card h3{margin:4px 0 0;color:#102a43;font-size:1.25rem;font-weight:800;line-height:1.2}.iot-dashboard .iot-category-card__signal,.iot-dashboard .iot-category-card__primary-icon,.iot-dashboard .iot-metric-tile__icon{display:inline-flex;align-items:center;justify-content:center;border-radius:14px}.iot-dashboard .iot-category-card__signal{width:40px;height:40px;flex:0 0 40px;color:#54e6b3;background:#54e6b324}.iot-dashboard .iot-category-card__primary{display:flex;align-items:center;gap:14px;padding:18px;margin-bottom:16px;color:#fff;border-radius:18px;background:radial-gradient(circle at top right,rgba(101,199,255,.28),transparent 38%),linear-gradient(135deg,#102a43,#295485)}.iot-dashboard .iot-category-card__primary-icon{width:52px;height:52px;flex:0 0 52px;color:#54e6b3;background:#ffffff1c}.iot-dashboard .iot-category-card__primary-label{display:block;margin-bottom:4px;color:#e8f4ffb8;font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.iot-dashboard .iot-category-card__primary strong{display:flex;align-items:baseline;gap:7px;color:#fff;font-size:clamp(1.8rem,4vw,2.65rem);line-height:1}.iot-dashboard small{color:inherit;font-size:.42em;font-weight:700;opacity:.72}.iot-dashboard .iot-category-card__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.iot-dashboard .iot-metric-tile{min-width:0;padding:12px;border:1px solid #e1ebf3;border-radius:16px;background:#fff}.iot-dashboard .iot-metric-tile__icon{width:32px;height:32px;margin-bottom:10px;color:#295485;background:#edf6ff}.iot-dashboard .iot-metric-tile__label{display:block;margin-bottom:4px;color:#748494;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.iot-dashboard .iot-metric-tile strong{display:flex;align-items:baseline;gap:5px;min-width:0;color:#102a43;font-size:1.08rem;line-height:1.1;word-break:break-word}.iot-dashboard .iot-category-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;color:#6d7f8f;border-top:1px dashed #cfdae4;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-dashboard .iot-category-card__footer strong{display:flex;align-items:baseline;gap:5px;color:#295485;font-size:1.1rem;letter-spacing:0;text-transform:none}@keyframes iotPulse{0%{box-shadow:0 0 #54e6b3a6}70%{box-shadow:0 0 0 10px #54e6b300}to{box-shadow:0 0 #54e6b300}}@media(max-width:991px){.iot-dashboard .iot-dashboard__hero{grid-template-columns:1fr}.iot-dashboard .iot-dashboard__health-grid{min-width:0}}@media(max-width:576px){.iot-dashboard{padding:10px 0 22px}.iot-dashboard .iot-dashboard__hero{padding:18px;border-radius:18px}.iot-dashboard .iot-dashboard__health-grid,.iot-dashboard .iot-category-card__metrics{grid-template-columns:1fr}.iot-dashboard .iot-dashboard__toolbar{align-items:flex-start;flex-direction:column}.iot-dashboard .iot-category-card__link{padding:16px}}.iot-dashboard{--iot-page-bg: var(--shell-bg, var(--bg-primary, #eef4fc));--iot-hero-bg: linear-gradient(135deg, rgba(247, 250, 255, .98), rgba(238, 244, 252, .96)), repeating-linear-gradient(90deg, rgba(59, 130, 246, .06) 0 1px, transparent 1px 58px);--iot-toolbar-bg: rgba(247, 250, 255, .94);--iot-card-bg: #f7faff;--iot-tile-bg: #f0f5fc;--iot-primary-panel: linear-gradient(135deg, #0c263c, #1f5f82);--iot-text: #1e293b;--iot-text-soft: #475569;--iot-muted: #64748b;--iot-border: rgba(74, 115, 180, .22);--iot-border-soft: rgba(103, 137, 190, .16);--iot-accent: #3b82f6;--iot-accent-2: var(--color-accent);--iot-shadow: 0 8px 28px rgba(7, 26, 53, .1);color:var(--iot-text);background:var(--iot-page-bg)!important}.iot-dashboard .iot-dashboard__hero,.iot-dashboard .iot-dashboard__toolbar,.iot-dashboard .iot-category-card,.iot-dashboard .iot-metric-tile,.iot-dashboard .iot-health-card{border-color:var(--iot-border)}.iot-dashboard .iot-dashboard__hero{color:var(--iot-text);background:var(--iot-hero-bg);box-shadow:var(--iot-shadow)}.iot-dashboard .iot-dashboard__hero:before{background:radial-gradient(circle,rgba(37,99,235,.18),transparent 64%)}.iot-dashboard .iot-dashboard__hero-copy h2{color:var(--iot-text)}.iot-dashboard .iot-dashboard__hero-copy p{color:var(--iot-muted)}.iot-dashboard .iot-dashboard__eyebrow{color:var(--iot-accent)}.iot-dashboard .iot-dashboard__eyebrow:before{background:var(--iot-accent);box-shadow:0 0 0 6px #0fbc8b24}.iot-dashboard .iot-health-card{color:var(--iot-text);background:var(--iot-card-bg);box-shadow:var(--iot-shadow)}.iot-dashboard .iot-health-card:hover,.iot-dashboard .iot-health-card:focus{border-color:#0fbc8b8c;background:var(--iot-card-bg)}.iot-dashboard .iot-health-card__icon{color:var(--iot-accent);background:#0fbc8b1f}.iot-dashboard .iot-health-card--sensor .iot-health-card__icon{color:var(--iot-accent-2);background:#2563eb1c}.iot-dashboard .iot-health-card__label{color:var(--iot-muted)}.iot-dashboard .iot-health-card strong,.iot-dashboard .iot-dashboard__status,.iot-dashboard .iot-category-card h3,.iot-dashboard .iot-metric-tile strong{color:var(--iot-text)}.iot-dashboard .iot-dashboard__toolbar{color:var(--iot-text-soft);background:var(--iot-toolbar-bg);box-shadow:var(--iot-shadow)}.iot-dashboard .iot-dashboard__status-count,.iot-dashboard .iot-category-card__kicker,.iot-dashboard .iot-metric-tile__label,.iot-dashboard .iot-category-card__footer{color:var(--iot-muted)}.iot-dashboard .iot-category-card{background:var(--iot-card-bg);box-shadow:var(--iot-shadow)}.iot-dashboard .iot-category-card:before{background:linear-gradient(90deg,var(--iot-accent),var(--iot-accent-2))}.iot-dashboard .iot-category-card__signal,.iot-dashboard .iot-metric-tile__icon{color:var(--iot-accent-2);background:#2563eb1a}.iot-dashboard .iot-category-card__primary{color:#fff;background:var(--iot-primary-panel)}.iot-dashboard .iot-category-card__primary-label{color:#ffffffbd}.iot-dashboard .iot-metric-tile{background:var(--iot-tile-bg);border-color:var(--iot-border-soft)}.iot-dashboard .iot-category-card__footer{border-top-color:var(--iot-border)}.iot-dashboard .iot-category-card__footer strong{color:var(--iot-accent-2)}.iot-dashboard .dashboard-sort-menu{background:var(--iot-card-bg);border-color:var(--iot-border)}.iot-dashboard .dashboard-sort-menu .dropdown-item{color:var(--iot-text)}.iot-dashboard .dashboard-sort-menu .dropdown-item.active,.iot-dashboard .dashboard-sort-menu .dropdown-item:active{background:var(--iot-tile-bg);color:var(--iot-text)}.iot-dashboard .dashboard-sort-menu .dropdown-item:hover:not(.active){background:var(--iot-tile-bg)}[data-theme=dark] .iot-dashboard{--iot-page-bg: var(--shell-bg, #051125);--iot-hero-bg: linear-gradient(135deg, rgba(15, 23, 36, .98), rgba(20, 34, 52, .95)), repeating-linear-gradient(90deg, rgba(91, 196, 138, .06) 0 1px, transparent 1px 58px);--iot-toolbar-bg: rgba(15, 23, 36, .9);--iot-card-bg: #111b2a;--iot-tile-bg: #162235;--iot-primary-panel: linear-gradient(135deg, #0c263c, #1f5f82);--iot-text: #e8eaed;--iot-text-soft: #c7d2df;--iot-muted: #9aa8b7;--iot-border: #2b3a50;--iot-border-soft: #223247;--iot-accent: #5bc48a;--iot-accent-2: var(--color-accent);--iot-shadow: 0 18px 48px rgba(0, 0, 0, .32)}.iot-health-modal{--health-modal-stat-bg: var(--bg-secondary);--health-modal-table-odd: var(--bg-secondary);--health-modal-table-even: var(--bg-elevated);--health-modal-table-hover: color-mix(in srgb, var(--color-primary) 8%, var(--bg-elevated))}.iot-health-modal .modal-header.iot-health-modal__header{background:var(--health-modal-head-bg, var(--bg-elevated))!important;color:var(--text-primary)!important}.iot-health-modal .modal-body.iot-health-modal__body{background:var(--bg-primary)!important}.iot-health-modal .modal-content{overflow:hidden;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-modal)}.iot-health-modal .modal-header,.iot-health-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:0;margin:0;padding:10px 16px;color:var(--text-primary);background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.iot-health-modal .modal-title,.iot-health-modal__title{margin:0;color:var(--text-primary);font-size:.82rem;font-weight:800;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.iot-health-modal__close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;padding:0;margin:0;color:var(--text-secondary);font-size:1.35rem;line-height:1;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-input);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.iot-health-modal__close:hover,.iot-health-modal__close:focus-visible{color:var(--text-primary);border-color:color-mix(in srgb,var(--color-primary) 35%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-input));outline:none}.iot-health-modal .modal-body,.iot-health-modal__body{max-height:min(72vh,680px);padding:14px 16px 16px;overflow-y:auto;color:var(--text-primary);background:var(--bg-primary);scrollbar-width:thin;scrollbar-color:var(--border-color-strong) transparent}.iot-health-modal .modal-body::-webkit-scrollbar,.iot-health-modal__body::-webkit-scrollbar{width:6px}.iot-health-modal .modal-body::-webkit-scrollbar-thumb,.iot-health-modal__body::-webkit-scrollbar-thumb{border-radius:999px;background:var(--border-color-strong)}.iot-health-modal__loading{display:flex;align-items:center;justify-content:center;min-height:180px}.iot-health-modal__loading .loading-screen{width:auto;min-height:0}.iot-health-modal__stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:12px;padding:6px 8px;border:1px solid var(--border-color);border-radius:10px;background:var(--health-modal-stat-bg)}.iot-health-modal__stat{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:2px 4px;text-align:center}.iot-health-modal__stat-label{color:var(--text-muted);font-size:.64rem;font-weight:700;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.iot-health-modal__stat-value{color:var(--text-primary);font-size:1.1rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.iot-health-modal__stat--primary .iot-health-modal__stat-value{color:var(--color-primary)}.iot-health-modal__stat--success .iot-health-modal__stat-value{color:#22c55e}.iot-health-modal__stat--danger .iot-health-modal__stat-value{color:#ef4444}.iot-health-modal__stat--warning .iot-health-modal__stat-value{color:#f59e0b}.iot-health-modal__stat--info .iot-health-modal__stat-value{color:var(--color-accent)}.iot-health-modal__dual-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.iot-health-modal__dual-card{padding:10px 12px 12px;border:1px solid var(--border-color);border-radius:10px;background:var(--health-modal-stat-bg)}.iot-health-modal__dual-card .iot-health-modal__stats{margin-bottom:0;padding:8px 6px;border:0;border-radius:0;background:transparent}.iot-health-modal__dual-title{margin:0 0 8px;color:var(--text-primary);font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-health-modal__dual-card--device{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--border-color))}.iot-health-modal__dual-card--sensor{border-color:color-mix(in srgb,var(--color-accent) 28%,var(--border-color))}.iot-health-modal__section-title{margin:0 0 8px;color:var(--text-primary);font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-health-modal__section-title+.iot-health-modal__table-wrap{margin-bottom:16px}.iot-health-modal__table-wrap{overflow:auto;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-elevated)}.iot-health-modal__table{margin:0;color:var(--text-primary);font-size:.68rem;background:transparent}.iot-health-modal__table thead th{padding:8px 10px;color:var(--text-inverse);font-size:.6rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;border:0;background:var(--bg-table-header)}.iot-health-modal__table tbody td{padding:7px 10px;color:var(--text-primary);font-size:.68rem;font-weight:500;vertical-align:middle;border-color:var(--border-color)}.iot-health-modal__table tbody tr:nth-child(odd){background-color:var(--health-modal-table-odd)}.iot-health-modal__table tbody tr:nth-child(2n){background-color:var(--health-modal-table-even)}.iot-health-modal__table.table-hover tbody tr:hover{background-color:var(--health-modal-table-hover)}.iot-health-modal__empty{padding:18px 10px!important;color:var(--text-muted)!important;font-size:.68rem;text-align:center}.iot-health-modal .iot-status-badge{min-width:64px;padding:3px 9px;font-size:.6rem}.iot-health-modal__last-updated{display:inline-block;cursor:help;border-bottom:1px dotted color-mix(in srgb,var(--color-primary) 45%,transparent);color:inherit;transition:color .15s ease,border-color .15s ease}.iot-health-modal__last-updated:hover{color:var(--color-primary);border-bottom-color:var(--color-primary)}[data-theme=dark] .iot-health-modal{--health-modal-stat-bg: color-mix(in srgb, var(--bg-secondary) 88%, #000);--health-modal-table-odd: #121c2c;--health-modal-table-even: #0f1828;--health-modal-table-hover: color-mix(in srgb, var(--color-primary) 12%, #0f1828)}[data-theme=dark] .iot-health-modal .modal-content{border-color:#6789be38}[data-theme=dark] .iot-health-modal__header{border-bottom-color:#6789be33}[data-theme=dark] .iot-health-modal__close{color:#c3d0df;border-color:#6789be47;background:#ffffff0a}[data-theme=dark] .iot-health-modal__close:hover,[data-theme=dark] .iot-health-modal__close:focus-visible{color:#f4f8ff;border-color:#3b82f673;background:#3b82f61a}[data-theme=dark] .iot-health-modal__stat--primary .iot-health-modal__stat-value{color:var(--color-accent)}[data-theme=dark] .iot-health-modal__stat--success .iot-health-modal__stat-value{color:#4ade80}[data-theme=dark] .iot-health-modal__stat--danger .iot-health-modal__stat-value{color:#f87171}[data-theme=dark] .iot-health-modal__stat--warning .iot-health-modal__stat-value{color:#fbbf24}[data-theme=dark] .iot-health-modal__stat--info .iot-health-modal__stat-value{color:var(--color-primary)}[data-theme=light] .iot-health-modal{--health-modal-stat-bg: linear-gradient( 180deg, var(--bg-elevated) 0%, var(--bg-surface-soft) 100% );--health-modal-table-odd: var(--bg-input);--health-modal-table-even: var(--bg-elevated);--health-modal-table-hover: color-mix(in srgb, var(--color-primary) 10%, var(--bg-elevated));--health-modal-head-bg: var(--brand-gradient);--health-modal-thead-bg: var(--brand-gradient-soft)}[data-theme=light] .iot-health-modal .modal-content{border-color:color-mix(in srgb,var(--color-primary) 14%,var(--border-color));background:var(--bg-elevated);box-shadow:0 16px 40px #1e3a5f24}[data-theme=light] .iot-health-modal .modal-header,[data-theme=light] .iot-health-modal__header{color:var(--text-on-primary)!important;background:var(--health-modal-head-bg)!important;border-bottom-color:color-mix(in srgb,var(--color-primary) 18%,var(--brand-deep))}[data-theme=light] .iot-health-modal .modal-title,[data-theme=light] .iot-health-modal__title{color:var(--text-on-primary)!important}[data-theme=light] .iot-health-modal__close{color:#ffffffe0;border-color:#ffffff38;background:#ffffff14}[data-theme=light] .iot-health-modal__close:hover,[data-theme=light] .iot-health-modal__close:focus-visible{color:#fff;border-color:#3b82f68c;background:#3b82f629}[data-theme=light] .iot-health-modal .modal-body,[data-theme=light] .iot-health-modal__body{background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)!important}[data-theme=light] .iot-health-modal__stats,[data-theme=light] .iot-health-modal__dual-card{background:var(--health-modal-stat-bg);border-color:color-mix(in srgb,var(--color-primary) 12%,var(--border-color))}[data-theme=light] .iot-health-modal__table-wrap{border-color:color-mix(in srgb,var(--color-primary) 10%,var(--border-color));background:var(--bg-elevated)}[data-theme=light] .iot-health-modal__table thead th{color:var(--text-on-primary);background:var(--health-modal-thead-bg);border-bottom:1px solid color-mix(in srgb,var(--color-primary) 16%,var(--brand-deep))}[data-theme=light] .iot-health-modal__table tbody td{border-color:color-mix(in srgb,var(--border-color) 80%,transparent)}[data-theme=light] .iot-health-modal__stat--primary .iot-health-modal__stat-value{color:var(--color-primary-hover)}[data-theme=light] .iot-health-modal__stat--success .iot-health-modal__stat-value{color:#047857}[data-theme=light] .iot-health-modal__stat--danger .iot-health-modal__stat-value{color:#b91c1c}[data-theme=light] .iot-health-modal__stat--warning .iot-health-modal__stat-value{color:#f59e0b}[data-theme=light] .iot-health-modal__stat--info .iot-health-modal__stat-value{color:var(--color-primary)}[data-theme=light] .iot-health-modal .iot-status-badge--active{color:#047857;background:color-mix(in srgb,#22c55e 12%,var(--bg-surface-soft));border-color:color-mix(in srgb,#22c55e 28%,var(--border-color))}[data-theme=light] .iot-health-modal .iot-status-badge--inactive{color:#991b1b;background:color-mix(in srgb,#ef4444 10%,var(--bg-surface-soft));border-color:color-mix(in srgb,#ef4444 24%,var(--border-color))}[data-theme=light] .iot-health-modal .iot-status-badge--warning{color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,var(--bg-surface-soft));border-color:color-mix(in srgb,#f59e0b 28%,var(--border-color))}@media(max-width:767px){.iot-health-modal__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-health-modal__dual-stats{grid-template-columns:1fr}}.iot-dashboard{--iot-page-bg: var(--shell-bg, var(--bg-primary, #eef4fc));--iot-panel-bg: var(--bg-elevated);--iot-panel-bg-soft: var(--bg-surface-soft);--iot-card-bg: var(--bg-elevated);--iot-card-bg-2: var(--bg-primary);--iot-today-bg: color-mix(in srgb, var(--bg-elevated) 94%, transparent);--iot-text: #1e293b;--iot-text-soft: #475569;--iot-muted: #64748b;--iot-border: rgba(59, 130, 246, .18);--iot-border-soft: rgba(59, 130, 246, .12);--iot-accent: #3b82f6;--iot-accent-2: var(--color-accent);--iot-card-accent: #3b82f6;--iot-card-glow: rgba(59, 130, 246, .18);--iot-shadow: 0 8px 28px rgba(7, 26, 53, .1);--iot-panel-shadow: 0 6px 22px rgba(7, 26, 53, .08);padding:12px 0 10px;color:var(--iot-text);background:var(--iot-page-bg)!important}.iot-dashboard .container-fluid{max-width:100%;padding-left:0;padding-right:0}.iot-dashboard .iot-dashboard__topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;margin-bottom:16px;padding:12px 14px;border:1px solid var(--iot-border);border-radius:14px;background:var(--iot-panel-bg);box-shadow:var(--iot-panel-shadow)}.iot-dashboard .iot-dashboard__health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:12px;min-width:0;width:100%}.iot-dashboard .iot-health-card{min-height:44px;padding:8px 12px;border:1px solid var(--iot-border-soft);border-radius:12px;color:var(--iot-text);background:var(--iot-panel-bg-soft);box-shadow:none}.iot-dashboard .iot-health-card__icon{width:34px;height:34px;flex-basis:34px;border-radius:11px}.iot-dashboard .iot-health-card__label{color:var(--iot-text-soft);font-size:.72rem;letter-spacing:0;text-transform:none}.iot-dashboard .iot-health-card strong{color:var(--iot-accent);font-size:.92rem;font-weight:800}.iot-dashboard .iot-health-card--sensor strong{color:#b47aff}.iot-dashboard .dashboard-legend-toolbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle,.iot-dashboard .iot-dashboard__date-card{display:inline-flex!important;align-items:center;gap:8px;min-height:42px;padding:10px 14px!important;color:var(--iot-text)!important;border:1px solid var(--iot-border-soft)!important;border-radius:10px!important;background:var(--iot-panel-bg-soft)!important;box-shadow:none!important}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle{min-width:0;max-width:100%}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle:hover,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle:focus,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle:active,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.show{color:var(--iot-text)!important;background:var(--iot-panel-bg)!important;border-color:var(--iot-accent-2)!important}.iot-dashboard .dashboard-sort-toggle__value{color:var(--iot-text-soft);border-left-color:var(--iot-border)}.iot-dashboard .iot-dashboard__date-card{color:var(--iot-text-soft);font-size:.78rem;font-weight:700;white-space:nowrap}.iot-dashboard .iot-dashboard__card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;margin-left:0;margin-right:0;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.iot-dashboard .iot-category-card{--iot-card-accent: #3b82f6;--iot-card-glow: rgba(59, 130, 246, .2);min-height:210px;border:1px solid var(--iot-border);border-radius:16px;background:radial-gradient(circle at 10% 16%,var(--iot-card-glow),transparent 34%),linear-gradient(145deg,var(--iot-card-bg),var(--iot-card-bg-2));box-shadow:var(--iot-shadow)}.iot-dashboard .iot-category-card:before{top:0;right:0;bottom:0;left:0;height:auto;background:linear-gradient(135deg,var(--iot-card-glow),transparent 48%),linear-gradient(180deg,rgba(255,255,255,.03),transparent);pointer-events:none}.iot-dashboard .iot-category-card--water{--iot-card-accent: var(--color-primary);--iot-card-glow: rgba(59, 130, 246, .22)}.iot-dashboard .iot-category-card--gas{--iot-card-accent: #ff9100;--iot-card-glow: rgba(255, 145, 0, .22)}.iot-dashboard .iot-category-card--steam{--iot-card-accent: #b47aff;--iot-card-glow: rgba(180, 122, 255, .22)}.iot-dashboard .iot-category-card__link{min-height:210px;padding:26px 28px 22px}.iot-dashboard .iot-category-card__header{align-items:flex-start;margin-bottom:14px}.iot-dashboard .iot-category-card__signal{width:58px;height:58px;flex:0 0 58px;color:#fff;border:1px solid var(--iot-card-accent);border-radius:50%;background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.35),transparent 28%),radial-gradient(circle,var(--iot-card-accent),#081528);box-shadow:0 0 28px var(--iot-card-glow),inset 0 0 14px #ffffff29;font-size:1.55rem}.iot-dashboard .iot-category-card__title-block{flex:1;min-width:0;padding-top:2px}.iot-dashboard .iot-category-card__kicker{color:var(--iot-text);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-dashboard .iot-category-card h3{display:flex;align-items:baseline;gap:12px;margin:8px 0 0;color:var(--iot-text);font-size:clamp(2rem,4vw,3rem);font-weight:900;letter-spacing:.01em}.iot-dashboard .iot-category-card h3 small{color:var(--iot-card-accent);font-size:.34em;opacity:1}.iot-dashboard .iot-category-card__cta{display:inline-flex;align-items:center;justify-content:center;width:34px;height:30px;padding:0;color:#071827;border:1px solid var(--iot-card-accent);border-radius:999px;background:linear-gradient(135deg,var(--iot-card-accent),#ffffff);box-shadow:0 10px 24px var(--iot-card-glow);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:box-shadow .18s ease}.iot-dashboard .iot-category-card__cta svg{font-size:.68rem}.iot-dashboard .iot-category-card:hover .iot-category-card__cta,.iot-dashboard .iot-category-card__link:focus-visible .iot-category-card__cta{box-shadow:0 14px 30px var(--iot-card-glow)}.iot-dashboard .iot-category-card__today{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16px;width:100%;max-width:100%;margin-left:0;padding:16px 18px;border:1px solid var(--iot-border-soft);border-radius:14px;background:var(--iot-today-bg);box-sizing:border-box}.iot-dashboard .iot-category-card__today span{display:block;margin-bottom:6px;color:var(--iot-text-soft);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-dashboard .iot-category-card__today strong{display:flex;align-items:baseline;gap:6px;color:var(--iot-card-accent);font-size:1.25rem;font-weight:900;line-height:1}.iot-dashboard .iot-category-card__today small{font-size:.62em;font-weight:800;opacity:.95}.iot-dashboard .iot-sparkline{width:100%;height:52px;overflow:visible}.iot-dashboard .iot-sparkline-wrap{position:relative;width:100%;min-height:52px;--spark-tooltip-surface: #0f172a;--spark-tooltip-label: #94a3b8;--spark-tooltip-value: #f8fafc;--spark-tooltip-border: rgba(148, 163, 184, .24);--spark-tooltip-head-bg: #1e293b;--spark-tooltip-shadow: 0 8px 20px rgba(2, 6, 23, .28)}.iot-dashboard .iot-sparkline__dot{fill:var(--iot-card-accent);stroke:#ffffffd9;stroke-width:1.5;opacity:0;transition:opacity .15s ease,r .15s ease;pointer-events:all}.iot-dashboard .iot-sparkline-wrap:hover .iot-sparkline__dot,.iot-dashboard .iot-sparkline__dot--active{opacity:1}.iot-dashboard .iot-sparkline__tooltip{position:absolute;z-index:3;min-width:168px;max-width:240px;padding:8px 10px;border-radius:8px;background:var(--spark-tooltip-surface);color:var(--spark-tooltip-value);border:1px solid var(--spark-tooltip-border);box-shadow:var(--spark-tooltip-shadow);pointer-events:none;white-space:normal}.iot-dashboard .iot-sparkline__tooltip strong{font-size:12px;font-weight:600;color:var(--spark-tooltip-value)}.iot-dashboard .iot-sparkline__tooltip span{opacity:.9;color:var(--spark-tooltip-label)}.iot-dashboard .iot-sparkline__tooltip--table{padding:8px 10px 6px}.iot-dashboard .iot-sparkline__tooltip-time{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--spark-tooltip-border);font-size:.68rem;font-weight:700;color:var(--spark-tooltip-value);text-align:center;line-height:1.25;white-space:nowrap}.iot-dashboard .iot-sparkline__tooltip-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.64rem;line-height:1.25}.iot-dashboard .iot-sparkline__tooltip-table thead th{padding:4px 8px;font-size:.58rem;font-weight:700;text-align:left;color:var(--spark-tooltip-label);background:var(--spark-tooltip-head-bg);border-bottom:1px solid var(--spark-tooltip-border)}.iot-dashboard .iot-sparkline__tooltip-table thead th:last-child{width:42%;text-align:right}.iot-dashboard .iot-sparkline__tooltip-table tbody th,.iot-dashboard .iot-sparkline__tooltip-table tbody td{padding:5px 8px;vertical-align:top;border-bottom:1px solid var(--spark-tooltip-border);background:var(--spark-tooltip-surface)}.iot-dashboard .iot-sparkline__tooltip-table tbody th{font-weight:600;color:var(--spark-tooltip-label);white-space:nowrap}.iot-dashboard .iot-sparkline__tooltip-table tbody td{text-align:right;font-weight:700;color:var(--spark-tooltip-value);word-break:break-word}.iot-dashboard .iot-sparkline__tooltip-table tbody tr:last-child th,.iot-dashboard .iot-sparkline__tooltip-table tbody tr:last-child td{border-bottom:none}.iot-dashboard .iot-sparkline__fill{fill:var(--iot-card-glow)}.iot-dashboard .iot-sparkline__line{fill:none;stroke:var(--iot-card-accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px var(--iot-card-glow))}.iot-dashboard .iot-dashboard__summary-bar{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:0;margin-top:-4px;padding:12px 14px;border:1px solid var(--iot-border);border-radius:14px;background:var(--iot-panel-bg);box-shadow:var(--iot-panel-shadow)}.iot-dashboard .iot-summary-item{display:flex;align-items:center;gap:12px;min-width:0;padding:0 16px;border-right:1px solid var(--iot-border-soft)}.iot-dashboard .iot-summary-item:last-child{border-right:0}.iot-dashboard .iot-summary-item span{display:block;color:var(--iot-muted);font-size:.74rem;font-weight:700}.iot-dashboard .iot-summary-item strong{display:block;color:var(--iot-text);font-size:.92rem;font-weight:900;line-height:1.2}.iot-dashboard .iot-summary-item__icon{display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;color:var(--color-primary)!important;border-radius:12px;background:#3b82f61f;font-size:1rem!important}.iot-dashboard .iot-summary-item__icon--sensor{color:#b47aff!important;background:#b47aff1f}.iot-dashboard .iot-summary-item__icon--success{color:#60a5fa!important;background:#3b82f61f}.iot-dashboard .iot-summary-item__icon--warning{color:#ff9100!important;background:#ff910021}.iot-dashboard .iot-summary-item__success{color:#60a5fa!important}[data-theme=dark] .iot-dashboard{--iot-page-bg: #051125;--iot-panel-bg: #071a35;--iot-panel-bg-soft: #0a1f42;--iot-card-bg: #071a35;--iot-card-bg-2: #101b3c;--iot-today-bg: rgba(10, 28, 58, .86);--iot-text: #f7fbff;--iot-text-soft: #c3d0df;--iot-muted: #8fa0b5;--iot-border: rgba(74, 115, 180, .22);--iot-border-soft: rgba(103, 137, 190, .18);--iot-shadow: 0 18px 44px rgba(0, 0, 0, .28);--iot-panel-shadow: 0 12px 36px rgba(0, 0, 0, .25)}@media(max-width:1199px){.iot-dashboard .iot-dashboard__summary-bar{grid-template-columns:repeat(3,minmax(160px,1fr));row-gap:14px}.iot-dashboard .iot-summary-item:nth-child(3){border-right:0}}@media(max-width:991px){.iot-dashboard .iot-dashboard__topbar{align-items:center;flex-direction:column;gap:6px}.iot-dashboard .iot-dashboard__health-grid{min-width:0;width:100%}.iot-dashboard .dashboard-legend-toolbar__actions{justify-content:flex-start;width:100%;margin-left:0}}@media(max-width:767px){.iot-dashboard .iot-category-card__today{width:100%;margin-left:0}.iot-dashboard .iot-dashboard__summary-bar{grid-template-columns:1fr}.iot-dashboard .iot-summary-item{padding:10px 0;border-right:0;border-bottom:1px solid var(--iot-border-soft)}.iot-dashboard .iot-summary-item:last-child{border-bottom:0}}.c-default-layout{--shell-bg: #eef4fc;--shell-sidebar-bg: var(--brand-sidebar-gradient);--shell-sidebar-text: #ffffff;--shell-sidebar-muted: #9fb3ca;--shell-sidebar-icon: #9fb3ca;--shell-sidebar-border: rgba(103, 137, 190, .22);--shell-sidebar-panel: rgba(255, 255, 255, .045);--shell-sidebar-hover: rgba(59, 130, 246, .14);--shell-sidebar-active: rgba(59, 130, 246, .2);--shell-sidebar-active-text: #ffffff;--shell-sidebar-active-icon: #60a5fa;--shell-sidebar-active-shadow: 0 4px 16px rgba(59, 130, 246, .28);--shell-header-bg: rgba(238, 244, 252, .96);--shell-header-text: #475569;--shell-header-shadow: 0 4px 18px rgba(7, 26, 53, .06);--shell-toggle-bg: #f0f5fc;--shell-toggle-text: #475569;--shell-sidebar-width: 200px;--shell-sidebar-collapsed-width: 64px;background:var(--shell-bg);height:100vh;min-height:100vh;overflow:hidden}.c-default-layout,.c-default-layout>.c-wrapper,.c-wrapper,.c-body,.app-main-content,.mainbody{margin-left:0!important}.c-default-layout>.c-wrapper,.c-wrapper{flex:1!important;min-width:0!important;width:100%!important;max-width:100%!important;height:100%;min-height:0;overflow-x:hidden;box-sizing:border-box}.c-default-layout.sidebar-collapsed>.c-wrapper{flex:1!important;width:100%!important;max-width:100%!important;min-width:0!important}.c-sidebar.sidebar-nav{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:var(--shell-sidebar-width)!important;min-width:var(--shell-sidebar-width)!important;max-width:var(--shell-sidebar-width)!important;flex:0 0 var(--shell-sidebar-width)!important;color:var(--shell-sidebar-text);border:0!important;border-radius:0!important;background:var(--shell-sidebar-bg)!important;box-shadow:2px 0 12px #1e28370d!important;transition:none!important;height:100vh!important;max-height:100vh!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;scrollbar-color:var(--shell-sidebar-border) transparent}.c-sidebar.sidebar-nav::-webkit-scrollbar{width:6px}.c-sidebar.sidebar-nav::-webkit-scrollbar-thumb{border-radius:999px;background:var(--shell-sidebar-border)}.c-sidebar.sidebar-nav::-webkit-scrollbar-track{background:transparent}.c-sidebar.sidebar-nav .c-sidebar-brand-themed{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:72px;padding:16px 10px 8px!important;background:transparent!important}.c-sidebar.sidebar-nav .c-sidebar-logo{width:78px!important;height:44px!important;object-fit:contain;margin:0 0 6px 2px}.c-sidebar.sidebar-nav .c-sidebar-user{display:flex;align-items:center;gap:10px;width:100%;min-width:0;box-sizing:border-box;padding:8px 10px;border:0;border-radius:7px;background:color-mix(in srgb,var(--shell-sidebar-panel) 88%,transparent)}.c-sidebar.sidebar-nav .c-sidebar-user__avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;color:#fff;border-radius:50%;box-shadow:0 0 22px #705cff57}.c-sidebar.sidebar-nav .c-sidebar-user__avatar svg{width:16px;height:16px;min-width:16px!important;margin-right:0!important}.c-sidebar.sidebar-nav .c-sidebar-user__meta{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1.15}.c-sidebar.sidebar-nav .c-sidebar-email{display:block;max-width:160px;padding-left:0!important;color:var(--shell-sidebar-text);font-size:.72rem!important;font-weight:400;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-sidebar.sidebar-nav .c-sidebar-role{gap:5px;margin-top:5px;font-size:.67rem;font-weight:400}.c-sidebar.sidebar-nav .c-sidebar-role:before{content:"";width:6px;height:6px;border-radius:50%}.c-sidebar.sidebar-nav .c-sidebar-nav,.c-sidebar.sidebar-nav .c-sidebar-nav-themed{padding:7px 10px 10px;background:transparent!important}.c-sidebar.sidebar-nav .c-sidebar-nav-link,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle{min-height:43px;margin:3px 0;padding:0 10px!important;color:var(--shell-sidebar-text)!important;border:1px solid transparent;border-radius:10px;background:transparent!important;font-size:.68rem;font-weight:400;letter-spacing:0;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis;transition:background .18s ease,border-color .18s ease,transform .18s ease}.c-sidebar.sidebar-nav .c-sidebar-nav-link{display:flex;align-items:center;gap:0}.c-sidebar.sidebar-nav .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .c-icon{flex:0 0 16px!important;color:var(--shell-sidebar-icon)!important;width:16px!important;min-width:16px!important;height:16px!important;margin-left:0!important;margin-right:6px!important}.c-sidebar.sidebar-nav .c-sidebar-nav-link:hover,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover,.c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active{color:#fff!important;border-color:#4967ff6b;background:var(--shell-sidebar-active)!important;box-shadow:var(--shell-sidebar-active-shadow);transform:translate(2px)}.c-sidebar.sidebar-nav .c-sidebar-nav-link:hover .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .c-sidebar-nav-link:hover .c-icon,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover .c-icon,.c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active .c-icon{color:#fff!important}.c-sidebar.sidebar-nav .c-sidebar-nav-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-sidebar.sidebar-nav .c-sidebar-nav-chevron{flex:0 0 8px;width:8px;min-width:8px;height:8px;margin-left:auto;background-image:var(--shell-sidebar-arrow)!important;background-repeat:no-repeat;background-position:center;background-size:contain;transform:rotate(180deg);transition:transform .2s ease}.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown.c-show>.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-chevron{transform:rotate(-90deg)}.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-chevron{background-image:var(--shell-sidebar-arrow-hover)!important}.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-items{background:transparent!important}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button{position:absolute;top:14px;right:10px;z-index:4;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none;cursor:pointer}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button:before,.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button:after{display:none!important;content:none!important}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button .c-icon{width:16px!important;min-width:16px!important;height:16px!important;margin:0!important;color:var(--shell-sidebar-icon)!important}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button:hover .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button:hover .c-icon{color:var(--shell-sidebar-text)!important}.c-sidebar.sidebar-nav .sidebar-minimizer,.c-sidebar.sidebar-nav .sidebar-button{display:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand-themed{position:relative!important;display:flex!important;flex:0 0 auto!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;margin:0!important;overflow:visible!important;background:transparent!important;box-shadow:none!important;text-decoration:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-logo,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-email,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-role,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user__meta,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand .slid.c-sidebar-logo,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user{display:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user__avatar{width:var(--shell-sidebar-rail-avatar)!important;height:var(--shell-sidebar-rail-avatar)!important;flex:0 0 var(--shell-sidebar-rail-avatar)!important;box-shadow:0 0 10px #705cff47!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user__avatar svg{width:calc(var(--shell-sidebar-rail-avatar) * .5)!important;height:calc(var(--shell-sidebar-rail-avatar) * .5)!important;min-width:0!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed{position:relative!important;z-index:2;inset:auto!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;align-self:center!important;flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:var(--shell-sidebar-rail-slot)!important;height:var(--shell-sidebar-rail-slot-height)!important;min-width:var(--shell-sidebar-rail-slot)!important;min-height:var(--shell-sidebar-rail-slot-height)!important;margin:0 auto!important;padding:0!important;border:0!important;outline:none!important;border-radius:13px!important;background:transparent!important;box-shadow:none!important;transform:none!important;isolation:isolate;overflow:hidden!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button:before,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button:after,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed:before,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed:after{display:none!important;content:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .c-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed .c-icon{width:var(--shell-sidebar-rail-icon)!important;min-width:var(--shell-sidebar-rail-icon)!important;height:var(--shell-sidebar-rail-icon)!important;margin:0 auto!important;color:var(--shell-sidebar-icon)!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .sidebar-toggle-button__icon svg,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .c-icon svg,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed .sidebar-toggle-button__icon svg,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button--collapsed .c-icon svg{display:block;width:100%!important;height:100%!important;margin:0 auto}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-item,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-wrapper{display:flex!important;justify-content:center!important;flex:0 0 auto!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;overflow:hidden!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-link,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown-toggle{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:var(--shell-sidebar-rail-slot)!important;min-width:var(--shell-sidebar-rail-slot)!important;max-width:var(--shell-sidebar-rail-slot)!important;height:var(--shell-sidebar-rail-slot-height)!important;min-height:var(--shell-sidebar-rail-slot-height)!important;margin:0 auto!important;padding:0!important;overflow:hidden!important;border-radius:13px!important;font-size:0!important;line-height:0!important;text-align:center!important;transform:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-link:hover,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown-toggle:hover,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-link.c-active{transform:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-icon{width:var(--shell-sidebar-rail-icon)!important;min-width:var(--shell-sidebar-rail-icon)!important;height:var(--shell-sidebar-rail-icon)!important;margin:0 auto!important;font-size:var(--shell-sidebar-rail-icon)!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-title,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-label,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-chevron,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown-toggle:after,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown-items,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown:hover>.c-sidebar-nav-dropdown-items,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown.c-show>.c-sidebar-nav-dropdown-items,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-badge{display:none!important;visibility:hidden!important;width:0!important;height:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}.c-sidebar.sidebar-nav.c-sidebar-minimized{width:var(--shell-sidebar-width)!important;min-width:var(--shell-sidebar-width)!important;max-width:var(--shell-sidebar-width)!important;flex:0 0 var(--shell-sidebar-width)!important;overflow-x:hidden!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-brand-themed{min-height:72px!important;padding:16px 16px 8px!important;align-items:flex-start;justify-content:flex-start}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-logo{display:block!important;width:78px!important;height:44px!important;margin:0 0 6px 2px!important;opacity:1!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-themed{padding:7px 10px 10px!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-item,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-item:hover,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown:hover,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown.c-show,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown.c-show:hover{width:auto!important;min-width:0!important;max-width:none!important;position:relative!important;left:auto!important;right:auto!important;overflow:hidden!important;background:transparent!important;box-shadow:none!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-link,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:auto!important;min-width:0!important;height:auto!important;min-height:43px!important;margin:3px 0!important;padding:0 10px!important;overflow:hidden!important;border-radius:10px!important;font-size:.68rem!important;line-height:normal!important;text-align:left!important;transform:none!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-link:hover,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle:hover,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-link.c-active{transform:none!important;box-shadow:0 8px 18px #3152ff3d}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-icon{flex:0 0 16px!important;width:16px!important;min-width:16px!important;height:16px!important;margin-left:0!important;margin-right:6px!important;font-size:16px!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-title,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-label,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-chevron,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle:after,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown-items,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown-items.show,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown-items.c-show,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown:hover>.c-sidebar-nav-dropdown-items,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown.c-show>.c-sidebar-nav-dropdown-items,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown:hover:before,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown:hover:after,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown.c-show:before,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-sidebar-nav-dropdown.c-show:after,.c-sidebar.sidebar-nav.c-sidebar-minimized .c-badge{display:none!important;visibility:hidden!important;position:static!important;left:auto!important;right:auto!important;top:auto!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;max-height:0!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;background:transparent!important;box-shadow:none!important}.c-sidebar.sidebar-nav.c-sidebar-minimized .sidebar-minimizer,.c-sidebar.sidebar-nav.c-sidebar-minimized .sidebar-button{display:none!important}.header1.app-header.c-header{flex:0 0 42px!important;min-height:42px!important;height:42px!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;overflow:visible;background:var(--shell-header-bg)!important;box-shadow:none!important;z-index:5;border:0!important;border-radius:0!important}.header1.app-header.c-header .app-header__inner{position:static;display:flex!important;align-items:center;justify-content:space-between;z-index:5;width:100%!important;max-width:100%!important;flex:1 1 auto;height:42px;min-height:42px;margin:0!important;padding:0 12px!important;border:0!important;border-radius:0!important;background:transparent;box-shadow:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header1.app-header.c-header .app-header__end{min-height:42px}.header1.app-header.c-header .email-header{color:var(--shell-header-text);font-size:.76rem;font-weight:700}.header1.app-header.c-header .theme-toggle{width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;border-color:var(--shell-sidebar-border);border-radius:10px;background:var(--shell-toggle-bg);color:var(--shell-toggle-text)}.c-wrapper{background:var(--shell-bg)}.c-body{width:100%!important;max-width:100%!important;flex:1 1 auto;min-height:0}.c-body:not(.iot-setup-list-active){overflow-y:auto;overflow-x:hidden}.c-body:has(.iot-dashboard){scrollbar-gutter:stable both-edges}.c-body{scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.4) transparent}.c-body::-webkit-scrollbar{width:8px;height:8px}.c-body::-webkit-scrollbar-track{background:transparent}.c-body::-webkit-scrollbar-thumb{background:#64748b66;border-radius:8px}.c-body::-webkit-scrollbar-thumb:hover{background:#64748b99}.c-body:has(.iot-cat-detail--subpage),.app-main-content:has(.iot-cat-detail--subpage),.c-body:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--fitpage){overflow:hidden!important}.c-body:has(.iot-cat-detail--fitpage),.c-body:has(.iot-cat-detail--subpage){width:100%!important;max-width:100%!important}.app-main-content:has(.iot-cat-detail--subpage),.app-main-content:has(.iot-cat-detail--fitpage){display:flex;flex-direction:column;height:100%;min-height:0}.app-main-content:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--subpage){padding:0!important}.app-main-content:has(.iot-cat-detail--fitpage)>div,.app-main-content:has(.iot-cat-detail--fitpage) .fade,.category:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--subpage)>div,.app-main-content:has(.iot-cat-detail--subpage) .fade,.category:has(.iot-cat-detail--subpage){display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.c-body.iot-setup-list-active{overflow:hidden!important;overflow-y:hidden!important;display:flex!important;flex-direction:column!important}.app-main-content,.mainbody{width:100%!important;max-width:100%!important;flex:1 1 auto!important}.iot-dashboard{padding:4px 0 8px}.iot-dashboard .iot-dashboard__header{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px;padding:10px 12px;border-radius:10px;background:var(--iot-panel-bg)}.iot-dashboard .iot-dashboard__header-sort{margin-left:auto}.iot-dashboard .iot-dashboard__header .iot-summary-item{display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:0 10px;border-right:0}.iot-dashboard .iot-dashboard__header .iot-summary-item span{font-size:.74rem}.iot-dashboard .iot-dashboard__header .iot-summary-item strong{font-size:.86rem}.iot-dashboard .iot-dashboard__header .iot-summary-item__icon{width:28px;height:28px;flex:0 0 28px;font-size:.72rem}.iot-dashboard .iot-dashboard__topbar{min-height:38px;margin:0 0 8px;padding:4px 6px;gap:6px;border:0!important;border-radius:10px;box-shadow:none}.iot-dashboard .iot-dashboard__health-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));gap:6px;min-width:0;width:100%}.iot-dashboard .iot-health-card{min-height:34px;padding:4px 8px;gap:8px;border:0!important;border-radius:10px;box-shadow:none!important}.iot-dashboard .iot-health-card__icon{width:28px;height:28px;flex-basis:28px}.iot-dashboard .iot-health-card__label{font-size:.68rem}.iot-dashboard .iot-health-card strong{font-size:.86rem}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle,.iot-dashboard .iot-dashboard__date-card{min-height:34px;padding:6px 10px!important;border:0!important;border-radius:9px!important}.iot-dashboard .iot-dashboard__card-grid{margin-left:0;margin-right:0}.iot-dashboard .pb-4{padding-bottom:8px!important}.iot-dashboard .iot-category-card{min-height:188px;border:0!important;border-radius:12px;box-shadow:none!important}.iot-dashboard .iot-category-card:before{display:none!important}.iot-dashboard .iot-category-card__link{min-height:188px;padding:18px 20px 15px}.iot-dashboard .iot-category-card__today{padding:11px 13px;border:0!important;border-radius:10px}.iot-dashboard .iot-category-card__signal,.iot-dashboard .iot-category-card__primary-icon,.iot-dashboard .iot-metric-tile__icon{border:0!important}.iot-dashboard .iot-dashboard__summary-bar{margin-top:0;padding:7px 10px;border:0!important;border-radius:10px;box-shadow:none}.iot-dashboard .iot-summary-item{border-right:0!important}[data-theme=dark] .c-default-layout{--shell-bg: #051125;--shell-sidebar-bg: radial-gradient(circle at 30% 0%, rgba(49, 130, 255, .18), transparent 28%), linear-gradient(180deg, #071a35 0%, #031024 100%);--shell-sidebar-text: #f7fbff;--shell-sidebar-muted: #9fb3ca;--shell-sidebar-icon: #9fb3ca;--shell-sidebar-border: rgba(103, 137, 190, .22);--shell-sidebar-panel: rgba(255, 255, 255, .045);--shell-sidebar-active-shadow: 0 10px 22px rgba(49, 82, 255, .28);--shell-header-bg: rgba(7, 26, 53, .92);--shell-header-text: #dce8f8;--shell-header-shadow: 0 14px 32px rgba(0, 0, 0, .2);--shell-toggle-bg: rgba(255, 255, 255, .055);--shell-toggle-text: #f7fbff}[data-theme=dark] .c-default-layout .c-sidebar.sidebar-nav{box-shadow:12px 0 32px #0000003d!important}@media(max-width:576px){.dashboard-legend-toolbar{padding:4px 8px!important;gap:8px}.dashboard-legend-toolbar__actions{margin-left:auto;justify-content:flex-end}.dashboard-sort-dropdown .dashboard-sort-toggle{padding:3px 6px!important;min-height:24px}}.bg-red{background:#dc3545;color:#fff}.bg-green{background:#28a745;color:#fff}.bg-yellow{background:#ffe082;color:#000}.bg-gray{background:#6c757d;color:#fff}.c-default-layout{--shell-sidebar-width: 200px;--shell-sidebar-collapsed-width: 64px;background:#051125!important}@media(min-width:992px){.header1.app-header.c-header{display:none!important}}.c-default-layout>.c-wrapper,.c-wrapper{flex:1!important;width:100%!important;min-width:0!important;max-width:100%!important;height:100%!important;overflow-x:hidden!important;box-sizing:border-box!important;background:#051125!important}.c-default-layout.sidebar-collapsed>.c-wrapper{flex:1!important;width:100%!important;min-width:0!important;max-width:100%!important}.c-sidebar.sidebar-nav{width:var(--shell-sidebar-width)!important;min-width:var(--shell-sidebar-width)!important;max-width:var(--shell-sidebar-width)!important;flex:0 0 var(--shell-sidebar-width)!important;background:var(--brand-sidebar-gradient)!important;box-shadow:none!important}.c-sidebar.sidebar-nav .sidebar-rail-header{position:relative;display:flex;flex-direction:column;align-items:stretch;flex:0 0 auto;width:100%}.c-sidebar.sidebar-nav .c-sidebar-brand-themed{min-height:96px!important;padding:14px 8px 7px!important;align-items:stretch!important}.c-sidebar.sidebar-nav .c-sidebar-logo{width:58px!important;height:30px!important;margin:0 0 10px 2px!important}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button{position:absolute!important;top:14px!important;right:9px!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}.c-sidebar.sidebar-nav .sidebar-toggle-button .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav .sidebar-toggle-button .c-icon{width:16px!important;min-width:16px!important;height:16px!important;margin:0!important;color:#dce8f8!important}.c-sidebar.sidebar-nav .c-sidebar-user{display:flex!important;align-items:center;width:100%!important;max-width:100%!important;box-sizing:border-box;gap:8px;margin:0!important;padding:6px 10px!important;border:0!important;border-radius:7px!important;background:#ffffff0a!important}.c-sidebar.sidebar-nav .c-sidebar-user__avatar{width:31px!important;height:31px!important;flex:0 0 31px!important}.c-sidebar.sidebar-nav .c-sidebar-email{max-width:110px!important;color:#fff!important;font-size:.57rem!important;line-height:1.15!important}.c-sidebar.sidebar-nav .c-sidebar-role{margin-top:3px!important;color:#8ff0ba!important;font-size:.56rem!important}.c-sidebar.sidebar-nav .c-sidebar-nav,.c-sidebar.sidebar-nav .c-sidebar-nav-themed{padding:5px 7px 8px!important}.c-sidebar.sidebar-nav .c-sidebar-nav-link,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item{min-height:30px!important;margin:2px 0!important;padding:0 9px!important;border-radius:7px!important;color:#fff!important;font-size:.55rem!important;font-weight:400!important;letter-spacing:0!important;border:0!important;background:transparent!important;width:100%!important;text-align:left!important;cursor:pointer;display:flex!important;align-items:center!important;gap:0!important;-moz-appearance:none;appearance:none;-webkit-appearance:none;font-family:inherit;line-height:1.2;outline:none;box-shadow:none;text-decoration:none}.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-items .c-sidebar-nav-link,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle{padding-left:28px!important}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:focus,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:focus-visible{outline:none;box-shadow:none}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover .c-icon{color:#fff!important}.c-sidebar.sidebar-nav .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .c-icon{flex:0 0 16px!important;width:16px!important;min-width:16px!important;height:16px!important;margin-left:0!important;margin-right:6px!important;color:#9fb3ca!important}.c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active,.c-sidebar.sidebar-nav .c-sidebar-nav-link:hover,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover{background:linear-gradient(135deg,#1685ff,#5146e8)!important;box-shadow:0 8px 18px #3152ff3d!important;transform:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed{--shell-sidebar-rail-slot: clamp(36px, 7.2vh, 46px);--shell-sidebar-rail-slot-height: clamp(32px, 6.4vh, 44px);--shell-sidebar-rail-gap: clamp(1px, .6vh, 4px);--shell-sidebar-rail-icon: clamp(16px, 2.8vh, 20px);--shell-sidebar-rail-avatar: clamp(26px, 4.6vh, 32px);width:var(--shell-sidebar-collapsed-width)!important;min-width:var(--shell-sidebar-collapsed-width)!important;max-width:var(--shell-sidebar-collapsed-width)!important;flex:0 0 var(--shell-sidebar-collapsed-width)!important;overflow-x:hidden!important;overflow-y:auto!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-rail-header{display:flex!important;flex:0 0 auto!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:var(--shell-sidebar-rail-gap)!important;width:100%!important;height:auto!important;min-height:0!important;padding:4px 0 0!important;margin:0!important;overflow:visible!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand-themed{position:relative!important;display:flex!important;flex:0 0 auto!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;min-height:0!important;max-height:none!important;height:auto!important;width:100%!important;padding:0!important;margin:0!important;box-sizing:border-box!important;overflow:visible!important;background:transparent!important;box-shadow:none!important;text-decoration:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand-themed:hover,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand-themed:focus,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand-themed:focus-visible,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-brand-themed:active{background:transparent!important;box-shadow:none!important;outline:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-logo,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user__meta,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-email,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-role{display:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-user__avatar{display:inline-flex!important;width:var(--shell-sidebar-rail-avatar)!important;height:var(--shell-sidebar-rail-avatar)!important;flex:0 0 var(--shell-sidebar-rail-avatar)!important;box-shadow:0 0 10px #705cff47!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button,.c-sidebar.sidebar-nav .sidebar-toggle-button--collapsed{position:relative!important;z-index:2;inset:auto!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;align-self:center!important;flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:var(--shell-sidebar-rail-slot)!important;height:var(--shell-sidebar-rail-slot-height)!important;min-width:var(--shell-sidebar-rail-slot)!important;min-height:var(--shell-sidebar-rail-slot-height)!important;margin:0 auto!important;padding:0!important;border:0!important;outline:none!important;border-radius:13px!important;background:transparent!important;box-shadow:none!important;transform:none!important;isolation:isolate;overflow:hidden!important;cursor:pointer}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button:before,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button:after{display:none!important;content:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .c-icon,.c-sidebar.sidebar-nav .sidebar-toggle-button--collapsed .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav .sidebar-toggle-button--collapsed .c-icon{width:var(--shell-sidebar-rail-icon)!important;min-width:var(--shell-sidebar-rail-icon)!important;height:var(--shell-sidebar-rail-icon)!important;margin:0 auto!important;color:var(--shell-sidebar-icon)!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .sidebar-toggle-button__icon svg,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button .c-icon svg,.c-sidebar.sidebar-nav .sidebar-toggle-button--collapsed .sidebar-toggle-button__icon svg,.c-sidebar.sidebar-nav .sidebar-toggle-button--collapsed .c-icon svg{display:block;width:100%!important;height:100%!important;margin:0 auto}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-themed{display:flex!important;flex-direction:column!important;align-items:center!important;gap:var(--shell-sidebar-rail-gap)!important;width:100%!important;padding:0 0 12px!important;margin:0!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-item,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-wrapper{display:flex!important;justify-content:center!important;flex:0 0 auto!important;width:100%!important;margin:0!important;overflow:hidden!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-link>span:not(.c-sidebar-nav-icon):not(.c-icon),.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-label,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-chevron{display:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;flex:0 0 0!important;opacity:0!important;pointer-events:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-link .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-item .c-sidebar-nav-icon{margin:0 auto!important;flex:0 0 var(--shell-sidebar-rail-icon, 16px)!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-link,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .c-sidebar-nav-dropdown-toggle,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-item{display:flex!important;align-items:center!important;width:var(--shell-sidebar-rail-slot)!important;min-width:var(--shell-sidebar-rail-slot)!important;max-width:var(--shell-sidebar-rail-slot)!important;height:var(--shell-sidebar-rail-slot-height)!important;min-height:var(--shell-sidebar-rail-slot-height)!important;margin:0 auto!important;justify-content:center!important;padding:0!important;font-size:0!important;overflow:hidden!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-themed{align-items:center!important;padding:0 0 12px!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-item,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-dropdown,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .sidebar-theme-toggle-wrapper{display:flex!important;justify-content:center!important;width:100%!important;margin-left:0!important;margin-right:0!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-link,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .sidebar-theme-toggle-item{display:flex!important;align-items:center!important;justify-content:center!important;width:var(--shell-sidebar-rail-slot)!important;min-width:var(--shell-sidebar-rail-slot)!important;max-width:var(--shell-sidebar-rail-slot)!important;height:var(--shell-sidebar-rail-slot-height)!important;min-height:var(--shell-sidebar-rail-slot-height)!important;margin:0 auto!important;padding:0!important;text-align:center!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-link>span:not(.c-sidebar-nav-icon):not(.c-icon),.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-label,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-chevron{display:none!important;position:absolute!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;margin:0!important;padding:0!important;flex:0 0 0!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-link .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-link .c-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle .c-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .sidebar-theme-toggle-item .c-sidebar-nav-icon,.c-sidebar.sidebar-nav.sidebar-nav--collapsed.c-sidebar-minimized .sidebar-theme-toggle-item .c-icon{width:var(--shell-sidebar-rail-icon)!important;min-width:var(--shell-sidebar-rail-icon)!important;height:var(--shell-sidebar-rail-icon)!important;margin:0 auto!important;flex:0 0 var(--shell-sidebar-rail-icon)!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-wrapper{display:flex!important;justify-content:center!important;width:100%!important;margin-top:0!important;padding-top:0!important;border-top:0!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-item span{display:none!important}.c-body,.app-main-content,.mainbody{background:#051125!important}.iot-dashboard{padding:7px 0 10px!important;background:#051125!important}.iot-dashboard .iot-dashboard__topbar,.iot-dashboard .iot-category-card,.iot-dashboard .iot-dashboard__summary-bar{box-shadow:none!important;border:1px solid rgba(103,137,190,.16)!important}.c-default-layout{--shell-bg: #eef4fc;--shell-text: #1e293b;--shell-muted: #64748b;--shell-panel: #f2f7fc;--shell-panel-soft: #e8f0fa;--shell-border: rgba(74, 115, 180, .22);--shell-sidebar-bg: var(--brand-sidebar-gradient);--shell-sidebar-text: #ffffff;--shell-sidebar-muted: #9fb3ca;--shell-sidebar-icon: #9fb3ca;--shell-sidebar-border: rgba(103, 137, 190, .22);--shell-sidebar-panel: rgba(255, 255, 255, .045);--shell-sidebar-hover: rgba(59, 130, 246, .14);--shell-sidebar-active: rgba(59, 130, 246, .2);--shell-sidebar-active-text: #ffffff;--shell-sidebar-active-icon: #60a5fa;--shell-sidebar-active-shadow: 0 4px 16px rgba(59, 130, 246, .28);--shell-header-bg: rgba(238, 244, 252, .97);--shell-header-text: #475569;--shell-header-shadow: 0 4px 18px rgba(7, 26, 53, .06);--shell-card-bg: #f2f7fc;--shell-card-bg-2: #eef4fc;--shell-today-bg: rgba(240, 245, 252, .94);--shell-card-shadow: 0 8px 28px rgba(7, 26, 53, .09);--shell-logo-filter: brightness(0) invert(1);--shell-logo-opacity: 1;--shell-sidebar-arrow: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%239fb3ca' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");--shell-sidebar-arrow-hover: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%2360a5fa' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E")}[data-theme=dark] .c-default-layout{--shell-bg: #051125;--shell-text: #f7fbff;--shell-muted: #9fb3ca;--shell-panel: #071a35;--shell-panel-soft: #0a1f42;--shell-border: rgba(103, 137, 190, .18);--shell-sidebar-bg: var(--brand-sidebar-gradient);--shell-sidebar-text: #ffffff;--shell-sidebar-icon: #9fb3ca;--shell-sidebar-panel: rgba(255, 255, 255, .045);--shell-header-bg: #071a35;--shell-card-bg: #071a35;--shell-card-bg-2: #101b3c;--shell-today-bg: rgba(10, 28, 58, .86);--shell-card-shadow: none;--shell-logo-filter: brightness(0) invert(1);--shell-logo-opacity: 1;--shell-sidebar-arrow: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%239fb3ca' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");--shell-sidebar-arrow-hover: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23ffffff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E")}[data-theme=light] .c-sidebar.sidebar-nav{box-shadow:8px 0 28px #071a352e!important;border-right:1px solid var(--shell-sidebar-border)!important}[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-themed{background:transparent!important}[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle{font-weight:400!important;color:var(--shell-sidebar-text)!important}[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-icon{color:var(--shell-sidebar-icon)!important}[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link:hover,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle.c-active{color:#fff!important;background:linear-gradient(135deg,#1685ff,#5146e8)!important;border-color:transparent!important;box-shadow:0 8px 18px #3152ff3d!important;transform:none!important}[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link:hover .c-sidebar-nav-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link:hover .c-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover .c-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active .c-sidebar-nav-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active .c-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle.c-active .c-sidebar-nav-icon,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle.c-active .c-icon{color:#fff!important}[data-theme=light] .c-sidebar.sidebar-nav .sidebar-theme-toggle-item{color:var(--shell-sidebar-text)!important}[data-theme=light] .c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover,[data-theme=light] .c-sidebar.sidebar-nav .sidebar-theme-toggle-item:focus-visible{color:var(--shell-sidebar-active-text)!important;background:var(--shell-sidebar-hover)!important}[data-theme=light] .c-sidebar-nav{background-color:transparent!important}[data-theme=light] .c-sidebar .c-sidebar-nav-link,[data-theme=light] .c-sidebar .c-sidebar-nav-dropdown-toggle{color:var(--shell-sidebar-text)!important}[data-theme=light] .c-sidebar-nav-link:hover,[data-theme=light] .c-sidebar .c-sidebar-nav-link.c-active{color:#fff!important;background:linear-gradient(135deg,#1685ff,#5146e8)!important;box-shadow:0 8px 18px #3152ff3d!important}[data-theme=light] .c-sidebar-nav-link:hover .c-sidebar-nav-icon,[data-theme=light] .c-sidebar .c-sidebar-nav-link.c-active .c-sidebar-nav-icon{color:#fff!important}[data-theme=light] .c-sidebar{box-shadow:8px 0 28px #071a352e!important;border-radius:0!important}[data-theme=light] .iot-dashboard .iot-category-card:hover{border-color:color-mix(in srgb,var(--iot-card-accent) 45%,var(--shell-border))!important;box-shadow:var(--shell-card-shadow),0 0 32px color-mix(in srgb,var(--iot-card-accent) 18%,transparent)!important}[data-theme=light] .iot-dashboard .iot-category-card--electric{--iot-card-accent: #3b82f6;--iot-card-glow: rgba(59, 130, 246, .2)}[data-theme=light] .iot-dashboard .iot-category-card--water{--iot-card-accent: var(--color-primary);--iot-card-glow: rgba(59, 130, 246, .22)}[data-theme=light] .iot-dashboard .iot-category-card--gas{--iot-card-accent: #ff9100;--iot-card-glow: rgba(255, 145, 0, .22)}[data-theme=light] .iot-dashboard .iot-category-card--steam{--iot-card-accent: #b47aff;--iot-card-glow: rgba(180, 122, 255, .22)}[data-theme=light] .iot-dashboard .iot-health-card strong{color:var(--iot-accent)!important}[data-theme=light] .iot-dashboard .iot-health-card--sensor strong{color:#b47aff!important}[data-theme=light] .c-default-layout,[data-theme=light] .c-default-layout>.c-wrapper,[data-theme=light] .c-wrapper{background:var(--shell-bg)!important}[data-theme=light] .c-sidebar.sidebar-nav{background:var(--shell-sidebar-bg)!important}[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-email,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-link,[data-theme=light] .c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle,[data-theme=light] .c-sidebar.sidebar-nav .sidebar-theme-toggle-item{color:var(--shell-sidebar-text)!important}.c-default-layout,.c-default-layout>.c-wrapper,.c-wrapper,.c-body,.app-main-content,.mainbody,.iot-dashboard{color:var(--shell-text)!important;background:var(--shell-bg)!important}.header1.app-header.c-header{color:var(--shell-text)!important;background:var(--shell-header-bg)!important}.c-sidebar.sidebar-nav{color:var(--shell-sidebar-text)!important;background:var(--shell-sidebar-bg)!important}.c-sidebar.sidebar-nav .c-sidebar-logo{filter:var(--shell-logo-filter)!important;opacity:var(--shell-logo-opacity)!important}.c-sidebar.sidebar-nav .sidebar-toggle-button{border:0!important;border-color:transparent!important;background:transparent!important;box-shadow:none!important}.c-sidebar.sidebar-nav .sidebar-toggle-button:before,.c-sidebar.sidebar-nav .sidebar-toggle-button:after{display:none!important;content:none!important}.c-sidebar.sidebar-nav .sidebar-toggle-button .sidebar-toggle-button__icon,.c-sidebar.sidebar-nav .sidebar-toggle-button .c-icon{color:var(--shell-sidebar-icon)!important}.c-sidebar.sidebar-nav .c-sidebar-user{border:0!important;border-color:transparent!important;background:color-mix(in srgb,var(--shell-sidebar-panel) 88%,transparent)!important}.c-sidebar.sidebar-nav .c-sidebar-email,.c-sidebar.sidebar-nav .c-sidebar-nav-link,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item{color:var(--shell-sidebar-text)!important}.c-sidebar.sidebar-nav .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .c-icon{flex:0 0 16px!important;width:16px!important;min-width:16px!important;height:16px!important;margin-left:0!important;margin-right:6px!important;color:var(--shell-sidebar-icon)!important}.c-sidebar.sidebar-nav .c-sidebar-nav-link .c-sidebar-nav-icon:first-child,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon:first-child,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item .c-sidebar-nav-icon:first-child{margin-left:0!important}.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:after{display:none!important}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .c-sidebar-nav-dropdown-toggle{overflow:visible!important}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .c-sidebar-nav-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .c-sidebar-nav-chevron{flex:0 0 8px;width:8px;min-width:8px;height:8px;margin-left:auto;background-image:var(--shell-sidebar-arrow)!important;background-repeat:no-repeat;background-position:center;background-size:contain;transform:rotate(180deg);transition:transform .2s ease}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .c-sidebar-nav-dropdown.c-show>.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-chevron{transform:rotate(-90deg)}.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-chevron{background-image:var(--shell-sidebar-arrow-hover)!important}.c-sidebar.sidebar-nav .c-sidebar-nav-link.c-active,.c-sidebar.sidebar-nav .c-sidebar-nav-link:hover,.c-sidebar.sidebar-nav .c-sidebar-nav-dropdown-toggle:hover{color:#fff!important}.iot-dashboard .iot-dashboard__topbar,.iot-dashboard .iot-dashboard__summary-bar,.iot-dashboard .iot-health-card,.iot-dashboard .iot-dashboard__date-card,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle{color:var(--shell-text)!important;border-color:var(--shell-border)!important;background:var(--shell-panel)!important}.iot-dashboard .iot-category-card{color:var(--shell-text)!important;border-color:var(--shell-border)!important;background:radial-gradient(circle at 10% 16%,var(--iot-card-glow),transparent 34%),linear-gradient(145deg,var(--shell-card-bg),var(--shell-card-bg-2))!important;box-shadow:var(--shell-card-shadow)!important}.iot-dashboard .iot-category-card__today{border-color:var(--shell-border)!important;background:var(--shell-today-bg)!important}.iot-dashboard .iot-category-card h3,.iot-dashboard .iot-category-card__kicker,.iot-dashboard .iot-summary-item strong,.iot-dashboard .iot-metric-tile strong{color:var(--shell-text)!important}.iot-dashboard .iot-category-card__today span,.iot-dashboard .iot-summary-item span,.iot-dashboard .iot-dashboard__date-card{color:var(--shell-muted)!important}.iot-dashboard .iot-dashboard__header{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;min-height:0!important;height:auto!important;margin:0 0 10px!important;padding:10px 12px!important}.iot-dashboard .iot-dashboard__header-sort{margin-left:auto!important}.iot-dashboard .iot-dashboard__header .iot-health-card{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;min-height:38px!important;height:38px!important;padding:0 10px!important;margin:0!important;border-radius:8px!important;line-height:1!important}.iot-dashboard .iot-dashboard__header .iot-health-card__icon{width:28px!important;height:28px!important;min-width:28px!important;flex:0 0 28px!important;font-size:.72rem!important}.iot-dashboard .iot-dashboard__header .iot-health-card__label{font-size:.74rem!important}.iot-dashboard .iot-dashboard__header .iot-health-card strong{font-size:.86rem!important}.iot-dashboard .iot-dashboard__header .iot-summary-item{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:38px!important;height:38px!important;padding:0 10px!important;margin:0!important;border-right:0!important}.iot-dashboard .iot-dashboard__header .iot-summary-item__icon{width:28px!important;height:28px!important;flex:0 0 28px!important;font-size:.72rem!important}.iot-dashboard .iot-dashboard__header .iot-summary-item span{font-size:.74rem!important}.iot-dashboard .iot-dashboard__header .iot-summary-item strong{font-size:.86rem!important}.iot-dashboard .iot-dashboard__topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-height:0!important;height:auto!important;margin:0 0 8px!important;padding:4px 8px!important}.iot-dashboard .iot-dashboard__health-grid{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:6px!important;min-width:0!important}.iot-dashboard .iot-health-card{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;min-height:30px!important;height:30px!important;padding:0 8px!important;margin:0!important;border-radius:8px!important;line-height:1!important}.iot-dashboard .iot-health-card__icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;min-width:22px!important;flex:0 0 22px!important;font-size:11px!important;border-radius:6px!important}.iot-dashboard .iot-health-card__content{display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;min-width:0}.iot-dashboard .iot-health-card__label{font-size:.68rem!important;line-height:1!important;white-space:nowrap}.iot-dashboard .iot-health-card strong{font-size:.78rem!important;line-height:1!important;white-space:nowrap}.iot-dashboard .dashboard-legend-toolbar__actions{display:flex!important;align-items:center!important;align-self:center!important;gap:6px!important;margin-left:auto!important}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;min-height:38px!important;height:38px!important;padding:0 12px!important;margin:0!important;line-height:1!important;font-size:.74rem!important}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.btn,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.btn-sm{min-height:38px!important;height:38px!important;padding:0 12px!important;vertical-align:middle!important}.iot-dashboard .dashboard-sort-toggle__icon,.iot-dashboard .dashboard-sort-toggle__caret{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.iot-dashboard .dashboard-sort-toggle__label,.iot-dashboard .dashboard-sort-toggle__value{display:inline-flex!important;align-items:center!important;line-height:1!important}.scada-loader{--loader-box-bg: #f7faff;--loader-box-border: rgba(74, 115, 180, .22);--loader-label: var(--brand-mid);--loader-text: #475569;--loader-bar-bg: #e8f0fa;--loader-bar-fill: #3b82f6;padding:16px;color:var(--loader-text)}[data-theme=dark] .scada-loader{--loader-box-bg: #0f2138;--loader-box-border: rgba(103, 137, 190, .28);--loader-label: #93c5fd;--loader-text: #94a3b8;--loader-bar-bg: rgba(103, 137, 190, .2);--loader-bar-fill: var(--color-primary)}.scada-loader__box{display:flex;flex-direction:column;align-items:center;gap:10px;width:min(280px,88vw);padding:16px 18px;border:1px solid var(--loader-box-border);border-radius:6px;background:var(--loader-box-bg)}.scada-loader__label{color:var(--loader-label);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.scada-loader__bar{width:100%;height:4px;overflow:hidden;border-radius:2px;background:var(--loader-bar-bg)}.scada-loader__bar-fill{display:block;width:40%;height:100%;border-radius:2px;background:var(--loader-bar-fill);animation:scadaLoaderBarSlide 1.6s ease-in-out infinite}.scada-loader__text{margin:0;color:var(--loader-text);font-size:.75rem;font-weight:500;text-align:center}@keyframes scadaLoaderBarSlide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.iot-cat-overview>.container-fluid,.iot-cat-detail>.container-fluid{width:100%;max-width:none;margin-left:0;margin-right:0}.iot-cat-overview{--cat-text: #1e293b;--cat-text-soft: #475569;--cat-muted: #64748b;--cat-page-bg: radial-gradient(circle at 12% 6%, rgba(59, 130, 246, .12), transparent 30%), radial-gradient(circle at 88% 8%, rgba(59, 130, 246, .08), transparent 26%), linear-gradient(180deg, #e1eaf5 0%, #d5e1ef 100%);--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-status-online: #16A34A;--cat-header-status-offline: #EF4444;--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-panel: #e8f0fa;--cat-panel-inner: #dfe9f4;--cat-panel-hover: #d9e5f2;--cat-stat-bg: #d5e1ef;--cat-value-text: #1e293b;--cat-shadow: 0 8px 28px rgba(7, 26, 53, .1);--cat-gauge-track: rgba(30, 41, 59, .12);--cat-gauge-needle-shadow: rgba(7, 26, 53, .2);--cat-gauge-hub-fill: #1e293b;--cat-gauge-tip-fill: var(--gauge-accent);--cat-gauge-tip-stroke: #e8f0fa;--cat-icon-bg: #071a35;--utility-electric: #3b82f6;--utility-water: #00a8f0;--utility-gas: #ff9100;--utility-steam: #b47aff;--utility-electric-text: #2563eb;--utility-water-text: #0088cc;--utility-gas-text: #e67e00;--utility-steam-text: #9333ea;--cat-page-gutter: 11px;min-height:calc(100vh - 56px);padding:0 0 12px;color:var(--cat-text);background:var(--cat-page-bg)}.mainbody.iot-cat-overview{padding-top:0;padding-left:16px;padding-right:16px}.c-body:has(.iot-cat-overview-page),.c-body:has(.iot-cat-page),.c-body:has(.iot-dept-dashboard),.c-body:has(.iot-widget-page),.c-body:has(.iot-dashboard){overflow-x:hidden!important;overflow-y:auto!important;min-height:0;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-widget-page),.app-main-content:has(.iot-dashboard),.app-main-content:has(.iot-widget-page)>div,.app-main-content:has(.iot-dashboard)>div,.c-body:has(.iot-dashboard) .mainbody>div>.fade,.c-body:has(.iot-dashboard) .app-main-content>div>.fade,.category.iot-widget-page,.category:has(.iot-dashboard),.mainbody.iot-widget-page,.mainbody.iot-dashboard,.c-body:has(.iot-dashboard) .mainbody.app-main-content{display:block!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;flex:none!important}.c-body:has(.iot-dashboard) .mainbody.app-main-content{align-self:flex-start;width:100%}.c-body:has(.iot-cat-overview-page){--overview-page-bg: radial-gradient(circle at 12% 6%, rgba(59, 130, 246, .12), transparent 30%), radial-gradient(circle at 88% 8%, rgba(59, 130, 246, .08), transparent 26%), linear-gradient(180deg, #e1eaf5 0%, #d5e1ef 100%)}[data-theme=dark] .c-body:has(.iot-cat-overview-page){--overview-page-bg: #060d18}.c-body:has(.iot-cat-overview-page),.c-body:has(.iot-cat-overview-page) .app-main-content,.c-body:has(.iot-cat-overview-page) .app-main-content>div,.c-body:has(.iot-cat-overview-page) .fade,.c-body:has(.iot-cat-overview-page) .category,.c-body:has(.iot-cat-overview-page) .mainbody,.c-body:has(.iot-cat-overview-page) .iot-cat-overview,.c-body:has(.iot-cat-overview-page) .bg-grey{background:var(--overview-page-bg)!important;background-color:transparent!important}.c-body:has(.iot-cat-overview-page) .app-main-content,.c-body:has(.iot-cat-overview-page) .app-main-content>div,.c-body:has(.iot-cat-overview-page) .fade,.c-body:has(.iot-cat-overview-page) .category,.c-body:has(.iot-cat-overview-page) .iot-cat-overview{display:block!important;flex:none!important;align-self:stretch!important;width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}.c-body:has(.iot-cat-overview-page) .iot-cat-overview{--cat-page-bg: var(--overview-page-bg);min-height:calc(100vh - 56px)!important;box-sizing:border-box}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .iot-cat-overview,.c-body:has(.iot-dept-dashboard) .iot-cat-overview{--cat-page-bg: var(--shell-bg, var(--bg-primary, #eef4fc));background:var(--shell-bg, var(--bg-primary, #eef4fc))!important;min-height:calc(100vh - 56px)!important;box-sizing:border-box}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)),.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content>div,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .fade,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .category,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .mainbody,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .bg-grey,.c-body:has(.iot-dept-dashboard),.c-body:has(.iot-dept-dashboard) .app-main-content,.c-body:has(.iot-dept-dashboard) .app-main-content>div,.c-body:has(.iot-dept-dashboard) .fade,.c-body:has(.iot-dept-dashboard) .category,.c-body:has(.iot-dept-dashboard) .mainbody,.c-body:has(.iot-dept-dashboard) .bg-grey{background:var(--shell-bg, var(--bg-primary, #eef4fc))!important;background-image:none!important}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content>div,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .fade,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .category,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .iot-cat-overview,.c-body:has(.iot-dept-dashboard) .app-main-content,.c-body:has(.iot-dept-dashboard) .app-main-content>div,.c-body:has(.iot-dept-dashboard) .fade,.c-body:has(.iot-dept-dashboard) .category,.c-body:has(.iot-dept-dashboard) .iot-cat-overview{display:block!important;flex:none!important;align-self:stretch!important;width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .iot-cat-overview,.c-body:has(.iot-dept-dashboard) .iot-cat-overview{min-height:calc(100vh - 56px)!important}[data-theme=dark] .iot-cat-overview{--cat-text: #f4f8ff;--cat-text-soft: #c3d0df;--cat-muted: #8fa0b5;--cat-page-bg: #060d18;--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-panel: #0f1c32;--cat-panel-inner: #0c1628;--cat-panel-hover: #152540;--cat-stat-bg: #081220;--cat-value-text: #ffffff;--cat-shadow: 0 16px 40px rgba(0, 0, 0, .45);--cat-gauge-track: rgba(255, 255, 255, .12);--cat-gauge-needle-shadow: rgba(255, 255, 255, .35);--cat-gauge-hub-fill: #ffffff;--cat-gauge-tip-fill: #ffffff;--cat-gauge-tip-stroke: var(--gauge-accent);--cat-icon-bg: #081528;--utility-electric: #60a5fa;--utility-water: #00a8f0;--utility-gas: #ff9100;--utility-steam: #b47aff;--utility-electric-text: #60a5fa;--utility-water-text: #00a8f0;--utility-gas-text: #ff9100;--utility-steam-text: #b47aff;background:var(--cat-page-bg)}.iot-cat-overview__header-row--with-legend{flex-wrap:wrap;row-gap:10px}.iot-cat-overview__header .iot-cat-detail__legend{display:grid;grid-template-columns:repeat(2,max-content);gap:8px 20px;flex:0 1 auto;align-items:center;justify-items:start;justify-content:center;margin-left:auto;padding:10px 12px;border-color:var(--cat-header-border);border-radius:10px;background:color-mix(in srgb,var(--text-on-primary) 6%,transparent)}.iot-cat-overview__header .iot-cat-detail__legend-sep{display:none}.iot-cat-overview__header .iot-cat-detail__legend-item{gap:6px;min-width:0;font-size:.68rem;line-height:1.25}.iot-cat-overview__header .iot-cat-detail__legend-badge{min-width:46px;text-align:center}.iot-cat-overview__header .iot-cat-detail__legend-text{white-space:normal;color:var(--cat-header-text-muted)}.iot-cat-overview__header-title,.iot-cat-detail__title{background:transparent;padding:0;text-align:left}.iot-cat-overview__header{margin:0 0 10px;border:1px solid var(--cat-header-border);border-radius:12px;background:var(--cat-header-bg);box-shadow:var(--cat-shadow);overflow:visible;min-height:52px;display:flex;flex-direction:column;justify-content:center}.iot-cat-overview__header-row{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;min-height:36px;min-width:0;padding:8px 14px}.iot-cat-overview__header-copy{flex:1 1 auto;min-width:0;overflow:hidden}.iot-cat-overview__header-tools{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;min-width:0;margin-left:auto}.iot-cat-overview__header-action{display:flex;align-items:center;flex:0 0 auto;min-width:0;max-width:100%;margin:0;position:relative;z-index:5}.iot-cat-overview__header-brand-icon{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;flex:0 0 29px;color:#fff;font-size:.7rem;border-radius:8px;background:var(--cat-header-icon-bg);border:1px solid color-mix(in srgb,#ffffff 18%,transparent);box-shadow:0 4px 14px #0f172a24}.iot-cat-overview__header--electric,.iot-cat-overview__header--water{--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 100%)}.iot-cat-overview__header--gas{--cat-header-icon-bg: linear-gradient(135deg, #b45309 0%, #c2410c 100%)}.iot-cat-overview__header--steam{--cat-header-icon-bg: linear-gradient(135deg, #6d28d9 0%, #5b21b6 100%)}.iot-cat-overview__header--overview{--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 50%, #0f2138 100%)}.iot-cat-overview__header-title{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:8px;margin:0;min-width:0;max-width:100%;color:var(--cat-header-text);font-family:var(--font-family-base);font-size:clamp(.62rem,1.05vw,.74rem);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-cat-overview__header-title-text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-cat-overview__header-subtitle{margin:3px 0 0;color:var(--cat-header-text-muted);font-family:var(--font-family-base);font-size:.64rem;font-weight:600;letter-spacing:.06em;line-height:1.25;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-cat-overview__header-badge{display:inline-flex;align-items:center;justify-content:center;align-self:center;box-sizing:border-box;height:22px;padding:1px 8px 0 11px;text-align:center;color:var(--cat-header-badge-text);font-size:.58rem;font-weight:700;letter-spacing:.08em;line-height:1;text-transform:uppercase;border-radius:999px;background:var(--cat-header-badge-bg);border:1px solid var(--cat-header-badge-border)}.iot-cat-overview__header-status{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;flex-shrink:0;min-height:36px;padding:6px 10px;box-sizing:border-box;border-radius:999px;background:var(--cat-header-status-bg);border:1px solid var(--cat-header-status-border)}.iot-cat-overview__header-status-led{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#60a5fa}.iot-cat-overview__header-status--online .iot-cat-overview__header-status-led,.iot-cat-overview__header-status-led--online{background:var(--cat-header-status-online)!important;box-shadow:0 0 8px color-mix(in srgb,var(--cat-header-status-online) 55%,transparent)}.iot-cat-overview__header-status--offline .iot-cat-overview__header-status-led,.iot-cat-overview__header-status-led--offline{background:var(--cat-header-status-offline)!important;box-shadow:0 0 8px color-mix(in srgb,var(--cat-header-status-offline) 55%,transparent)}.iot-cat-overview__header-status-label{color:var(--cat-header-text);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.iot-cat-overview__header-status--online .iot-cat-overview__header-status-label,.iot-cat-overview__header-status-label--online{color:var(--cat-header-status-online)!important}.iot-cat-overview__header-status--offline .iot-cat-overview__header-status-label,.iot-cat-overview__header-status-label--offline{color:var(--cat-header-status-offline)!important}.iot-cat-overview__header-status-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;color:var(--cat-header-text);font-size:.64rem;font-weight:700;line-height:1;border-radius:999px;background:color-mix(in srgb,var(--text-on-primary) 14%,transparent);border:1px solid var(--cat-header-border)}.iot-cat-overview__header-util-bar,.iot-cat-overview__header-util-bar--single{display:none}.iot-cat-overview__header--electric .iot-cat-overview__header-util-bar--single{background:var(--utility-electric)}.iot-cat-overview__header--water .iot-cat-overview__header-util-bar--single{background:var(--utility-water)}.iot-cat-overview__header--gas .iot-cat-overview__header-util-bar--single{background:var(--utility-gas)}.iot-cat-overview__header--steam .iot-cat-overview__header-util-bar--single{background:var(--utility-steam)}.iot-cat-overview__header-util-bar-seg--electric{background:var(--utility-electric)}.iot-cat-overview__header-util-bar-seg--water{background:var(--utility-water)}.iot-cat-overview__header-util-bar-seg--gas{background:var(--utility-gas)}.iot-cat-overview__header-util-bar-seg--steam{background:var(--utility-steam)}@media(max-width:991px){.iot-cat-overview__header-row--with-tools{flex-wrap:wrap;align-items:center;row-gap:8px}.iot-cat-overview__header-tools{flex:1 1 100%;width:100%;margin-left:0;justify-content:flex-end;flex-wrap:wrap;gap:8px}.iot-cat-overview__header-action,.iot-cat-overview__header-action .dashboard-sort-dropdown,.iot-cat-overview__header-action .dashboard-sort-toggle{max-width:100%}}@media(max-width:575px){.iot-cat-overview__header-row{gap:10px;padding:10px 12px;min-height:48px}.iot-cat-overview__header-brand-icon{width:32px;height:32px;flex-basis:32px;font-size:.78rem}.iot-cat-overview__header-title{font-size:.74rem;letter-spacing:.04em}.iot-cat-overview__header-subtitle{font-size:.58rem}.iot-cat-overview__header-tools{gap:6px}.iot-cat-overview__header-status{padding:5px 8px}.iot-cat-overview__header-action .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium,.iot-cat-overview__header-action .dashboard-sort-toggle__direction,.iot-cat-overview__header-action .dashboard-sort-toggle__open{min-height:32px!important;height:32px!important}}.iot-cat-overview__loader{min-height:176px}.iot-cat-overview__grid{display:grid;width:100%;min-width:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:11px;justify-items:stretch;align-items:stretch}.iot-cat-overview__card{position:relative;width:100%;min-width:0;max-width:none;box-sizing:border-box;overflow:hidden;padding:11px 11px 10px;border:1px solid color-mix(in srgb,var(--utility-accent) 28%,transparent);border-radius:13px;background:radial-gradient(circle at 10% 8%,color-mix(in srgb,var(--utility-accent) 16%,transparent),transparent 40%),var(--cat-panel);box-shadow:var(--cat-shadow);transition:box-shadow .28s ease,border-color .28s ease}.iot-cat-overview__card:hover{border-color:color-mix(in srgb,var(--utility-accent) 45%,transparent);box-shadow:var(--cat-shadow),0 0 32px color-mix(in srgb,var(--utility-accent) 18%,transparent)}.iot-cat-overview__card--electric{--utility-accent: var(--utility-electric);--utility-accent-text: var(--utility-electric-text)}.iot-cat-overview__card--water{--utility-accent: var(--utility-water);--utility-accent-text: var(--utility-water-text)}.iot-cat-overview__card--gas{--utility-accent: var(--utility-gas);--utility-accent-text: var(--utility-gas-text)}.iot-cat-overview__card--steam{--utility-accent: var(--utility-steam);--utility-accent-text: var(--utility-steam-text)}.iot-cat-overview__card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--utility-accent) 18%,transparent)}.iot-cat-overview__card-head-left{display:flex;align-items:center;gap:8px;width:100%;min-width:0}.iot-cat-overview__utility-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;color:#fff;font-size:.84rem;border-radius:50%;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.38),transparent 30%),radial-gradient(circle,var(--utility-accent),color-mix(in srgb,var(--utility-accent) 35%,#060d18));box-shadow:0 0 22px color-mix(in srgb,var(--utility-accent) 55%,transparent),inset 0 0 12px #ffffff1f}.iot-cat-overview__card-title{display:flex;align-items:center;justify-content:space-between;flex:1 1 auto;gap:8px;min-width:0;color:var(--cat-text)!important;font-size:clamp(.7rem,1.05vw,.84rem);font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;transition:color .2s ease}.iot-cat-overview__card-title:hover{color:var(--utility-accent-text, var(--utility-accent))!important}.iot-cat-overview__card-title-text,.iot-cat-overview__metric-heading-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-cat-overview__link-indicator{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px;color:#fff;font-size:.52rem;border-radius:50%;background:color-mix(in srgb,var(--utility-accent) 74%,#101828);box-shadow:0 0 12px color-mix(in srgb,var(--utility-accent) 38%,transparent);transition:background .2s ease,box-shadow .2s ease}.iot-cat-overview__link-indicator--title{width:19px;height:19px;flex-basis:19px;font-size:.56rem}.iot-cat-overview__card-title:hover .iot-cat-overview__link-indicator,.iot-cat-overview__metric-heading:hover .iot-cat-overview__link-indicator{background:var(--utility-accent-text, var(--utility-accent));box-shadow:0 0 16px color-mix(in srgb,var(--utility-accent) 54%,transparent)}.iot-cat-overview__card-total{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex:0 0 auto;text-align:right}.iot-cat-overview__card-total-label{color:var(--cat-muted);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.iot-cat-overview__card-total-value{color:var(--utility-accent-text, var(--utility-accent));font-size:clamp(.86rem,1.2vw,1rem);font-weight:900;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.1;text-shadow:none;-webkit-font-smoothing:antialiased}.iot-cat-overview__card-total-unit{margin-left:4px;color:var(--cat-value-text);font-size:.72em;font-style:normal;font-weight:700;opacity:.85}.iot-cat-overview__dual-panel{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.iot-cat-overview__metric-panel{display:flex;flex-direction:column;align-items:stretch;gap:4px;min-width:0;container-type:inline-size;padding:8px 8px 6px;border:1px solid color-mix(in srgb,var(--utility-accent) 22%,transparent);border-radius:10px;text-align:center;background:var(--cat-panel-inner);transition:border-color .24s ease,box-shadow .24s ease}.iot-cat-overview__metric-panel:hover{border-color:color-mix(in srgb,var(--utility-accent) 38%,transparent);box-shadow:inset 0 0 24px color-mix(in srgb,var(--utility-accent) 6%,transparent)}.iot-cat-overview__metric-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:0 0 5px;color:var(--utility-accent-text, var(--utility-accent))!important;font-size:.52rem;font-weight:800;letter-spacing:.14em;text-align:left;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--utility-accent) 16%,transparent);transition:opacity .2s ease}.iot-cat-overview__metric-heading:hover{opacity:.85;color:var(--utility-accent-text, var(--utility-accent))!important}.iot-cat-overview__gauge-wrap{width:100%;max-width:clamp(168px,12vw,240px);max-width:clamp(168px,70cqi,280px);margin:0 auto;overflow:visible}.iot-cat-overview__gauge-wrap--classic{max-width:clamp(160px,12vw,220px);max-width:clamp(160px,65cqi,240px)}.iot-cat-overview__gauge-wrap--classic .u-bg-gauge,.iot-cat-overview__gauge-wrap--classic .u-bg-gauge--compact{background:transparent!important}.iot-cat-overview__gauge-wrap--classic .gauge-container-inner,.iot-cat-overview__gauge-wrap--classic .gauge-container-inner--compact{margin:0 auto}.iot-cat-overview__gauge-caption{margin:1px 0 0;color:var(--cat-text-soft, #64748b);font-size:.54rem;font-weight:700;letter-spacing:.02em;line-height:1.3;text-align:center}.iot-cat-overview__stat-stack{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:4px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--utility-accent) 14%,transparent)}.iot-cat-overview__stat-block{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%}.iot-cat-overview__stat-label{color:var(--cat-text-soft, #64748b);font-size:.62rem;font-weight:700;letter-spacing:.04em;line-height:1.2;text-align:center;text-transform:uppercase}.iot-cat-overview__stat-value{display:flex;align-items:center;justify-content:center;width:100%;min-height:34px;padding:6px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--bg-table-header, #1e3a5f) 35%,transparent);background:var(--bg-table-header, #295485);color:#fff;font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.2;text-align:center;word-break:break-word}[data-theme=dark] .iot-cat-overview__stat-value{border-color:color-mix(in srgb,#3b82f6 35%,transparent);background:color-mix(in srgb,#0f2138 70%,#1e3a5f)}.iot-scada-gauge{position:relative;width:100%;max-width:100%;margin:0 auto;color:var(--cat-text);--gauge-accent: var(--utility-accent, #059669);overflow:visible}.iot-scada-gauge--over{--gauge-accent: #ef4444}.iot-scada-gauge--over .iot-scada-gauge__percent{color:#ef4444}.iot-scada-gauge--no-max .iot-scada-gauge__percent{color:var(--cat-muted, #94a3b8)}.iot-scada-gauge__arc-stage{position:relative;width:100%;overflow:visible}.iot-scada-gauge__svg{display:block;width:100%;height:auto;overflow:visible}.iot-scada-gauge__track{stroke:var(--cat-gauge-track);opacity:1}.iot-scada-gauge__progress{filter:drop-shadow(0 0 10px color-mix(in srgb,var(--gauge-accent) 70%,transparent));transition:d .55s cubic-bezier(.4,0,.2,1)}.iot-scada-gauge__tick-line{stroke:color-mix(in srgb,var(--gauge-accent) 40%,var(--cat-muted));stroke-width:1.5;opacity:.85}.iot-scada-gauge__tick-label{fill:var(--cat-text-soft);font-size:8.5px;font-weight:700}.iot-scada-gauge__needle{stroke:var(--gauge-accent);stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 0 4px var(--cat-gauge-needle-shadow))}[data-theme=dark] .iot-scada-gauge__needle{stroke:#fffffff2;filter:drop-shadow(0 0 5px var(--cat-gauge-needle-shadow))}.iot-scada-gauge__tip-glow{fill:color-mix(in srgb,var(--gauge-accent) 45%,transparent);filter:blur(3px)}.iot-scada-gauge__tip{fill:var(--cat-gauge-tip-fill, var(--gauge-accent));stroke:var(--cat-gauge-tip-stroke, #ffffff);stroke-width:2;filter:drop-shadow(0 0 8px var(--gauge-accent))}.iot-scada-gauge__hub{fill:var(--cat-gauge-hub-fill, #1a2332);stroke:var(--gauge-accent);stroke-width:2}.iot-scada-gauge__hub-ring{fill:none;stroke:color-mix(in srgb,var(--gauge-accent) 50%,transparent);stroke-width:1.5;opacity:.85}.iot-scada-gauge__percent{position:static;left:auto;top:auto;color:var(--utility-accent-text, var(--gauge-accent));font-size:1.04rem;font-weight:800;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;line-height:1;transform:none;text-shadow:none;pointer-events:none;-webkit-font-smoothing:antialiased}.iot-scada-gauge__center{position:absolute;left:50%;top:62%;display:flex;flex-direction:column;align-items:center;gap:0;transform:translate3d(-50%,-50%,0);pointer-events:none}.iot-scada-gauge__stats{display:flex;flex-direction:column;gap:5px;margin-top:4px;padding:0 6px;text-align:center}.iot-scada-gauge__stat{display:flex;flex-direction:column;gap:2px}.iot-scada-gauge__stat-label{color:var(--cat-muted);font-size:.58rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.iot-scada-gauge__stat-value{color:var(--cat-value-text);font-size:.74rem;font-weight:800;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.25;text-shadow:none;-webkit-font-smoothing:antialiased}[data-theme=light] .iot-cat-overview .iot-cat-overview__header-brand-icon{box-shadow:0 4px 16px #071a3524}[data-theme=light] .iot-cat-overview .iot-cat-overview__utility-icon{box-shadow:0 0 22px color-mix(in srgb,var(--utility-accent) 50%,transparent),inset 0 0 12px #fff3;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.35),transparent 30%),radial-gradient(circle,var(--utility-accent),color-mix(in srgb,var(--utility-accent) 35%,var(--brand-deep)))}[data-theme=light] .iot-cat-overview .iot-cat-overview__card{background:radial-gradient(circle at 10% 8%,color-mix(in srgb,var(--utility-accent) 16%,transparent),transparent 40%),var(--cat-panel);box-shadow:var(--cat-shadow)}[data-theme=light] .iot-cat-overview .iot-cat-overview__card:hover{box-shadow:var(--cat-shadow),0 0 36px color-mix(in srgb,var(--utility-accent) 22%,transparent)}[data-theme=light] .iot-cat-overview .iot-scada-gauge__progress{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--gauge-accent) 55%,transparent))}[data-theme=light] .iot-cat-overview .iot-cat-overview__header,[data-theme=light] .iot-cat-overview .iot-cat-overview__card,[data-theme=light] .iot-cat-overview .iot-cat-overview__metric-panel,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-gauge,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-stat,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-mini,[data-theme=light] .iot-cat-overview .iot-cat-page__metric-block,[data-theme=light] .iot-cat-overview .iot-cat-overview__shift-footer{border-color:color-mix(in srgb,var(--utility-accent) 42%,rgba(74,115,180,.22))}[data-theme=light] .iot-cat-overview .iot-cat-overview__card-title{color:var(--cat-text)!important}[data-theme=light] .iot-cat-overview .iot-cat-overview__card-title:hover{color:var(--utility-accent-text, var(--utility-accent))!important}[data-theme=light] .iot-cat-overview .iot-cat-overview__card-total-label,[data-theme=light] .iot-cat-overview .iot-cat-page__gauge-caption,[data-theme=light] .iot-cat-overview .iot-cat-page__metric-block-label,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-stat-label,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-mini span,[data-theme=light] .iot-cat-overview .iot-scada-gauge__stat-label,[data-theme=light] .iot-cat-overview .iot-cat-overview__shift-footer span{color:var(--cat-text-soft)}[data-theme=light] .iot-cat-overview .iot-cat-overview__metric-heading,[data-theme=light] .iot-cat-overview .iot-cat-overview__metric-heading--static{color:var(--utility-accent-text, var(--utility-accent))!important}[data-theme=light] .iot-cat-overview .iot-cat-overview__card-total-value{color:var(--utility-accent-text, var(--utility-accent))}[data-theme=light] .iot-cat-overview .iot-cat-overview__card-total-unit{color:var(--cat-text-soft);opacity:1}[data-theme=light] .iot-cat-overview .iot-cat-overview__header-title{color:var(--cat-header-text)}[data-theme=light] .iot-cat-overview .iot-cat-page__summary-title,[data-theme=light] .iot-cat-overview .iot-cat-page__card-title-static{color:var(--cat-text)}[data-theme=light] .iot-cat-overview .iot-cat-overview__header-subtitle{color:var(--cat-header-text-muted)}[data-theme=light] .iot-cat-overview .iot-cat-overview__header-badge{color:var(--cat-header-badge-text);background:var(--cat-header-badge-bg);border-color:var(--cat-header-badge-border)}[data-theme=light] .iot-cat-overview .iot-scada-gauge__tick-label{fill:var(--cat-text-soft)}[data-theme=light] .iot-cat-overview .iot-scada-gauge__tick-line{stroke:var(--cat-text-soft);opacity:.55}[data-theme=light] .iot-cat-overview .iot-scada-gauge__percent{color:var(--utility-accent-text, var(--gauge-accent));text-shadow:none}[data-theme=light] .iot-cat-overview .iot-scada-gauge__stat-value,[data-theme=light] .iot-cat-overview .iot-cat-page__metric-block-value,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-stat-value,[data-theme=light] .iot-cat-overview .iot-cat-page__summary-mini strong,[data-theme=light] .iot-cat-overview .iot-cat-overview__shift-footer strong{color:var(--utility-accent-text, var(--cat-value-text))}[data-theme=light] .iot-cat-overview .iot-cat-overview__sparkline-line{filter:none}[data-theme=light] .iot-cat-overview .iot-cat-page__summary-stat,[data-theme=light] .iot-cat-overview .iot-cat-page__metric-block,[data-theme=light] .iot-cat-overview .iot-cat-overview__shift-footer{background:var(--cat-stat-bg)}[data-theme=light] .iot-cat-overview .iot-cat-page__summary-gauge,[data-theme=light] .iot-cat-overview .iot-cat-overview__metric-panel{background:var(--cat-panel-inner)}[data-theme=dark] .iot-cat-overview .iot-cat-overview__header-brand-icon{box-shadow:0 4px 16px #00000059}[data-theme=dark] .iot-cat-overview .iot-cat-page__summary-title,[data-theme=dark] .iot-cat-overview .iot-cat-page__card-title-static{color:var(--cat-text)}[data-theme=dark] .iot-cat-overview .iot-cat-overview__metric-panel{border-color:color-mix(in srgb,var(--utility-accent) 28%,transparent)}[data-theme=dark] .iot-cat-overview .iot-scada-gauge__percent,[data-theme=dark] .iot-cat-overview .iot-scada-gauge__stat-value,[data-theme=dark] .iot-cat-overview .iot-cat-overview__card-total-value,[data-theme=dark] .iot-cat-overview .iot-cat-page__metric-block-value,[data-theme=dark] .iot-cat-overview .iot-cat-page__summary-stat-value,[data-theme=dark] .iot-cat-overview .iot-cat-page__summary-mini strong,[data-theme=dark] .iot-cat-overview .iot-cat-overview__shift-footer strong,[data-theme=dark] .iot-cat-overview .iot-radial-gauge__center strong{font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;text-shadow:none;-webkit-font-smoothing:antialiased}[data-theme=dark] .iot-cat-overview .iot-scada-gauge__percent,[data-theme=dark] .iot-cat-overview .iot-scada-gauge__stat-value,[data-theme=dark] .iot-cat-overview .iot-cat-page__metric-block-value,[data-theme=dark] .iot-cat-overview .iot-cat-page__summary-stat-value,[data-theme=dark] .iot-cat-overview .iot-cat-page__summary-mini strong,[data-theme=dark] .iot-cat-overview .iot-cat-overview__shift-footer strong,[data-theme=dark] .iot-cat-overview .iot-cat-overview__card-total-value{color:var(--cat-value-text)}[data-theme=dark] .iot-cat-overview .iot-scada-gauge__progress{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--gauge-accent) 35%,transparent))}[data-theme=dark] .iot-cat-detail .iot-cat-detail__value,[data-theme=dark] .iot-cat-detail .iot-cat-detail__energy,[data-theme=dark] .iot-cat-detail .iot-cat-detail__footer-stat strong,[data-theme=dark] .iot-cat-detail .iot-cat-detail__output-head strong{font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;text-shadow:none;-webkit-font-smoothing:antialiased}[data-theme=dark] .iot-cat-detail .iot-cat-detail__value--active{color:var(--cat-status-active-strong);background:color-mix(in srgb,var(--cat-status-active) 20%,transparent);border-color:color-mix(in srgb,var(--cat-status-active) 38%,transparent)}[data-theme=dark] .iot-cat-detail .iot-cat-detail__energy{color:#fff}[data-theme=dark] .iot-cat-detail .iot-cat-detail__footer-stat:not(.iot-cat-detail__footer-stat--power) strong,[data-theme=dark] .iot-cat-detail .iot-cat-detail__footer-stat--energy strong{color:#fff}[data-theme=dark] .iot-cat-detail .iot-cat-detail__footer-stat--power{background:color-mix(in srgb,var(--cat-status-active) 20%,transparent);border-color:color-mix(in srgb,var(--cat-status-active) 38%,transparent)}[data-theme=dark] .iot-cat-detail .iot-cat-detail__footer-stat--power strong{color:var(--cat-status-active-strong)}[data-theme=dark] .iot-cat-detail .iot-cat-detail__output-head strong{color:#fff}[data-theme=dark] .iot-cat-detail .iot-cat-load__pct{color:var(--cat-detail-text)}[data-theme=dark] .iot-cat-detail .iot-cat-row-gauge__pct{fill:var(--cat-detail-text)}[data-theme=dark] .iot-cat-detail--subpage .iot-cat-detail__energy{color:#fff}[data-theme=dark] .iot-cat-detail--subpage .iot-cat-detail__footer-stat:not(.iot-cat-detail__footer-stat--power) strong,[data-theme=dark] .iot-cat-detail--subpage .iot-cat-detail__footer-stat--energy strong{color:#fff}[data-theme=dark] .iot-cat-detail--subpage .iot-cat-detail__output-head strong{color:#fff}.iot-cat-overview__trend-wrap{position:relative;z-index:3;width:100%;margin-top:0;padding:0 2px}.iot-cat-overview__metric-footers{display:flex;flex-direction:column;gap:3px;margin-top:4px}.iot-cat-overview__sparkline-frame{position:relative;z-index:2;width:100%;height:37px;border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--utility-accent) 10%,transparent),color-mix(in srgb,var(--utility-accent) 3%,transparent));border:1px solid color-mix(in srgb,var(--utility-accent) 12%,transparent);--spark-tooltip-surface: #0f172a;--spark-tooltip-label: #94a3b8;--spark-tooltip-value: #f8fafc;--spark-tooltip-border: rgba(148, 163, 184, .24);--spark-tooltip-head-bg: #1e293b;--spark-tooltip-shadow: 0 8px 20px rgba(2, 6, 23, .28)}[data-theme=dark] .iot-cat-overview__sparkline-frame{--spark-tooltip-surface: #f8fafc;--spark-tooltip-label: #64748b;--spark-tooltip-value: #0f172a;--spark-tooltip-border: rgba(15, 23, 42, .12);--spark-tooltip-head-bg: #eef2f7;--spark-tooltip-shadow: 0 8px 20px rgba(15, 23, 42, .22)}.iot-cat-overview__sparkline{--spark-accent: var(--utility-accent);width:100%;height:37px;overflow:visible;display:block}.iot-cat-overview__sparkline-fill{opacity:.95}.iot-cat-overview__sparkline-line{fill:none;stroke:var(--spark-accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--spark-accent) 45%,transparent))}.iot-cat-overview__sparkline-glow{fill:none;stroke:color-mix(in srgb,var(--spark-accent) 40%,transparent);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;opacity:.26;vector-effect:non-scaling-stroke;pointer-events:none}.iot-cat-overview__sparkline-grid{stroke:color-mix(in srgb,var(--utility-accent) 16%,transparent);stroke-width:1;stroke-dasharray:4 7;vector-effect:non-scaling-stroke;pointer-events:none}.iot-cat-overview__sparkline-point-group{cursor:pointer;outline:none}.iot-cat-overview__sparkline-point-hit{fill:transparent;pointer-events:all}.iot-cat-overview__sparkline-point{fill:var(--spark-accent);stroke:var(--cat-card-bg);stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.iot-cat-overview__sparkline-point-group:hover .iot-cat-overview__sparkline-point,.iot-cat-overview__sparkline-point-group:focus .iot-cat-overview__sparkline-point{stroke-width:2.5;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--spark-accent) 80%,transparent))}.iot-cat-overview__sparkline-tooltip{position:absolute;z-index:80;min-width:168px;max-width:240px;padding:8px 10px;border-radius:9px;background:var(--spark-tooltip-surface);border:1px solid var(--spark-tooltip-border);box-shadow:var(--spark-tooltip-shadow);color:var(--spark-tooltip-value);pointer-events:none;white-space:normal;font-size:.72rem}.iot-cat-overview__sparkline-tooltip strong{display:block;font-size:.78rem;font-weight:900;line-height:1.2;color:var(--spark-tooltip-value)}.iot-cat-overview__sparkline-tooltip span{display:block;margin-top:3px;font-size:.62rem;font-weight:700;line-height:1.2;color:var(--spark-tooltip-label)}.iot-cat-overview__sparkline-tooltip--table{padding:8px 10px 6px}.iot-cat-overview__sparkline-tooltip-time{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--spark-tooltip-border);font-size:.68rem;font-weight:700;color:var(--spark-tooltip-value);text-align:center;line-height:1.25;white-space:nowrap}.iot-cat-overview__sparkline-tooltip-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.64rem;line-height:1.25}.iot-cat-overview__sparkline-tooltip-table col:first-child{width:58%}.iot-cat-overview__sparkline-tooltip-table col:last-child{width:42%}.iot-cat-overview__sparkline-tooltip-table thead th,.iot-cat-overview__sparkline-tooltip-table tbody th,.iot-cat-overview__sparkline-tooltip-table tbody td{padding:5px 8px;vertical-align:middle;border-bottom:1px solid var(--spark-tooltip-border)}.iot-cat-overview__sparkline-tooltip-table thead th{font-size:.58rem;font-weight:700;letter-spacing:0;text-transform:none;text-align:left;color:var(--spark-tooltip-label);background:var(--spark-tooltip-head-bg)}.iot-cat-overview__sparkline-tooltip-table thead th:last-child{text-align:right}.iot-cat-overview__sparkline-tooltip-table tbody th,.iot-cat-overview__sparkline-tooltip-table tbody td{background:var(--spark-tooltip-surface)}.iot-cat-overview__sparkline-tooltip-table tbody th{font-weight:600;text-align:left;letter-spacing:0;text-transform:none;color:var(--spark-tooltip-label);white-space:nowrap}.iot-cat-overview__sparkline-tooltip-table tbody td{text-align:right;font-weight:700;color:var(--spark-tooltip-value);word-break:break-word}.iot-cat-overview__sparkline-tooltip-table tbody tr:last-child th,.iot-cat-overview__sparkline-tooltip-table tbody tr:last-child td{border-bottom:0}.iot-cat-overview__sparkline-empty{display:flex;align-items:center;justify-content:center;width:100%;height:37px;border-radius:8px;color:var(--cat-muted);font-size:.5rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb,var(--utility-accent) 8%,transparent);border:1px dashed color-mix(in srgb,var(--utility-accent) 22%,transparent)}.iot-cat-overview__shift-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:0;padding:5px 7px;border-radius:7px;background:var(--cat-stat-bg);border:1px solid color-mix(in srgb,var(--utility-accent) 12%,transparent)}.iot-cat-overview__shift-footer span{color:var(--cat-muted);font-size:.46rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.iot-cat-overview__shift-footer strong{color:var(--cat-value-text);font-size:.6rem;font-weight:900;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;text-align:right;text-shadow:none;-webkit-font-smoothing:antialiased}.iot-radial-gauge{position:relative;width:var(--gauge-size);height:var(--gauge-size);margin:2px auto}.iot-radial-gauge__svg{display:block}.iot-radial-gauge__track{fill:none;stroke:var(--cat-gauge-track)}.iot-radial-gauge__progress{fill:none;stroke:var(--gauge-accent);stroke-linecap:round;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--gauge-accent) 55%,transparent));transition:stroke-dashoffset .65s cubic-bezier(.4,0,.2,1)}.iot-radial-gauge__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;pointer-events:none}.iot-radial-gauge__center strong{color:var(--cat-text);font-size:1.05rem;font-weight:900;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1;text-shadow:none;-webkit-font-smoothing:antialiased}.iot-radial-gauge__center span{max-width:88%;color:var(--cat-muted);font-size:.58rem;font-weight:700;line-height:1.2}@media(max-width:991px){.iot-cat-overview__grid{grid-template-columns:1fr}.mainbody.iot-cat-overview{padding-left:16px;padding-right:16px}}@media(max-width:767px){.iot-cat-overview__dual-panel{grid-template-columns:1fr}}@media(max-width:575px){.iot-cat-overview__card-head{flex-direction:column;align-items:flex-start}.iot-cat-overview__card-total{align-items:flex-start;text-align:left}}.iot-cat-page .container-fluid{display:flex;flex-direction:column;gap:14px}.iot-cat-page__summary{margin-bottom:2px}.iot-cat-page__summary-body{display:grid;grid-template-columns:minmax(260px,40%) minmax(0,1fr);gap:18px;align-items:stretch;padding-top:4px}.iot-cat-page__summary-gauge{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:12px;background:var(--cat-panel-inner);border:1px solid color-mix(in srgb,var(--utility-accent) 18%,transparent)}.iot-cat-page__summary-gauge .iot-cat-overview__gauge-wrap{max-width:100%;margin:0 auto}.iot-cat-page__summary-gauge .iot-cat-overview__trend-wrap{margin-top:auto}.iot-cat-page__summary-stats{display:flex;flex-direction:column;gap:12px;min-height:100%}.iot-cat-page__summary-stat{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px 14px;text-align:center;border-radius:12px;background:var(--cat-stat-bg);border:1px solid color-mix(in srgb,var(--utility-accent) 16%,transparent)}.iot-cat-page__summary-stat-label{color:var(--cat-muted);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.iot-cat-page__summary-stat-value{color:var(--cat-value-text);font-size:clamp(.95rem,2vw,1.25rem);font-weight:800;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.15;text-shadow:none;-webkit-font-smoothing:antialiased}.iot-cat-page__summary-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.iot-cat-page__summary-mini{display:flex;flex-direction:column;gap:4px;padding:10px 8px;text-align:center;border-radius:10px;background:var(--cat-panel-inner);border:1px solid color-mix(in srgb,var(--utility-accent) 12%,transparent)}.iot-cat-page__summary-mini span{color:var(--cat-muted);font-size:.56rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.iot-cat-page__summary-mini strong{color:var(--cat-value-text);font-size:.82rem;font-weight:800;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;line-height:1.2}@media(max-width:767px){.iot-cat-page__summary-body{grid-template-columns:1fr}}.iot-cat-page__summary-title,.iot-cat-page__card-title-static{margin:0;color:var(--cat-text);font-size:clamp(.88rem,1.3vw,1.05rem);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-cat-page__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr));gap:14px}.iot-cat-overview__metric-heading--static{display:block;width:100%;padding:0 0 6px;color:var(--utility-accent-text, var(--utility-accent));font-size:.64rem;font-weight:800;letter-spacing:.14em;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--utility-accent) 16%,transparent)}.iot-cat-page__util-bar{display:block;height:3px;background:var(--utility-accent, var(--utility-electric))}.iot-cat-page__util-bar--electric{background:var(--utility-electric)}.iot-cat-page__util-bar--water{background:var(--utility-water)}.iot-cat-page__util-bar--gas{background:var(--utility-gas)}.iot-cat-page__util-bar--steam{background:var(--utility-steam)}.iot-cat-page__gauge-caption{margin:0;color:var(--cat-muted);font-size:.62rem;font-weight:700;letter-spacing:.05em;text-align:center;text-transform:uppercase}.iot-cat-page__metric-block{display:flex;flex-direction:column;gap:2px;margin-top:2px;padding:8px 10px;border-radius:8px;text-align:center;background:var(--cat-stat-bg);border:1px solid color-mix(in srgb,var(--utility-accent) 12%,transparent)}.iot-cat-page__metric-block-label{color:var(--cat-muted);font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.iot-cat-page__metric-block-value{color:var(--cat-value-text);font-size:.88rem;font-weight:900;font-family:Segoe UI,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.2;text-shadow:none;-webkit-font-smoothing:antialiased}@media(max-width:767px){.iot-cat-page__grid{grid-template-columns:1fr}}.iot-cat-detail{--cat-detail-text: #1e293b;--cat-detail-text-soft: #475569;--cat-detail-muted: #64748b;--cat-detail-page-bg: radial-gradient(circle at 12% 6%, rgba(59, 130, 246, .1), transparent 30%), linear-gradient(180deg, #e1eaf5 0%, #d5e1ef 100%);--cat-detail-header-bg: #e8f0fa;--cat-detail-header-border: rgba(74, 115, 180, .22);--cat-detail-panel-bg: #e8f0fa;--cat-detail-panel-border: rgba(74, 115, 180, .2);--cat-detail-panel-head-bg: #dfe9f4;--cat-detail-row-hover: rgba(59, 130, 246, .06);--cat-detail-row-border: rgba(74, 115, 180, .1);--cat-detail-footer-bg: #d5e1ef;--cat-detail-gauge-track: rgba(30, 41, 59, .1);--cat-detail-legend-bg: #e8f0fa;--cat-detail-legend-border: rgba(74, 115, 180, .2);--cat-detail-energy: var(--color-primary);--cat-detail-shadow: 0 8px 28px rgba(7, 26, 53, .1);--cat-detail-gen-accent: #3b82f6;--cat-detail-gen-accent-text: #2563eb;--cat-detail-con-accent: var(--cat-detail-gen-accent);--cat-detail-con-accent-text: var(--cat-detail-gen-accent-text);--cat-detail-utility-accent: var(--cat-detail-gen-accent);--cat-detail-utility-accent-text: var(--cat-detail-gen-accent-text);--cat-status-active: #16a34a;--cat-status-active-strong: #15803d;--cat-status-active-soft: #22c55e;--cat-status-active-glow: rgba(22, 163, 74, .55);--cat-heading-color: var(--brand-mid);min-height:calc(100vh - 26px);padding:10px 0 18px;color:var(--cat-detail-text);background:var(--cat-detail-page-bg)}[data-theme=dark] .iot-cat-detail{--cat-detail-text: #f4f8ff;--cat-detail-text-soft: #c3d0df;--cat-detail-muted: #8fa0b5;--cat-detail-page-bg: #060d18;--cat-detail-header-bg: #0c1829;--cat-detail-header-border: #1e3354;--cat-detail-panel-bg: #0f1c32;--cat-detail-panel-border: #1e3354;--cat-detail-panel-head-bg: rgba(8, 21, 40, .92);--cat-detail-row-hover: rgba(255, 255, 255, .03);--cat-detail-row-border: rgba(255, 255, 255, .06);--cat-detail-footer-bg: rgba(0, 0, 0, .28);--cat-detail-gauge-track: rgba(255, 255, 255, .1);--cat-detail-legend-bg: #0c1829;--cat-detail-legend-border: #1e3354;--cat-detail-energy: #ffffff;--cat-detail-shadow: 0 16px 40px rgba(0, 0, 0, .45);--cat-detail-gen-accent: #60a5fa;--cat-detail-gen-accent-text: #60a5fa;--cat-detail-con-accent: var(--cat-detail-gen-accent);--cat-detail-con-accent-text: var(--cat-detail-gen-accent-text);--cat-detail-utility-accent: var(--cat-detail-gen-accent);--cat-detail-utility-accent-text: var(--cat-detail-gen-accent-text);--cat-status-active: #22c55e;--cat-status-active-strong: #4ade80;--cat-status-active-soft: #16a34a;--cat-status-active-glow: rgba(34, 197, 94, .62);--cat-heading-color: #e2e8f0}.iot-cat-detail--electric{--cat-detail-utility-accent: #3b82f6;--cat-detail-utility-accent-text: #2563eb}.iot-cat-detail--water{--cat-detail-utility-accent: #00a8f0;--cat-detail-utility-accent-text: #0088cc}.iot-cat-detail--gas{--cat-detail-utility-accent: #ff9100;--cat-detail-utility-accent-text: #e67e00}.iot-cat-detail--steam{--cat-detail-utility-accent: #b47aff;--cat-detail-utility-accent-text: #9333ea}[data-theme=dark] .iot-cat-detail--electric{--cat-detail-utility-accent: #60a5fa;--cat-detail-utility-accent-text: #60a5fa}[data-theme=dark] .iot-cat-detail--water{--cat-detail-utility-accent: #00b4ff;--cat-detail-utility-accent-text: #00b4ff}[data-theme=dark] .iot-cat-detail--gas{--cat-detail-utility-accent: #ff9100;--cat-detail-utility-accent-text: #ff9100}[data-theme=dark] .iot-cat-detail--steam{--cat-detail-utility-accent: #b47aff;--cat-detail-utility-accent-text: #b47aff}.iot-cat-detail__loader{min-height:220px}.iot-cat-detail__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px 14px;border:1px solid var(--cat-detail-header-border);border-radius:10px;background:var(--cat-detail-header-bg)}.iot-cat-detail__header-main{display:flex;align-items:center;gap:12px;min-width:0}.iot-cat-detail__header-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;color:var(--header-accent-text, var(--cat-detail-utility-accent-text));font-size:.95rem;border-radius:50%;background:color-mix(in srgb,var(--header-accent, var(--cat-detail-utility-accent)) 12%,transparent);border:1px solid color-mix(in srgb,var(--header-accent, var(--cat-detail-utility-accent)) 28%,transparent);box-shadow:none}[data-theme=dark] .iot-cat-detail__header-icon{color:var(--header-accent, var(--cat-detail-utility-accent));box-shadow:0 0 14px color-mix(in srgb,var(--header-accent, var(--cat-detail-utility-accent)) 25%,transparent)}.iot-cat-detail__title{margin:0;color:var(--cat-detail-text);font-size:clamp(1rem,2vw,1.35rem);font-weight:800;letter-spacing:.06em;line-height:1.1}.iot-cat-detail__legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--cat-detail-legend-border);border-radius:8px;background:var(--cat-detail-legend-bg)}.iot-cat-detail__legend-item{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;white-space:nowrap}.iot-cat-detail__legend-sep{width:1px;height:18px;background:var(--cat-detail-row-border)}.iot-cat-detail__legend-dot{width:10px;height:10px;border-radius:50%;flex:0 0 10px}.iot-cat-detail__legend-dot--active{background:var(--cat-status-active);box-shadow:0 0 8px var(--cat-status-active-glow)}.iot-cat-detail__legend-dot--danger{background:#ef4444;box-shadow:0 0 8px #ef44448c}.iot-cat-detail__legend-dot--none{background:#94a3b8}.iot-cat-detail__legend-badge{padding:2px 8px;border-radius:4px;font-size:.68rem;font-weight:700;line-height:1.2}.iot-cat-detail__legend-badge--danger{color:#fff;background:#ef4444}.iot-cat-detail__legend-badge--active{color:#fff;background:var(--cat-status-active);box-shadow:0 0 0 1px color-mix(in srgb,var(--cat-status-active-strong) 35%,transparent)}.iot-cat-detail__legend-badge--warn{color:#422006;background:#facc15}.iot-cat-detail__legend-text{color:var(--cat-detail-text-soft);font-weight:500}.iot-cat-detail__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0;width:100%}.iot-cat-detail__panel{display:flex;flex-direction:column;min-width:0;border:1px solid var(--cat-detail-panel-border);border-radius:12px;background:var(--cat-detail-panel-bg);box-shadow:var(--cat-detail-shadow);overflow:hidden}.iot-cat-detail__panel--generation{--panel-accent: var(--cat-detail-gen-accent);--panel-accent-text: var(--cat-detail-gen-accent-text)}.iot-cat-detail__panel--consumption{--panel-accent: var(--cat-detail-con-accent);--panel-accent-text: var(--cat-detail-con-accent-text)}.iot-cat-detail__panel--list,.iot-cat-detail__panel--sensor{--panel-accent: var(--cat-detail-utility-accent);--panel-accent-text: var(--cat-detail-utility-accent-text)}.iot-cat-detail__panel-head{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 16px;border-bottom:1px solid var(--cat-detail-panel-border);background:var(--cat-detail-panel-head-bg)}.iot-cat-detail__panel-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 auto;color:var(--cat-heading-color, var(--brand-mid));font-size:.82rem;border-radius:6px;background:color-mix(in srgb,var(--cat-heading-color, var(--brand-mid)) 12%,transparent);border:1px solid color-mix(in srgb,var(--cat-heading-color, var(--brand-mid)) 28%,transparent)}.iot-cat-detail__panel-title{display:inline-flex;align-items:center;gap:8px;flex:1;min-width:0;color:var(--cat-heading-color, var(--brand-mid));font-size:.82rem;font-weight:800;letter-spacing:.08em;line-height:1.2;text-decoration:none;text-transform:uppercase}.iot-cat-detail__panel-title:hover{color:var(--cat-heading-color, var(--brand-mid));text-decoration:none}.iot-cat-detail__panel-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-cat-detail__panel-title-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 22px;margin-left:auto;color:#fff;font-size:.64rem;border-radius:50%;background:color-mix(in srgb,var(--panel-accent) 76%,#101828);box-shadow:0 0 12px color-mix(in srgb,var(--panel-accent) 34%,transparent);transition:background .2s ease,box-shadow .2s ease}.iot-cat-detail__panel-title:hover .iot-cat-detail__panel-title-icon{background:var(--panel-accent-text, var(--panel-accent));box-shadow:0 0 16px color-mix(in srgb,var(--panel-accent) 48%,transparent)}.iot-cat-detail__table-wrap{flex:0 0 auto;width:100%;max-width:100%;min-width:0;overflow-x:hidden;overflow-y:auto;max-height:calc(100vh - 260px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:stable;overflow-anchor:none;scrollbar-width:thin}.iot-cat-detail__table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.iot-cat-detail__th{position:sticky;top:0;z-index:1;padding:10px 12px;color:var(--cat-detail-muted);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-align:left;text-transform:uppercase;background:var(--cat-detail-panel-head-bg);border-bottom:0;box-shadow:inset 0 -1px 0 var(--cat-detail-panel-border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-cat-detail__th--gauge,.iot-cat-detail__th--load{width:16%;text-align:center}.iot-cat-detail__th--value{width:20%;text-align:right}.iot-cat-detail__th--energy{width:22%;text-align:right}.iot-cat-detail__th--param{width:auto;min-width:0}.iot-cat-detail__row>td{border-bottom:1px solid var(--cat-detail-row-border);background-color:transparent;transition:background-color .15s ease}.iot-cat-detail__row:hover>td{background-color:var(--cat-detail-row-hover)}.iot-cat-detail__param{padding:8px 12px;min-width:0;vertical-align:middle}.iot-cat-detail__param-inner{display:flex;align-items:center;gap:8px;min-width:0}.iot-cat-detail__status-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%}.iot-cat-detail__status-dot--active{background:var(--cat-status-active);box-shadow:0 0 8px var(--cat-status-active-glow)}.iot-cat-detail__status-dot--danger{background:#ef4444;box-shadow:0 0 8px #ef44448c}.iot-cat-detail__status-dot--none{background:#94a3b8;opacity:.75}.iot-cat-detail__param-name{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--cat-detail-text);font-size:.74rem;font-weight:600;letter-spacing:.03em;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;cursor:default}.iot-cat-detail__gauge-cell,.iot-cat-detail__load-cell{padding:6px 10px;text-align:center;vertical-align:middle}.iot-cat-detail__value-cell{padding:6px 10px;text-align:right;vertical-align:middle}.iot-cat-detail__value{display:inline-flex;align-items:center;justify-content:center;min-width:4.75rem;max-width:100%;padding:5px 10px;border-radius:6px;font-size:.78rem;font-weight:800;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.2;text-shadow:none;-webkit-font-smoothing:antialiased;white-space:nowrap;border:1px solid transparent;transition:background .15s ease,color .15s ease,border-color .15s ease;box-sizing:border-box}.iot-cat-detail__value--active{color:var(--cat-status-active-strong);background:color-mix(in srgb,var(--cat-status-active) 16%,var(--bg-elevated, #f2f7fc));border-color:color-mix(in srgb,var(--cat-status-active) 34%,transparent)}.iot-cat-detail__value--critical{color:#ef4444!important;background:color-mix(in srgb,#ef4444 12%,transparent);border-color:color-mix(in srgb,#ef4444 35%,transparent)}.iot-cat-detail__value--outdated{color:#fff!important;background:#dc3545;border-color:#b02a37;box-shadow:inset 0 0 0 1px #ffffff14}.iot-cat-detail__value--none{color:var(--cat-detail-muted);background:color-mix(in srgb,var(--cat-detail-muted) 16%,transparent);border-color:color-mix(in srgb,var(--cat-detail-muted) 24%,transparent)}[data-theme=light] .iot-cat-detail__value--active{color:var(--cat-status-active-strong);background:color-mix(in srgb,var(--cat-status-active) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--cat-status-active) 30%,transparent)}.iot-cat-detail__energy{padding:8px 12px;font-size:.78rem;font-weight:800;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.2;text-shadow:none;-webkit-font-smoothing:antialiased;text-align:right;vertical-align:middle;white-space:nowrap;color:var(--cat-detail-energy)}.tooltip{position:fixed!important;pointer-events:none;overflow-anchor:none}.iot-cat-detail__panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--cat-detail-panel-border);background:var(--cat-detail-footer-bg)}.iot-cat-detail__footer-label{color:var(--cat-detail-text-soft);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.iot-cat-detail__footer-label-line{display:inline}.iot-cat-detail__footer-stats{display:flex;align-items:center;gap:10px}.iot-cat-detail__footer-stat{display:inline-flex;flex-direction:column;align-items:center;gap:2px;min-width:120px;padding:8px 12px;border-radius:8px;background:#0000002e;border:1px solid var(--cat-detail-panel-border)}.iot-cat-detail__footer-stat strong{color:var(--panel-accent-text, var(--panel-accent));font-size:.92rem;font-weight:900;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1.15;white-space:nowrap;text-shadow:none;-webkit-font-smoothing:antialiased}.iot-cat-detail__footer-stat em{color:var(--cat-detail-muted);font-size:.62rem;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.iot-cat-detail__footer-stat--energy strong{color:var(--cat-detail-energy)}.iot-cat-detail__footer-stat--power{color:var(--cat-status-active-strong);background:color-mix(in srgb,var(--cat-status-active) 16%,var(--bg-elevated, #f2f7fc));border-color:color-mix(in srgb,var(--cat-status-active) 34%,transparent)}.iot-cat-detail__footer-stat--power strong{color:var(--cat-status-active-strong)}[data-theme=light] .iot-cat-detail__footer-stat{background:#0f172a0a}[data-theme=light] .iot-cat-detail__footer-stat--energy strong{color:var(--cat-detail-energy)}[data-theme=light] .iot-cat-detail__footer-stat--power{background:color-mix(in srgb,var(--cat-status-active) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--cat-status-active) 30%,transparent)}[data-theme=light] .iot-cat-detail__footer-stat--power strong{color:var(--cat-status-active-strong)}[data-theme=light] .iot-cat-detail .iot-cat-detail__title{color:var(--cat-detail-text)}[data-theme=light] .iot-cat-detail .iot-cat-detail__legend-text{color:var(--cat-detail-text-soft)}[data-theme=light] .iot-cat-detail .iot-cat-detail__th{color:var(--cat-detail-muted)}[data-theme=light] .iot-cat-detail .iot-cat-detail__param-name{color:var(--cat-detail-text)}[data-theme=light] .iot-cat-detail .iot-cat-detail__energy{color:var(--cat-detail-energy)}[data-theme=light] .iot-cat-detail .iot-cat-detail__footer-label{color:var(--cat-detail-text-soft)}[data-theme=light] .iot-cat-detail .iot-cat-detail__panel-title-static,[data-theme=light] .iot-cat-detail .iot-cat-detail__output-head strong{color:var(--cat-heading-color, var(--brand-mid))}[data-theme=light] .iot-cat-detail .iot-cat-detail__metric-unit{color:var(--panel-accent-text, var(--panel-accent))}[data-theme=light] .iot-cat-detail .iot-cat-detail__metric-label,[data-theme=light] .iot-cat-detail .iot-cat-detail__output-label{color:var(--cat-detail-muted)}[data-theme=light] .iot-cat-overview__header .iot-cat-detail__legend-text{color:var(--cat-header-text-muted)}.iot-cat-row-gauge{position:relative;width:var(--gauge-size);max-width:100%;margin:0 auto;isolation:isolate;--gauge-accent: var(--panel-accent, var(--cat-detail-gen-accent));--gauge-accent-text: var(--panel-accent-text, var(--cat-detail-gen-accent-text))}.iot-cat-row-gauge__svg{display:block;width:100%;height:auto;overflow:visible}.iot-cat-row-gauge__track{stroke:var(--cat-detail-gauge-track);opacity:.85}.iot-cat-row-gauge__progress{stroke:var(--gauge-accent);filter:drop-shadow(0 0 4px color-mix(in srgb,var(--gauge-accent) 40%,transparent));transition:d .45s cubic-bezier(.4,0,.2,1)}.iot-cat-row-gauge__pct{fill:var(--gauge-accent-text, var(--gauge-accent));font-size:9px;font-weight:700;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;pointer-events:none}[data-theme=dark] .iot-cat-row-gauge__pct{fill:var(--cat-detail-text, var(--gauge-accent))}[data-theme=dark] .iot-cat-load__pct{color:var(--cat-detail-text, var(--load-accent))}.iot-cat-load{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;max-width:100%;min-width:0;--load-accent: var(--panel-accent, var(--cat-detail-gen-accent));--load-accent-text: var(--panel-accent-text, var(--cat-detail-gen-accent-text))}.iot-cat-load__pct{color:var(--load-accent-text, var(--load-accent));font-size:.68rem;font-weight:800;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1;letter-spacing:.01em;-webkit-font-smoothing:antialiased}.iot-cat-load__track{width:100%;height:6px;border-radius:999px;background:var(--cat-detail-gauge-track, rgba(255, 255, 255, .12));overflow:hidden}.iot-cat-load__fill{display:block;height:100%;border-radius:inherit;background:var(--load-accent);box-shadow:0 0 8px color-mix(in srgb,var(--load-accent) 45%,transparent);transition:width .45s cubic-bezier(.4,0,.2,1)}.iot-cat-load--compact{gap:4px}.iot-cat-load--compact .iot-cat-load__pct{font-size:.62rem}.iot-cat-load--compact .iot-cat-load__track{height:5px}.iot-cat-load--over{--load-accent: #ef4444;--load-accent-text: #ef4444}.iot-cat-load--over .iot-cat-load__pct{color:#ef4444}.iot-cat-load--over .iot-cat-load__fill{background:#ef4444;box-shadow:0 0 8px color-mix(in srgb,#ef4444 45%,transparent)}.iot-cat-load--no-max .iot-cat-load__pct{color:var(--cat-detail-muted, #94a3b8);cursor:help}[data-theme=light] .iot-cat-load__track{background:#0f172a1a}.iot-cat-detail--subpage{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:100vh;box-sizing:border-box;overflow:hidden;width:100%;max-width:100%;min-width:0}.iot-cat-detail--subpage .iot-cat-overview__header{flex:0 0 auto;margin-right:0;margin-bottom:var(--cat-page-gutter, 14px)}.iot-cat-detail--subpage .iot-cat-overview__header-row{gap:10px;min-height:46px;padding:7px 14px}.iot-cat-detail--subpage .iot-cat-overview__header-brand-icon{width:34px;height:34px;flex-basis:34px;font-size:.85rem;border-radius:8px}.iot-cat-detail--subpage .iot-cat-overview__header-subtitle{margin-top:2px}.iot-cat-detail--subpage>.container-fluid{display:flex;flex:1;flex-direction:column;min-height:0;max-width:none}.iot-cat-detail--subpage .iot-cat-detail__split{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);flex:1;gap:14px;align-items:stretch;min-height:0;min-width:0;width:100%}.iot-cat-detail--subpage .iot-cat-detail__panel--list,.iot-cat-detail--subpage .iot-cat-detail__panel--sensor{height:100%;min-height:0;max-height:none;overflow:hidden}.iot-cat-detail--subpage .iot-cat-detail__panel--list,.iot-cat-detail--subpage .iot-cat-detail__panel--sensor{display:flex;flex-direction:column}.iot-cat-detail--subpage .iot-cat-detail__table-wrap{flex:1 1 auto;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto}.iot-cat-detail--subpage .iot-cat-detail__panel-title-static{margin:0;color:var(--cat-heading-color, var(--brand-mid));font-size:.82rem;font-weight:800;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.iot-cat-detail--subpage .iot-cat-detail__row--clickable{cursor:pointer}.iot-cat-detail--subpage .iot-cat-detail__row-action{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;margin-left:auto;color:#fff;font-size:.58rem;border-radius:50%;background:color-mix(in srgb,var(--panel-accent) 76%,#101828);box-shadow:0 0 10px color-mix(in srgb,var(--panel-accent) 30%,transparent)}.iot-cat-detail--subpage .iot-cat-detail__row--clickable:hover .iot-cat-detail__row-action,.iot-cat-detail--subpage .iot-cat-detail__row--selected .iot-cat-detail__row-action{background:var(--panel-accent-text, var(--panel-accent));box-shadow:0 0 14px color-mix(in srgb,var(--panel-accent) 44%,transparent)}.iot-cat-detail--subpage .iot-cat-detail__row--selected>td{background-color:color-mix(in srgb,var(--panel-accent) 10%,transparent)}.iot-cat-detail--subpage .iot-cat-detail__row--selected>td:first-child{box-shadow:inset 3px 0 0 var(--panel-accent)}.iot-cat-detail--subpage .iot-cat-detail__metrics{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-start;gap:0;overflow-x:hidden;overflow-y:auto;padding:10px 14px 14px;scrollbar-gutter:stable}.iot-cat-detail--subpage .iot-cat-detail__metric-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;padding:7px 0;border-bottom:1px solid var(--cat-detail-row-border)}.iot-cat-detail--subpage .iot-cat-detail__metric-row:last-child{border-bottom:none}.iot-cat-detail--subpage .iot-cat-detail__metric-label{flex:1;min-width:0;color:var(--cat-detail-text-soft);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.iot-cat-detail--subpage .iot-cat-detail__metric-value-wrap{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.iot-cat-detail--subpage .iot-cat-detail__metric-unit{min-width:28px;color:var(--panel-accent);font-size:.68rem;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.iot-cat-detail--subpage .iot-cat-detail__sensor-output{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 16px 12px;border-bottom:1px solid var(--cat-detail-panel-border);background:var(--cat-detail-footer-bg);text-align:center}.iot-cat-detail--subpage .iot-cat-detail__output-head{display:flex;align-items:baseline;justify-content:center;gap:6px;flex-wrap:wrap}.iot-cat-detail--subpage .iot-cat-detail__output-head strong{color:var(--panel-accent-text, var(--panel-accent));font-size:1.5rem;font-weight:900;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.1;-webkit-font-smoothing:antialiased}.iot-cat-detail--subpage .iot-cat-detail__output-head em{color:var(--cat-detail-muted);font-size:.72rem;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.iot-cat-detail--subpage .iot-cat-detail__output-label{color:var(--cat-detail-muted);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.iot-cat-detail--subpage .iot-cat-detail__sensor-output .iot-cat-load{width:100%;max-width:260px;margin-top:4px}.iot-cat-detail--subpage .iot-cat-detail__empty{display:flex;flex:1;align-items:center;justify-content:center;min-height:240px;padding:24px;color:var(--cat-detail-muted);font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}[data-theme=light] .iot-cat-detail--subpage .iot-cat-detail__output-head strong{color:color-mix(in srgb,var(--panel-accent) 75%,#0f172a)}.iot-cat-detail--fitpage{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:100vh;box-sizing:border-box;overflow:hidden;overflow-anchor:none}.iot-cat-detail--fitpage .iot-cat-overview__header{flex:0 0 auto;margin-right:0;margin-bottom:var(--cat-page-gutter, 14px)}.iot-cat-detail--fitpage>.container-fluid{display:flex;flex:1;flex-direction:column;min-height:0;max-width:none}.iot-cat-detail--fitpage .iot-cat-detail__grid{flex:1;min-height:0;grid-template-rows:minmax(0,1fr);align-items:stretch}.iot-cat-detail--fitpage .iot-cat-detail__panel{min-height:0}.iot-cat-detail--fitpage .iot-cat-detail__table-wrap{flex:1 1 auto;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto}.iot-cat-detail--fitpage .iot-cat-detail__panel-footer{flex:0 0 auto;margin-top:auto}.iot-cat-detail--fitpage .iot-cat-detail__footer-stats{gap:12px}.iot-cat-detail--fitpage .iot-cat-detail__footer-stat{flex-direction:column;align-items:center;gap:2px;min-width:104px;padding:6px 12px;background:color-mix(in srgb,var(--panel-accent) 8%,var(--cat-detail-panel-bg));border:1px solid color-mix(in srgb,var(--panel-accent) 30%,var(--cat-detail-panel-border))}.iot-cat-detail--fitpage .iot-cat-detail__footer-stat strong{line-height:1.15;white-space:nowrap}.mainbody.iot-cat-detail--fitpage,.mainbody.iot-cat-detail--subpage{padding:var(--cat-page-gutter, 14px)!important}@media(max-width:767px){.mainbody.iot-cat-detail--fitpage,.mainbody.iot-cat-detail--subpage{padding:8px!important}}@media(max-width:1199px){.iot-cat-detail__grid{grid-template-columns:1fr}.iot-cat-detail--fitpage{flex:none!important;height:auto!important;max-height:none!important;min-height:0!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;overflow-y:visible!important}.c-body:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--fitpage){overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-cat-detail--fitpage)>div,.app-main-content:has(.iot-cat-detail--fitpage) .fade,.category:has(.iot-cat-detail--fitpage){display:block!important;flex:none!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box}.iot-cat-detail--fitpage>.container-fluid{display:block!important;flex:none!important;height:auto!important;min-height:0!important;overflow:visible!important;width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important}.iot-cat-detail--fitpage .iot-cat-overview__header{flex:0 0 auto!important;margin-bottom:10px!important}.iot-cat-detail--fitpage .iot-cat-detail__grid{display:flex!important;flex-direction:column!important;gap:12px!important;flex:none!important;height:auto!important;min-height:0!important;overflow:visible!important;grid-template-rows:none!important}.iot-cat-detail--fitpage .iot-cat-detail__panel{display:flex!important;flex-direction:column!important;flex:none!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;width:100%!important}.iot-cat-detail--fitpage .iot-cat-detail__panel-head{flex:0 0 auto!important;padding:10px 14px!important}.iot-cat-detail--fitpage .iot-cat-detail__panel-footer{flex:0 0 auto!important;margin-top:0!important;padding:10px 12px!important}.iot-cat-detail--fitpage .iot-cat-detail__table-wrap,.iot-cat-detail__panel--generation .iot-cat-detail__table-wrap,.iot-cat-detail__panel--consumption .iot-cat-detail__table-wrap{flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}.iot-cat-detail--fitpage .iot-cat-detail__footer-stat{min-width:0;padding:4px 8px}.iot-cat-detail--subpage{height:auto!important;max-height:none!important;min-height:0;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;overflow-y:visible!important}.c-body:has(.iot-cat-detail--subpage),.app-main-content:has(.iot-cat-detail--subpage){overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.iot-cat-detail--subpage>.container-fluid{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important}.iot-cat-detail--subpage .iot-cat-detail__split{display:flex!important;flex-direction:column!important;gap:12px!important;height:auto!important;min-height:0!important;flex:none!important}.iot-cat-detail--subpage .iot-cat-detail__panel--list,.iot-cat-detail--subpage .iot-cat-detail__panel--sensor{display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;max-height:none!important;flex:none!important;overflow:visible!important}.iot-cat-detail--subpage .iot-cat-detail__sensor-output{flex:0 0 auto!important;padding:12px 14px 10px!important;gap:4px!important}.iot-cat-detail--subpage .iot-cat-detail__output-head strong{font-size:clamp(1.35rem,4vw,1.85rem)!important}.iot-cat-detail--subpage .iot-cat-detail__metrics{flex:0 0 auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:8px 12px 12px!important}.iot-cat-detail--subpage .iot-cat-detail__metric-row{padding:8px 0!important}.iot-cat-detail--subpage .iot-cat-detail__panel--list .iot-cat-detail__table-wrap{flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;--cat-table-head-h: 36px;--cat-table-row-h: 44px;height:calc(var(--cat-table-head-h) + 6 * var(--cat-table-row-h));max-height:calc(var(--cat-table-head-h) + 6 * var(--cat-table-row-h));overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.iot-cat-detail--subpage .iot-cat-detail__panel-footer{flex:0 0 auto!important}.iot-cat-detail__table{table-layout:fixed!important;width:100%!important;min-width:0!important;max-width:100%!important}.iot-cat-detail__th{position:sticky;top:0;z-index:2;padding:8px 6px;font-size:.56rem;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-cat-detail__th--param{width:auto;min-width:0}.iot-cat-detail__th--load{width:15%;min-width:0;text-align:center}.iot-cat-detail__th--value{width:20%;min-width:0;text-align:right}.iot-cat-detail__th--energy{width:24%;min-width:0;text-align:right}.iot-cat-detail__param{padding:6px 8px;min-width:0;max-width:none}.iot-cat-detail__param-name{max-width:none;min-width:0}.iot-cat-detail__row-action{width:18px;height:18px;flex-basis:18px;font-size:.5rem}.iot-cat-detail__load-cell,.iot-cat-detail__value-cell,.iot-cat-detail__energy{padding:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-cat-detail__value{min-width:4.25rem;max-width:100%;padding:4px 6px;font-size:.7rem}.iot-cat-detail__energy{font-size:.72rem}.iot-cat-overview__header-row--with-legend{align-items:flex-start;min-width:0;max-width:100%}.iot-cat-overview__header .iot-cat-detail__legend{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:flex-start;justify-items:start;flex:1 1 100%;margin-left:0;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.iot-cat-overview__header .iot-cat-detail__legend-item{white-space:normal;min-width:0}.iot-cat-overview__header .iot-cat-detail__legend-text{white-space:normal;overflow-wrap:anywhere}}@media(max-width:767px){.iot-cat-overview__header .iot-cat-detail__legend{grid-template-columns:max-content;flex:1 1 100%;justify-content:flex-start;justify-items:start;margin-left:0}.iot-cat-detail__header{flex-direction:column;align-items:stretch}.iot-cat-detail__legend{flex-direction:column;align-items:flex-start}.iot-cat-detail__legend-sep{display:none}.iot-cat-detail__panel-footer{flex-direction:row;flex-wrap:wrap;align-items:center}.iot-cat-detail__footer-label{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:0 1 auto;min-width:0;max-width:42%;gap:1px;line-height:1.2;font-size:.58rem;letter-spacing:.06em}.iot-cat-detail__footer-label-line{display:block}.iot-cat-detail__footer-stats{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;flex:1 1 auto;width:auto;max-width:58%;gap:6px;margin-left:auto}.iot-cat-detail__footer-stat{width:auto;min-width:0;flex:1 1 0;max-width:50%}.iot-cat-detail__panel{display:flex!important;flex-direction:column!important;min-width:0!important;max-width:100%!important;overflow:hidden}.iot-cat-detail--fitpage{flex:none!important;height:auto!important;max-height:none!important;min-height:0!important;overflow-x:hidden!important;overflow-y:visible!important}.c-body:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--fitpage){overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-cat-detail--fitpage)>div,.app-main-content:has(.iot-cat-detail--fitpage) .fade,.category:has(.iot-cat-detail--fitpage){display:block!important;flex:none!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box}.iot-cat-detail--fitpage>.container-fluid{display:block!important;flex:none!important;height:auto!important;min-height:0!important;overflow:visible!important;width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important}.iot-cat-detail--fitpage .iot-cat-detail__grid{display:flex!important;flex-direction:column!important;gap:10px!important;flex:none!important;height:auto!important;min-height:0!important;width:100%!important;overflow:visible!important;grid-template-rows:none!important}.iot-cat-detail--fitpage .iot-cat-detail__panel{height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:100%!important;overflow:visible!important;flex:none!important}.iot-cat-detail--fitpage .iot-cat-detail__panel-head,.iot-cat-detail--fitpage .iot-cat-detail__panel-footer{padding:8px 10px!important}.iot-cat-detail--fitpage .iot-cat-detail__footer-stat{min-width:0!important;padding:3px 6px!important}.iot-cat-detail--fitpage .iot-cat-detail__footer-stat strong{font-size:.72rem!important}.iot-cat-detail--fitpage .iot-cat-detail__footer-stat em{font-size:.48rem!important}.iot-cat-detail--subpage{height:auto!important;max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important}.iot-cat-detail--subpage .iot-cat-detail__split{display:flex!important;flex-direction:column!important;height:auto!important;flex:none!important}.iot-cat-detail--subpage .iot-cat-detail__panel--list,.iot-cat-detail--subpage .iot-cat-detail__panel--sensor{height:auto!important;max-height:none!important;flex:none!important;overflow:visible!important}.iot-cat-detail--subpage .iot-cat-detail__sensor-output{flex:0 0 auto!important;padding:10px 12px 8px!important}.iot-cat-detail--subpage .iot-cat-detail__metrics{flex:0 0 auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:6px 10px 10px!important}.iot-cat-detail--subpage .iot-cat-detail__metric-row{padding:7px 0!important}.iot-cat-detail--subpage .iot-cat-detail__empty{min-height:120px}.iot-cat-detail__panel-head{flex:0 0 auto;padding:10px 12px;gap:8px}.iot-cat-detail__panel-title{font-size:.72rem;letter-spacing:.04em}.iot-cat-detail__panel-title-text{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.iot-cat-detail__table-wrap{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;position:relative}.iot-cat-detail--subpage .iot-cat-detail__panel--list .iot-cat-detail__table-wrap{flex:0 0 auto!important;--cat-table-head-h: 36px;--cat-table-row-h: 44px;height:calc(var(--cat-table-head-h) + 5 * var(--cat-table-row-h))!important;max-height:calc(var(--cat-table-head-h) + 5 * var(--cat-table-row-h))!important;min-height:calc(var(--cat-table-head-h) + 3 * var(--cat-table-row-h))!important}.iot-cat-detail--fitpage .iot-cat-detail__table-wrap,.iot-cat-detail__panel--generation .iot-cat-detail__table-wrap,.iot-cat-detail__panel--consumption .iot-cat-detail__table-wrap{flex:0 0 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important}.iot-cat-detail__table{table-layout:fixed!important;width:100%!important;min-width:0!important;max-width:100%!important}.iot-cat-detail__th{position:sticky;top:0;z-index:2;padding:8px 5px;font-size:.54rem;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-cat-detail__th--param{width:auto;min-width:0}.iot-cat-detail__th--load{width:15%;min-width:0;text-align:center}.iot-cat-detail__th--value{width:20%;min-width:0;text-align:right}.iot-cat-detail__th--energy{width:24%;min-width:0;text-align:right}.iot-cat-detail__param{padding:6px;min-width:0;max-width:none}.iot-cat-detail__param-name{max-width:none;min-width:0}.iot-cat-detail__row-action{width:16px;height:16px;flex:0 0 16px;font-size:.48rem}.iot-cat-detail__load-cell,.iot-cat-detail__value-cell,.iot-cat-detail__energy{padding:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-cat-detail__value{min-width:4rem;max-width:100%;padding:3px 5px;font-size:.68rem}.iot-cat-detail__energy{font-size:.7rem}.iot-cat-detail__panel-footer,.iot-cat-detail--fitpage .iot-cat-detail__panel-footer{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;flex:0 0 auto!important;position:relative;z-index:3;width:100%;max-width:100%;min-width:0;margin-top:0!important;gap:8px;padding:10px 12px!important;border-top:1px solid var(--cat-detail-panel-border);background:var(--cat-detail-footer-bg)!important;box-sizing:border-box}.iot-cat-detail__footer-label{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;flex:1 1 auto!important;min-width:0!important;max-width:100%!important;gap:1px;font-size:.58rem!important;letter-spacing:.05em;line-height:1.2}.iot-cat-detail__footer-label-line{display:block!important}.iot-cat-detail__footer-stats{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-end!important;flex:1 1 auto!important;width:auto!important;max-width:100%!important;min-width:0!important;gap:6px!important;margin-left:auto}.iot-cat-detail__footer-stat{width:auto!important;min-width:0!important;flex:1 1 0!important;max-width:none!important;padding:6px 8px!important}.iot-cat-detail__footer-stat strong{font-size:.78rem!important}.iot-cat-detail__footer-stat em{font-size:.52rem!important}.c-body:has(.iot-cat-detail--subpage),.app-main-content:has(.iot-cat-detail--subpage){overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-cat-detail--subpage)>div,.app-main-content:has(.iot-cat-detail--subpage) .fade,.category:has(.iot-cat-detail--subpage){display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;flex:none!important;box-sizing:border-box}.iot-cat-detail--subpage>.container-fluid{width:100%!important;max-width:100%!important;min-width:0!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box}}.iot-cat-gencon-card{display:flex;flex-direction:column;height:100%;border:1px solid var(--cat-header-border, #cbd5e1);border-radius:12px;background:var(--cat-panel, var(--bg-elevated));box-shadow:var(--cat-shadow, 0 8px 24px rgba(15, 23, 42, .08));overflow:hidden}[data-theme=light] .iot-cat-gencon-card{border:1px solid #8b9fb8;background:#f7fafc;box-shadow:0 10px 28px #0f294d1a}[data-theme=light] .iot-cat-gencon-card:hover,[data-theme=light] .iot-cat-gencon-card:focus-within{border-color:#6d86a3;box-shadow:0 14px 32px #0f294d24}.iot-cat-gencon-card__head{padding:12px 14px;border-bottom:1px solid var(--cat-header-border, #cbd5e1);background:var(--cat-panel-inner, var(--bg-surface-soft));text-align:center}[data-theme=light] .iot-cat-gencon-card__head{border-bottom:1px solid #c3d2e3;background:#eef3f8}.iot-cat-gencon-card__title{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0;color:var(--cat-text, #0f172a);font-size:.92rem;font-weight:800;letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.iot-cat-gencon-card__title:hover{color:var(--utility-electric-text, #2f5f54);text-decoration:none}.iot-cat-gencon-card__title-text{min-width:0}.iot-cat-gencon-card__link-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.15em;height:1.15em;margin-left:auto;color:var(--color-primary);font-size:.72rem;line-height:1;vertical-align:middle}.iot-cat-gencon-card__link-icon svg{display:block;width:.85em;height:.85em}.iot-cat-gencon-card__link-icon--title{width:22px;height:22px;margin-left:0;color:#fff;font-size:.66rem;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 74%,#101828);box-shadow:0 0 10px color-mix(in srgb,var(--color-primary) 30%,transparent);transition:background .2s ease,box-shadow .2s ease}.iot-cat-gencon-card__link-icon--title svg{width:.7em;height:.7em}.iot-cat-gencon-card__title:hover .iot-cat-gencon-card__link-icon--title{background:var(--color-primary);box-shadow:0 0 14px color-mix(in srgb,var(--color-primary) 45%,transparent)}.iot-cat-gencon-card__table-wrap{overflow:auto}.iot-cat-gencon-card__table{width:100%;border-collapse:collapse}.iot-cat-gencon-card__th{padding:8px 10px;color:var(--cat-muted, #475569);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-align:left;text-transform:uppercase;background:var(--cat-stat-bg, #f1f5f9);border-bottom:1px solid var(--cat-header-border, #cbd5e1)}.iot-cat-gencon-card__th--cat{width:28%}[data-theme=light] .iot-cat-gencon-card__th{border-bottom:1px solid #c3d2e3}.iot-cat-gencon-card__row{border-bottom:1px solid color-mix(in srgb,var(--cat-text, #0f172a) 8%,transparent);transition:background .15s ease}.iot-cat-gencon-card__row:hover{background:color-mix(in srgb,var(--cat-text, #0f172a) 4%,transparent)}.iot-cat-gencon-card__row--link{cursor:pointer}.iot-cat-gencon-card__cat{display:flex;align-items:center;gap:8px;padding:8px 10px;color:var(--cat-text, #0f172a);font-size:.72rem;font-weight:700;letter-spacing:.03em}.iot-cat-gencon-card__cat-name{min-width:0;flex:1 1 auto}.iot-cat-gencon-card__row--link:hover .iot-cat-gencon-card__link-icon{color:var(--color-primary-hover)}.iot-cat-gencon-card__dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%}.iot-cat-gencon-card__dot--electric{background:var(--utility-electric, #3b82f6)}.iot-cat-gencon-card__dot--water{background:var(--utility-water, #00a8f0)}.iot-cat-gencon-card__dot--gas{background:var(--utility-gas, #b45309)}.iot-cat-gencon-card__dot--steam{background:var(--utility-steam, #6d28d9)}.iot-cat-gencon-card__cell{padding:8px 10px;vertical-align:top}.iot-cat-gencon-card__cell strong{display:block;color:var(--cat-value-text, #0f172a);font-size:.74rem;font-weight:800;font-family:Segoe UI,system-ui,sans-serif;line-height:1.25}.iot-cat-gencon-card__cell span{display:block;margin-top:2px;color:var(--cat-muted, #475569);font-size:.66rem;font-weight:600;font-family:Segoe UI,system-ui,sans-serif}.iot-cat-gencon-card__empty{padding:16px;color:var(--cat-muted, #475569);font-size:.78rem;text-align:center}.iot-cat-gencon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:14px;width:100%;min-width:0}@media(min-width:1600px){.iot-dept-dashboard .iot-cat-gencon-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}}.iot-cat-sensor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.iot-cat-sensor-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;border:1px solid color-mix(in srgb,var(--utility-accent, var(--utility-electric)) 22%,transparent);border-radius:10px;background:var(--cat-panel-inner, var(--bg-surface-soft));text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease}.iot-cat-sensor-tile:hover{border-color:color-mix(in srgb,var(--utility-accent, var(--utility-electric)) 40%,transparent);box-shadow:var(--cat-shadow, 0 8px 24px rgba(15, 23, 42, .08));text-decoration:none}.iot-cat-sensor-tile__index{color:var(--cat-muted, #475569);font-size:.62rem;font-weight:700}.iot-cat-sensor-tile__value{color:var(--cat-value-text, #0f172a);font-size:.92rem;font-weight:900;font-family:Segoe UI,system-ui,sans-serif;line-height:1.1;text-align:center}.iot-cat-sensor-tile__unit{color:var(--cat-text-soft, #334155);font-size:.58rem;font-weight:600}.iot-cat-section-block{margin-bottom:18px}.iot-cat-section-block__title{margin:0 0 12px;color:var(--cat-text, #0f172a);font-size:.82rem;font-weight:800;letter-spacing:.1em;text-align:center;text-transform:uppercase}.iot-cat-report-panel{padding:16px;border:1px solid var(--cat-header-border, #cbd5e1);border-radius:12px;background:var(--cat-panel, var(--bg-elevated));box-shadow:var(--cat-shadow, 0 8px 24px rgba(15, 23, 42, .08))}.iot-cat-report-results{margin-top:16px;overflow:auto}.iot-cat-report-results__table{width:100%;border-collapse:collapse}.iot-cat-report-results__table th,.iot-cat-report-results__table td{padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--cat-text, #0f172a) 8%,transparent);font-size:.78rem}.iot-cat-report-results__table th{color:var(--cat-muted, #475569);font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--cat-stat-bg, #f1f5f9)}.iot-cat-report-results__table td{color:var(--cat-value-text, #0f172a);font-family:Segoe UI,system-ui,sans-serif}@media(max-width:991px){.iot-cat-gencon-grid{grid-template-columns:1fr}}.iot-dept-dashboard__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 12px;padding:8px 12px;border:1px solid var(--cat-header-border, #cbd5e1);border-radius:10px;background:var(--cat-panel, var(--bg-elevated));box-shadow:var(--cat-shadow, 0 8px 24px rgba(15, 23, 42, .08))}.iot-dept-dashboard__meta span{color:var(--cat-text-soft, #334155);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}[data-theme=dark] .iot-dept-dashboard__meta{background:var(--cat-panel, #0f1c32);border-color:var(--cat-header-border, #1e3354)}.iot-widget-page{--panel-accent: var(--cat-detail-utility-accent);--panel-accent-text: var(--cat-detail-utility-accent-text)}.iot-widget-page.mainbody.iot-cat-detail{min-height:0!important;padding:0 16px 12px}.iot-widget-page .iot-cat-overview__header{margin-bottom:10px}.iot-widget-page .iot-cat-overview__header .iot-cat-overview__header-row--with-tools{align-items:center}.iot-widget-page .iot-cat-overview__header .iot-cat-overview__header-tools{flex-wrap:nowrap;align-items:center}.iot-widget-page .iot-cat-overview__header .dashboard-sort-dropdown{display:inline-flex;flex-shrink:0;max-width:100%;vertical-align:middle}.iot-widget-page .iot-cat-overview__header .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;min-width:0!important;min-height:36px!important;height:36px!important;padding:0!important;margin:0!important;color:var(--cat-header-text)!important;border:1px solid var(--cat-header-status-border)!important;border-radius:999px!important;background:var(--cat-header-status-bg)!important;box-shadow:none!important;font-size:.58rem!important;font-weight:600!important;line-height:1!important;outline:0!important;transition:background .22s ease,border-color .22s ease}.iot-widget-page .iot-cat-overview__header .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium:hover,.iot-widget-page .iot-cat-overview__header .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium:focus,.iot-widget-page .iot-cat-overview__header .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium:active,.iot-widget-page .iot-cat-overview__header .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium.show{color:var(--cat-header-text)!important;background:color-mix(in srgb,var(--text-on-primary) 12%,transparent)!important;border-color:var(--cat-header-badge-border)!important;box-shadow:none!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__direction{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 8px!important;min-height:36px!important;height:36px!important;border-right:1px solid var(--cat-header-border)!important;font-size:.58rem!important;opacity:1!important;color:var(--cat-header-text)!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__direction:hover{background:color-mix(in srgb,var(--text-on-primary) 8%,transparent)!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__open{display:inline-flex!important;align-items:center!important;padding:0 10px!important;gap:5px!important;min-height:36px!important;height:36px!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__label{color:var(--cat-header-text-muted)!important;font-size:.54rem!important;font-weight:500!important;letter-spacing:.02em!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__value{padding-left:6px!important;margin-left:2px!important;color:var(--cat-header-text)!important;border-left:1px solid var(--cat-header-border)!important;font-size:.58rem!important;font-weight:600!important;opacity:1!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__icon,.iot-widget-page .iot-cat-overview__header .dashboard-sort-toggle__caret{font-size:.54rem!important;color:var(--cat-header-text)!important;opacity:.78!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu{min-width:200px!important;margin-top:6px!important;padding:4px!important;color:var(--shell-text, #1e293b)!important;border:1px solid var(--shell-border, rgba(74, 115, 180, .22))!important;border-radius:10px!important;background:var(--shell-card-bg, #f2f7fc)!important;box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-height:34px!important;height:34px!important;padding:0 10px!important;margin:0!important;border:0!important;border-radius:8px!important;outline:none!important;box-shadow:none!important;color:var(--shell-text, #1e293b)!important;background:transparent!important;font-size:.75rem!important;font-weight:600!important;line-height:1!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item.active,.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item:active,.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item:focus,.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item:focus-visible,.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item.active:focus,.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item.active:hover{color:var(--shell-text, #1e293b)!important;background:var(--shell-panel-soft, #e8f0fa)!important;border:0!important;outline:none!important;box-shadow:none!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dropdown-item:hover:not(.active){color:var(--shell-text, #1e293b)!important;background:color-mix(in srgb,var(--shell-panel-soft, #e8f0fa) 70%,transparent)!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dashboard-sort-menu__text{flex:1;color:inherit!important;font-weight:600!important}.iot-widget-page .iot-cat-overview__header .dashboard-sort-menu .dashboard-sort-menu__check{color:var(--dash-accent-device, #3b82f6)!important;font-size:.68rem!important;opacity:1!important}.iot-widget-page .container-fluid{padding-top:4px}.iot-widget-page .iot-cat-section-block{margin-bottom:16px}.iot-widget-sensor-grid{position:relative;display:block;width:100%;min-height:0}.iot-widget-sensor-card{position:absolute;top:0;left:0;display:flex;flex-direction:column;max-width:100%;border:1px solid var(--cat-detail-panel-border, #cbd5e1);border-radius:12px;background:var(--cat-detail-panel-bg, var(--bg-elevated));box-shadow:var(--cat-detail-shadow, 0 8px 24px rgba(15, 23, 42, .08));overflow:hidden;will-change:transform}.iot-widget-sensor-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:12px 14px;border-bottom:1px solid color-mix(in srgb,var(--text-on-primary) 12%,transparent);background:var(--bg-table-header)}.iot-widget-sensor-card__head--toggle{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.iot-widget-sensor-card__head--toggle:hover{background:color-mix(in srgb,var(--text-on-primary) 8%,var(--bg-table-header))}.iot-widget-sensor-card__head-start{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px}.iot-widget-sensor-card__status-dot{width:12px;height:12px;flex:0 0 12px}.iot-widget-sensor-card__head-chevron-wrap{flex:0 0 16px;display:flex;align-items:center;justify-content:center;min-width:16px;margin-left:auto}.iot-widget-sensor-card__head-chevron{flex:0 0 8px;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;color:color-mix(in srgb,var(--text-on-primary) 80%,transparent);transform:rotate(45deg);opacity:.8;transition:transform .2s ease}.iot-widget-sensor-card__head--open .iot-widget-sensor-card__head-chevron{transform:rotate(-135deg)}.iot-widget-sensor-card__title{margin:0;min-width:0;overflow:hidden;color:var(--text-on-primary);font-size:.78rem;font-weight:800;letter-spacing:.05em;line-height:1.25;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;cursor:default;text-align:left;flex:1 1 auto}.iot-widget-sensor-card__metrics{display:flex;flex-direction:column;gap:6px;padding:8px 10px 10px}.iot-widget-sensor-card__metrics>.collapse,.iot-widget-sensor-card__metrics>.collapsing,.iot-widget-sensor-card__metrics-extra{width:100%;flex:0 0 auto;min-height:0}.iot-widget-sensor-card__metrics-extra{display:flex;flex-direction:column;gap:6px}.iot-widget-sensor-card__metric-row{display:grid;grid-template-columns:minmax(92px,34%) minmax(0,1fr) minmax(56px,24%);gap:6px;align-items:stretch;min-height:34px;cursor:default;position:relative}.iot-widget-sensor-card__label-cell,.iot-widget-sensor-card__unit-cell{display:flex;align-items:center;justify-content:center;min-height:34px;padding:6px 8px;color:var(--cat-detail-text-soft, #334155);font-size:.64rem;font-weight:700;letter-spacing:.04em;line-height:1.2;text-align:center;text-transform:uppercase;border-radius:6px;background:var(--cat-stat-bg, #f1f5f9);border:1px solid color-mix(in srgb,var(--cat-detail-text, #0f172a) 8%,transparent);overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:none;hyphens:none}.iot-widget-sensor-card__value-cell{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:34px;padding:6px 8px;text-align:center;border-radius:6px;border:1px solid transparent;font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2}.iot-widget-sensor-card__value-cell.iot-cat-detail__value--active{color:var(--cat-status-active-strong, #15803d);background:color-mix(in srgb,var(--cat-status-active, #22c55e) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--cat-status-active, #22c55e) 30%,transparent)}.iot-widget-sensor-card__value-cell.iot-cat-detail__value--outdated{color:#fff!important;background:#dc3545!important;border-color:#b02a37!important;box-shadow:inset 0 0 0 1px #ffffff14}.iot-widget-sensor-card__value-cell.iot-cat-detail__value--none{color:var(--cat-detail-muted, #475569);background:color-mix(in srgb,var(--cat-detail-muted, #475569) 16%,transparent);border-color:color-mix(in srgb,var(--cat-detail-muted, #475569) 24%,transparent)}.iot-widget-sensor-card__value-text{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;cursor:default;outline:none}.iot-widget-sensor-card__value-cell>span{display:flex;flex:1;align-items:center;justify-content:center;min-width:0;width:100%}.iot-widget-sensor-card__empty{display:flex;align-items:center;justify-content:center;min-height:72px;padding:16px;color:var(--cat-detail-muted, #475569);font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card{background:#0c1628;border-color:#243552;box-shadow:0 10px 28px #00000059}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__head{background:var(--bg-table-header);border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__head--toggle:hover{background:color-mix(in srgb,var(--text-on-primary) 8%,var(--bg-table-header))}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__label-cell,[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__unit-cell{color:#cbd5e1;background:#ffffff12;border-color:#ffffff1f}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__empty{color:#94a3b8}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__value-cell.iot-cat-detail__value--active{color:var(--cat-status-active-strong, #4ade80)!important;background:color-mix(in srgb,var(--cat-status-active, #22c55e) 22%,transparent)!important;border-color:color-mix(in srgb,var(--cat-status-active, #22c55e) 50%,transparent)!important}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__value-cell.iot-cat-detail__value--none{color:#94a3b8!important;background:#ffffff0d!important;border-color:#ffffff1a!important}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__value-cell.iot-cat-detail__value--outdated{color:#fff!important;background:#dc2626!important;border-color:#ef4444!important;box-shadow:0 0 0 1px #ffffff14}[data-theme=dark] .iot-widget-page .iot-widget-sensor-card__value-cell.iot-cat-detail__value--critical{color:#fecaca!important;background:#ef444447!important;border-color:#f871718c!important}@media(max-width:767px){.iot-widget-sensor-card__metric-row{grid-template-columns:minmax(80px,30%) minmax(0,1fr) minmax(48px,22%)}}.c-sidebar.sidebar-nav .sidebar-theme-toggle-wrapper{margin-top:6px!important;padding-top:10px!important;border-top:1px solid var(--shell-sidebar-border, rgba(103, 137, 190, .22))!important}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item{border-radius:8px!important;letter-spacing:.06em!important;text-transform:uppercase}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item .c-icon{color:var(--color-primary)!important}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:focus-visible{background:color-mix(in srgb,var(--color-primary) 14%,transparent)!important;box-shadow:none!important;transform:none!important;color:var(--shell-sidebar-text, #ffffff)!important}.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover .c-sidebar-nav-icon,.c-sidebar.sidebar-nav .sidebar-theme-toggle-item:hover .c-icon{color:var(--color-primary)!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-theme-toggle-wrapper{border-top:0!important;padding-top:0!important}.mainbody.app-main-content:has(.iot-dashboard),.c-body:has(.iot-dashboard) .mainbody.app-main-content{padding-top:6px!important;padding-bottom:6px!important}.c-body:has(.iot-dashboard){margin-top:2px!important;margin-bottom:2px!important}.iot-dashboard{--dash-space-xs: 3px;--dash-space-sm: 5px;--dash-space-md: 8px;--dash-space-lg: 11px;--dash-space-xl: 14px;--dash-radius-sm: 10px;--dash-radius-md: 13px;--dash-radius-lg: 16px;--dash-shadow-soft: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 24px rgba(15, 23, 42, .06);--dash-shadow-hover: 0 4px 8px rgba(15, 23, 42, .04), 0 20px 40px rgba(15, 23, 42, .1);--dash-accent-device: #3b82f6;--dash-accent-sensor: #8b5cf6;--dash-accent-success: #10b981;padding:0 0 var(--dash-space-xl)!important;letter-spacing:-.01em}.iot-dashboard .container-fluid.iot-dashboard__inner{width:100%;max-width:100%;margin-left:auto;margin-right:auto;padding-left:var(--content-padding, var(--dash-space-lg))!important;padding-right:var(--content-padding, var(--dash-space-lg))!important;box-sizing:border-box}[data-theme=dark] .iot-dashboard{--dash-shadow-soft: 0 1px 2px rgba(0, 0, 0, .12), 0 12px 32px rgba(0, 0, 0, .22);--dash-shadow-hover: 0 8px 16px rgba(0, 0, 0, .16), 0 24px 48px rgba(0, 0, 0, .28)}.iot-dashboard__intro{margin-bottom:var(--dash-space-lg)}.iot-dashboard__intro-copy{max-width:640px}.iot-dashboard__eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:10px;color:var(--shell-muted)!important;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.iot-dashboard__live-dot{width:8px;height:8px;border-radius:50%;background:var(--dash-accent-success);box-shadow:0 0 #10b98180;animation:iotDashLivePulse 2.4s ease-in-out infinite}@keyframes iotDashLivePulse{0%,to{box-shadow:0 0 #10b98173}50%{box-shadow:0 0 0 6px #10b98100}}.iot-dashboard__title{margin:0 0 8px;color:var(--shell-text)!important;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.iot-dashboard__subtitle{margin:0;color:var(--shell-muted)!important;font-size:.95rem;font-weight:400;line-height:1.55}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:.75rem!important;min-height:0!important;height:auto!important;width:100%!important;max-width:100%!important;margin:0 0 var(--dash-space-md)!important;padding:var(--dash-space-sm)!important;border:0!important;border-radius:var(--dash-radius-md)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--shell-panel) 96%,#ffffff),color-mix(in srgb,var(--shell-panel-soft) 88%,transparent))!important;box-shadow:var(--dash-shadow-soft)!important;box-sizing:border-box!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card{flex:0 0 auto!important;min-width:0!important;width:auto!important;max-width:none!important;min-height:36px!important;height:36px!important;padding:5px 10px!important;box-sizing:border-box!important}.iot-kpi-card{display:flex!important;align-items:center!important;gap:8px!important;min-height:36px!important;height:36px!important;padding:5px 10px!important;margin:0!important;text-align:left;color:var(--shell-text)!important;border:0!important;border-radius:var(--dash-radius-md)!important;box-shadow:none!important;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.iot-kpi-card:hover,.iot-kpi-card:focus-visible{background:color-mix(in srgb,var(--shell-panel-soft) 100%,transparent)!important;box-shadow:var(--dash-shadow-soft)!important;outline:none}.iot-kpi-card--status{cursor:default}.iot-kpi-card--status:hover,.iot-kpi-card--status:focus-visible{transform:none;box-shadow:none!important}.iot-kpi-card__icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:26px!important;height:26px!important;min-width:26px!important;flex:0 0 26px!important;border-radius:8px!important;font-size:.68rem!important;color:var(--dash-accent-device)!important;background:color-mix(in srgb,var(--dash-accent-device) 14%,transparent)!important}.iot-kpi-card--sensor .iot-kpi-card__icon{color:var(--dash-accent-sensor)!important;background:color-mix(in srgb,var(--dash-accent-sensor) 14%,transparent)!important}.iot-kpi-card__icon--success{color:var(--dash-accent-success)!important;background:color-mix(in srgb,var(--dash-accent-success) 14%,transparent)!important}.iot-kpi-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}.iot-kpi-card__label{display:block;color:var(--shell-muted)!important;font-size:.52rem!important;font-weight:600!important;letter-spacing:.05em;line-height:1.15!important;text-transform:uppercase;white-space:nowrap}.iot-kpi-card__value-row{display:flex;align-items:center;flex-wrap:nowrap;gap:5px}.iot-kpi-card__value{color:var(--shell-text)!important;font-size:.86rem!important;font-weight:700!important;letter-spacing:-.02em;line-height:1!important;white-space:nowrap}.iot-kpi-card--device .iot-kpi-card__value{color:var(--dash-accent-device)!important}.iot-kpi-card--sensor .iot-kpi-card__value{color:var(--dash-accent-sensor)!important}.iot-kpi-card__status{color:var(--dash-accent-success)!important;font-size:.74rem!important;font-weight:700!important;line-height:1.15!important}.iot-kpi-card__badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.02em;line-height:1}.iot-kpi-card__badge--success{color:#047857;background:color-mix(in srgb,#10b981 16%,transparent)}.iot-kpi-card__badge--info{color:#6d28d9;background:color-mix(in srgb,#8b5cf6 16%,transparent)}[data-theme=dark] .iot-kpi-card__badge--success{color:#6ee7b7;background:color-mix(in srgb,#10b981 22%,transparent)}[data-theme=dark] .iot-kpi-card__badge--info{color:#c4b5fd;background:color-mix(in srgb,#8b5cf6 22%,transparent)}.iot-dashboard .iot-dashboard__header-actions{display:inline-flex;align-items:center;align-self:center;gap:8px;flex:0 0 auto!important;flex-wrap:nowrap;width:auto!important;max-width:none!important;margin-left:auto!important}.iot-dashboard .iot-dashboard__header-sort{flex:0 1 auto;min-width:0;max-width:100%;margin-left:auto!important}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;min-width:0!important;min-height:36px!important;height:36px!important;padding:0!important;margin:0!important;color:var(--shell-text)!important;border:0!important;border-radius:var(--dash-radius-md)!important;background:var(--shell-card-bg)!important;box-shadow:var(--dash-shadow-soft)!important;font-size:.58rem!important;font-weight:600!important;line-height:1!important;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium:hover,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium:focus,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium:active,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium.show{color:var(--shell-text)!important;background:var(--shell-card-bg)!important;border-color:transparent!important;box-shadow:var(--dash-shadow-soft)!important}.iot-dashboard .dashboard-sort-toggle__direction{padding:0 8px!important;min-height:36px!important;height:36px!important;border-right:1px solid color-mix(in srgb,var(--shell-border) 55%,transparent)!important;font-size:.58rem!important;opacity:1!important}.iot-dashboard .dashboard-sort-toggle__direction:hover{background:color-mix(in srgb,var(--shell-text) 4%,transparent)!important}.iot-dashboard .dashboard-sort-toggle__open{padding:0 10px!important;gap:5px!important;min-height:36px!important;height:36px!important}.iot-dashboard .dashboard-sort-toggle__label{color:var(--shell-muted)!important;font-size:.54rem!important;font-weight:500!important;letter-spacing:.02em!important}.iot-dashboard .dashboard-sort-toggle__value{padding-left:6px!important;margin-left:2px!important;color:var(--shell-text)!important;border-left:1px solid color-mix(in srgb,var(--shell-border) 55%,transparent)!important;font-size:.58rem!important;font-weight:600!important;opacity:1!important}.iot-dashboard .dashboard-sort-toggle__icon,.iot-dashboard .dashboard-sort-toggle__caret{font-size:.54rem!important;color:var(--shell-text)!important;opacity:.72!important}.iot-dashboard .dashboard-sort-menu{min-width:200px!important;margin-top:6px!important;padding:4px!important;color:var(--shell-text)!important;border:1px solid var(--shell-border)!important;border-radius:var(--dash-radius-sm)!important;background:var(--shell-card-bg)!important;box-shadow:var(--dash-shadow-soft)!important}.iot-dashboard .dashboard-sort-menu .dropdown-item{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-height:34px!important;height:34px!important;padding:0 10px!important;margin:0!important;border-radius:8px!important;color:var(--shell-text)!important;background:transparent!important;font-size:.75rem!important;font-weight:600!important;line-height:1!important}.iot-dashboard .dashboard-sort-menu .dropdown-item.active,.iot-dashboard .dashboard-sort-menu .dropdown-item:active,.iot-dashboard .dashboard-sort-menu .dropdown-item:focus,.iot-dashboard .dashboard-sort-menu .dropdown-item.active:focus,.iot-dashboard .dashboard-sort-menu .dropdown-item.active:hover{color:var(--shell-text)!important;background:var(--shell-panel-soft)!important}.iot-dashboard .dashboard-sort-menu .dropdown-item:hover:not(.active){color:var(--shell-text)!important;background:color-mix(in srgb,var(--shell-panel-soft) 70%,transparent)!important}.iot-dashboard .dashboard-sort-menu .dashboard-sort-menu__text{flex:1;color:inherit!important;font-weight:600!important;cursor:pointer}.iot-dashboard .dashboard-sort-menu .dashboard-sort-menu__check{color:var(--dash-accent-device)!important;font-size:.68rem!important;opacity:1!important}[data-theme=dark] .iot-dashboard .dashboard-sort-menu{background:var(--shell-card-bg)!important;border-color:var(--shell-border)!important}[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item{color:var(--shell-text)!important}[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item.active,[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item:active,[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item:focus,[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item.active:focus,[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item.active:hover{color:var(--shell-text)!important;background:var(--shell-panel-soft)!important}[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dropdown-item:hover:not(.active){background:color-mix(in srgb,var(--shell-panel-soft) 80%,transparent)!important}[data-theme=dark] .iot-dashboard .dashboard-sort-menu .dashboard-sort-menu__check{color:#60a5fa!important}.iot-dashboard__section{margin-top:var(--dash-space-xs)}.iot-dashboard__section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--dash-space-md);margin-bottom:var(--dash-space-lg)}.iot-dashboard__section-title{margin:0;color:var(--shell-text)!important;font-size:1.1rem;font-weight:700;letter-spacing:-.02em}.iot-dashboard__section-desc{margin:6px 0 0;color:var(--shell-muted)!important;font-size:.86rem;font-weight:400;line-height:1.45}.iot-dashboard .iot-dashboard__card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;width:100%;max-width:100%;min-width:0;margin:0!important;box-sizing:border-box}.iot-dashboard .iot-dashboard__card-grid .iot-dashboard__card-col{min-width:0;width:100%;max-width:100%;padding:0!important;box-sizing:border-box}.iot-dashboard .iot-category-card{position:relative;width:100%;max-width:100%;min-width:0;min-height:138px!important;box-sizing:border-box;border:0!important;border-radius:var(--dash-radius-lg)!important;background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--iot-card-accent) 14%,transparent),transparent 42%),linear-gradient(160deg,color-mix(in srgb,var(--shell-card-bg) 98%,#ffffff),color-mix(in srgb,var(--shell-card-bg-2) 94%,transparent))!important;box-shadow:var(--dash-shadow-soft)!important;overflow:hidden;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s cubic-bezier(.22,1,.36,1)}.iot-dashboard .iot-category-card:before{display:block!important;content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--iot-card-accent),color-mix(in srgb,var(--iot-card-accent) 35%,transparent));opacity:.85;pointer-events:none}.iot-dashboard .iot-category-card:hover{border-color:transparent!important;box-shadow:var(--dash-shadow-hover)!important}.iot-dashboard .iot-category-card__link{min-height:138px!important;padding:11px 13px 10px!important}.iot-dashboard .iot-category-card__header{align-items:flex-start!important;gap:10px!important;margin-bottom:10px!important}.iot-dashboard .iot-category-card__signal{width:38px!important;height:38px!important;flex:0 0 38px!important;border:0!important;border-radius:11px!important;color:#fff!important;background:linear-gradient(145deg,color-mix(in srgb,var(--iot-card-accent) 88%,#ffffff),var(--iot-card-accent))!important;box-shadow:0 6px 16px color-mix(in srgb,var(--iot-card-accent) 28%,transparent),inset 0 1px #ffffff38!important;font-size:.92rem!important}.iot-dashboard .iot-category-card__kicker{color:var(--shell-text)!important;font-size:.76rem!important;font-weight:700!important;letter-spacing:-.01em!important;text-transform:none!important}.iot-dashboard .iot-category-card__metric-label{display:block;margin-top:3px;color:var(--shell-muted)!important;font-size:.58rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.iot-dashboard .iot-category-card h3{gap:6px!important;margin:3px 0 0!important;color:var(--shell-text)!important;font-size:clamp(1.28rem,1.92vw,1.68rem)!important;font-weight:700!important;letter-spacing:-.03em!important;overflow-wrap:anywhere}.iot-dashboard .iot-category-card h3 small{color:var(--iot-card-accent)!important;font-size:.38em!important;font-weight:600!important;opacity:.9!important}.iot-dashboard .iot-category-card__cta{width:29px!important;height:29px!important;margin-top:3px;color:var(--iot-card-accent)!important;border:0!important;border-radius:10px!important;background:color-mix(in srgb,var(--iot-card-accent) 12%,transparent)!important;box-shadow:none!important;font-size:.6rem!important;transition:transform .2s ease,background .2s ease,color .2s ease}.iot-dashboard .iot-category-card:hover .iot-category-card__cta,.iot-dashboard .iot-category-card__link:focus-visible .iot-category-card__cta{color:#fff!important;background:var(--iot-card-accent)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--iot-card-accent) 32%,transparent)!important}.iot-dashboard .iot-category-card__today{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;align-items:end!important;gap:8px!important;width:100%!important;margin-left:0!important;padding:8px 11px!important;border:0!important;border-radius:var(--dash-radius-md)!important;background:color-mix(in srgb,var(--shell-today-bg) 88%,transparent)!important}.iot-dashboard .iot-category-card__delta-label,.iot-dashboard .iot-category-card__chart-label{display:block;margin-bottom:3px;color:var(--shell-muted)!important;font-size:.54rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.iot-dashboard .iot-category-card__delta-value{display:flex!important;align-items:baseline!important;gap:5px!important;color:var(--iot-card-accent)!important;font-size:.96rem!important;font-weight:700!important;line-height:1!important}.iot-dashboard .iot-category-card__delta-value small{font-size:.62em!important;font-weight:600!important;opacity:.9!important}.iot-dashboard .iot-category-card__chart{min-width:0}.iot-dashboard .iot-sparkline{width:100%!important;height:45px!important;color:var(--iot-card-accent);overflow:visible}.iot-dashboard .iot-sparkline-wrap{min-height:45px!important}[data-theme=dark] .iot-dashboard .iot-sparkline-wrap{--spark-tooltip-surface: #f8fafc;--spark-tooltip-label: #64748b;--spark-tooltip-value: #0f172a;--spark-tooltip-border: rgba(15, 23, 42, .12);--spark-tooltip-head-bg: #eef2f7;--spark-tooltip-shadow: 0 8px 20px rgba(15, 23, 42, .22)}.iot-dashboard .iot-sparkline__line{fill:none!important;stroke-width:2.5!important;stroke-linecap:round!important;stroke-linejoin:round!important;filter:drop-shadow(0 2px 6px color-mix(in srgb,var(--iot-card-accent) 24%,transparent))}.iot-dashboard .iot-sparkline__dot{fill:var(--iot-card-accent)!important;stroke:#ffffffe6!important;stroke-width:2!important}.iot-sparkline-tooltip-portal{pointer-events:none;min-width:168px;max-width:240px;padding:8px 10px 6px;border-radius:10px;font-size:.72rem;white-space:normal;--spark-tooltip-surface: #0f172a;--spark-tooltip-label: #94a3b8;--spark-tooltip-value: #f8fafc;--spark-tooltip-border: rgba(148, 163, 184, .24);--spark-tooltip-head-bg: #1e293b;--spark-tooltip-shadow: 0 8px 20px rgba(2, 6, 23, .28);background:var(--spark-tooltip-surface);color:var(--spark-tooltip-value);border:1px solid var(--spark-tooltip-border);box-shadow:var(--spark-tooltip-shadow)}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-time{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--spark-tooltip-border);font-size:.68rem;font-weight:700;color:var(--spark-tooltip-value);text-align:center;line-height:1.25;white-space:nowrap}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.64rem;line-height:1.25}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table thead th{padding:4px 8px;font-size:.58rem;font-weight:700;text-align:left;color:var(--spark-tooltip-label);background:var(--spark-tooltip-head-bg);border-bottom:1px solid var(--spark-tooltip-border)}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table thead th:last-child{width:42%;text-align:right}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table tbody th,.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table tbody td{padding:5px 8px;vertical-align:top;border-bottom:1px solid var(--spark-tooltip-border);background:var(--spark-tooltip-surface)}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table tbody th{font-weight:600;color:var(--spark-tooltip-label);white-space:nowrap}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table tbody td{text-align:right;font-weight:700;color:var(--spark-tooltip-value)}.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table tbody tr:last-child th,.iot-sparkline-tooltip-portal .iot-sparkline__tooltip-table tbody tr:last-child td{border-bottom:0}[data-theme=dark] .iot-sparkline-tooltip-portal{--spark-tooltip-surface: #f8fafc;--spark-tooltip-label: #64748b;--spark-tooltip-value: #0f172a;--spark-tooltip-border: rgba(15, 23, 42, .12);--spark-tooltip-head-bg: #eef2f7;--spark-tooltip-shadow: 0 8px 20px rgba(15, 23, 42, .22)}.iot-health-modal .iot-health-modal__stats{gap:6px!important;margin-bottom:12px!important;padding:6px 8px!important}.iot-health-modal .iot-health-modal__stat{padding:4px 6px!important;border:0!important;border-radius:var(--dash-radius-md)!important;background:transparent!important;box-shadow:none!important}.iot-health-modal .iot-health-modal__stat-label{margin-bottom:2px!important;font-size:.64rem!important;font-weight:600!important;letter-spacing:.06em;text-transform:uppercase}.iot-health-modal .iot-health-modal__stat-value{font-size:1.1rem!important;font-weight:700!important;letter-spacing:-.02em}.iot-health-modal .iot-status-badge{min-width:72px;padding:5px 12px;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.03em}@media(max-width:991px){.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium,.iot-dashboard .dashboard-sort-toggle__direction,.iot-dashboard .dashboard-sort-toggle__open{min-height:36px!important;height:36px!important}}@media(max-width:767px){.iot-dashboard{padding:0 0 var(--dash-space-lg)!important}.iot-dashboard .container-fluid.iot-dashboard__inner{padding-left:var(--dash-space-md)!important;padding-right:var(--dash-space-md)!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:8px!important;padding:0!important}.iot-dashboard .iot-dashboard__kpi-group{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:8px!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card{flex:none!important;width:100%!important;min-width:0!important;min-height:56px!important;height:auto!important;padding:10px 12px!important;gap:10px!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card--status{grid-column:1/-1}.iot-dashboard .iot-dashboard__header-actions,.iot-dashboard .iot-dashboard__header-sort{grid-column:1/-1;width:100%!important;margin-left:0!important}.iot-dashboard .iot-dashboard__header-actions{display:flex!important;flex-direction:column;align-items:stretch;gap:8px}.iot-dashboard .iot-dashboard__header-actions .dashboard-sort-dropdown,.iot-dashboard .iot-dashboard__header-sort .dashboard-sort-dropdown,.iot-dashboard .dashboard-sort-dropdown,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium{width:100%!important;max-width:100%!important}.iot-dashboard .iot-kpi-card__icon{width:32px!important;height:32px!important;min-width:32px!important;flex-basis:32px!important;font-size:.78rem!important;border-radius:10px!important}.iot-dashboard .iot-kpi-card__body{flex:1 1 auto!important;min-width:0!important}.iot-dashboard .iot-kpi-card__label{font-size:.58rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-dashboard .iot-kpi-card__value-row{width:100%;justify-content:space-between;flex-wrap:nowrap;gap:6px}.iot-dashboard .iot-kpi-card__value{font-size:.95rem!important}.iot-dashboard .iot-kpi-card__status{font-size:.88rem!important}.iot-dashboard .iot-kpi-card__badge{flex-shrink:0;margin-left:auto}.iot-dashboard__section-head{flex-direction:column;align-items:flex-start;gap:var(--dash-space-xs);margin-bottom:var(--dash-space-md)}.iot-dashboard .iot-category-card__today{grid-template-columns:1fr!important;gap:12px!important}.iot-dashboard .iot-category-card__link{padding:11px 13px 10px!important}}@media(max-width:400px){.iot-dashboard .iot-dashboard__kpi-group{grid-template-columns:1fr!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card{min-height:52px!important}}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}.iot-dashboard .iot-kpi-card,.iot-dashboard .iot-category-card,.iot-dashboard .iot-category-card__today,.iot-dashboard .iot-dashboard__topbar,.iot-dashboard .iot-dashboard__summary-bar,.iot-dashboard .iot-health-card,.iot-dashboard .iot-dashboard__date-card,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle{border:0!important;outline:0!important}.iot-dashboard .iot-kpi-card,.iot-dashboard .iot-category-card,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle,.iot-dashboard .dashboard-sort-dropdown .dashboard-sort-toggle.dashboard-sort-toggle--premium{border-radius:var(--dash-radius-md)!important;background:var(--shell-card-bg)!important;box-shadow:var(--dash-shadow-soft)!important}.iot-dashboard .iot-category-card__today{background:color-mix(in srgb,var(--shell-today-bg) 88%,transparent)!important}.sld-electrical-page{--sld-text-dark: #191919;--sld-text-light: #ffffff;--sld-page-bg: #ffffff;--sld-diagram-min-width: 1300px;box-sizing:border-box;width:100%;height:100%;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--sld-page-bg);padding:8px}.sld-electrical-page .sld-diagram{display:block;width:max(100%,var(--sld-diagram-min-width));min-width:var(--sld-diagram-min-width);max-width:none;height:auto;font-family:Segoe UI,PingFang SC,Microsoft YaHei,Arial,sans-serif}.sld-text-heading{fill:var(--sld-text-dark, #191919);font-family:inherit;font-size:28px}.sld-text-label{fill:var(--sld-text-dark, #191919);font-family:inherit;font-size:25px}.sld-text-value{fill:var(--sld-text-light, #ffffff);font-family:inherit;font-size:28px}.sld-text-underline-lg{font-size:23px;text-decoration:underline}.sld-text-underline-md{font-size:20px;text-decoration:underline}[data-theme=dark] .sld-electrical-page{--sld-text-dark: #e8eaed;--sld-text-light: #0f1419;--sld-page-bg: #0f1419}.app-main-content:has(.sld-electrical-page),.mainbody:has(.sld-electrical-page){display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;max-height:none!important;overflow:hidden!important;padding:0!important}.app-main-content:has(.sld-electrical-page)>div,.app-main-content:has(.sld-electrical-page) .fade,.mainbody:has(.sld-electrical-page)>div,.mainbody:has(.sld-electrical-page) .fade{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;overflow:hidden!important}.c-body:has(.sld-electrical-page){display:flex;flex-direction:column;min-height:0;overflow:hidden}.app-main-content:has(.hmi-viewer--fullscreen),.mainbody:has(.hmi-viewer--fullscreen){display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden!important}.app-main-content:has(.hmi-viewer--fullscreen)>div,.app-main-content:has(.hmi-viewer--fullscreen) .fade,.mainbody:has(.hmi-viewer--fullscreen)>div,.mainbody:has(.hmi-viewer--fullscreen) .fade{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important}.hmi-viewer{--hmi-toolbar-bg: #e8eef5;--hmi-toolbar-border: #b4c4d6;--hmi-title: #12304d;--hmi-muted: #60768d;--hmi-stage-bg: #c7d5e4;--hmi-control-bg: #ffffff;--hmi-control-border: #c0cede;--hmi-control-hover: #eef3f9;--hmi-control-active: #dbe7f4;--hmi-grid-line: rgba(31, 78, 121, .1);--hmi-fallback-bg: rgba(31, 78, 121, .13);--hmi-live-border: #86efac;--hmi-live-bg: #ecfdf3;--hmi-edit-bg: #1f4e79;--hmi-edit-hover: #173a5c;--hmi-edit-text: #ffffff;--hmi-accent: #15803d;--hmi-brand-bg: linear-gradient(145deg, #2e5f8f, #1f4e79);--hmi-ctrl-h: 34px;display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:var(--hmi-stage-bg);color:var(--hmi-title)}.hmi-viewer--fullscreen{flex:1 1 auto;min-height:calc(100vh - 64px)}[data-theme=dark] .hmi-viewer{--hmi-toolbar-bg: #122338;--hmi-toolbar-border: rgba(103, 137, 190, .28);--hmi-title: #e8eef7;--hmi-muted: #93a7bf;--hmi-stage-bg: #08121f;--hmi-control-bg: #0d1b2c;--hmi-control-border: rgba(103, 137, 190, .34);--hmi-control-hover: rgba(255, 255, 255, .08);--hmi-control-active: rgba(47, 111, 237, .22);--hmi-grid-line: rgba(147, 197, 253, .06);--hmi-fallback-bg: rgba(46, 79, 124, .2);--hmi-live-border: rgba(34, 197, 94, .4);--hmi-live-bg: rgba(34, 197, 94, .12);--hmi-edit-bg: #2f6fed;--hmi-edit-hover: #2459c4;--hmi-accent: #22c55e;--hmi-brand-bg: linear-gradient(145deg, #3b82f6, #1d4ed8)}.hmi-viewer--loading{align-items:center;justify-content:center}.hmi-viewer__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;height:52px;padding:0 14px;border-bottom:1px solid var(--hmi-toolbar-border);background:var(--hmi-toolbar-bg)}.hmi-viewer__toolbar-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto}.hmi-viewer__toolbar-actions{display:flex;flex-direction:row;align-items:center;align-self:center;gap:10px;flex-shrink:0;height:var(--hmi-ctrl-h)}.hmi-viewer__toolbar-actions>*{height:var(--hmi-ctrl-h)!important;margin:0!important;align-self:center!important}.hmi-viewer__brand-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;background:var(--hmi-brand-bg);color:#fff;box-shadow:0 3px 8px #1f4e7940}.hmi-viewer__brand-mark .c-icon{width:15px;height:15px}.hmi-viewer__title-block{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.hmi-viewer__eyebrow{font-size:9px;font-weight:800;letter-spacing:.12em;line-height:1;color:var(--hmi-muted)}.hmi-viewer__title{margin:0;font-size:14px;font-weight:800;letter-spacing:.03em;line-height:1.1;color:var(--hmi-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hmi-viewer__control-group{display:inline-flex;flex-direction:row;align-items:stretch;height:var(--hmi-ctrl-h)!important;border:1px solid var(--hmi-control-border);border-radius:8px;background:var(--hmi-control-bg);overflow:hidden;box-sizing:border-box;box-shadow:0 1px 2px #0f27440d}.hmi-viewer__toolbar button.hmi-viewer__ctrl-btn,.hmi-viewer__toolbar button.hmi-viewer__ctrl-value,.hmi-viewer__toolbar button.hmi-viewer__ctrl-fit{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--hmi-title);cursor:pointer;font-weight:700;line-height:1!important;box-shadow:none!important;transform:none!important;position:static!important;top:auto!important;vertical-align:middle;transition:background .15s ease}.hmi-viewer__toolbar button.hmi-viewer__ctrl-btn{width:34px;flex:0 0 34px;font-size:18px;border-right:1px solid var(--hmi-control-border)!important}.hmi-viewer__toolbar button.hmi-viewer__ctrl-value{min-width:52px;flex:0 0 auto;padding:0 8px!important;font-size:12px;font-variant-numeric:tabular-nums;border-right:1px solid var(--hmi-control-border)!important;color:var(--hmi-muted)}.hmi-viewer__toolbar button.hmi-viewer__ctrl-fit{flex:0 0 auto;padding:0 12px!important;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--hmi-muted);border-left:1px solid var(--hmi-control-border)!important}.hmi-viewer__toolbar button.hmi-viewer__ctrl-btn:hover,.hmi-viewer__toolbar button.hmi-viewer__ctrl-value:hover,.hmi-viewer__toolbar button.hmi-viewer__ctrl-fit:hover{background:var(--hmi-control-hover)!important}.hmi-viewer__toolbar button.hmi-viewer__ctrl-btn:active,.hmi-viewer__toolbar button.hmi-viewer__ctrl-value:active,.hmi-viewer__toolbar button.hmi-viewer__ctrl-fit:active{background:var(--hmi-control-active)!important}.hmi-viewer__toolbar button.hmi-viewer__edit-btn{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:6px;height:var(--hmi-ctrl-h)!important;min-height:var(--hmi-ctrl-h)!important;max-height:var(--hmi-ctrl-h)!important;padding:0 16px!important;margin:0!important;border:0!important;border-radius:8px!important;background:var(--hmi-edit-bg)!important;color:var(--hmi-edit-text)!important;font-size:12px!important;font-weight:700!important;letter-spacing:.02em;line-height:1!important;cursor:pointer;box-sizing:border-box!important;box-shadow:0 2px 6px #1f4e7933!important;transform:none!important;position:static!important;top:auto!important;float:none!important;vertical-align:middle;transition:background .15s ease}.hmi-viewer__toolbar button.hmi-viewer__edit-btn:hover{background:var(--hmi-edit-hover)!important}.hmi-viewer__toolbar button.hmi-viewer__edit-btn>span{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;margin:0!important;padding:0!important}.hmi-viewer__toolbar button.hmi-viewer__edit-btn .hmi-viewer__edit-glyph{font-size:14px;line-height:1!important;transform:translateY(-.5px)}.hmi-viewer__stage{position:relative;flex:1 1 auto;min-height:0;overflow:hidden;padding:0;background:var(--hmi-stage-bg)}.hmi-viewer__iframe{display:block;width:100%;height:100%;min-height:0;border:0;background:var(--hmi-stage-bg)}.hmi-viewer__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;align-items:center;justify-content:center;background:var(--hmi-stage-bg)}.hmi-viewer__overlay--error{flex-direction:column;gap:10px;color:var(--hmi-muted);font-size:14px;font-weight:600}.hmi-viewer__overlay--error .c-icon{width:24px;height:24px}.hmi-viewer__stage-grid{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--hmi-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--hmi-grid-line) 1px,transparent 1px);background-size:24px 24px;opacity:.7}.hmi-viewer__canvas-wrap{position:relative;z-index:1;flex-shrink:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.hmi-viewer__canvas{position:relative;background:transparent}.hmi-viewer__world{position:relative;width:100%;height:100%}.hmi-viewer__svg-node,.hmi-viewer__pipe,.hmi-viewer__fallback-node{pointer-events:none;-webkit-user-select:none;user-select:none}.hmi-viewer__svg-node{object-fit:contain}.hmi-viewer__fallback-node{display:flex;align-items:center;justify-content:center;background:var(--hmi-fallback-bg);border:1px dashed var(--hmi-toolbar-border);color:var(--hmi-muted);font-size:11px;text-align:center;padding:4px}.hmi-viewer__empty{position:relative;z-index:1;color:var(--hmi-muted);font-size:14px;text-align:center;padding:20px}@media(max-width:720px){.hmi-viewer__toolbar{height:auto;min-height:52px;padding:8px 10px;flex-wrap:wrap}.hmi-viewer__toolbar-actions{width:100%;justify-content:flex-end}}:root{--iot-action-add: #2563eb;--iot-action-edit: #1d4ed8;--iot-action-delete: #b91c1c;--iot-action-key: #ffab00;--iot-setup-viewport-h: calc(100dvh - var(--header-height, 48px));--iot-table-row-even: var(--bg-elevated);--iot-table-row-odd: color-mix(in srgb, var(--bg-secondary) 72%, var(--bg-elevated));--iot-table-row-hover: color-mix(in srgb, var(--color-primary) 8%, var(--bg-elevated));--iot-table-header-bg: var(--bg-table-header);--iot-table-border: color-mix(in srgb, var(--border-color) 75%, transparent)}[data-theme=dark]{--iot-action-add: #60a5fa;--iot-action-edit: #3b82f6;--iot-action-delete: #f87171;--iot-table-row-even: var(--bg-elevated);--iot-table-row-odd: color-mix(in srgb, var(--bg-secondary) 88%, #070b12);--iot-table-row-hover: color-mix(in srgb, var(--color-primary) 12%, var(--bg-elevated));--iot-table-header-bg: var(--bg-table-header);--iot-table-border: color-mix(in srgb, var(--border-color) 90%, transparent)}.iot-setup-filters,.iot-setup-search{margin-top:var(--space-2);background:transparent;border:none;border-radius:0;box-shadow:none;overflow:visible}.iot-setup-filters__head,.iot-setup-search__head{display:none!important}.iot-setup-filters__body,.iot-setup-search__body{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 16px;padding:16px}.iot-setup-filters__body>.form-row:empty,.iot-setup-search__body>.form-row:empty{display:none}.iot-setup-filters__body .form-row,.iot-setup-filters__body .row,.iot-setup-search__body .form-row,.iot-setup-search__body .row{display:flex;flex:1 1 320px;flex-wrap:wrap;align-items:flex-end;gap:14px 16px;margin:0;min-width:0}.iot-setup-filters__body .form-group,.iot-setup-filters__body .col-md-height,.iot-setup-filters__body [class*=col-md-],.iot-setup-search__body .form-group,.iot-setup-search__body .col-md-height,.iot-setup-search__body [class*=col-md-]{flex:1 1 180px;min-width:160px;max-width:240px;height:auto!important;min-height:0;margin:0!important;padding:0!important;background:none!important;border:none!important;box-shadow:none!important}.iot-setup-filters__body .iot-setup-field,.iot-setup-search__body .iot-setup-field{gap:5px;width:100%}.iot-setup-filters__body .form-label-themed,.iot-setup-search__body .form-label-themed{font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;color:var(--text-secondary)!important;margin-bottom:0;line-height:1.2;text-align:left}.iot-setup-filters__body .custom-select,.iot-setup-filters__body input.custom-select,.iot-setup-filters__body select.custom-select,.iot-setup-search__body .custom-select,.iot-setup-search__body input.custom-select,.iot-setup-search__body select.custom-select{height:36px!important;padding:7px 10px!important;border:1px solid var(--border-color-input)!important;border-radius:6px!important;background:var(--bg-input)!important;font-size:.8125rem;width:100%}.iot-setup-filters__body .custom-select:focus,.iot-setup-filters__body input.custom-select:focus,.iot-setup-filters__body select.custom-select:focus,.iot-setup-search__body .custom-select:focus,.iot-setup-search__body input.custom-select:focus,.iot-setup-search__body select.custom-select:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 18%,transparent)!important}.iot-setup-filters__body textarea.custom-select.form-expandable-textarea,.iot-setup-search__body textarea.custom-select.form-expandable-textarea{height:36px!important;min-height:36px;max-height:180px;overflow:hidden;resize:vertical;line-height:1.35;transition:height .2s ease,min-height .2s ease,max-height .2s ease}.iot-setup-filters__body textarea.custom-select.form-expandable-textarea.form-expandable-textarea--expanded,.iot-setup-search__body textarea.custom-select.form-expandable-textarea.form-expandable-textarea--expanded{height:auto!important;min-height:96px;max-height:240px;overflow-y:auto;resize:vertical}.iot-setup-filters__body .custom-select-wrapper,.iot-setup-search__body .custom-select-wrapper{width:100%}.iot-setup-filters__body .custom-select-wrapper [class*=-control],.iot-setup-search__body .custom-select-wrapper [class*=-control]{min-height:36px!important;border:1px solid var(--border-color-input)!important;border-radius:6px!important;background:var(--bg-input)!important;box-shadow:none!important;font-size:.8125rem}.iot-setup-filters__body .custom-select-wrapper [class*=-menu],.iot-setup-search__body .custom-select-wrapper [class*=-menu]{border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.iot-setup-filters__body .container-buttons,.iot-setup-search__body .container-buttons{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:5px;margin:0!important;padding:0!important;border:none!important}.iot-setup-filters__body .container-buttons .iot-setup-btn,.iot-setup-filters__body .container-buttons .btn,.iot-setup-search__body .container-buttons .iot-setup-btn,.iot-setup-search__body .container-buttons .btn{min-width:0;min-height:30px;padding:5px 9px;font-size:.6rem!important}.iot-setup-filters__body .create-tags-actions,.iot-setup-search__body .create-tags-actions{margin-left:auto;flex-shrink:0}@media(max-width:767px){.iot-setup-filters__body,.iot-setup-search__body{flex-direction:column;align-items:stretch}.iot-setup-filters__body .form-row,.iot-setup-filters__body .row,.iot-setup-search__body .form-row,.iot-setup-search__body .row{flex:1 1 100%}.iot-setup-filters__body .form-group,.iot-setup-filters__body .col-md-height,.iot-setup-filters__body [class*=col-md-],.iot-setup-search__body .form-group,.iot-setup-search__body .col-md-height,.iot-setup-search__body [class*=col-md-]{flex:1 1 100%;max-width:100%}.iot-setup-filters__body .container-buttons,.iot-setup-search__body .container-buttons{width:100%;padding-top:12px!important;border-top:1px solid var(--border-color)!important;justify-content:stretch}.iot-setup-filters__body .container-buttons .iot-setup-btn,.iot-setup-search__body .container-buttons .iot-setup-btn{flex:1}}.iot-filter-host{display:flex;align-items:center;margin-top:0;margin-bottom:var(--space-3)}.iot-filter-host:empty{display:none;margin:0}.iot-filter-trigger{display:inline-flex;align-items:center;gap:8px;min-width:0!important;margin-top:0!important;min-height:40px;padding:8px 14px;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-elevated);color:var(--text-primary);font-size:.8125rem;font-weight:600;line-height:1;box-shadow:var(--shadow-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.iot-filter-trigger--inline{min-height:34px;height:34px;padding:6px 12px;font-size:.75rem;border-radius:var(--border-radius-md);box-shadow:none;background:var(--bg-elevated);border-color:color-mix(in srgb,var(--color-primary) 18%,var(--border-color))}.iot-filter-trigger--inline .iot-filter-trigger__icon{width:auto;height:auto;border-radius:0;background:transparent;font-size:.72rem}.iot-filter-trigger--inline .iot-filter-trigger__label{font-size:.75rem;font-weight:700}.iot-filter-trigger--inline .iot-filter-trigger__badge{min-width:20px;height:20px;padding:0 6px;font-size:.64rem}.iot-filter-trigger--icon-only{width:34px;min-width:34px!important;height:34px;min-height:34px;padding:0;justify-content:center;align-items:center;position:relative;border-radius:var(--border-radius-md)}.iot-filter-trigger--icon-only .iot-filter-trigger__label{display:none}.iot-filter-trigger--icon-only .iot-filter-trigger__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:0;background:transparent!important;font-size:.75rem;color:var(--color-primary);line-height:1}.iot-filter-trigger--icon-only .iot-filter-trigger__icon svg{display:block;width:14px;height:14px;margin:0}.iot-filter-trigger--icon-only .iot-filter-trigger__badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;font-size:.58rem;line-height:16px;border:2px solid var(--bg-elevated);border-radius:var(--border-radius-sm)}.iot-filter-trigger:hover{border-color:color-mix(in srgb,var(--color-primary) 35%,var(--border-color));box-shadow:0 4px 14px #071a3514}.iot-filter-trigger:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent)}.iot-filter-trigger__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--border-radius-sm);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent);font-size:.78rem}.iot-filter-trigger__label{color:var(--brand-mid);letter-spacing:.01em}.iot-filter-trigger__badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--color-primary);color:var(--text-on-primary);font-size:.68rem;font-weight:700;line-height:1}.iot-filter-drawer-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1080;pointer-events:none}.iot-filter-drawer__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;height:100%;min-width:0;min-height:0;margin:0;padding:0;border:none!important;outline:none!important;box-shadow:none!important;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent!important;pointer-events:auto;cursor:pointer}.iot-filter-drawer__backdrop:hover,.iot-filter-drawer__backdrop:focus,.iot-filter-drawer__backdrop:focus-visible,.iot-filter-drawer__backdrop:active{background:transparent!important;border:none!important;outline:none!important;box-shadow:none!important}.iot-filter-drawer{position:absolute;top:0;right:0;z-index:1;display:flex;flex-direction:column;width:min(400px,100vw);max-width:100%;height:100%;pointer-events:auto;background:var(--bg-elevated);border-left:1px solid var(--border-color);box-shadow:var(--shadow-card),-8px 0 32px #071a351f;animation:iot-filter-drawer-in .22s ease;overflow:hidden}.iot-filter-drawer__header{display:flex;align-items:center;gap:8px;flex:0 0 auto;height:42px;min-height:42px;max-height:42px;position:sticky;top:0;z-index:4;padding:0 8px 0 12px;border-bottom:1px solid color-mix(in srgb,var(--text-inverse) 12%,transparent);background:var(--bg-sidebar);box-shadow:none}.iot-filter-drawer__header-main{display:inline-flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.iot-filter-drawer__header-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:var(--border-radius-sm);color:var(--text-on-primary);background:color-mix(in srgb,var(--text-inverse) 14%,transparent);font-size:.62rem}.iot-filter-drawer__title{margin:0;color:var(--text-on-primary);font-size:.875rem;font-weight:600;line-height:1.2;letter-spacing:.02em}.iot-filter-drawer__close{display:grid!important;place-items:center;align-self:center!important;flex-shrink:0;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;max-width:22px!important;max-height:22px!important;margin:0 0 0 auto!important;padding:0!important;border:1px solid color-mix(in srgb,var(--text-inverse) 28%,transparent)!important;border-radius:3px!important;background:color-mix(in srgb,var(--text-inverse) 10%,transparent)!important;color:var(--text-on-primary)!important;font-size:.55rem!important;font-weight:400!important;line-height:0!important;box-sizing:border-box!important;cursor:pointer;vertical-align:middle;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.iot-filter-drawer__close:hover{color:var(--text-on-primary)!important;border:1px solid color-mix(in srgb,var(--text-inverse) 42%,transparent)!important;background:color-mix(in srgb,var(--text-inverse) 18%,transparent)!important}.iot-filter-drawer__close-icon{display:flex!important;align-items:center;justify-content:center;width:9px;height:9px;font-size:.55rem;line-height:1;margin:0!important;padding:0!important;pointer-events:none}.iot-filter-drawer__close-icon svg.svg-inline--fa{display:block;width:9px!important;height:9px!important;margin:0!important;vertical-align:middle}.iot-filter-drawer__body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:14px;background:var(--bg-primary)}.iot-filter-drawer__body .form-row,.iot-filter-drawer__body .row{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:12px;width:100%;margin:0}.iot-filter-drawer__body .form-group,.iot-filter-drawer__body .col-md-height,.iot-filter-drawer__body [class*=col-md-],.iot-filter-drawer__body [class*=col-]{flex:0 0 auto;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;height:auto!important;background:none!important;border:none!important;box-shadow:none!important}.iot-filter-drawer__body .iot-setup-field{gap:5px;width:100%}.iot-filter-drawer__body .form-label-themed{color:var(--text-secondary)!important;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;text-align:left}.iot-filter-drawer__body .custom-select,.iot-filter-drawer__body input.custom-select,.iot-filter-drawer__body select.custom-select,.iot-filter-drawer__body .form-control{min-height:38px!important;padding:8px 10px!important;border-radius:var(--border-radius-md)!important;background:var(--bg-input)!important;border:1px solid var(--border-color-input)!important;font-size:.8125rem;color:var(--text-primary);box-shadow:none}.iot-filter-drawer__body .custom-select:focus,.iot-filter-drawer__body input.custom-select:focus,.iot-filter-drawer__body select.custom-select:focus,.iot-filter-drawer__body .form-control:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 18%,transparent)!important}.iot-filter-drawer__body .custom-select-wrapper [class*=-control]{min-height:38px!important;border-radius:var(--border-radius-md)!important;border-color:var(--border-color-input)!important;background:var(--bg-input)!important;box-shadow:none!important}.iot-filter-drawer__footer{flex:0 0 auto;position:sticky;bottom:0;z-index:4;padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-color);background:var(--bg-elevated);box-shadow:0 -4px 16px #071a350f}.iot-filter-drawer__actions{display:grid!important;grid-template-columns:1fr 1fr;align-items:stretch;gap:8px;width:100%;margin:0!important;padding:0!important;border:none!important;background:transparent!important}.iot-filter-drawer__actions.container-buttons,.iot-filter-drawer__actions.create-tags-actions{display:grid!important}.iot-filter-drawer__actions .iot-setup-btn{width:100%;min-width:0;min-height:36px;height:36px;padding:0 12px;font-size:.8125rem!important;font-weight:600;border-radius:var(--border-radius-md);letter-spacing:.01em}.iot-filter-drawer__actions .iot-setup-btn--ghost{color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--border-color-strong);box-shadow:none}.iot-filter-drawer__actions .iot-setup-btn--ghost:hover:not(:disabled),.iot-filter-drawer__actions .iot-setup-btn--ghost:focus:not(:disabled){color:var(--text-primary);background:var(--bg-secondary);border-color:var(--border-color-strong)}.iot-filter-drawer__actions .iot-setup-btn--primary{margin-left:0;color:var(--text-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);box-shadow:0 2px 8px color-mix(in srgb,var(--color-primary) 28%,transparent)}.iot-filter-drawer__actions .iot-setup-btn--primary:hover:not(:disabled),.iot-filter-drawer__actions .iot-setup-btn--primary:focus:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 12px color-mix(in srgb,var(--color-primary) 32%,transparent)}@keyframes iot-filter-drawer-in{0%{transform:translate(100%);opacity:.4}to{transform:translate(0);opacity:1}}[data-theme=dark] .iot-filter-drawer{box-shadow:var(--shadow-card),-8px 0 32px #00000059}[data-theme=dark] .iot-filter-drawer__header{background:linear-gradient(180deg,#3d6a9a,#2f5680,#264a6e);border-bottom-color:color-mix(in srgb,var(--color-primary) 18%,var(--border-color))}[data-theme=dark] .iot-filter-drawer__body{background:var(--bg-secondary)}[data-theme=dark] .iot-filter-drawer__footer{background:var(--bg-elevated);box-shadow:0 -4px 16px #00000038}[data-theme=dark] .iot-filter-drawer__actions .iot-setup-btn--ghost{background:var(--bg-input);border-color:var(--border-color-strong)}[data-theme=dark] .iot-filter-drawer__actions .iot-setup-btn--primary{box-shadow:0 2px 10px #00000047}@keyframes iot-setup-spin{to{transform:rotate(360deg)}}.iot-setup-btn,.btn{display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:5px 8px;font-size:.6rem!important;font-weight:600;line-height:1.2;min-height:30px;min-width:0;border-radius:var(--border-radius-md);border:1px solid transparent;margin:0!important;white-space:nowrap;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.iot-setup-btn:disabled,.btn:disabled{opacity:.55;cursor:not-allowed}.iot-setup-btn--ghost{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color-strong)}.iot-setup-btn--ghost:hover:not(:disabled),.iot-setup-btn--ghost:focus:not(:disabled){color:var(--text-primary);background:var(--bg-secondary);border-color:var(--border-color-strong);box-shadow:none}.iot-setup-btn--primary{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.iot-setup-btn--primary:hover:not(:disabled),.iot-setup-btn--primary:focus:not(:disabled){color:var(--text-on-primary);background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:none}.iot-setup-btn__spinner{display:inline-block;width:14px;height:14px;border:2px solid color-mix(in srgb,var(--text-on-primary) 35%,transparent);border-top-color:var(--text-on-primary);border-radius:50%;animation:iot-setup-spin .7s linear infinite}.iot-setup-page,.iot-setup-page h3,.iot-setup-page h4,.iot-setup-page h5{color:var(--text-primary)}.iot-setup-page .total-records{color:var(--text-secondary);font-size:var(--font-size-md)}.iot-setup-page .iot-setup-filters{margin-top:0;margin-bottom:0}.iot-setup-page .iot-filter-host{margin-bottom:2px}.iot-setup-page .iot-setup-table-section{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0;overflow:hidden}.iot-setup-page .iot-setup-table-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;margin-right:10px;margin-left:10px}.iot-setup-page .iot-setup-table-panel__loader{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:0;padding:20px}.iot-setup-page .iot-setup-table-card{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-setup-page .iot-table-head{flex:0 0 auto;flex-shrink:0;width:100%;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:12}.iot-setup-page .iot-table-head__track{width:100%;overflow:hidden}.iot-setup-page .iot-table-head__table{width:100%;margin-bottom:0!important;table-layout:auto;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-setup-page .iot-table-head__table thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle;text-align:left}.iot-setup-page .iot-table-head__table thead th.iot-th--center,.iot-setup-page .iot-table-head__table thead th.iot-setup-cell-action{text-align:center}@media(min-width:992px){.iot-setup-page .iot-table-head__table thead th.iot-setup-cell-action{position:sticky;right:0;z-index:13;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;border-left:1px solid color-mix(in srgb,var(--text-on-primary) 22%,transparent)!important;box-shadow:none}}.iot-setup-page .iot-table-body-scroll{flex:1 1 auto;min-height:0;width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.iot-setup-page .iot-table-body-scroll .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-setup-page .iot-table-body-scroll .position-relative{overflow:visible!important}.iot-setup-page .iot-table-body-scroll table{margin-bottom:0!important;width:100%;min-width:100%;table-layout:fixed;border-collapse:separate!important;border-spacing:0;border-top:0!important}.iot-setup-page .iot-table-body-scroll thead{display:none!important}.iot-setup-page .iot-table-body-scroll .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem;text-align:left}.iot-setup-page .iot-table-body-scroll .table tbody td:has(.iot-status-badge){text-align:center!important}.iot-setup-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-setup-page .iot-table-body-scroll .table tbody td:has(.item-option-edit){text-align:center!important}@media(min-width:992px){.iot-setup-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-setup-page .iot-table-body-scroll .table tbody td:has(.item-option-edit){position:sticky;right:0;z-index:3;background-clip:padding-box;border-left:1px solid var(--iot-table-border)!important;box-shadow:none}}@media(min-width:992px){.iot-setup-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.iot-setup-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.iot-setup-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action{background-color:var(--iot-table-row-odd)!important}.iot-setup-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.iot-setup-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.iot-setup-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action{background-color:var(--iot-table-row-even)!important}.iot-setup-page .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.iot-setup-page .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit){background-color:var(--iot-table-row-hover)!important}}@media(min-width:992px){.iot-setup-page .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.iot-setup-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-setup-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit){box-shadow:-8px 0 14px -10px #0f172a73}}.iot-setup-page .iot-setup-table-scroll{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-setup-page .iot-fixed-table{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:hidden}.iot-setup-page .iot-fixed-table__header{flex:0 0 auto;flex-shrink:0;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:5}.iot-setup-page .iot-fixed-table__header-track{overflow:hidden;width:100%}.iot-setup-page .iot-fixed-table__header table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-setup-page .iot-fixed-table__header thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle}.iot-setup-page .iot-fixed-table__body{flex:1 1 auto;min-height:0;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-setup-page .iot-fixed-table__body thead{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}.iot-setup-page .iot-fixed-table__body .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-setup-page .iot-fixed-table__body .position-relative{overflow:visible!important}.iot-setup-page .iot-fixed-table__body table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-top:0!important}.iot-setup-page .iot-fixed-table__body .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem}.iot-setup-page .iot-setup-sticky-table{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow-x:auto;overflow-y:hidden;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.iot-setup-page .iot-setup-sticky-table>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.iot-setup-page .iot-setup-sticky-table .position-relative{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden!important}.iot-setup-page .iot-setup-sticky-table table.iot-sticky-data-table,.iot-setup-page .iot-setup-sticky-table .table.iot-sticky-data-table{display:block!important;height:100%;width:max-content;min-width:100%;margin-bottom:0!important;border-collapse:separate!important;border-spacing:0;overflow:visible!important}.iot-setup-page .iot-setup-sticky-table thead{display:table;width:100%;table-layout:fixed}.iot-setup-page .iot-setup-sticky-table thead tr{display:table-row}.iot-setup-page .iot-setup-sticky-table thead th{background-color:var(--iot-table-header-bg)!important;color:var(--text-on-primary)!important;border-color:var(--iot-table-border)!important;overflow:visible!important}.iot-setup-page .iot-setup-sticky-table tbody{display:block!important;width:100%;height:calc(100% - var(--iot-sticky-thead-h, 34px));max-height:calc(100% - var(--iot-sticky-thead-h, 34px));overflow:auto!important;-webkit-overflow-scrolling:touch}.iot-setup-page .iot-setup-sticky-table tbody tr{display:table!important;width:100%;table-layout:fixed}.iot-setup-page .iot-setup-table-inner-scroll{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-setup-page .iot-setup-table-inner-scroll>.position-relative,.iot-setup-page .iot-setup-table-inner-scroll>div{overflow:visible!important;max-height:none!important}.iot-setup-page .iot-setup-table-inner-scroll .table,.iot-setup-page .iot-setup-table-inner-scroll table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.iot-setup-page .iot-setup-table-inner-scroll thead,.iot-setup-page .iot-setup-table-inner-scroll thead tr{position:sticky;top:0;z-index:10}.iot-setup-page .iot-setup-table-inner-scroll .table thead th,.iot-setup-page .iot-setup-table-inner-scroll .table-light th,.iot-setup-page .iot-setup-table-inner-scroll .thead-light th,.iot-setup-page .iot-setup-table-inner-scroll thead.table-light th,.iot-setup-page .iot-setup-table-inner-scroll thead.thead-light th,.iot-setup-page .iot-setup-table-inner-scroll thead th{position:sticky!important;top:0!important;z-index:11!important;overflow:visible!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)){overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;isolation:isolate}.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive{overflow:visible!important;max-height:none!important}.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead{position:sticky;top:0;z-index:10}.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr{position:sticky;top:0;z-index:10}.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.iot-setup-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th{position:sticky!important;top:0!important;z-index:11!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-setup-page .iot-setup-table-pagination{flex:0 0 auto;flex-shrink:0;position:relative!important;top:0!important;z-index:2;background:var(--bg-elevated)}.iot-setup-page .iot-setup-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:0 20px 0 16px;border-radius:var(--border-radius-lg);flex:0 0 auto;flex-shrink:0;z-index:3;background:var(--bg-sidebar);margin:10px}.iot-setup-page .iot-setup-table-toolbar__meta{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.iot-setup-page .iot-setup-table-toolbar__page{display:block;margin:0;padding:0;color:var(--text-on-primary);font-size:1.05rem;font-weight:700;line-height:1.2;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-setup-page .iot-setup-table-toolbar__heading,.iot-setup-page .iot-setup-table-toolbar__count{display:inline;margin:0;padding:0;border:0;border-radius:0;background:none;color:color-mix(in srgb,var(--text-on-primary) 78%,transparent);font-size:.875rem;font-weight:500;line-height:1.3;letter-spacing:.01em;white-space:nowrap}.iot-setup-page .iot-setup-table-toolbar__heading strong,.iot-setup-page .iot-setup-table-toolbar__count strong{color:var(--text-on-primary);font-size:.9375rem;font-weight:700}.iot-setup-page .iot-setup-table-toolbar__actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-width:0;overflow:visible;-webkit-overflow-scrolling:touch}.iot-setup-page .iot-setup-table-toolbar__actions .btn,.iot-setup-page .iot-setup-table-toolbar__actions span.btn,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn,.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px;height:40px!important;min-height:40px!important;margin:0!important;padding:0 16px!important;line-height:1!important;vertical-align:middle;flex-shrink:0;white-space:nowrap;font-size:.8125rem;font-weight:600;border-radius:10px!important;box-shadow:none!important;transition:background-color var(--transition-fast, .15s ease),transform var(--transition-fast, .15s ease),box-shadow var(--transition-fast, .15s ease)}.iot-setup-page .iot-setup-table-toolbar__actions .btn svg,.iot-setup-page .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.iot-setup-page .iot-setup-table-toolbar__actions span.btn svg,.iot-setup-page .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn svg,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa{width:15px!important;height:15px!important;font-size:15px!important;margin:0;flex-shrink:0}.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important;padding:0!important}.iot-setup-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-setup-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button){width:auto!important;min-width:0!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.iot-setup-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-setup-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover{background:#fff3!important;transform:translateY(-1px)}.iot-setup-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-setup-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active{transform:translateY(0)}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger{float:none!important;position:relative;align-self:center;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger:hover{background:#fff3!important;transform:translateY(-1px)}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger:active{transform:translateY(0)}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffff40!important}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon{display:inline-flex!important;align-items:center;justify-content:center;width:15px!important;height:15px!important;margin:0!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:15px!important;line-height:1}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg{display:block;width:15px!important;height:15px!important;margin:0}.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-primary, #2f80ed)!important;color:#fff!important;border:2px solid var(--bg-sidebar)!important;font-size:.6rem;font-weight:700;line-height:1}.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button{background:var(--color-primary, #2f80ed)!important;border:1px solid var(--color-primary, #2f80ed)!important;color:#fff!important}.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover{background:color-mix(in srgb,var(--color-primary, #2f80ed) 85%,#fff)!important;transform:translateY(-1px)}.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active{transform:translateY(0)}.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.iot-setup-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa{width:28px!important;height:28px!important;font-size:28px!important;color:#fff!important}@media(max-width:991.98px){.iot-setup-page .iot-setup-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;min-height:0;padding:10px 12px;margin:4px 8px 8px}.iot-setup-page .iot-setup-table-toolbar__meta{flex:1 1 auto;min-width:0;width:auto}.iot-setup-page .iot-setup-table-toolbar__page{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1rem}.iot-setup-page .iot-setup-table-toolbar__heading,.iot-setup-page .iot-setup-table-toolbar__count{white-space:nowrap}.iot-setup-page .iot-setup-table-toolbar__actions{flex:0 0 auto;width:auto;margin-left:0;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.iot-setup-page .iot-setup-table-section{margin-left:0;margin-right:0;min-width:0}.iot-setup-page .iot-setup-table-card,.iot-setup-page .box-shadow.iot-setup-table-card{min-width:0;width:100%}.iot-setup-page .iot-table-body-scroll{min-height:180px!important}.iot-setup-page .iot-setup-table-pagination,.iot-setup-page .box-shadow .iot-setup-table-pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px;padding:6px 8px!important}.iot-setup-page .iot-setup-table-pagination .pagination,.iot-setup-page .box-shadow .iot-setup-table-pagination .pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:4px;margin:0!important;padding:0!important;width:auto!important;position:static!important}.iot-setup-page .iot-setup-table-pagination .page-item,.iot-setup-page .box-shadow .iot-setup-table-pagination .page-item{flex:0 0 auto!important}.iot-setup-page .iot-setup-table-pagination .page-link,.iot-setup-page .box-shadow .iot-setup-table-pagination .page-link{min-width:32px;min-height:32px!important;height:32px;padding:0 8px!important}.iot-setup-page .iot-setup-table-pagination .searchInput,.iot-setup-page .box-shadow .iot-setup-table-pagination .searchInput{width:auto!important;position:static!important;right:auto!important}}@media(max-width:575.98px){.iot-setup-page .iot-setup-table-toolbar{margin-left:8px;margin-right:8px;padding:10px}.iot-setup-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-setup-page .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important}}.iot-setup-page .box-shadow{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-card);border-radius:var(--border-radius-lg)}.iot-setup-page .box-shadow.iot-setup-table-card{display:flex;flex-direction:column;overflow:hidden}.iot-setup-page .box-shadow .table{margin-bottom:0}.iot-setup-page .box-shadow .pagination,.iot-setup-page .box-shadow .iot-setup-table-pagination{margin:0;padding:5px;border-top:1px solid var(--border-color);flex:0 0 auto;position:relative!important;top:0!important;background:var(--bg-elevated)}.iot-setup-page .iot-setup-field{display:flex;flex-direction:column;gap:2px;width:100%}.iot-setup-page .form-label-themed,.iot-setup-page label.form-label-themed,.iot-setup-page .text-dark,.iot-setup-page .modal-body .form-label,.iot-setup-page .modal-body-padding .form-label{color:var(--text-primary)!important;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;text-align:left;margin-bottom:0;line-height:1.2}.iot-setup-page .custom-select,.iot-setup-page input.custom-select,.iot-setup-page select.custom-select,.iot-setup-page input.form-control,.iot-setup-page select.form-control{color:var(--text-primary)!important;background-color:var(--bg-input)!important;border:1px solid var(--border-color-input)!important;border-radius:var(--border-radius-md);height:36px;padding:6px 10px;font-size:.8125rem;line-height:1.3;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.iot-setup-page .custom-select::placeholder,.iot-setup-page input.custom-select::placeholder,.iot-setup-page select.custom-select::placeholder,.iot-setup-page input.form-control::placeholder,.iot-setup-page select.form-control::placeholder{color:var(--text-muted)}.iot-setup-page .custom-select:focus,.iot-setup-page input.custom-select:focus,.iot-setup-page select.custom-select:focus,.iot-setup-page input.form-control:focus,.iot-setup-page select.form-control:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.iot-setup-page .custom-select:disabled,.iot-setup-page .custom-select.bg-disabled,.iot-setup-page input.custom-select:disabled,.iot-setup-page input.custom-select.bg-disabled,.iot-setup-page select.custom-select:disabled,.iot-setup-page select.custom-select.bg-disabled,.iot-setup-page input.form-control:disabled,.iot-setup-page input.form-control.bg-disabled,.iot-setup-page select.form-control:disabled,.iot-setup-page select.form-control.bg-disabled{background-color:var(--bg-secondary)!important;color:var(--text-muted)!important;opacity:.85}.iot-setup-page select,.iot-setup-page select option{color:var(--text-primary);background-color:var(--bg-input)!important}.iot-setup-page .input-textArea{color:var(--text-primary);background-color:var(--bg-input);border-color:var(--border-color-input);height:36px;min-height:36px;resize:vertical}.iot-setup-page .input-textArea:focus{border-color:var(--color-primary)}.iot-setup-page .input-text-area{display:flex!important;flex-direction:column;align-items:stretch!important;gap:2px}.iot-setup-page .form-check-label{color:var(--text-primary)}.iot-setup-page .form-check-input{border-color:var(--border-color-strong);background-color:var(--bg-input)}.iot-setup-page .form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.iot-setup-page .rmsc{--rmsc-h: 32px;--rmsc-bg: var(--bg-input);--rmsc-border: var(--border-color-input);--rmsc-gray: var(--text-muted);--rmsc-main: var(--color-primary);--rmsc-hover: var(--bg-secondary);--rmsc-selected: var(--color-primary);--rmsc-disabled: var(--text-muted);--rmsc-radius: var(--border-radius-md);--rmsc-p: 4px;--rmsc-py: 2px;color:var(--text-primary);font-size:.8125rem}.iot-setup-page .rmsc .dropdown-container{border-radius:var(--border-radius-md);min-height:32px}.iot-setup-page .rmsc .dropdown-heading{height:32px;padding:2px 8px}.iot-setup-page .rmsc .dropdown-content{z-index:100000;background:var(--bg-elevated);border-color:var(--border-color)}.iot-setup-page .rmsc .dropdown-content .panel-content{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.iot-setup-page .rmsc .dropdown-content ul{max-height:240px;overflow-y:auto}.iot-setup-page .rmsc .select-item{color:var(--text-primary)}.iot-setup-page .rmsc .select-item.selected{background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.iot-setup-page .table,.iot-setup-page table.table{color:var(--text-primary);background:var(--bg-elevated);margin-bottom:0;font-size:.8125rem;border-collapse:separate;border-spacing:0;border:1px solid var(--iot-table-border);border-radius:0;width:max-content;min-width:100%;table-layout:auto}.iot-setup-page table thead{color:var(--text-on-primary)}.iot-setup-page .table thead th,.iot-setup-page .table-light th,.iot-setup-page thead.table-light th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;border-bottom:1px solid var(--iot-table-border)!important}.iot-setup-page .table td,.iot-setup-page .table th{border-color:var(--iot-table-border);vertical-align:middle;padding:5px 8px!important;width:auto;max-width:none}.iot-setup-page .table tbody td{color:var(--text-primary);font-size:.8125rem;line-height:1.5;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--iot-table-border);background:transparent}.iot-setup-page .table tbody td:has(.item-option-edit){width:1%;white-space:nowrap}.iot-setup-page .table tbody td span,.iot-setup-page .table tbody td div:not(.item-option-edit):not(.iot-status-badge){color:inherit;word-break:break-word}.iot-setup-page .table tbody tr{transition:background-color var(--transition-fast);background-color:var(--iot-table-row-even)}.iot-setup-page .table tbody tr:nth-child(odd),.iot-setup-page .table-striped tbody tr:nth-of-type(odd){background-color:var(--iot-table-row-odd)}.iot-setup-page .table tbody tr:nth-child(2n),.iot-setup-page .table-striped tbody tr:nth-of-type(2n){background-color:var(--iot-table-row-even)}.iot-setup-page .table-hover tbody tr:hover,.iot-setup-page .table tbody tr:hover{background-color:var(--iot-table-row-hover)!important}.iot-setup-page .table-bordered{border-color:var(--iot-table-border)}.iot-setup-page .box-shadow .table{border-radius:0;border-left:0;border-right:0;border-bottom:0}.iot-setup-page .box-shadow>.row:first-child .table thead th:first-child{border-top-left-radius:0}.iot-setup-page .box-shadow>.row:first-child .table thead th:last-child{border-top-right-radius:0}.iot-setup-page .item-option-edit{display:inline-flex;align-items:center;flex-wrap:nowrap;flex-shrink:0;gap:10px;white-space:nowrap}.iot-setup-page .item-option-edit>a{display:inline-flex;flex-shrink:0;text-decoration:none}.iot-setup-page .item-option-edit>span,.iot-setup-page .item-option-edit>button,.iot-setup-page .item-option-edit>a>span{display:inline-flex!important;align-items:center;justify-content:center;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;padding:0!important;margin:0!important;border-radius:8px;border:1px solid transparent;cursor:pointer;line-height:0;font-size:0;box-sizing:border-box;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;aspect-ratio:1/1;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.iot-setup-page .item-option-edit>span:hover,.iot-setup-page .item-option-edit>button:hover,.iot-setup-page .item-option-edit>a>span:hover{transform:translateY(-1px)}.iot-setup-page .item-option-edit>span:disabled,.iot-setup-page .item-option-edit>button:disabled,.iot-setup-page .item-option-edit>a>span:disabled{opacity:.55;cursor:not-allowed;transform:none}.iot-setup-page .item-option-edit>span.p-2,.iot-setup-page .item-option-edit>span.p-1,.iot-setup-page .item-option-edit>span.pr-1,.iot-setup-page .item-option-edit>span.pl-1,.iot-setup-page .item-option-edit>button.p-2,.iot-setup-page .item-option-edit>button.p-1,.iot-setup-page .item-option-edit>button.pr-1,.iot-setup-page .item-option-edit>button.pl-1,.iot-setup-page .item-option-edit>a>span.p-2,.iot-setup-page .item-option-edit>a>span.p-1,.iot-setup-page .item-option-edit>a>span.pr-1,.iot-setup-page .item-option-edit>a>span.pl-1{padding:0!important}.iot-setup-page .item-option-edit>span svg,.iot-setup-page .item-option-edit>span .svg-inline--fa,.iot-setup-page .item-option-edit>button svg,.iot-setup-page .item-option-edit>button .svg-inline--fa,.iot-setup-page .item-option-edit>a>span svg,.iot-setup-page .item-option-edit>a>span .svg-inline--fa{display:block;flex-shrink:0;margin:0!important;padding:0!important;font-size:.85rem;width:.9em;height:.9em;vertical-align:middle;pointer-events:none}.iot-setup-page .item-option-edit>span:has(svg[data-icon=plus]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=plus]),.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=plus]),.iot-setup-page .item-option-edit>span:has(.fa-plus),.iot-setup-page .item-option-edit>button:has(.fa-plus),.iot-setup-page .item-option-edit>a>span:has(.fa-plus){color:var(--iot-action-add)!important;background:color-mix(in srgb,var(--iot-action-add) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-add) 28%,transparent)}.iot-setup-page .item-option-edit>span:has(svg[data-icon=plus]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=plus]):hover,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.iot-setup-page .item-option-edit>span:has(.fa-plus):hover,.iot-setup-page .item-option-edit>button:has(.fa-plus):hover,.iot-setup-page .item-option-edit>a>span:has(.fa-plus):hover{background:color-mix(in srgb,var(--iot-action-add) 24%,transparent);border-color:var(--iot-action-add)}.iot-setup-page .item-option-edit>span:has(svg[data-icon=plus]) svg,.iot-setup-page .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=plus]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-setup-page .item-option-edit>span:has(.fa-plus) svg,.iot-setup-page .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(.fa-plus) svg,.iot-setup-page .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.iot-setup-page .item-option-edit>a>span:has(.fa-plus) svg,.iot-setup-page .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa{color:inherit!important}.iot-setup-page .item-option-edit>button:has(svg[data-icon=pen-to-square]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=square-pen]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=edit]),.iot-setup-page .item-option-edit>button:has(.fa-pencil-square-o),.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]){color:var(--iot-action-edit)!important;background:color-mix(in srgb,var(--iot-action-edit) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-edit) 28%,transparent)}.iot-setup-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=edit]):hover,.iot-setup-page .item-option-edit>button:has(.fa-pencil-square-o):hover,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover{background:color-mix(in srgb,var(--iot-action-edit) 24%,transparent);border-color:var(--iot-action-edit)}.iot-setup-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=edit]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(.fa-pencil-square-o) svg,.iot-setup-page .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa{color:inherit!important}.iot-setup-page .item-option-edit>span:has(svg[data-icon=key]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=key]),.iot-setup-page .item-option-edit>span:has(.fa-key),.iot-setup-page .item-option-edit>button:has(.fa-key),.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=key]){color:var(--iot-action-key)!important;background:color-mix(in srgb,var(--iot-action-key) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-key) 28%,transparent)}.iot-setup-page .item-option-edit>span:has(svg[data-icon=key]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=key]):hover,.iot-setup-page .item-option-edit>span:has(.fa-key):hover,.iot-setup-page .item-option-edit>button:has(.fa-key):hover,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=key]):hover{background:color-mix(in srgb,var(--iot-action-key) 24%,transparent);border-color:var(--iot-action-key)}.iot-setup-page .item-option-edit>span:has(svg[data-icon=key]) svg,.iot-setup-page .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=key]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.iot-setup-page .item-option-edit>span:has(.fa-key) svg,.iot-setup-page .item-option-edit>span:has(.fa-key) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(.fa-key) svg,.iot-setup-page .item-option-edit>button:has(.fa-key) .svg-inline--fa,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=key]) svg,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa{color:inherit!important}.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash]),.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash-can]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash-can]),.iot-setup-page .item-option-edit>span:has(svg[data-icon=delete-left]),.iot-setup-page .item-option-edit>button:has(svg[data-icon=delete-left]),.iot-setup-page .item-option-edit>span:has(.fa-trash),.iot-setup-page .item-option-edit>button:has(.fa-trash),.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=trash]){color:var(--iot-action-delete)!important;background:color-mix(in srgb,var(--iot-action-delete) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-delete) 28%,transparent)}.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash]):hover,.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.iot-setup-page .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.iot-setup-page .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.iot-setup-page .item-option-edit>span:has(.fa-trash):hover,.iot-setup-page .item-option-edit>button:has(.fa-trash):hover,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=trash]):hover{background:color-mix(in srgb,var(--iot-action-delete) 24%,transparent);border-color:var(--iot-action-delete)}.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash]) svg,.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.iot-setup-page .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-setup-page .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.iot-setup-page .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.iot-setup-page .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-setup-page .item-option-edit>span:has(.fa-trash) svg,.iot-setup-page .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.iot-setup-page .item-option-edit>button:has(.fa-trash) svg,.iot-setup-page .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.iot-setup-page .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa{color:inherit!important}.iot-setup-page .item-option-edit>span,.iot-setup-page .item-option-edit>button{position:relative}.iot-setup-page .item-option-edit>span:after,.iot-setup-page .item-option-edit>button:after{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:3px 8px;border-radius:6px;background:var(--bg-sidebar, #071a35);color:#fff;font-size:.68rem;font-weight:600;line-height:1.2;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:30;box-shadow:var(--shadow-md);transition:opacity var(--transition-fast),transform var(--transition-fast)}.iot-setup-page .item-option-edit>span:hover:after,.iot-setup-page .item-option-edit>button:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.iot-setup-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.iot-setup-page .item-option-edit>button:has(svg[data-icon=square-pen]):after,.iot-setup-page .item-option-edit>button:has(svg[data-icon=edit]):after,.iot-setup-page .item-option-edit>button:has(.fa-pencil-square-o):after{content:"Edit"}.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash]):after,.iot-setup-page .item-option-edit>button:has(svg[data-icon=trash-can]):after,.iot-setup-page .item-option-edit>button:has(svg[data-icon=delete-left]):after,.iot-setup-page .item-option-edit>button:has(.fa-trash):after{content:"Delete"}.iot-setup-page .item-option-edit>button:has(svg[data-icon=plus]):after,.iot-setup-page .item-option-edit>button:has(.fa-plus):after{content:"Add"}.iot-setup-page .item-option-edit>button:has(svg[data-icon=key]):after,.iot-setup-page .item-option-edit>button:has(.fa-key):after{content:"Regenerate Password"}.iot-setup-page .pagination{padding:var(--space-3);background:var(--bg-elevated);border-top:1px solid var(--border-color)}.iot-setup-page .pagination .page-link{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color)}.iot-setup-page .pagination .page-link:hover,.iot-setup-page .pagination .page-item.active .page-link{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.iot-setup-page .pagination .page-item.disabled .page-link{color:var(--text-muted);background:var(--bg-secondary)}.iot-setup-page .bg-success.btn,.iot-setup-page .btn-success{background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--text-on-primary)!important}.iot-setup-page .bg-success.btn:hover,.iot-setup-page .btn-success:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.iot-setup-page .bg-light,.iot-setup-page .border.rounded.bg-light,.iot-setup-page .border.rounded.bg-white{background-color:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-primary)}.iot-setup-page .bg-white{background-color:var(--bg-elevated)!important;color:var(--text-primary)}.iot-setup-page .text-muted,.iot-setup-page label,.iot-setup-page .form-label,.iot-setup-page label.form-label.text-muted,.iot-setup-page .form-label.text-muted{color:var(--text-secondary)!important}.iot-setup-page .card{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.iot-setup-page .card-header,.iot-setup-page .card-footer{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.iot-setup-page .list-group-item{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.iot-setup-page .action-icon:hover{background:var(--bg-secondary)}.iot-setup-page .searchInput input,.iot-setup-page .innerSearchInput{color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color-input)}.iot-setup-page .c-switch-slider{background:var(--border-color-strong);border:1px solid var(--border-color);box-shadow:none!important}.iot-setup-page .c-switch-input:checked~.c-switch-slider{background:var(--color-primary)!important;border-color:var(--color-primary)}.iot-setup-page .c-switch-input:focus~.c-switch-slider{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)!important}.iot-setup-page .c-switch-slider:before{background:var(--bg-elevated)!important;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.iot-setup-page .c-switch-3d .c-switch-slider:before{top:0;box-shadow:var(--shadow-sm)!important}.iot-setup-page .iot-setup-switch-row{display:flex;flex-direction:column;gap:6px}.iot-setup-page .iot-setup-switch-row>label:first-child{font-size:.8125rem;font-weight:500;color:var(--text-primary);margin-bottom:0}.iot-setup-page .iot-setup-switch.c-switch,.iot-setup-page .c-switch.iot-setup-switch,.iot-setup-page .form-check-input-custom.c-switch,.iot-setup-page .c-switch.form-check-input-custom{display:inline-flex;align-items:center;margin:0;padding:0;width:48px;height:24px;min-height:24px;border:0;background:transparent!important}.iot-setup-page .iot-setup-switch .c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-slider{width:48px!important;height:24px!important;padding:0!important;border:1px solid var(--border-color-input)!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-input) 78%,var(--border-color-strong))!important;box-shadow:inset 0 1px 2px #071a352e!important}.iot-setup-page .iot-setup-switch .c-switch-slider:before,.iot-setup-page .form-check-input-custom .c-switch-slider:before{top:2px!important;left:2px!important;width:18px!important;height:18px!important;border:1px solid var(--border-color)!important;border-radius:50%!important;background:var(--text-secondary)!important;box-shadow:var(--shadow-sm)!important}.iot-setup-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.iot-setup-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-setup-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.iot-setup-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.iot-setup-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.iot-setup-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before{transform:translate(24px)!important;border-color:var(--text-on-primary)!important;background:var(--text-on-primary)!important}.iot-setup-page .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.iot-setup-page .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:focus~.c-switch-slider{box-shadow:inset 0 1px 2px #071a352e,0 0 0 2px color-mix(in srgb,var(--color-primary) 24%,transparent)!important}.iot-setup-page .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.iot-setup-page .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:disabled~.c-switch-slider{cursor:not-allowed;opacity:.55}.iot-setup-page .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.iot-setup-page .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.iot-setup-page .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-setup-page .nav-pills .nav-link{color:var(--text-secondary);background:transparent;border:1px solid transparent}.iot-setup-page .nav-pills .nav-link.active,.iot-setup-page .nav-pills .nav-link:hover{color:var(--text-on-primary);background:var(--color-primary)}.iot-setup-page .nav-pills .nav-item .nav-link.active{background:var(--color-primary);color:var(--text-on-primary)}.iot-setup-page{display:flex!important;flex-direction:column!important;align-items:stretch!important;flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:hidden;width:100%!important;max-width:100%!important;margin:0!important;padding:12px var(--space-4) 14px!important;gap:0;color:var(--text-primary)}.iot-setup-page.dealers-section,.iot-setup-page.section{width:100%!important;max-width:100%!important;margin:0!important}.iot-setup-page.flex-row{flex-direction:column!important;align-items:stretch!important}.iot-setup-page h3,.iot-setup-page h3.mb-4{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:2px}.iot-setup-page h3>span.float-right,.iot-setup-page h3>span.bg-success.btn,.iot-setup-page h3>span.btn,.iot-setup-page h3>.bg-success.btn,.iot-setup-page h3.mb-4>span.float-right,.iot-setup-page h3.mb-4>span.bg-success.btn,.iot-setup-page h3.mb-4>span.btn,.iot-setup-page h3.mb-4>.bg-success.btn{float:none!important;margin:0!important;flex-shrink:0;cursor:pointer;min-height:30px;padding:5px 9px!important;font-size:.6rem!important;line-height:1.2}.iot-setup-page h3>span.float-right:first-of-type,.iot-setup-page h3>span.bg-success.btn:first-of-type,.iot-setup-page h3>span.btn:first-of-type,.iot-setup-page h3.mb-4>span.float-right:first-of-type,.iot-setup-page h3.mb-4>span.bg-success.btn:first-of-type,.iot-setup-page h3.mb-4>span.btn:first-of-type{margin-left:auto!important}.iot-setup-page h3 .total-records,.iot-setup-page h3.mb-4 .total-records{flex:1 1 100%;margin-top:2px}.iot-setup-page.iot-setup-form-page{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;align-items:stretch!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section{flex:0 0 auto;min-height:0;display:flex;flex-direction:column;gap:10px;overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>.iot-setup-form-panel{display:flex;flex-direction:column;gap:10px;flex:0 0 auto!important;min-height:0;margin-left:10px!important;margin-right:10px!important;margin-bottom:10px!important;overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>.iot-setup-form-panel>.box-shadow:not(.iot-setup-table-card){flex:0 0 auto!important;min-height:0;overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-toolbar{position:relative;top:auto;z-index:3}.iot-settings-page,.iot-setup-form-page,.iot-settings-page h3,.iot-settings-page h4,.iot-settings-page h5,.iot-setup-form-page h3,.iot-setup-form-page h4,.iot-setup-form-page h5{color:var(--text-primary)}.iot-settings-page .total-records,.iot-setup-form-page .total-records{color:var(--text-secondary);font-size:var(--font-size-md)}.iot-settings-page .iot-setup-filters,.iot-setup-form-page .iot-setup-filters{margin-top:0;margin-bottom:0}.iot-settings-page .iot-filter-host,.iot-setup-form-page .iot-filter-host{margin-bottom:2px}.iot-settings-page .iot-setup-table-section,.iot-setup-form-page .iot-setup-table-section{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0;overflow:hidden}.iot-settings-page .iot-setup-table-panel,.iot-setup-form-page .iot-setup-table-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;margin-right:10px;margin-left:10px}.iot-settings-page .iot-setup-table-panel__loader,.iot-setup-form-page .iot-setup-table-panel__loader{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:0;padding:20px}.iot-settings-page .iot-setup-table-card,.iot-setup-form-page .iot-setup-table-card{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-settings-page .iot-table-head,.iot-setup-form-page .iot-table-head{flex:0 0 auto;flex-shrink:0;width:100%;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:12}.iot-settings-page .iot-table-head__track,.iot-setup-form-page .iot-table-head__track{width:100%;overflow:hidden}.iot-settings-page .iot-table-head__table,.iot-setup-form-page .iot-table-head__table{width:100%;margin-bottom:0!important;table-layout:auto;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-settings-page .iot-table-head__table thead th,.iot-setup-form-page .iot-table-head__table thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle;text-align:left}.iot-settings-page .iot-table-head__table thead th.iot-th--center,.iot-setup-form-page .iot-table-head__table thead th.iot-th--center,.iot-settings-page .iot-table-head__table thead th.iot-setup-cell-action,.iot-setup-form-page .iot-table-head__table thead th.iot-setup-cell-action{text-align:center}@media(min-width:992px){.iot-settings-page .iot-table-head__table thead th.iot-setup-cell-action,.iot-setup-form-page .iot-table-head__table thead th.iot-setup-cell-action{position:sticky;right:0;z-index:13;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;border-left:1px solid color-mix(in srgb,var(--text-on-primary) 22%,transparent)!important;box-shadow:none}}.iot-settings-page .iot-table-body-scroll,.iot-setup-form-page .iot-table-body-scroll{flex:1 1 auto;min-height:0;width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.iot-settings-page .iot-table-body-scroll .table-responsive,.iot-setup-form-page .iot-table-body-scroll .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-settings-page .iot-table-body-scroll .position-relative,.iot-setup-form-page .iot-table-body-scroll .position-relative{overflow:visible!important}.iot-settings-page .iot-table-body-scroll table,.iot-setup-form-page .iot-table-body-scroll table{margin-bottom:0!important;width:100%;min-width:100%;table-layout:fixed;border-collapse:separate!important;border-spacing:0;border-top:0!important}.iot-settings-page .iot-table-body-scroll thead,.iot-setup-form-page .iot-table-body-scroll thead{display:none!important}.iot-settings-page .iot-table-body-scroll .table tbody td,.iot-setup-form-page .iot-table-body-scroll .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem;text-align:left}.iot-settings-page .iot-table-body-scroll .table tbody td:has(.iot-status-badge),.iot-setup-form-page .iot-table-body-scroll .table tbody td:has(.iot-status-badge){text-align:center!important}.iot-settings-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-settings-page .iot-table-body-scroll .table tbody td:has(.item-option-edit),.iot-setup-form-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody td:has(.item-option-edit){text-align:center!important}@media(min-width:992px){.iot-settings-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-settings-page .iot-table-body-scroll .table tbody td:has(.item-option-edit),.iot-setup-form-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody td:has(.item-option-edit){position:sticky;right:0;z-index:3;background-clip:padding-box;border-left:1px solid var(--iot-table-border)!important;box-shadow:none}}@media(min-width:992px){.iot-settings-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.iot-settings-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.iot-settings-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.iot-setup-form-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action{background-color:var(--iot-table-row-odd)!important}.iot-settings-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.iot-settings-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.iot-settings-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.iot-setup-form-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action{background-color:var(--iot-table-row-even)!important}.iot-settings-page .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.iot-settings-page .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit),.iot-setup-form-page .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.iot-setup-form-page .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit){background-color:var(--iot-table-row-hover)!important}}@media(min-width:992px){.iot-settings-page .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.iot-settings-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-settings-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit),.iot-setup-form-page .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.iot-setup-form-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-setup-form-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit){box-shadow:-8px 0 14px -10px #0f172a73}}.iot-settings-page .iot-setup-table-scroll,.iot-setup-form-page .iot-setup-table-scroll{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-settings-page .iot-fixed-table,.iot-setup-form-page .iot-fixed-table{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:hidden}.iot-settings-page .iot-fixed-table__header,.iot-setup-form-page .iot-fixed-table__header{flex:0 0 auto;flex-shrink:0;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:5}.iot-settings-page .iot-fixed-table__header-track,.iot-setup-form-page .iot-fixed-table__header-track{overflow:hidden;width:100%}.iot-settings-page .iot-fixed-table__header table,.iot-setup-form-page .iot-fixed-table__header table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-settings-page .iot-fixed-table__header thead th,.iot-setup-form-page .iot-fixed-table__header thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle}.iot-settings-page .iot-fixed-table__body,.iot-setup-form-page .iot-fixed-table__body{flex:1 1 auto;min-height:0;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-settings-page .iot-fixed-table__body thead,.iot-setup-form-page .iot-fixed-table__body thead{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}.iot-settings-page .iot-fixed-table__body .table-responsive,.iot-setup-form-page .iot-fixed-table__body .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-settings-page .iot-fixed-table__body .position-relative,.iot-setup-form-page .iot-fixed-table__body .position-relative{overflow:visible!important}.iot-settings-page .iot-fixed-table__body table,.iot-setup-form-page .iot-fixed-table__body table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-top:0!important}.iot-settings-page .iot-fixed-table__body .table tbody td,.iot-setup-form-page .iot-fixed-table__body .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem}.iot-settings-page .iot-setup-sticky-table,.iot-setup-form-page .iot-setup-sticky-table{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow-x:auto;overflow-y:hidden;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.iot-settings-page .iot-setup-sticky-table>div,.iot-setup-form-page .iot-setup-sticky-table>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.iot-settings-page .iot-setup-sticky-table .position-relative,.iot-setup-form-page .iot-setup-sticky-table .position-relative{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden!important}.iot-settings-page .iot-setup-sticky-table table.iot-sticky-data-table,.iot-settings-page .iot-setup-sticky-table .table.iot-sticky-data-table,.iot-setup-form-page .iot-setup-sticky-table table.iot-sticky-data-table,.iot-setup-form-page .iot-setup-sticky-table .table.iot-sticky-data-table{display:block!important;height:100%;width:max-content;min-width:100%;margin-bottom:0!important;border-collapse:separate!important;border-spacing:0;overflow:visible!important}.iot-settings-page .iot-setup-sticky-table thead,.iot-setup-form-page .iot-setup-sticky-table thead{display:table;width:100%;table-layout:fixed}.iot-settings-page .iot-setup-sticky-table thead tr,.iot-setup-form-page .iot-setup-sticky-table thead tr{display:table-row}.iot-settings-page .iot-setup-sticky-table thead th,.iot-setup-form-page .iot-setup-sticky-table thead th{background-color:var(--iot-table-header-bg)!important;color:var(--text-on-primary)!important;border-color:var(--iot-table-border)!important;overflow:visible!important}.iot-settings-page .iot-setup-sticky-table tbody,.iot-setup-form-page .iot-setup-sticky-table tbody{display:block!important;width:100%;height:calc(100% - var(--iot-sticky-thead-h, 34px));max-height:calc(100% - var(--iot-sticky-thead-h, 34px));overflow:auto!important;-webkit-overflow-scrolling:touch}.iot-settings-page .iot-setup-sticky-table tbody tr,.iot-setup-form-page .iot-setup-sticky-table tbody tr{display:table!important;width:100%;table-layout:fixed}.iot-settings-page .iot-setup-table-inner-scroll,.iot-setup-form-page .iot-setup-table-inner-scroll{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-settings-page .iot-setup-table-inner-scroll>.position-relative,.iot-settings-page .iot-setup-table-inner-scroll>div,.iot-setup-form-page .iot-setup-table-inner-scroll>.position-relative,.iot-setup-form-page .iot-setup-table-inner-scroll>div{overflow:visible!important;max-height:none!important}.iot-settings-page .iot-setup-table-inner-scroll .table,.iot-settings-page .iot-setup-table-inner-scroll table.table,.iot-setup-form-page .iot-setup-table-inner-scroll .table,.iot-setup-form-page .iot-setup-table-inner-scroll table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.iot-settings-page .iot-setup-table-inner-scroll thead,.iot-setup-form-page .iot-setup-table-inner-scroll thead,.iot-settings-page .iot-setup-table-inner-scroll thead tr,.iot-setup-form-page .iot-setup-table-inner-scroll thead tr{position:sticky;top:0;z-index:10}.iot-settings-page .iot-setup-table-inner-scroll .table thead th,.iot-settings-page .iot-setup-table-inner-scroll .table-light th,.iot-settings-page .iot-setup-table-inner-scroll .thead-light th,.iot-settings-page .iot-setup-table-inner-scroll thead.table-light th,.iot-settings-page .iot-setup-table-inner-scroll thead.thead-light th,.iot-settings-page .iot-setup-table-inner-scroll thead th,.iot-setup-form-page .iot-setup-table-inner-scroll .table thead th,.iot-setup-form-page .iot-setup-table-inner-scroll .table-light th,.iot-setup-form-page .iot-setup-table-inner-scroll .thead-light th,.iot-setup-form-page .iot-setup-table-inner-scroll thead.table-light th,.iot-setup-form-page .iot-setup-table-inner-scroll thead.thead-light th,.iot-setup-form-page .iot-setup-table-inner-scroll thead th{position:sticky!important;top:0!important;z-index:11!important;overflow:visible!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)),.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)){overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;isolation:isolate}.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive{overflow:visible!important;max-height:none!important}.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead{position:sticky;top:0;z-index:10}.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr{position:sticky;top:0;z-index:10}.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.iot-settings-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.iot-setup-form-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th{position:sticky!important;top:0!important;z-index:11!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-settings-page .iot-setup-table-pagination,.iot-setup-form-page .iot-setup-table-pagination{flex:0 0 auto;flex-shrink:0;position:relative!important;top:0!important;z-index:2;background:var(--bg-elevated)}.iot-settings-page .iot-setup-table-toolbar,.iot-setup-form-page .iot-setup-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:0 20px 0 16px;border-radius:var(--border-radius-lg);flex:0 0 auto;flex-shrink:0;z-index:3;background:var(--bg-sidebar);margin:10px}.iot-settings-page .iot-setup-table-toolbar__meta,.iot-setup-form-page .iot-setup-table-toolbar__meta{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.iot-settings-page .iot-setup-table-toolbar__page,.iot-setup-form-page .iot-setup-table-toolbar__page{display:block;margin:0;padding:0;color:var(--text-on-primary);font-size:1.05rem;font-weight:700;line-height:1.2;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-settings-page .iot-setup-table-toolbar__heading,.iot-settings-page .iot-setup-table-toolbar__count,.iot-setup-form-page .iot-setup-table-toolbar__heading,.iot-setup-form-page .iot-setup-table-toolbar__count{display:inline;margin:0;padding:0;border:0;border-radius:0;background:none;color:color-mix(in srgb,var(--text-on-primary) 78%,transparent);font-size:.875rem;font-weight:500;line-height:1.3;letter-spacing:.01em;white-space:nowrap}.iot-settings-page .iot-setup-table-toolbar__heading strong,.iot-settings-page .iot-setup-table-toolbar__count strong,.iot-setup-form-page .iot-setup-table-toolbar__heading strong,.iot-setup-form-page .iot-setup-table-toolbar__count strong{color:var(--text-on-primary);font-size:.9375rem;font-weight:700}.iot-settings-page .iot-setup-table-toolbar__actions,.iot-setup-form-page .iot-setup-table-toolbar__actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-width:0;overflow:visible;-webkit-overflow-scrolling:touch}.iot-settings-page .iot-setup-table-toolbar__actions .btn,.iot-settings-page .iot-setup-table-toolbar__actions span.btn,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn,.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger,.iot-setup-form-page .iot-setup-table-toolbar__actions .btn,.iot-setup-form-page .iot-setup-table-toolbar__actions span.btn,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px;height:40px!important;min-height:40px!important;margin:0!important;padding:0 16px!important;line-height:1!important;vertical-align:middle;flex-shrink:0;white-space:nowrap;font-size:.8125rem;font-weight:600;border-radius:10px!important;box-shadow:none!important;transition:background-color var(--transition-fast, .15s ease),transform var(--transition-fast, .15s ease),box-shadow var(--transition-fast, .15s ease)}.iot-settings-page .iot-setup-table-toolbar__actions .btn svg,.iot-settings-page .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.iot-settings-page .iot-setup-table-toolbar__actions span.btn svg,.iot-settings-page .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn svg,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa,.iot-setup-form-page .iot-setup-table-toolbar__actions .btn svg,.iot-setup-form-page .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.iot-setup-form-page .iot-setup-table-toolbar__actions span.btn svg,.iot-setup-form-page .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn svg,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa{width:15px!important;height:15px!important;font-size:15px!important;margin:0;flex-shrink:0}.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important;padding:0!important}.iot-settings-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-settings-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button),.iot-setup-form-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-setup-form-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button){width:auto!important;min-width:0!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.iot-settings-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-settings-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover,.iot-setup-form-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-setup-form-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover{background:#fff3!important;transform:translateY(-1px)}.iot-settings-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-settings-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active,.iot-setup-form-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-setup-form-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active{transform:translateY(0)}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger{float:none!important;position:relative;align-self:center;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger:hover,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger:hover{background:#fff3!important;transform:translateY(-1px)}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger:active,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger:active{transform:translateY(0)}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffff40!important}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon{display:inline-flex!important;align-items:center;justify-content:center;width:15px!important;height:15px!important;margin:0!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:15px!important;line-height:1}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg{display:block;width:15px!important;height:15px!important;margin:0}.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-primary, #2f80ed)!important;color:#fff!important;border:2px solid var(--bg-sidebar)!important;font-size:.6rem;font-weight:700;line-height:1}.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button{background:var(--color-primary, #2f80ed)!important;border:1px solid var(--color-primary, #2f80ed)!important;color:#fff!important}.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover{background:color-mix(in srgb,var(--color-primary, #2f80ed) 85%,#fff)!important;transform:translateY(-1px)}.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active{transform:translateY(0)}.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.iot-settings-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.iot-setup-form-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa{width:28px!important;height:28px!important;font-size:28px!important;color:#fff!important}@media(max-width:991.98px){.iot-settings-page .iot-setup-table-toolbar,.iot-setup-form-page .iot-setup-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;min-height:0;padding:10px 12px;margin:4px 8px 8px}.iot-settings-page .iot-setup-table-toolbar__meta,.iot-setup-form-page .iot-setup-table-toolbar__meta{flex:1 1 auto;min-width:0;width:auto}.iot-settings-page .iot-setup-table-toolbar__page,.iot-setup-form-page .iot-setup-table-toolbar__page{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1rem}.iot-settings-page .iot-setup-table-toolbar__heading,.iot-settings-page .iot-setup-table-toolbar__count,.iot-setup-form-page .iot-setup-table-toolbar__heading,.iot-setup-form-page .iot-setup-table-toolbar__count{white-space:nowrap}.iot-settings-page .iot-setup-table-toolbar__actions,.iot-setup-form-page .iot-setup-table-toolbar__actions{flex:0 0 auto;width:auto;margin-left:0;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.iot-settings-page .iot-setup-table-section,.iot-setup-form-page .iot-setup-table-section{margin-left:0;margin-right:0;min-width:0}.iot-settings-page .iot-setup-table-card,.iot-settings-page .box-shadow.iot-setup-table-card,.iot-setup-form-page .iot-setup-table-card,.iot-setup-form-page .box-shadow.iot-setup-table-card{min-width:0;width:100%}.iot-settings-page .iot-table-body-scroll,.iot-setup-form-page .iot-table-body-scroll{min-height:180px!important}.iot-settings-page .iot-setup-table-pagination,.iot-settings-page .box-shadow .iot-setup-table-pagination,.iot-setup-form-page .iot-setup-table-pagination,.iot-setup-form-page .box-shadow .iot-setup-table-pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px;padding:6px 8px!important}.iot-settings-page .iot-setup-table-pagination .pagination,.iot-settings-page .box-shadow .iot-setup-table-pagination .pagination,.iot-setup-form-page .iot-setup-table-pagination .pagination,.iot-setup-form-page .box-shadow .iot-setup-table-pagination .pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:4px;margin:0!important;padding:0!important;width:auto!important;position:static!important}.iot-settings-page .iot-setup-table-pagination .page-item,.iot-settings-page .box-shadow .iot-setup-table-pagination .page-item,.iot-setup-form-page .iot-setup-table-pagination .page-item,.iot-setup-form-page .box-shadow .iot-setup-table-pagination .page-item{flex:0 0 auto!important}.iot-settings-page .iot-setup-table-pagination .page-link,.iot-settings-page .box-shadow .iot-setup-table-pagination .page-link,.iot-setup-form-page .iot-setup-table-pagination .page-link,.iot-setup-form-page .box-shadow .iot-setup-table-pagination .page-link{min-width:32px;min-height:32px!important;height:32px;padding:0 8px!important}.iot-settings-page .iot-setup-table-pagination .searchInput,.iot-settings-page .box-shadow .iot-setup-table-pagination .searchInput,.iot-setup-form-page .iot-setup-table-pagination .searchInput,.iot-setup-form-page .box-shadow .iot-setup-table-pagination .searchInput{width:auto!important;position:static!important;right:auto!important}}@media(max-width:575.98px){.iot-settings-page .iot-setup-table-toolbar,.iot-setup-form-page .iot-setup-table-toolbar{margin-left:8px;margin-right:8px;padding:10px}.iot-settings-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-settings-page .iot-setup-table-toolbar__actions .iot-filter-trigger,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-setup-form-page .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important}}.iot-settings-page .box-shadow,.iot-setup-form-page .box-shadow{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-card);border-radius:var(--border-radius-lg)}.iot-settings-page .box-shadow.iot-setup-table-card,.iot-setup-form-page .box-shadow.iot-setup-table-card{display:flex;flex-direction:column;overflow:hidden}.iot-settings-page .box-shadow .table,.iot-setup-form-page .box-shadow .table{margin-bottom:0}.iot-settings-page .box-shadow .pagination,.iot-settings-page .box-shadow .iot-setup-table-pagination,.iot-setup-form-page .box-shadow .pagination,.iot-setup-form-page .box-shadow .iot-setup-table-pagination{margin:0;padding:5px;border-top:1px solid var(--border-color);flex:0 0 auto;position:relative!important;top:0!important;background:var(--bg-elevated)}.iot-settings-page .iot-setup-field,.iot-setup-form-page .iot-setup-field{display:flex;flex-direction:column;gap:2px;width:100%}.iot-settings-page .form-label-themed,.iot-settings-page label.form-label-themed,.iot-settings-page .text-dark,.iot-settings-page .modal-body .form-label,.iot-settings-page .modal-body-padding .form-label,.iot-setup-form-page .form-label-themed,.iot-setup-form-page label.form-label-themed,.iot-setup-form-page .text-dark,.iot-setup-form-page .modal-body .form-label,.iot-setup-form-page .modal-body-padding .form-label{color:var(--text-primary)!important;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;text-align:left;margin-bottom:0;line-height:1.2}.iot-settings-page .custom-select,.iot-settings-page input.custom-select,.iot-settings-page select.custom-select,.iot-settings-page input.form-control,.iot-settings-page select.form-control,.iot-setup-form-page .custom-select,.iot-setup-form-page input.custom-select,.iot-setup-form-page select.custom-select,.iot-setup-form-page input.form-control,.iot-setup-form-page select.form-control{color:var(--text-primary)!important;background-color:var(--bg-input)!important;border:1px solid var(--border-color-input)!important;border-radius:var(--border-radius-md);height:36px;padding:6px 10px;font-size:.8125rem;line-height:1.3;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.iot-settings-page .custom-select::placeholder,.iot-settings-page input.custom-select::placeholder,.iot-settings-page select.custom-select::placeholder,.iot-settings-page input.form-control::placeholder,.iot-settings-page select.form-control::placeholder,.iot-setup-form-page .custom-select::placeholder,.iot-setup-form-page input.custom-select::placeholder,.iot-setup-form-page select.custom-select::placeholder,.iot-setup-form-page input.form-control::placeholder,.iot-setup-form-page select.form-control::placeholder{color:var(--text-muted)}.iot-settings-page .custom-select:focus,.iot-settings-page input.custom-select:focus,.iot-settings-page select.custom-select:focus,.iot-settings-page input.form-control:focus,.iot-settings-page select.form-control:focus,.iot-setup-form-page .custom-select:focus,.iot-setup-form-page input.custom-select:focus,.iot-setup-form-page select.custom-select:focus,.iot-setup-form-page input.form-control:focus,.iot-setup-form-page select.form-control:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.iot-settings-page .custom-select:disabled,.iot-settings-page .custom-select.bg-disabled,.iot-settings-page input.custom-select:disabled,.iot-settings-page input.custom-select.bg-disabled,.iot-settings-page select.custom-select:disabled,.iot-settings-page select.custom-select.bg-disabled,.iot-settings-page input.form-control:disabled,.iot-settings-page input.form-control.bg-disabled,.iot-settings-page select.form-control:disabled,.iot-settings-page select.form-control.bg-disabled,.iot-setup-form-page .custom-select:disabled,.iot-setup-form-page .custom-select.bg-disabled,.iot-setup-form-page input.custom-select:disabled,.iot-setup-form-page input.custom-select.bg-disabled,.iot-setup-form-page select.custom-select:disabled,.iot-setup-form-page select.custom-select.bg-disabled,.iot-setup-form-page input.form-control:disabled,.iot-setup-form-page input.form-control.bg-disabled,.iot-setup-form-page select.form-control:disabled,.iot-setup-form-page select.form-control.bg-disabled{background-color:var(--bg-secondary)!important;color:var(--text-muted)!important;opacity:.85}.iot-settings-page select,.iot-settings-page select option,.iot-setup-form-page select,.iot-setup-form-page select option{color:var(--text-primary);background-color:var(--bg-input)!important}.iot-settings-page .input-textArea,.iot-setup-form-page .input-textArea{color:var(--text-primary);background-color:var(--bg-input);border-color:var(--border-color-input);height:36px;min-height:36px;resize:vertical}.iot-settings-page .input-textArea:focus,.iot-setup-form-page .input-textArea:focus{border-color:var(--color-primary)}.iot-settings-page .input-text-area,.iot-setup-form-page .input-text-area{display:flex!important;flex-direction:column;align-items:stretch!important;gap:2px}.iot-settings-page .form-check-label,.iot-setup-form-page .form-check-label{color:var(--text-primary)}.iot-settings-page .form-check-input,.iot-setup-form-page .form-check-input{border-color:var(--border-color-strong);background-color:var(--bg-input)}.iot-settings-page .form-check-input:checked,.iot-setup-form-page .form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.iot-settings-page .rmsc,.iot-setup-form-page .rmsc{--rmsc-h: 32px;--rmsc-bg: var(--bg-input);--rmsc-border: var(--border-color-input);--rmsc-gray: var(--text-muted);--rmsc-main: var(--color-primary);--rmsc-hover: var(--bg-secondary);--rmsc-selected: var(--color-primary);--rmsc-disabled: var(--text-muted);--rmsc-radius: var(--border-radius-md);--rmsc-p: 4px;--rmsc-py: 2px;color:var(--text-primary);font-size:.8125rem}.iot-settings-page .rmsc .dropdown-container,.iot-setup-form-page .rmsc .dropdown-container{border-radius:var(--border-radius-md);min-height:32px}.iot-settings-page .rmsc .dropdown-heading,.iot-setup-form-page .rmsc .dropdown-heading{height:32px;padding:2px 8px}.iot-settings-page .rmsc .dropdown-content,.iot-setup-form-page .rmsc .dropdown-content{z-index:100000;background:var(--bg-elevated);border-color:var(--border-color)}.iot-settings-page .rmsc .dropdown-content .panel-content,.iot-setup-form-page .rmsc .dropdown-content .panel-content{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.iot-settings-page .rmsc .dropdown-content ul,.iot-setup-form-page .rmsc .dropdown-content ul{max-height:240px;overflow-y:auto}.iot-settings-page .rmsc .select-item,.iot-setup-form-page .rmsc .select-item{color:var(--text-primary)}.iot-settings-page .rmsc .select-item.selected,.iot-setup-form-page .rmsc .select-item.selected{background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.iot-settings-page .table,.iot-settings-page table.table,.iot-setup-form-page .table,.iot-setup-form-page table.table{color:var(--text-primary);background:var(--bg-elevated);margin-bottom:0;font-size:.8125rem;border-collapse:separate;border-spacing:0;border:1px solid var(--iot-table-border);border-radius:0;width:max-content;min-width:100%;table-layout:auto}.iot-settings-page table thead,.iot-setup-form-page table thead{color:var(--text-on-primary)}.iot-settings-page .table thead th,.iot-settings-page .table-light th,.iot-settings-page thead.table-light th,.iot-setup-form-page .table thead th,.iot-setup-form-page .table-light th,.iot-setup-form-page thead.table-light th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;border-bottom:1px solid var(--iot-table-border)!important}.iot-settings-page .table td,.iot-settings-page .table th,.iot-setup-form-page .table td,.iot-setup-form-page .table th{border-color:var(--iot-table-border);vertical-align:middle;padding:5px 8px!important;width:auto;max-width:none}.iot-settings-page .table tbody td,.iot-setup-form-page .table tbody td{color:var(--text-primary);font-size:.8125rem;line-height:1.5;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--iot-table-border);background:transparent}.iot-settings-page .table tbody td:has(.item-option-edit),.iot-setup-form-page .table tbody td:has(.item-option-edit){width:1%;white-space:nowrap}.iot-settings-page .table tbody td span,.iot-settings-page .table tbody td div:not(.item-option-edit):not(.iot-status-badge),.iot-setup-form-page .table tbody td span,.iot-setup-form-page .table tbody td div:not(.item-option-edit):not(.iot-status-badge){color:inherit;word-break:break-word}.iot-settings-page .table tbody tr,.iot-setup-form-page .table tbody tr{transition:background-color var(--transition-fast);background-color:var(--iot-table-row-even)}.iot-settings-page .table tbody tr:nth-child(odd),.iot-settings-page .table-striped tbody tr:nth-of-type(odd),.iot-setup-form-page .table tbody tr:nth-child(odd),.iot-setup-form-page .table-striped tbody tr:nth-of-type(odd){background-color:var(--iot-table-row-odd)}.iot-settings-page .table tbody tr:nth-child(2n),.iot-settings-page .table-striped tbody tr:nth-of-type(2n),.iot-setup-form-page .table tbody tr:nth-child(2n),.iot-setup-form-page .table-striped tbody tr:nth-of-type(2n){background-color:var(--iot-table-row-even)}.iot-settings-page .table-hover tbody tr:hover,.iot-settings-page .table tbody tr:hover,.iot-setup-form-page .table-hover tbody tr:hover,.iot-setup-form-page .table tbody tr:hover{background-color:var(--iot-table-row-hover)!important}.iot-settings-page .table-bordered,.iot-setup-form-page .table-bordered{border-color:var(--iot-table-border)}.iot-settings-page .box-shadow .table,.iot-setup-form-page .box-shadow .table{border-radius:0;border-left:0;border-right:0;border-bottom:0}.iot-settings-page .box-shadow>.row:first-child .table thead th:first-child,.iot-setup-form-page .box-shadow>.row:first-child .table thead th:first-child{border-top-left-radius:0}.iot-settings-page .box-shadow>.row:first-child .table thead th:last-child,.iot-setup-form-page .box-shadow>.row:first-child .table thead th:last-child{border-top-right-radius:0}.iot-settings-page .item-option-edit,.iot-setup-form-page .item-option-edit{display:inline-flex;align-items:center;flex-wrap:nowrap;flex-shrink:0;gap:10px;white-space:nowrap}.iot-settings-page .item-option-edit>a,.iot-setup-form-page .item-option-edit>a{display:inline-flex;flex-shrink:0;text-decoration:none}.iot-settings-page .item-option-edit>span,.iot-settings-page .item-option-edit>button,.iot-settings-page .item-option-edit>a>span,.iot-setup-form-page .item-option-edit>span,.iot-setup-form-page .item-option-edit>button,.iot-setup-form-page .item-option-edit>a>span{display:inline-flex!important;align-items:center;justify-content:center;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;padding:0!important;margin:0!important;border-radius:8px;border:1px solid transparent;cursor:pointer;line-height:0;font-size:0;box-sizing:border-box;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;aspect-ratio:1/1;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.iot-settings-page .item-option-edit>span:hover,.iot-settings-page .item-option-edit>button:hover,.iot-settings-page .item-option-edit>a>span:hover,.iot-setup-form-page .item-option-edit>span:hover,.iot-setup-form-page .item-option-edit>button:hover,.iot-setup-form-page .item-option-edit>a>span:hover{transform:translateY(-1px)}.iot-settings-page .item-option-edit>span:disabled,.iot-settings-page .item-option-edit>button:disabled,.iot-settings-page .item-option-edit>a>span:disabled,.iot-setup-form-page .item-option-edit>span:disabled,.iot-setup-form-page .item-option-edit>button:disabled,.iot-setup-form-page .item-option-edit>a>span:disabled{opacity:.55;cursor:not-allowed;transform:none}.iot-settings-page .item-option-edit>span.p-2,.iot-settings-page .item-option-edit>span.p-1,.iot-settings-page .item-option-edit>span.pr-1,.iot-settings-page .item-option-edit>span.pl-1,.iot-settings-page .item-option-edit>button.p-2,.iot-settings-page .item-option-edit>button.p-1,.iot-settings-page .item-option-edit>button.pr-1,.iot-settings-page .item-option-edit>button.pl-1,.iot-settings-page .item-option-edit>a>span.p-2,.iot-settings-page .item-option-edit>a>span.p-1,.iot-settings-page .item-option-edit>a>span.pr-1,.iot-settings-page .item-option-edit>a>span.pl-1,.iot-setup-form-page .item-option-edit>span.p-2,.iot-setup-form-page .item-option-edit>span.p-1,.iot-setup-form-page .item-option-edit>span.pr-1,.iot-setup-form-page .item-option-edit>span.pl-1,.iot-setup-form-page .item-option-edit>button.p-2,.iot-setup-form-page .item-option-edit>button.p-1,.iot-setup-form-page .item-option-edit>button.pr-1,.iot-setup-form-page .item-option-edit>button.pl-1,.iot-setup-form-page .item-option-edit>a>span.p-2,.iot-setup-form-page .item-option-edit>a>span.p-1,.iot-setup-form-page .item-option-edit>a>span.pr-1,.iot-setup-form-page .item-option-edit>a>span.pl-1{padding:0!important}.iot-settings-page .item-option-edit>span svg,.iot-settings-page .item-option-edit>span .svg-inline--fa,.iot-settings-page .item-option-edit>button svg,.iot-settings-page .item-option-edit>button .svg-inline--fa,.iot-settings-page .item-option-edit>a>span svg,.iot-settings-page .item-option-edit>a>span .svg-inline--fa,.iot-setup-form-page .item-option-edit>span svg,.iot-setup-form-page .item-option-edit>span .svg-inline--fa,.iot-setup-form-page .item-option-edit>button svg,.iot-setup-form-page .item-option-edit>button .svg-inline--fa,.iot-setup-form-page .item-option-edit>a>span svg,.iot-setup-form-page .item-option-edit>a>span .svg-inline--fa{display:block;flex-shrink:0;margin:0!important;padding:0!important;font-size:.85rem;width:.9em;height:.9em;vertical-align:middle;pointer-events:none}.iot-settings-page .item-option-edit>span:has(svg[data-icon=plus]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=plus]),.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=plus]),.iot-settings-page .item-option-edit>span:has(.fa-plus),.iot-settings-page .item-option-edit>button:has(.fa-plus),.iot-settings-page .item-option-edit>a>span:has(.fa-plus),.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=plus]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=plus]),.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=plus]),.iot-setup-form-page .item-option-edit>span:has(.fa-plus),.iot-setup-form-page .item-option-edit>button:has(.fa-plus),.iot-setup-form-page .item-option-edit>a>span:has(.fa-plus){color:var(--iot-action-add)!important;background:color-mix(in srgb,var(--iot-action-add) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-add) 28%,transparent)}.iot-settings-page .item-option-edit>span:has(svg[data-icon=plus]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=plus]):hover,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.iot-settings-page .item-option-edit>span:has(.fa-plus):hover,.iot-settings-page .item-option-edit>button:has(.fa-plus):hover,.iot-settings-page .item-option-edit>a>span:has(.fa-plus):hover,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=plus]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=plus]):hover,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.iot-setup-form-page .item-option-edit>span:has(.fa-plus):hover,.iot-setup-form-page .item-option-edit>button:has(.fa-plus):hover,.iot-setup-form-page .item-option-edit>a>span:has(.fa-plus):hover{background:color-mix(in srgb,var(--iot-action-add) 24%,transparent);border-color:var(--iot-action-add)}.iot-settings-page .item-option-edit>span:has(svg[data-icon=plus]) svg,.iot-settings-page .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=plus]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-settings-page .item-option-edit>span:has(.fa-plus) svg,.iot-settings-page .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(.fa-plus) svg,.iot-settings-page .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.iot-settings-page .item-option-edit>a>span:has(.fa-plus) svg,.iot-settings-page .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=plus]) svg,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=plus]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(.fa-plus) svg,.iot-setup-form-page .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(.fa-plus) svg,.iot-setup-form-page .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.iot-setup-form-page .item-option-edit>a>span:has(.fa-plus) svg,.iot-setup-form-page .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa{color:inherit!important}.iot-settings-page .item-option-edit>button:has(svg[data-icon=pen-to-square]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=square-pen]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=edit]),.iot-settings-page .item-option-edit>button:has(.fa-pencil-square-o),.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=pen-to-square]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=square-pen]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=edit]),.iot-setup-form-page .item-option-edit>button:has(.fa-pencil-square-o),.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]){color:var(--iot-action-edit)!important;background:color-mix(in srgb,var(--iot-action-edit) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-edit) 28%,transparent)}.iot-settings-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=edit]):hover,.iot-settings-page .item-option-edit>button:has(.fa-pencil-square-o):hover,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=edit]):hover,.iot-setup-form-page .item-option-edit>button:has(.fa-pencil-square-o):hover,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover{background:color-mix(in srgb,var(--iot-action-edit) 24%,transparent);border-color:var(--iot-action-edit)}.iot-settings-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=edit]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(.fa-pencil-square-o) svg,.iot-settings-page .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=edit]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(.fa-pencil-square-o) svg,.iot-setup-form-page .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa{color:inherit!important}.iot-settings-page .item-option-edit>span:has(svg[data-icon=key]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=key]),.iot-settings-page .item-option-edit>span:has(.fa-key),.iot-settings-page .item-option-edit>button:has(.fa-key),.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=key]),.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=key]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=key]),.iot-setup-form-page .item-option-edit>span:has(.fa-key),.iot-setup-form-page .item-option-edit>button:has(.fa-key),.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=key]){color:var(--iot-action-key)!important;background:color-mix(in srgb,var(--iot-action-key) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-key) 28%,transparent)}.iot-settings-page .item-option-edit>span:has(svg[data-icon=key]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=key]):hover,.iot-settings-page .item-option-edit>span:has(.fa-key):hover,.iot-settings-page .item-option-edit>button:has(.fa-key):hover,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=key]):hover,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=key]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=key]):hover,.iot-setup-form-page .item-option-edit>span:has(.fa-key):hover,.iot-setup-form-page .item-option-edit>button:has(.fa-key):hover,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=key]):hover{background:color-mix(in srgb,var(--iot-action-key) 24%,transparent);border-color:var(--iot-action-key)}.iot-settings-page .item-option-edit>span:has(svg[data-icon=key]) svg,.iot-settings-page .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=key]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.iot-settings-page .item-option-edit>span:has(.fa-key) svg,.iot-settings-page .item-option-edit>span:has(.fa-key) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(.fa-key) svg,.iot-settings-page .item-option-edit>button:has(.fa-key) .svg-inline--fa,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=key]) svg,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=key]) svg,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=key]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(.fa-key) svg,.iot-setup-form-page .item-option-edit>span:has(.fa-key) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(.fa-key) svg,.iot-setup-form-page .item-option-edit>button:has(.fa-key) .svg-inline--fa,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=key]) svg,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa{color:inherit!important}.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash]),.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash-can]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash-can]),.iot-settings-page .item-option-edit>span:has(svg[data-icon=delete-left]),.iot-settings-page .item-option-edit>button:has(svg[data-icon=delete-left]),.iot-settings-page .item-option-edit>span:has(.fa-trash),.iot-settings-page .item-option-edit>button:has(.fa-trash),.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=trash]),.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash]),.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash-can]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash-can]),.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=delete-left]),.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=delete-left]),.iot-setup-form-page .item-option-edit>span:has(.fa-trash),.iot-setup-form-page .item-option-edit>button:has(.fa-trash),.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=trash]){color:var(--iot-action-delete)!important;background:color-mix(in srgb,var(--iot-action-delete) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-delete) 28%,transparent)}.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash]):hover,.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.iot-settings-page .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.iot-settings-page .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.iot-settings-page .item-option-edit>span:has(.fa-trash):hover,.iot-settings-page .item-option-edit>button:has(.fa-trash):hover,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=trash]):hover,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash]):hover,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.iot-setup-form-page .item-option-edit>span:has(.fa-trash):hover,.iot-setup-form-page .item-option-edit>button:has(.fa-trash):hover,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=trash]):hover{background:color-mix(in srgb,var(--iot-action-delete) 24%,transparent);border-color:var(--iot-action-delete)}.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash]) svg,.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.iot-settings-page .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-settings-page .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.iot-settings-page .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.iot-settings-page .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-settings-page .item-option-edit>span:has(.fa-trash) svg,.iot-settings-page .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.iot-settings-page .item-option-edit>button:has(.fa-trash) svg,.iot-settings-page .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.iot-settings-page .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash]) svg,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.iot-setup-form-page .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-setup-form-page .item-option-edit>span:has(.fa-trash) svg,.iot-setup-form-page .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.iot-setup-form-page .item-option-edit>button:has(.fa-trash) svg,.iot-setup-form-page .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.iot-setup-form-page .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa{color:inherit!important}.iot-settings-page .item-option-edit>span,.iot-settings-page .item-option-edit>button,.iot-setup-form-page .item-option-edit>span,.iot-setup-form-page .item-option-edit>button{position:relative}.iot-settings-page .item-option-edit>span:after,.iot-settings-page .item-option-edit>button:after,.iot-setup-form-page .item-option-edit>span:after,.iot-setup-form-page .item-option-edit>button:after{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:3px 8px;border-radius:6px;background:var(--bg-sidebar, #071a35);color:#fff;font-size:.68rem;font-weight:600;line-height:1.2;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:30;box-shadow:var(--shadow-md);transition:opacity var(--transition-fast),transform var(--transition-fast)}.iot-settings-page .item-option-edit>span:hover:after,.iot-settings-page .item-option-edit>button:hover:after,.iot-setup-form-page .item-option-edit>span:hover:after,.iot-setup-form-page .item-option-edit>button:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.iot-settings-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.iot-settings-page .item-option-edit>button:has(svg[data-icon=square-pen]):after,.iot-settings-page .item-option-edit>button:has(svg[data-icon=edit]):after,.iot-settings-page .item-option-edit>button:has(.fa-pencil-square-o):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=square-pen]):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=edit]):after,.iot-setup-form-page .item-option-edit>button:has(.fa-pencil-square-o):after{content:"Edit"}.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash]):after,.iot-settings-page .item-option-edit>button:has(svg[data-icon=trash-can]):after,.iot-settings-page .item-option-edit>button:has(svg[data-icon=delete-left]):after,.iot-settings-page .item-option-edit>button:has(.fa-trash):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash]):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=trash-can]):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=delete-left]):after,.iot-setup-form-page .item-option-edit>button:has(.fa-trash):after{content:"Delete"}.iot-settings-page .item-option-edit>button:has(svg[data-icon=plus]):after,.iot-settings-page .item-option-edit>button:has(.fa-plus):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=plus]):after,.iot-setup-form-page .item-option-edit>button:has(.fa-plus):after{content:"Add"}.iot-settings-page .item-option-edit>button:has(svg[data-icon=key]):after,.iot-settings-page .item-option-edit>button:has(.fa-key):after,.iot-setup-form-page .item-option-edit>button:has(svg[data-icon=key]):after,.iot-setup-form-page .item-option-edit>button:has(.fa-key):after{content:"Regenerate Password"}.iot-settings-page .pagination,.iot-setup-form-page .pagination{padding:var(--space-3);background:var(--bg-elevated);border-top:1px solid var(--border-color)}.iot-settings-page .pagination .page-link,.iot-setup-form-page .pagination .page-link{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color)}.iot-settings-page .pagination .page-link:hover,.iot-setup-form-page .pagination .page-link:hover,.iot-settings-page .pagination .page-item.active .page-link,.iot-setup-form-page .pagination .page-item.active .page-link{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.iot-settings-page .pagination .page-item.disabled .page-link,.iot-setup-form-page .pagination .page-item.disabled .page-link{color:var(--text-muted);background:var(--bg-secondary)}.iot-settings-page .bg-success.btn,.iot-settings-page .btn-success,.iot-setup-form-page .bg-success.btn,.iot-setup-form-page .btn-success{background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--text-on-primary)!important}.iot-settings-page .bg-success.btn:hover,.iot-settings-page .btn-success:hover,.iot-setup-form-page .bg-success.btn:hover,.iot-setup-form-page .btn-success:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.iot-settings-page .bg-light,.iot-settings-page .border.rounded.bg-light,.iot-settings-page .border.rounded.bg-white,.iot-setup-form-page .bg-light,.iot-setup-form-page .border.rounded.bg-light,.iot-setup-form-page .border.rounded.bg-white{background-color:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-primary)}.iot-settings-page .bg-white,.iot-setup-form-page .bg-white{background-color:var(--bg-elevated)!important;color:var(--text-primary)}.iot-settings-page .text-muted,.iot-setup-form-page .text-muted,.iot-settings-page label,.iot-settings-page .form-label,.iot-setup-form-page label,.iot-setup-form-page .form-label,.iot-settings-page label.form-label.text-muted,.iot-settings-page .form-label.text-muted,.iot-setup-form-page label.form-label.text-muted,.iot-setup-form-page .form-label.text-muted{color:var(--text-secondary)!important}.iot-settings-page .card,.iot-setup-form-page .card{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.iot-settings-page .card-header,.iot-settings-page .card-footer,.iot-setup-form-page .card-header,.iot-setup-form-page .card-footer{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.iot-settings-page .list-group-item,.iot-setup-form-page .list-group-item{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.iot-settings-page .action-icon:hover,.iot-setup-form-page .action-icon:hover{background:var(--bg-secondary)}.iot-settings-page .searchInput input,.iot-settings-page .innerSearchInput,.iot-setup-form-page .searchInput input,.iot-setup-form-page .innerSearchInput{color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color-input)}.iot-settings-page .c-switch-slider,.iot-setup-form-page .c-switch-slider{background:var(--border-color-strong);border:1px solid var(--border-color);box-shadow:none!important}.iot-settings-page .c-switch-input:checked~.c-switch-slider,.iot-setup-form-page .c-switch-input:checked~.c-switch-slider{background:var(--color-primary)!important;border-color:var(--color-primary)}.iot-settings-page .c-switch-input:focus~.c-switch-slider,.iot-setup-form-page .c-switch-input:focus~.c-switch-slider{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)!important}.iot-settings-page .c-switch-slider:before,.iot-setup-form-page .c-switch-slider:before{background:var(--bg-elevated)!important;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.iot-settings-page .c-switch-3d .c-switch-slider:before,.iot-setup-form-page .c-switch-3d .c-switch-slider:before{top:0;box-shadow:var(--shadow-sm)!important}.iot-settings-page .iot-setup-switch-row,.iot-setup-form-page .iot-setup-switch-row{display:flex;flex-direction:column;gap:6px}.iot-settings-page .iot-setup-switch-row>label:first-child,.iot-setup-form-page .iot-setup-switch-row>label:first-child{font-size:.8125rem;font-weight:500;color:var(--text-primary);margin-bottom:0}.iot-settings-page .iot-setup-switch.c-switch,.iot-settings-page .c-switch.iot-setup-switch,.iot-settings-page .form-check-input-custom.c-switch,.iot-settings-page .c-switch.form-check-input-custom,.iot-setup-form-page .iot-setup-switch.c-switch,.iot-setup-form-page .c-switch.iot-setup-switch,.iot-setup-form-page .form-check-input-custom.c-switch,.iot-setup-form-page .c-switch.form-check-input-custom{display:inline-flex;align-items:center;margin:0;padding:0;width:48px;height:24px;min-height:24px;border:0;background:transparent!important}.iot-settings-page .iot-setup-switch .c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-slider{width:48px!important;height:24px!important;padding:0!important;border:1px solid var(--border-color-input)!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-input) 78%,var(--border-color-strong))!important;box-shadow:inset 0 1px 2px #071a352e!important}.iot-settings-page .iot-setup-switch .c-switch-slider:before,.iot-settings-page .form-check-input-custom .c-switch-slider:before,.iot-setup-form-page .iot-setup-switch .c-switch-slider:before,.iot-setup-form-page .form-check-input-custom .c-switch-slider:before{top:2px!important;left:2px!important;width:18px!important;height:18px!important;border:1px solid var(--border-color)!important;border-radius:50%!important;background:var(--text-secondary)!important;box-shadow:var(--shadow-sm)!important}.iot-settings-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.iot-settings-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-settings-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.iot-settings-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.iot-settings-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.iot-settings-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before,.iot-setup-form-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.iot-setup-form-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.iot-setup-form-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.iot-setup-form-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before{transform:translate(24px)!important;border-color:var(--text-on-primary)!important;background:var(--text-on-primary)!important}.iot-settings-page .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.iot-settings-page .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:focus~.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:focus~.c-switch-slider{box-shadow:inset 0 1px 2px #071a352e,0 0 0 2px color-mix(in srgb,var(--color-primary) 24%,transparent)!important}.iot-settings-page .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.iot-settings-page .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:disabled~.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:disabled~.c-switch-slider{cursor:not-allowed;opacity:.55}.iot-settings-page .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.iot-settings-page .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.iot-settings-page .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.iot-setup-form-page .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.iot-setup-form-page .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-settings-page .nav-pills .nav-link,.iot-setup-form-page .nav-pills .nav-link{color:var(--text-secondary);background:transparent;border:1px solid transparent}.iot-settings-page .nav-pills .nav-link.active,.iot-settings-page .nav-pills .nav-link:hover,.iot-setup-form-page .nav-pills .nav-link.active,.iot-setup-form-page .nav-pills .nav-link:hover{color:var(--text-on-primary);background:var(--color-primary)}.iot-settings-page .nav-pills .nav-item .nav-link.active,.iot-setup-form-page .nav-pills .nav-item .nav-link.active{background:var(--color-primary);color:var(--text-on-primary)}.iot-settings-page,.iot-setup-form-page{min-height:100%;height:auto;max-height:none;overflow:auto;padding:10px!important;gap:10px;background:var(--bg-primary)}.iot-settings-page .iot-settings-tabs,.iot-setup-form-page .iot-settings-tabs{flex:0 0 auto;padding:0!important}.iot-settings-page .iot-settings-tabs .nav-pills,.iot-setup-form-page .iot-settings-tabs .nav-pills{gap:8px;padding:6px;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-card)}.iot-settings-page .iot-settings-tabs .nav-item,.iot-setup-form-page .iot-settings-tabs .nav-item{min-width:0}.iot-settings-page .iot-settings-tabs .nav-link,.iot-setup-form-page .iot-settings-tabs .nav-link{cursor:pointer;border-radius:var(--border-radius-md);font-weight:600;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.iot-settings-page .iot-settings-card,.iot-setup-form-page .iot-settings-card{width:100%;max-width:100%;margin:0!important;padding:0!important;overflow:hidden}.iot-settings-page .iot-settings-card__header,.iot-setup-form-page .iot-settings-card__header{padding:12px 16px;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 82%,var(--bg-elevated))}.iot-settings-page .iot-settings-card__title,.iot-setup-form-page .iot-settings-card__title{margin:0;color:var(--text-primary);font-size:1rem;font-weight:700}.iot-settings-page .iot-settings-card__body,.iot-setup-form-page .iot-settings-card__body{width:100%;max-width:100%;padding:18px 20px 16px!important}.iot-settings-page .iot-settings-card__body>.form-row.container,.iot-setup-form-page .iot-settings-card__body>.form-row.container{width:100%;max-width:100%;margin-right:0;margin-left:0;padding-right:0;padding-left:0}.iot-settings-page .iot-settings-form-grid,.iot-settings-page .iot-settings-test-row,.iot-setup-form-page .iot-settings-form-grid,.iot-setup-form-page .iot-settings-test-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 14px;align-items:end}.iot-settings-page .iot-settings-form-grid .form-group,.iot-settings-page .iot-settings-test-row .form-group,.iot-setup-form-page .iot-settings-form-grid .form-group,.iot-setup-form-page .iot-settings-test-row .form-group{width:100%;max-width:none;min-width:0;margin:0!important;padding:0!important}.iot-settings-page .iot-settings-form-grid label,.iot-settings-page .iot-settings-test-row label,.iot-setup-form-page .iot-settings-form-grid label,.iot-setup-form-page .iot-settings-test-row label{display:block;margin-bottom:7px;color:var(--text-secondary)!important;font-size:.75rem;font-weight:700}.iot-settings-page .iot-settings-form-grid .custom-select,.iot-settings-page .iot-settings-test-row .custom-select,.iot-setup-form-page .iot-settings-form-grid .custom-select,.iot-setup-form-page .iot-settings-test-row .custom-select{height:38px!important}.iot-settings-page .iot-settings-general,.iot-setup-form-page .iot-settings-general,.iot-settings-page .iot-settings-smtp,.iot-setup-form-page .iot-settings-smtp{display:flex;flex-direction:column;gap:16px}.iot-settings-page .iot-settings-section,.iot-setup-form-page .iot-settings-section{padding:16px;border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--border-radius-lg);background:color-mix(in srgb,var(--bg-secondary) 36%,var(--bg-elevated))}.iot-settings-page .iot-settings-general-grid,.iot-setup-form-page .iot-settings-general-grid{display:grid;gap:14px;align-items:end;margin-top:14px}.iot-settings-page .iot-settings-general-grid .form-group,.iot-setup-form-page .iot-settings-general-grid .form-group{width:100%;max-width:none;min-width:0;margin:0!important;padding:0!important}.iot-settings-page .iot-settings-general-grid label,.iot-setup-form-page .iot-settings-general-grid label{display:block;margin-bottom:7px;color:var(--text-secondary)!important;font-size:.75rem;font-weight:700}.iot-settings-page .iot-settings-general-grid .custom-select,.iot-setup-form-page .iot-settings-general-grid .custom-select{height:38px!important}.iot-settings-page .iot-settings-smtp-grid,.iot-setup-form-page .iot-settings-smtp-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px;align-items:start;margin-top:14px}.iot-settings-page .iot-settings-smtp-grid .form-group,.iot-setup-form-page .iot-settings-smtp-grid .form-group{display:grid;grid-template-rows:18px 38px;row-gap:7px;align-content:start;width:100%;max-width:none;min-width:0;margin:0!important;padding:0!important}.iot-settings-page .iot-settings-smtp-grid label,.iot-setup-form-page .iot-settings-smtp-grid label{display:block;margin:0;color:var(--text-secondary)!important;font-size:.75rem;font-weight:700;line-height:18px}.iot-settings-page .iot-settings-smtp-grid .custom-select,.iot-setup-form-page .iot-settings-smtp-grid .custom-select{height:38px!important;min-height:38px!important;margin:0!important}.iot-settings-page .iot-settings-general-grid--two,.iot-setup-form-page .iot-settings-general-grid--two{grid-template-columns:repeat(2,minmax(220px,1fr))}.iot-settings-page .iot-settings-general-grid--single,.iot-setup-form-page .iot-settings-general-grid--single{grid-template-columns:minmax(260px,420px)}.iot-settings-page .iot-settings-notification-grid,.iot-setup-form-page .iot-settings-notification-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:16px}.iot-settings-page .iot-settings-control-card,.iot-setup-form-page .iot-settings-control-card{display:flex;flex-direction:column;justify-content:space-between;min-height:148px}.iot-settings-page .iot-settings-control-card .iot-setup-field,.iot-setup-form-page .iot-settings-control-card .iot-setup-field{margin-top:16px}.iot-settings-page .iot-settings-control-card .custom-select-wrapper,.iot-setup-form-page .iot-settings-control-card .custom-select-wrapper{width:100%;max-width:360px}.iot-settings-page .iot-settings-switch-row,.iot-setup-form-page .iot-settings-switch-row{display:inline-flex;align-items:center;gap:10px;margin-top:18px}.iot-settings-page .iot-settings-switch-label,.iot-setup-form-page .iot-settings-switch-label{color:var(--text-secondary);font-size:.75rem;font-weight:700}.iot-settings-page .iot-tag-config-toggle,.iot-setup-form-page .iot-tag-config-toggle{display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:5px;margin-bottom:14px}.iot-settings-page .iot-tag-config-toggle__label,.iot-setup-form-page .iot-tag-config-toggle__label{display:block;margin:0!important;padding:0}.iot-settings-page .iot-tag-config-toggle__control,.iot-setup-form-page .iot-tag-config-toggle__control{display:flex;align-items:center;gap:10px;min-height:36px;margin:0}.iot-settings-page .iot-tag-config-toggle__state,.iot-setup-form-page .iot-tag-config-toggle__state{color:var(--text-secondary);font-size:.75rem;font-weight:700;line-height:1;white-space:nowrap}.iot-settings-page .iot-tag-registers,.iot-setup-form-page .iot-tag-registers{margin-top:8px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--border-color) 82%,transparent)}.iot-settings-page .iot-tag-registers__header,.iot-setup-form-page .iot-tag-registers__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.iot-settings-page .iot-tag-registers__title,.iot-setup-form-page .iot-tag-registers__title{margin:0;color:var(--text-secondary);font-size:.875rem;font-weight:700;line-height:1.2}.iot-settings-page .iot-tag-registers__add,.iot-setup-form-page .iot-tag-registers__add{flex-shrink:0;min-width:88px;min-height:32px;padding:5px 12px}.iot-settings-page .iot-tag-registers__list,.iot-setup-form-page .iot-tag-registers__list{display:flex;flex-direction:column;gap:10px}.iot-settings-page .iot-tag-registers__row,.iot-setup-form-page .iot-tag-registers__row{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:10px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--border-radius-lg);background:color-mix(in srgb,var(--bg-secondary) 30%,var(--bg-elevated))}.iot-settings-page .iot-tag-registers__field,.iot-setup-form-page .iot-tag-registers__field{flex:1 1 0;min-width:0;margin:0!important;padding:0!important}.iot-settings-page .iot-tag-registers__field .iot-setup-field,.iot-settings-page .iot-tag-registers__field .form-group,.iot-settings-page .iot-tag-registers__field .custom-select-wrapper,.iot-setup-form-page .iot-tag-registers__field .iot-setup-field,.iot-setup-form-page .iot-tag-registers__field .form-group,.iot-setup-form-page .iot-tag-registers__field .custom-select-wrapper{width:100%;margin:0!important}.iot-settings-page .iot-tag-registers__field .custom-select,.iot-settings-page .iot-tag-registers__field input.custom-select,.iot-setup-form-page .iot-tag-registers__field .custom-select,.iot-setup-form-page .iot-tag-registers__field input.custom-select{width:100%}.iot-settings-page .iot-tag-registers__actions,.iot-setup-form-page .iot-tag-registers__actions{display:flex;align-items:flex-end;flex:0 0 auto;min-height:36px}.iot-settings-page .iot-tag-registers__remove,.iot-setup-form-page .iot-tag-registers__remove{min-width:72px;min-height:36px;padding:5px 10px;white-space:nowrap}@media(max-width:991.98px){.iot-settings-page .iot-tag-registers__row,.iot-setup-form-page .iot-tag-registers__row{flex-wrap:wrap}.iot-settings-page .iot-tag-registers__field,.iot-setup-form-page .iot-tag-registers__field{flex:1 1 calc(33.333% - 10px);min-width:140px}.iot-settings-page .iot-tag-registers__actions,.iot-setup-form-page .iot-tag-registers__actions{flex:1 1 100%;justify-content:flex-start}}@media(max-width:575.98px){.iot-settings-page .iot-tag-registers__field,.iot-setup-form-page .iot-tag-registers__field{flex:1 1 100%;min-width:0}}.iot-settings-page .iot-tag-options-grid,.iot-setup-form-page .iot-tag-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.iot-settings-page .iot-tag-toggle,.iot-setup-form-page .iot-tag-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--border-radius-lg);background:color-mix(in srgb,var(--bg-secondary) 30%,var(--bg-elevated));transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.iot-settings-page .iot-tag-toggle:hover,.iot-setup-form-page .iot-tag-toggle:hover{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--border-color))}.iot-settings-page .iot-tag-toggle.is-active,.iot-setup-form-page .iot-tag-toggle.is-active{border-color:color-mix(in srgb,var(--color-primary) 60%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-elevated));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary) 22%,transparent)}.iot-settings-page .iot-tag-toggle.is-disabled,.iot-setup-form-page .iot-tag-toggle.is-disabled{opacity:.6;pointer-events:none}.iot-settings-page .iot-tag-toggle__text,.iot-setup-form-page .iot-tag-toggle__text{display:flex;flex-direction:column;gap:3px;min-width:0}.iot-settings-page .iot-tag-toggle__label,.iot-setup-form-page .iot-tag-toggle__label{color:var(--text-primary);font-size:.85rem;font-weight:700;line-height:1.2}.iot-settings-page .iot-tag-toggle__hint,.iot-setup-form-page .iot-tag-toggle__hint{color:var(--text-muted, var(--text-secondary));font-size:.7rem;line-height:1.3}.iot-settings-page .iot-tag-toggle__control,.iot-setup-form-page .iot-tag-toggle__control{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.iot-settings-page .iot-tag-toggle__state,.iot-setup-form-page .iot-tag-toggle__state{color:var(--text-secondary);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.iot-settings-page .iot-tag-toggle.is-active .iot-tag-toggle__state,.iot-setup-form-page .iot-tag-toggle.is-active .iot-tag-toggle__state{color:var(--color-primary)}.iot-settings-page .iot-tag-test-grid,.iot-setup-form-page .iot-tag-test-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:14px;align-items:stretch;margin-top:14px}.iot-settings-page .iot-tag-result,.iot-setup-form-page .iot-tag-result{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--border-radius-lg);background:color-mix(in srgb,var(--bg-secondary) 30%,var(--bg-elevated));min-width:0}.iot-settings-page .iot-tag-result__label,.iot-setup-form-page .iot-tag-result__label{color:var(--text-secondary);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.iot-settings-page .iot-tag-result__value,.iot-setup-form-page .iot-tag-result__value{color:var(--text-primary);font-size:.9rem;font-weight:600;word-break:break-word}.iot-settings-page .iot-tag-result--success,.iot-setup-form-page .iot-tag-result--success{border-color:color-mix(in srgb,var(--color-success, #22c55e) 55%,var(--border-color));background:color-mix(in srgb,var(--color-success, #22c55e) 12%,var(--bg-elevated))}.iot-settings-page .iot-tag-result--success .iot-tag-result__value,.iot-setup-form-page .iot-tag-result--success .iot-tag-result__value{color:var(--color-success, #22c55e)}.iot-settings-page .iot-tag-result--error,.iot-setup-form-page .iot-tag-result--error{border-color:color-mix(in srgb,var(--color-danger, #ef4444) 55%,var(--border-color));background:color-mix(in srgb,var(--color-danger, #ef4444) 12%,var(--bg-elevated))}.iot-settings-page .iot-tag-result--error .iot-tag-result__value,.iot-setup-form-page .iot-tag-result--error .iot-tag-result__value{color:var(--color-danger, #ef4444)}.iot-settings-page .iot-tag-test-action,.iot-setup-form-page .iot-tag-test-action{display:flex;align-items:flex-end}.iot-settings-page .iot-tag-test-action .u-settings-btn,.iot-setup-form-page .iot-tag-test-action .u-settings-btn{min-width:150px}.iot-settings-page .u-mb-14,.iot-setup-form-page .u-mb-14{margin-bottom:14px}.iot-settings-page .iot-settings-test-row,.iot-setup-form-page .iot-settings-test-row{grid-template-columns:minmax(260px,420px) auto;gap:14px;align-items:start;margin-top:14px}.iot-settings-page .iot-settings-test-row .form-group:not(.iot-settings-test-action),.iot-setup-form-page .iot-settings-test-row .form-group:not(.iot-settings-test-action){display:grid;grid-template-rows:18px 38px;row-gap:7px;align-content:start}.iot-settings-page .iot-settings-test-row label,.iot-setup-form-page .iot-settings-test-row label{margin:0;line-height:18px}.iot-settings-page .iot-settings-test-action,.iot-setup-form-page .iot-settings-test-action{display:grid;grid-template-rows:18px 38px;row-gap:7px;align-content:start;align-items:stretch;justify-content:flex-start;padding-top:0!important}.iot-settings-page .iot-settings-test-action .u-settings-btn,.iot-setup-form-page .iot-settings-test-action .u-settings-btn{grid-row:2}.iot-settings-page .iot-settings-test-card .text-danger,.iot-setup-form-page .iot-settings-test-card .text-danger{display:block;margin-top:6px;font-size:.72rem}.iot-settings-page .iot-settings-section-heading,.iot-setup-form-page .iot-settings-section-heading{padding:0!important;color:var(--text-primary)}.iot-settings-page .iot-settings-section-heading strong,.iot-setup-form-page .iot-settings-section-heading strong{display:block;color:var(--text-primary);font-size:.9rem;font-weight:700;margin-bottom:6px}.iot-settings-page .iot-settings-divider,.iot-setup-form-page .iot-settings-divider{border-top:1px solid var(--border-color);margin:28px 0 16px}.iot-settings-page .iot-settings-card>.container-buttons,.iot-setup-form-page .iot-settings-card>.container-buttons{justify-content:flex-end;padding:14px 20px!important;border-top:1px solid var(--border-color)!important;background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-elevated))}.iot-settings-page .iot-settings-switch.c-switch,.iot-settings-page .c-switch.iot-settings-switch,.iot-setup-form-page .iot-settings-switch.c-switch,.iot-setup-form-page .c-switch.iot-settings-switch{width:46px;height:24px;min-height:24px;margin:2px 0 0;padding:0;background:transparent!important;border:0!important}.iot-settings-page .iot-settings-switch .c-switch-slider,.iot-setup-form-page .iot-settings-switch .c-switch-slider{width:46px!important;height:24px!important;padding:0!important;border:1px solid var(--border-color-input)!important;border-radius:999px!important;background:var(--bg-secondary)!important;box-shadow:inset 0 1px 2px #071a352e!important}.iot-settings-page .iot-settings-switch .c-switch-slider:before,.iot-setup-form-page .iot-settings-switch .c-switch-slider:before{top:2px!important;left:2px!important;width:18px!important;height:18px!important;border:1px solid var(--border-color)!important;border-radius:50%!important;background:var(--bg-elevated)!important;box-shadow:var(--shadow-sm)!important}.iot-settings-page .iot-settings-switch .c-switch-input:checked+.c-switch-slider,.iot-settings-page .iot-settings-switch .c-switch-input:checked~.c-switch-slider,.iot-setup-form-page .iot-settings-switch .c-switch-input:checked+.c-switch-slider,.iot-setup-form-page .iot-settings-switch .c-switch-input:checked~.c-switch-slider{border-color:var(--color-primary)!important;background:var(--color-primary)!important}.iot-settings-page .iot-settings-switch .c-switch-input:checked+.c-switch-slider:before,.iot-settings-page .iot-settings-switch .c-switch-input:checked~.c-switch-slider:before,.iot-setup-form-page .iot-settings-switch .c-switch-input:checked+.c-switch-slider:before,.iot-setup-form-page .iot-settings-switch .c-switch-input:checked~.c-switch-slider:before{transform:translate(22px)!important;border-color:var(--text-on-primary)!important;background:var(--text-on-primary)!important}.iot-settings-page .iot-settings-switch .c-switch-input:focus+.c-switch-slider,.iot-settings-page .iot-settings-switch .c-switch-input:focus~.c-switch-slider,.iot-setup-form-page .iot-settings-switch .c-switch-input:focus+.c-switch-slider,.iot-setup-form-page .iot-settings-switch .c-switch-input:focus~.c-switch-slider{box-shadow:inset 0 1px 2px #071a352e,0 0 0 2px color-mix(in srgb,var(--color-primary) 24%,transparent)!important}.iot-settings-page .u-settings-btn,.iot-setup-form-page .u-settings-btn{display:inline-flex;align-items:center;justify-content:center;min-width:110px;height:38px;margin:0!important;padding:0 18px;border-color:var(--color-primary)!important;background:var(--color-primary)!important;color:var(--text-on-primary)!important;box-shadow:none}.iot-settings-page .u-settings-btn:hover,.iot-settings-page .u-settings-btn:focus,.iot-setup-form-page .u-settings-btn:hover,.iot-setup-form-page .u-settings-btn:focus{border-color:var(--color-primary-hover)!important;background:var(--color-primary-hover)!important}@media(max-width:900px){.iot-settings-page .iot-settings-form-grid,.iot-settings-page .iot-settings-smtp-grid,.iot-settings-page .iot-settings-general-grid--two,.iot-settings-page .iot-settings-notification-grid,.iot-settings-page .iot-settings-test-row,.iot-settings-page .iot-tag-options-grid,.iot-settings-page .iot-tag-test-grid,.iot-setup-form-page .iot-settings-form-grid,.iot-setup-form-page .iot-settings-smtp-grid,.iot-setup-form-page .iot-settings-general-grid--two,.iot-setup-form-page .iot-settings-notification-grid,.iot-setup-form-page .iot-settings-test-row,.iot-setup-form-page .iot-tag-options-grid,.iot-setup-form-page .iot-tag-test-grid,.iot-settings-page .iot-settings-general-grid--single,.iot-setup-form-page .iot-settings-general-grid--single{grid-template-columns:1fr}.iot-settings-page .iot-settings-test-action,.iot-setup-form-page .iot-settings-test-action{justify-content:flex-start}.iot-settings-page .iot-tag-test-action .u-settings-btn,.iot-setup-form-page .iot-tag-test-action .u-settings-btn{width:100%}}@media(min-width:901px)and (max-width:1200px){.iot-settings-page .iot-tag-options-grid,.iot-setup-form-page .iot-tag-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.iot-settings-page.iot-system-settings-page{--iot-select-height: 32px;display:flex;flex-direction:column!important;align-items:stretch!important;height:auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.iot-settings-page.iot-system-settings-page .iot-settings-card{display:flex;flex:0 1 auto;flex-direction:column;min-height:0;overflow:visible}.iot-settings-page.iot-system-settings-page .iot-settings-card__header{flex:0 0 auto;padding:7px 12px}.iot-settings-page.iot-system-settings-page .iot-settings-card__title{font-size:1rem;margin:0}.iot-settings-page.iot-system-settings-page .iot-settings-card__body{flex:0 1 auto;min-height:0;padding:8px 10px!important}.iot-settings-page.iot-system-settings-page .iot-settings-general,.iot-settings-page.iot-system-settings-page .iot-settings-smtp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start;align-content:start}.iot-settings-page.iot-system-settings-page .iot-settings-smtp{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-settings-page.iot-system-settings-page .iot-settings-notification-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch}.iot-settings-page.iot-system-settings-page .iot-settings-section{min-height:0;height:auto;padding:8px 10px}.iot-settings-page.iot-system-settings-page .iot-settings-section-heading strong{margin-bottom:1px;font-size:.8rem;line-height:1.2}.iot-settings-page.iot-system-settings-page .iot-settings-section-heading p{margin-bottom:0;font-size:.7rem;line-height:1.25}.iot-settings-page.iot-system-settings-page .iot-settings-general-grid,.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid,.iot-settings-page.iot-system-settings-page .iot-settings-test-row{gap:8px;margin-top:6px}.iot-settings-page.iot-system-settings-page .iot-settings-general-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-settings-page.iot-system-settings-page .iot-settings-general-grid--single{grid-template-columns:minmax(0,1fr)}.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.iot-settings-page.iot-system-settings-page .iot-settings-field{width:100%;max-width:none!important}.iot-settings-page.iot-system-settings-page .iot-settings-field--small,.iot-settings-page.iot-system-settings-page .iot-settings-field--medium,.iot-settings-page.iot-system-settings-page .iot-settings-field--large,.iot-settings-page.iot-system-settings-page .iot-settings-field--backup-path{max-width:none!important}.iot-settings-page.iot-system-settings-page .iot-settings-field--shift-hours{grid-column:1/-1;width:100%;max-width:none!important}.iot-settings-page.iot-system-settings-page .iot-settings-shift-panel{display:flex;flex-direction:column;gap:5px;width:100%;min-width:0;padding:6px;border:1px solid var(--border-color);border-radius:var(--border-radius-md, 8px);background:color-mix(in srgb,var(--bg-elevated) 88%,transparent)}.iot-settings-page.iot-system-settings-page .iot-settings-shift-panel__header{display:flex;align-items:center;min-width:0}.iot-settings-page.iot-system-settings-page .iot-settings-shift-panel__title{color:var(--text-secondary);font-size:.68rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list{margin-top:0;max-height:118px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-input, var(--bg-elevated));padding:2px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:clamp(6px,1.5vw,12px);row-gap:4px;min-width:0;min-height:0;padding:5px 8px;border-radius:5px;color:var(--text-primary);font-size:.74rem;line-height:1.2}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__item:nth-child(odd){background:color-mix(in srgb,var(--bg-secondary) 55%,transparent)}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__item.is-last .iot-settings-shift-list__hour-label{opacity:.85}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__label{grid-column:1;color:var(--text-secondary);font-weight:700;white-space:nowrap;text-align:left}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__range{grid-column:2;display:inline-flex;align-items:center;justify-self:stretch;justify-content:center;flex-wrap:wrap;gap:2px 8px;min-width:0;max-width:100%;text-align:center;color:var(--text-primary)}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__time{display:inline-flex;flex-direction:column;align-items:center;gap:0;min-width:0;line-height:1.1}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__clock{font-size:clamp(.7rem,1.6vw,.78rem);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__day{color:var(--text-secondary);font-size:.58rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__day-full{display:inline}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__day-short{display:none}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__sep{color:var(--text-secondary);font-weight:600;line-height:1}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__hour{grid-column:3;display:inline-flex;align-items:center;justify-self:end;gap:5px;min-width:0}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__hour-label{flex:0 0 auto;margin:0!important;color:var(--text-secondary);font-size:.68rem;font-weight:600;line-height:1;white-space:nowrap}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__input{flex:0 0 auto;width:2.9rem!important;max-width:2.9rem;min-width:2.9rem;height:26px!important;min-height:26px!important;padding:0 5px!important;text-align:center;font-variant-numeric:tabular-nums}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__input:disabled{opacity:.75;cursor:not-allowed;border-style:dashed!important;background:color-mix(in srgb,var(--bg-secondary) 72%,transparent)!important;color:var(--text-secondary)!important}@media(max-width:900px){.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__item{grid-template-columns:auto minmax(0,1fr) auto;padding:5px 8px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__day-full{display:none}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__day-short{display:inline}}@media(max-width:720px){.iot-settings-page.iot-system-settings-page .iot-settings-shift-list{max-height:150px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__item{grid-template-columns:auto 1fr;align-items:start}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__label{grid-column:1;grid-row:1;align-self:center}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__hour{grid-column:2;grid-row:1;justify-self:end;align-self:center}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__range{grid-column:1/-1;grid-row:2;justify-self:stretch;justify-content:flex-start;gap:4px 8px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__time{align-items:flex-start}}@media(max-width:480px){.iot-settings-page.iot-system-settings-page .iot-settings-shift-panel{padding:6px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list{max-height:170px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__item{padding:6px 8px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__range{flex-direction:column;align-items:flex-start;gap:4px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__sep{display:none}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__time{flex-direction:row;align-items:baseline;gap:6px}.iot-settings-page.iot-system-settings-page .iot-settings-shift-list__input{width:3.2rem!important;max-width:3.2rem;min-width:3.2rem}.iot-settings-page.iot-system-settings-page .iot-settings-general-grid--two{grid-template-columns:1fr}}.iot-settings-page.iot-system-settings-page .iot-settings-general-grid label{margin-bottom:3px;font-size:.72rem}.iot-settings-page.iot-system-settings-page .iot-settings-general-grid .custom-select{width:100%;height:32px!important;min-height:32px!important}.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid .form-group,.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid .form-group:not(.iot-settings-test-action),.iot-settings-page.iot-system-settings-page .iot-settings-test-row .form-group,.iot-settings-page.iot-system-settings-page .iot-settings-test-row .form-group:not(.iot-settings-test-action){grid-template-rows:16px 32px;row-gap:4px}.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid label,.iot-settings-page.iot-system-settings-page .iot-settings-test-row label{line-height:16px}.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid .custom-select,.iot-settings-page.iot-system-settings-page .iot-settings-test-row .custom-select{width:100%;height:32px!important;min-height:32px!important}.iot-settings-page.iot-system-settings-page .iot-settings-control-card{display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-height:0;height:100%}.iot-settings-page.iot-system-settings-page .iot-settings-control-card .iot-settings-section-heading{margin-bottom:10px}.iot-settings-page.iot-system-settings-page .iot-settings-control-card .iot-setup-field{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%;max-width:none;margin-top:0}.iot-settings-page.iot-system-settings-page .iot-settings-control-card .form-label-themed{display:block;margin:0!important;padding:0;color:var(--text-secondary)!important;font-size:.72rem;font-weight:700;line-height:1.2;min-height:1.2em}.iot-settings-page.iot-system-settings-page .iot-settings-control-card .custom-select-wrapper{width:100%;max-width:none}.iot-settings-page.iot-system-settings-page .iot-settings-control-card .custom-select-wrapper [class*=-control]{min-height:var(--iot-select-height, 32px)!important;height:var(--iot-select-height, 32px)!important}.iot-settings-page.iot-system-settings-page .iot-settings-alert-toggle{display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:6px;width:100%;max-width:none;margin:0!important}.iot-settings-page.iot-system-settings-page .iot-settings-alert-toggle>label,.iot-settings-page.iot-system-settings-page .iot-settings-alert-toggle .form-label-themed{display:block;width:100%;margin:0!important;padding:0;line-height:1.2;font-size:.72rem;font-weight:700;min-height:1.2em}.iot-settings-page.iot-system-settings-page .iot-settings-switch-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;max-width:100%;height:var(--iot-select-height, 32px);min-height:var(--iot-select-height, 32px);margin:0;padding:0 10px;border:1px solid var(--border-color-input);border-radius:6px;background:var(--bg-input, var(--bg-elevated));box-sizing:border-box}.iot-settings-page.iot-system-settings-page .iot-settings-switch-label{display:inline-flex;align-items:center;color:var(--text-primary);font-size:.72rem;font-weight:600;line-height:1;white-space:nowrap}.iot-settings-page.iot-system-settings-page .iot-settings-switch.c-switch,.iot-settings-page.iot-system-settings-page .c-switch.iot-settings-switch{position:relative;display:inline-block!important;flex:0 0 auto;width:40px!important;height:22px!important;min-height:22px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;vertical-align:middle;cursor:pointer}.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none}.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-slider{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;box-sizing:border-box!important;width:40px!important;height:22px!important;margin:0!important;padding:0!important;border:0!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-secondary) 70%,var(--border-color-strong))!important;box-shadow:inset 0 1px 2px #071a3529!important;transition:background .15s ease,box-shadow .15s ease!important}.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-slider:before{content:""!important;position:absolute!important;box-sizing:border-box!important;top:3px!important;left:3px!important;bottom:auto!important;right:auto!important;width:16px!important;height:16px!important;margin:0!important;border:0!important;border-radius:50%!important;background:#fff!important;box-shadow:0 1px 2px #071a3547!important;transition:transform .15s ease!important;transform:translate(0)!important}.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input:checked+.c-switch-slider,.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input:checked~.c-switch-slider{border:0!important;background:var(--color-primary)!important;box-shadow:none!important}.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input:checked+.c-switch-slider:before,.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input:checked~.c-switch-slider:before{transform:translate(18px)!important;border:0!important;background:#fff!important}.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input:focus+.c-switch-slider,.iot-settings-page.iot-system-settings-page .iot-settings-switch .c-switch-input:focus~.c-switch-slider{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 28%,transparent)!important}@media(max-width:900px){.iot-settings-page.iot-system-settings-page .iot-settings-alert-toggle{max-width:none}.iot-settings-page.iot-system-settings-page .iot-settings-switch-row{width:100%;justify-content:flex-start}}.iot-settings-page.iot-system-settings-page .iot-settings-test-row{grid-template-columns:minmax(0,1fr) auto}.iot-settings-page.iot-system-settings-page .iot-settings-test-action{grid-template-rows:16px 32px;row-gap:4px}.iot-settings-page.iot-system-settings-page .iot-settings-test-action .u-settings-btn{height:32px}.iot-settings-page.iot-system-settings-page .iot-settings-card>.container-buttons{flex:0 0 auto;padding:6px 10px!important}@media(max-width:900px){.iot-settings-page.iot-system-settings-page{height:auto!important;min-height:0!important;overflow-y:auto!important}.iot-settings-page.iot-system-settings-page .iot-settings-card{overflow:visible}.iot-settings-page.iot-system-settings-page .iot-settings-general,.iot-settings-page.iot-system-settings-page .iot-settings-smtp,.iot-settings-page.iot-system-settings-page .iot-settings-smtp-grid,.iot-settings-page.iot-system-settings-page .iot-settings-general-grid--two,.iot-settings-page.iot-system-settings-page .iot-settings-notification-grid,.iot-settings-page.iot-system-settings-page .iot-settings-test-row{grid-template-columns:1fr}}@media(min-width:901px)and (max-width:1100px){.iot-settings-page.iot-system-settings-page .iot-settings-smtp{grid-template-columns:1fr}}.container-buttons,.modal-button{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:5px;margin-top:0!important;margin-right:0!important;padding-bottom:0}.container-buttons .btn,.container-buttons .iot-setup-btn,.modal-button .btn,.modal-button .iot-setup-btn{margin:0!important;min-width:0;min-height:30px;padding:5px 9px}.iot-setup-filters__body>.container-buttons,.iot-setup-page .container-buttons{flex-shrink:0;gap:5px}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:5px}.modal-footer .btn,.modal-footer .iot-setup-btn{margin:0!important;min-width:0;min-height:30px;padding:5px 9px}.modal-body,.modal-body-padding,.modal .u-modal-body-scroll,.modal .u-modal-body-scroll-lg,.modal .u-modal-body-scroll-xl,.modal-body h3,.modal-body h4,.modal-body h5,.modal-body-padding h3,.modal-body-padding h4,.modal-body-padding h5,.modal .u-modal-body-scroll h3,.modal .u-modal-body-scroll h4,.modal .u-modal-body-scroll h5,.modal .u-modal-body-scroll-lg h3,.modal .u-modal-body-scroll-lg h4,.modal .u-modal-body-scroll-lg h5,.modal .u-modal-body-scroll-xl h3,.modal .u-modal-body-scroll-xl h4,.modal .u-modal-body-scroll-xl h5{color:var(--text-primary)}.modal-body .total-records,.modal-body-padding .total-records,.modal .u-modal-body-scroll .total-records,.modal .u-modal-body-scroll-lg .total-records,.modal .u-modal-body-scroll-xl .total-records{color:var(--text-secondary);font-size:var(--font-size-md)}.modal-body .iot-setup-filters,.modal-body-padding .iot-setup-filters,.modal .u-modal-body-scroll .iot-setup-filters,.modal .u-modal-body-scroll-lg .iot-setup-filters,.modal .u-modal-body-scroll-xl .iot-setup-filters{margin-top:0;margin-bottom:0}.modal-body .iot-filter-host,.modal-body-padding .iot-filter-host,.modal .u-modal-body-scroll .iot-filter-host,.modal .u-modal-body-scroll-lg .iot-filter-host,.modal .u-modal-body-scroll-xl .iot-filter-host{margin-bottom:2px}.modal-body .iot-setup-table-section,.modal-body-padding .iot-setup-table-section,.modal .u-modal-body-scroll .iot-setup-table-section,.modal .u-modal-body-scroll-lg .iot-setup-table-section,.modal .u-modal-body-scroll-xl .iot-setup-table-section{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0;overflow:hidden}.modal-body .iot-setup-table-panel,.modal-body-padding .iot-setup-table-panel,.modal .u-modal-body-scroll .iot-setup-table-panel,.modal .u-modal-body-scroll-lg .iot-setup-table-panel,.modal .u-modal-body-scroll-xl .iot-setup-table-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;margin-right:10px;margin-left:10px}.modal-body .iot-setup-table-panel__loader,.modal-body-padding .iot-setup-table-panel__loader,.modal .u-modal-body-scroll .iot-setup-table-panel__loader,.modal .u-modal-body-scroll-lg .iot-setup-table-panel__loader,.modal .u-modal-body-scroll-xl .iot-setup-table-panel__loader{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:0;padding:20px}.modal-body .iot-setup-table-card,.modal-body-padding .iot-setup-table-card,.modal .u-modal-body-scroll .iot-setup-table-card,.modal .u-modal-body-scroll-lg .iot-setup-table-card,.modal .u-modal-body-scroll-xl .iot-setup-table-card{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.modal-body .iot-table-head,.modal-body-padding .iot-table-head,.modal .u-modal-body-scroll .iot-table-head,.modal .u-modal-body-scroll-lg .iot-table-head,.modal .u-modal-body-scroll-xl .iot-table-head{flex:0 0 auto;flex-shrink:0;width:100%;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:12}.modal-body .iot-table-head__track,.modal-body-padding .iot-table-head__track,.modal .u-modal-body-scroll .iot-table-head__track,.modal .u-modal-body-scroll-lg .iot-table-head__track,.modal .u-modal-body-scroll-xl .iot-table-head__track{width:100%;overflow:hidden}.modal-body .iot-table-head__table,.modal-body-padding .iot-table-head__table,.modal .u-modal-body-scroll .iot-table-head__table,.modal .u-modal-body-scroll-lg .iot-table-head__table,.modal .u-modal-body-scroll-xl .iot-table-head__table{width:100%;margin-bottom:0!important;table-layout:auto;border-collapse:separate;border-spacing:0;border-bottom:0!important}.modal-body .iot-table-head__table thead th,.modal-body-padding .iot-table-head__table thead th,.modal .u-modal-body-scroll .iot-table-head__table thead th,.modal .u-modal-body-scroll-lg .iot-table-head__table thead th,.modal .u-modal-body-scroll-xl .iot-table-head__table thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle;text-align:left}.modal-body .iot-table-head__table thead th.iot-th--center,.modal-body-padding .iot-table-head__table thead th.iot-th--center,.modal .u-modal-body-scroll .iot-table-head__table thead th.iot-th--center,.modal .u-modal-body-scroll-lg .iot-table-head__table thead th.iot-th--center,.modal .u-modal-body-scroll-xl .iot-table-head__table thead th.iot-th--center,.modal-body .iot-table-head__table thead th.iot-setup-cell-action,.modal-body-padding .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-head__table thead th.iot-setup-cell-action{text-align:center}@media(min-width:992px){.modal-body .iot-table-head__table thead th.iot-setup-cell-action,.modal-body-padding .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-head__table thead th.iot-setup-cell-action{position:sticky;right:0;z-index:13;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;border-left:1px solid color-mix(in srgb,var(--text-on-primary) 22%,transparent)!important;box-shadow:none}}.modal-body .iot-table-body-scroll,.modal-body-padding .iot-table-body-scroll,.modal .u-modal-body-scroll .iot-table-body-scroll,.modal .u-modal-body-scroll-lg .iot-table-body-scroll,.modal .u-modal-body-scroll-xl .iot-table-body-scroll{flex:1 1 auto;min-height:0;width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.modal-body .iot-table-body-scroll .table-responsive,.modal-body-padding .iot-table-body-scroll .table-responsive,.modal .u-modal-body-scroll .iot-table-body-scroll .table-responsive,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table-responsive,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table-responsive{overflow:visible!important;margin-bottom:0!important}.modal-body .iot-table-body-scroll .position-relative,.modal-body-padding .iot-table-body-scroll .position-relative,.modal .u-modal-body-scroll .iot-table-body-scroll .position-relative,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .position-relative,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .position-relative{overflow:visible!important}.modal-body .iot-table-body-scroll table,.modal-body-padding .iot-table-body-scroll table,.modal .u-modal-body-scroll .iot-table-body-scroll table,.modal .u-modal-body-scroll-lg .iot-table-body-scroll table,.modal .u-modal-body-scroll-xl .iot-table-body-scroll table{margin-bottom:0!important;width:100%;min-width:100%;table-layout:fixed;border-collapse:separate!important;border-spacing:0;border-top:0!important}.modal-body .iot-table-body-scroll thead,.modal-body-padding .iot-table-body-scroll thead,.modal .u-modal-body-scroll .iot-table-body-scroll thead,.modal .u-modal-body-scroll-lg .iot-table-body-scroll thead,.modal .u-modal-body-scroll-xl .iot-table-body-scroll thead{display:none!important}.modal-body .iot-table-body-scroll .table tbody td,.modal-body-padding .iot-table-body-scroll .table tbody td,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody td,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody td,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem;text-align:left}.modal-body .iot-table-body-scroll .table tbody td:has(.iot-status-badge),.modal-body-padding .iot-table-body-scroll .table tbody td:has(.iot-status-badge),.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody td:has(.iot-status-badge),.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody td:has(.iot-status-badge),.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody td:has(.iot-status-badge){text-align:center!important}.modal-body .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal-body .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal-body-padding .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody td:has(.item-option-edit){text-align:center!important}@media(min-width:992px){.modal-body .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal-body .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal-body-padding .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody td:has(.item-option-edit){position:sticky;right:0;z-index:3;background-clip:padding-box;border-left:1px solid var(--iot-table-border)!important;box-shadow:none}}@media(min-width:992px){.modal-body .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.modal-body .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.modal-body .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.modal-body-padding .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.modal .u-modal-body-scroll .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action{background-color:var(--iot-table-row-odd)!important}.modal-body .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.modal-body .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.modal-body .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.modal-body-padding .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.modal .u-modal-body-scroll .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action{background-color:var(--iot-table-row-even)!important}.modal-body .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.modal-body .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit),.modal-body-padding .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.modal-body-padding .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit),.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit){background-color:var(--iot-table-row-hover)!important}}@media(min-width:992px){.modal-body .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.modal-body .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal-body .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal-body-padding .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.modal-body-padding .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal-body-padding .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll-lg .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.modal .u-modal-body-scroll-xl .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit){box-shadow:-8px 0 14px -10px #0f172a73}}.modal-body .iot-setup-table-scroll,.modal-body-padding .iot-setup-table-scroll,.modal .u-modal-body-scroll .iot-setup-table-scroll,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.modal-body .iot-fixed-table,.modal-body-padding .iot-fixed-table,.modal .u-modal-body-scroll .iot-fixed-table,.modal .u-modal-body-scroll-lg .iot-fixed-table,.modal .u-modal-body-scroll-xl .iot-fixed-table{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:hidden}.modal-body .iot-fixed-table__header,.modal-body-padding .iot-fixed-table__header,.modal .u-modal-body-scroll .iot-fixed-table__header,.modal .u-modal-body-scroll-lg .iot-fixed-table__header,.modal .u-modal-body-scroll-xl .iot-fixed-table__header{flex:0 0 auto;flex-shrink:0;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:5}.modal-body .iot-fixed-table__header-track,.modal-body-padding .iot-fixed-table__header-track,.modal .u-modal-body-scroll .iot-fixed-table__header-track,.modal .u-modal-body-scroll-lg .iot-fixed-table__header-track,.modal .u-modal-body-scroll-xl .iot-fixed-table__header-track{overflow:hidden;width:100%}.modal-body .iot-fixed-table__header table,.modal-body-padding .iot-fixed-table__header table,.modal .u-modal-body-scroll .iot-fixed-table__header table,.modal .u-modal-body-scroll-lg .iot-fixed-table__header table,.modal .u-modal-body-scroll-xl .iot-fixed-table__header table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-bottom:0!important}.modal-body .iot-fixed-table__header thead th,.modal-body-padding .iot-fixed-table__header thead th,.modal .u-modal-body-scroll .iot-fixed-table__header thead th,.modal .u-modal-body-scroll-lg .iot-fixed-table__header thead th,.modal .u-modal-body-scroll-xl .iot-fixed-table__header thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle}.modal-body .iot-fixed-table__body,.modal-body-padding .iot-fixed-table__body,.modal .u-modal-body-scroll .iot-fixed-table__body,.modal .u-modal-body-scroll-lg .iot-fixed-table__body,.modal .u-modal-body-scroll-xl .iot-fixed-table__body{flex:1 1 auto;min-height:0;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-body .iot-fixed-table__body thead,.modal-body-padding .iot-fixed-table__body thead,.modal .u-modal-body-scroll .iot-fixed-table__body thead,.modal .u-modal-body-scroll-lg .iot-fixed-table__body thead,.modal .u-modal-body-scroll-xl .iot-fixed-table__body thead{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}.modal-body .iot-fixed-table__body .table-responsive,.modal-body-padding .iot-fixed-table__body .table-responsive,.modal .u-modal-body-scroll .iot-fixed-table__body .table-responsive,.modal .u-modal-body-scroll-lg .iot-fixed-table__body .table-responsive,.modal .u-modal-body-scroll-xl .iot-fixed-table__body .table-responsive{overflow:visible!important;margin-bottom:0!important}.modal-body .iot-fixed-table__body .position-relative,.modal-body-padding .iot-fixed-table__body .position-relative,.modal .u-modal-body-scroll .iot-fixed-table__body .position-relative,.modal .u-modal-body-scroll-lg .iot-fixed-table__body .position-relative,.modal .u-modal-body-scroll-xl .iot-fixed-table__body .position-relative{overflow:visible!important}.modal-body .iot-fixed-table__body table,.modal-body-padding .iot-fixed-table__body table,.modal .u-modal-body-scroll .iot-fixed-table__body table,.modal .u-modal-body-scroll-lg .iot-fixed-table__body table,.modal .u-modal-body-scroll-xl .iot-fixed-table__body table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-top:0!important}.modal-body .iot-fixed-table__body .table tbody td,.modal-body-padding .iot-fixed-table__body .table tbody td,.modal .u-modal-body-scroll .iot-fixed-table__body .table tbody td,.modal .u-modal-body-scroll-lg .iot-fixed-table__body .table tbody td,.modal .u-modal-body-scroll-xl .iot-fixed-table__body .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem}.modal-body .iot-setup-sticky-table,.modal-body-padding .iot-setup-sticky-table,.modal .u-modal-body-scroll .iot-setup-sticky-table,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow-x:auto;overflow-y:hidden;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.modal-body .iot-setup-sticky-table>div,.modal-body-padding .iot-setup-sticky-table>div,.modal .u-modal-body-scroll .iot-setup-sticky-table>div,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table>div,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.modal-body .iot-setup-sticky-table .position-relative,.modal-body-padding .iot-setup-sticky-table .position-relative,.modal .u-modal-body-scroll .iot-setup-sticky-table .position-relative,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table .position-relative,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table .position-relative{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden!important}.modal-body .iot-setup-sticky-table table.iot-sticky-data-table,.modal-body .iot-setup-sticky-table .table.iot-sticky-data-table,.modal-body-padding .iot-setup-sticky-table table.iot-sticky-data-table,.modal-body-padding .iot-setup-sticky-table .table.iot-sticky-data-table,.modal .u-modal-body-scroll .iot-setup-sticky-table table.iot-sticky-data-table,.modal .u-modal-body-scroll .iot-setup-sticky-table .table.iot-sticky-data-table,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table table.iot-sticky-data-table,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table .table.iot-sticky-data-table,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table table.iot-sticky-data-table,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table .table.iot-sticky-data-table{display:block!important;height:100%;width:max-content;min-width:100%;margin-bottom:0!important;border-collapse:separate!important;border-spacing:0;overflow:visible!important}.modal-body .iot-setup-sticky-table thead,.modal-body-padding .iot-setup-sticky-table thead,.modal .u-modal-body-scroll .iot-setup-sticky-table thead,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table thead,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table thead{display:table;width:100%;table-layout:fixed}.modal-body .iot-setup-sticky-table thead tr,.modal-body-padding .iot-setup-sticky-table thead tr,.modal .u-modal-body-scroll .iot-setup-sticky-table thead tr,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table thead tr,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table thead tr{display:table-row}.modal-body .iot-setup-sticky-table thead th,.modal-body-padding .iot-setup-sticky-table thead th,.modal .u-modal-body-scroll .iot-setup-sticky-table thead th,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table thead th,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table thead th{background-color:var(--iot-table-header-bg)!important;color:var(--text-on-primary)!important;border-color:var(--iot-table-border)!important;overflow:visible!important}.modal-body .iot-setup-sticky-table tbody,.modal-body-padding .iot-setup-sticky-table tbody,.modal .u-modal-body-scroll .iot-setup-sticky-table tbody,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table tbody,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table tbody{display:block!important;width:100%;height:calc(100% - var(--iot-sticky-thead-h, 34px));max-height:calc(100% - var(--iot-sticky-thead-h, 34px));overflow:auto!important;-webkit-overflow-scrolling:touch}.modal-body .iot-setup-sticky-table tbody tr,.modal-body-padding .iot-setup-sticky-table tbody tr,.modal .u-modal-body-scroll .iot-setup-sticky-table tbody tr,.modal .u-modal-body-scroll-lg .iot-setup-sticky-table tbody tr,.modal .u-modal-body-scroll-xl .iot-setup-sticky-table tbody tr{display:table!important;width:100%;table-layout:fixed}.modal-body .iot-setup-table-inner-scroll,.modal-body-padding .iot-setup-table-inner-scroll,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-body .iot-setup-table-inner-scroll>.position-relative,.modal-body .iot-setup-table-inner-scroll>div,.modal-body-padding .iot-setup-table-inner-scroll>.position-relative,.modal-body-padding .iot-setup-table-inner-scroll>div,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll>.position-relative,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll>div,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll>.position-relative,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll>div,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll>.position-relative,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll>div{overflow:visible!important;max-height:none!important}.modal-body .iot-setup-table-inner-scroll .table,.modal-body .iot-setup-table-inner-scroll table.table,.modal-body-padding .iot-setup-table-inner-scroll .table,.modal-body-padding .iot-setup-table-inner-scroll table.table,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll .table,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll table.table,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll .table,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll table.table,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll .table,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.modal-body .iot-setup-table-inner-scroll thead,.modal-body-padding .iot-setup-table-inner-scroll thead,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll thead,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll thead,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll thead,.modal-body .iot-setup-table-inner-scroll thead tr,.modal-body-padding .iot-setup-table-inner-scroll thead tr,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll thead tr,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll thead tr,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll thead tr{position:sticky;top:0;z-index:10}.modal-body .iot-setup-table-inner-scroll .table thead th,.modal-body .iot-setup-table-inner-scroll .table-light th,.modal-body .iot-setup-table-inner-scroll .thead-light th,.modal-body .iot-setup-table-inner-scroll thead.table-light th,.modal-body .iot-setup-table-inner-scroll thead.thead-light th,.modal-body .iot-setup-table-inner-scroll thead th,.modal-body-padding .iot-setup-table-inner-scroll .table thead th,.modal-body-padding .iot-setup-table-inner-scroll .table-light th,.modal-body-padding .iot-setup-table-inner-scroll .thead-light th,.modal-body-padding .iot-setup-table-inner-scroll thead.table-light th,.modal-body-padding .iot-setup-table-inner-scroll thead.thead-light th,.modal-body-padding .iot-setup-table-inner-scroll thead th,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll .table thead th,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll .table-light th,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll .thead-light th,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll thead.table-light th,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll thead.thead-light th,.modal .u-modal-body-scroll .iot-setup-table-inner-scroll thead th,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll .table thead th,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll .table-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll .thead-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll thead.table-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll thead.thead-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-inner-scroll thead th,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll .table thead th,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll .table-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll .thead-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll thead.table-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll thead.thead-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-inner-scroll thead th{position:sticky!important;top:0!important;z-index:11!important;overflow:visible!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)),.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)),.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)),.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)),.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)){overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;isolation:isolate}.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive{overflow:visible!important;max-height:none!important}.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead{position:sticky;top:0;z-index:10}.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr{position:sticky;top:0;z-index:10}.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.modal-body .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.modal-body-padding .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.modal .u-modal-body-scroll .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.modal .u-modal-body-scroll-lg .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.modal .u-modal-body-scroll-xl .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th{position:sticky!important;top:0!important;z-index:11!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.modal-body .iot-setup-table-pagination,.modal-body-padding .iot-setup-table-pagination,.modal .u-modal-body-scroll .iot-setup-table-pagination,.modal .u-modal-body-scroll-lg .iot-setup-table-pagination,.modal .u-modal-body-scroll-xl .iot-setup-table-pagination{flex:0 0 auto;flex-shrink:0;position:relative!important;top:0!important;z-index:2;background:var(--bg-elevated)}.modal-body .iot-setup-table-toolbar,.modal-body-padding .iot-setup-table-toolbar,.modal .u-modal-body-scroll .iot-setup-table-toolbar,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:0 20px 0 16px;border-radius:var(--border-radius-lg);flex:0 0 auto;flex-shrink:0;z-index:3;background:var(--bg-sidebar);margin:10px}.modal-body .iot-setup-table-toolbar__meta,.modal-body-padding .iot-setup-table-toolbar__meta,.modal .u-modal-body-scroll .iot-setup-table-toolbar__meta,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__meta,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__meta{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.modal-body .iot-setup-table-toolbar__page,.modal-body-padding .iot-setup-table-toolbar__page,.modal .u-modal-body-scroll .iot-setup-table-toolbar__page,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__page,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__page{display:block;margin:0;padding:0;color:var(--text-on-primary);font-size:1.05rem;font-weight:700;line-height:1.2;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-body .iot-setup-table-toolbar__heading,.modal-body .iot-setup-table-toolbar__count,.modal-body-padding .iot-setup-table-toolbar__heading,.modal-body-padding .iot-setup-table-toolbar__count,.modal .u-modal-body-scroll .iot-setup-table-toolbar__heading,.modal .u-modal-body-scroll .iot-setup-table-toolbar__count,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__heading,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__count,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__heading,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__count{display:inline;margin:0;padding:0;border:0;border-radius:0;background:none;color:color-mix(in srgb,var(--text-on-primary) 78%,transparent);font-size:.875rem;font-weight:500;line-height:1.3;letter-spacing:.01em;white-space:nowrap}.modal-body .iot-setup-table-toolbar__heading strong,.modal-body .iot-setup-table-toolbar__count strong,.modal-body-padding .iot-setup-table-toolbar__heading strong,.modal-body-padding .iot-setup-table-toolbar__count strong,.modal .u-modal-body-scroll .iot-setup-table-toolbar__heading strong,.modal .u-modal-body-scroll .iot-setup-table-toolbar__count strong,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__heading strong,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__count strong,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__heading strong,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__count strong{color:var(--text-on-primary);font-size:.9375rem;font-weight:700}.modal-body .iot-setup-table-toolbar__actions,.modal-body-padding .iot-setup-table-toolbar__actions,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-width:0;overflow:visible;-webkit-overflow-scrolling:touch}.modal-body .iot-setup-table-toolbar__actions .btn,.modal-body .iot-setup-table-toolbar__actions span.btn,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn,.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal-body-padding .iot-setup-table-toolbar__actions .btn,.modal-body-padding .iot-setup-table-toolbar__actions span.btn,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .btn,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions span.btn,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .btn,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions span.btn,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .btn,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions span.btn,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px;height:40px!important;min-height:40px!important;margin:0!important;padding:0 16px!important;line-height:1!important;vertical-align:middle;flex-shrink:0;white-space:nowrap;font-size:.8125rem;font-weight:600;border-radius:10px!important;box-shadow:none!important;transition:background-color var(--transition-fast, .15s ease),transform var(--transition-fast, .15s ease),box-shadow var(--transition-fast, .15s ease)}.modal-body .iot-setup-table-toolbar__actions .btn svg,.modal-body .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.modal-body .iot-setup-table-toolbar__actions span.btn svg,.modal-body .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn svg,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa,.modal-body-padding .iot-setup-table-toolbar__actions .btn svg,.modal-body-padding .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.modal-body-padding .iot-setup-table-toolbar__actions span.btn svg,.modal-body-padding .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn svg,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .btn svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions span.btn svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .btn svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions span.btn svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .btn svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions span.btn svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa{width:15px!important;height:15px!important;font-size:15px!important;margin:0;flex-shrink:0}.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important;padding:0!important}.modal-body .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal-body .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal-body .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button),.modal-body-padding .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal-body-padding .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button),.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button),.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button),.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button){width:auto!important;min-width:0!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.modal-body .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal-body .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover,.modal-body-padding .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal-body-padding .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover{background:#fff3!important;transform:translateY(-1px)}.modal-body .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal-body .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active,.modal-body-padding .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal-body-padding .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active{transform:translateY(0)}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger{float:none!important;position:relative;align-self:center;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger:hover,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger:hover,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger:hover,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger:hover,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger:hover{background:#fff3!important;transform:translateY(-1px)}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger:active,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger:active,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger:active,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger:active,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger:active{transform:translateY(0)}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffff40!important}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon{display:inline-flex!important;align-items:center;justify-content:center;width:15px!important;height:15px!important;margin:0!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:15px!important;line-height:1}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg{display:block;width:15px!important;height:15px!important;margin:0}.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-primary, #2f80ed)!important;color:#fff!important;border:2px solid var(--bg-sidebar)!important;font-size:.6rem;font-weight:700;line-height:1}.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button{background:var(--color-primary, #2f80ed)!important;border:1px solid var(--color-primary, #2f80ed)!important;color:#fff!important}.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover{background:color-mix(in srgb,var(--color-primary, #2f80ed) 85%,#fff)!important;transform:translateY(-1px)}.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active{transform:translateY(0)}.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.modal-body .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.modal-body-padding .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa{width:28px!important;height:28px!important;font-size:28px!important;color:#fff!important}@media(max-width:991.98px){.modal-body .iot-setup-table-toolbar,.modal-body-padding .iot-setup-table-toolbar,.modal .u-modal-body-scroll .iot-setup-table-toolbar,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;min-height:0;padding:10px 12px;margin:4px 8px 8px}.modal-body .iot-setup-table-toolbar__meta,.modal-body-padding .iot-setup-table-toolbar__meta,.modal .u-modal-body-scroll .iot-setup-table-toolbar__meta,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__meta,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__meta{flex:1 1 auto;min-width:0;width:auto}.modal-body .iot-setup-table-toolbar__page,.modal-body-padding .iot-setup-table-toolbar__page,.modal .u-modal-body-scroll .iot-setup-table-toolbar__page,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__page,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__page{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1rem}.modal-body .iot-setup-table-toolbar__heading,.modal-body .iot-setup-table-toolbar__count,.modal-body-padding .iot-setup-table-toolbar__heading,.modal-body-padding .iot-setup-table-toolbar__count,.modal .u-modal-body-scroll .iot-setup-table-toolbar__heading,.modal .u-modal-body-scroll .iot-setup-table-toolbar__count,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__heading,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__count,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__heading,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__count{white-space:nowrap}.modal-body .iot-setup-table-toolbar__actions,.modal-body-padding .iot-setup-table-toolbar__actions,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions{flex:0 0 auto;width:auto;margin-left:0;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.modal-body .iot-setup-table-section,.modal-body-padding .iot-setup-table-section,.modal .u-modal-body-scroll .iot-setup-table-section,.modal .u-modal-body-scroll-lg .iot-setup-table-section,.modal .u-modal-body-scroll-xl .iot-setup-table-section{margin-left:0;margin-right:0;min-width:0}.modal-body .iot-setup-table-card,.modal-body .box-shadow.iot-setup-table-card,.modal-body-padding .iot-setup-table-card,.modal-body-padding .box-shadow.iot-setup-table-card,.modal .u-modal-body-scroll .iot-setup-table-card,.modal .u-modal-body-scroll .box-shadow.iot-setup-table-card,.modal .u-modal-body-scroll-lg .iot-setup-table-card,.modal .u-modal-body-scroll-lg .box-shadow.iot-setup-table-card,.modal .u-modal-body-scroll-xl .iot-setup-table-card,.modal .u-modal-body-scroll-xl .box-shadow.iot-setup-table-card{min-width:0;width:100%}.modal-body .iot-table-body-scroll,.modal-body-padding .iot-table-body-scroll,.modal .u-modal-body-scroll .iot-table-body-scroll,.modal .u-modal-body-scroll-lg .iot-table-body-scroll,.modal .u-modal-body-scroll-xl .iot-table-body-scroll{min-height:180px!important}.modal-body .iot-setup-table-pagination,.modal-body .box-shadow .iot-setup-table-pagination,.modal-body-padding .iot-setup-table-pagination,.modal-body-padding .box-shadow .iot-setup-table-pagination,.modal .u-modal-body-scroll .iot-setup-table-pagination,.modal .u-modal-body-scroll .box-shadow .iot-setup-table-pagination,.modal .u-modal-body-scroll-lg .iot-setup-table-pagination,.modal .u-modal-body-scroll-lg .box-shadow .iot-setup-table-pagination,.modal .u-modal-body-scroll-xl .iot-setup-table-pagination,.modal .u-modal-body-scroll-xl .box-shadow .iot-setup-table-pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px;padding:6px 8px!important}.modal-body .iot-setup-table-pagination .pagination,.modal-body .box-shadow .iot-setup-table-pagination .pagination,.modal-body-padding .iot-setup-table-pagination .pagination,.modal-body-padding .box-shadow .iot-setup-table-pagination .pagination,.modal .u-modal-body-scroll .iot-setup-table-pagination .pagination,.modal .u-modal-body-scroll .box-shadow .iot-setup-table-pagination .pagination,.modal .u-modal-body-scroll-lg .iot-setup-table-pagination .pagination,.modal .u-modal-body-scroll-lg .box-shadow .iot-setup-table-pagination .pagination,.modal .u-modal-body-scroll-xl .iot-setup-table-pagination .pagination,.modal .u-modal-body-scroll-xl .box-shadow .iot-setup-table-pagination .pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:4px;margin:0!important;padding:0!important;width:auto!important;position:static!important}.modal-body .iot-setup-table-pagination .page-item,.modal-body .box-shadow .iot-setup-table-pagination .page-item,.modal-body-padding .iot-setup-table-pagination .page-item,.modal-body-padding .box-shadow .iot-setup-table-pagination .page-item,.modal .u-modal-body-scroll .iot-setup-table-pagination .page-item,.modal .u-modal-body-scroll .box-shadow .iot-setup-table-pagination .page-item,.modal .u-modal-body-scroll-lg .iot-setup-table-pagination .page-item,.modal .u-modal-body-scroll-lg .box-shadow .iot-setup-table-pagination .page-item,.modal .u-modal-body-scroll-xl .iot-setup-table-pagination .page-item,.modal .u-modal-body-scroll-xl .box-shadow .iot-setup-table-pagination .page-item{flex:0 0 auto!important}.modal-body .iot-setup-table-pagination .page-link,.modal-body .box-shadow .iot-setup-table-pagination .page-link,.modal-body-padding .iot-setup-table-pagination .page-link,.modal-body-padding .box-shadow .iot-setup-table-pagination .page-link,.modal .u-modal-body-scroll .iot-setup-table-pagination .page-link,.modal .u-modal-body-scroll .box-shadow .iot-setup-table-pagination .page-link,.modal .u-modal-body-scroll-lg .iot-setup-table-pagination .page-link,.modal .u-modal-body-scroll-lg .box-shadow .iot-setup-table-pagination .page-link,.modal .u-modal-body-scroll-xl .iot-setup-table-pagination .page-link,.modal .u-modal-body-scroll-xl .box-shadow .iot-setup-table-pagination .page-link{min-width:32px;min-height:32px!important;height:32px;padding:0 8px!important}.modal-body .iot-setup-table-pagination .searchInput,.modal-body .box-shadow .iot-setup-table-pagination .searchInput,.modal-body-padding .iot-setup-table-pagination .searchInput,.modal-body-padding .box-shadow .iot-setup-table-pagination .searchInput,.modal .u-modal-body-scroll .iot-setup-table-pagination .searchInput,.modal .u-modal-body-scroll .box-shadow .iot-setup-table-pagination .searchInput,.modal .u-modal-body-scroll-lg .iot-setup-table-pagination .searchInput,.modal .u-modal-body-scroll-lg .box-shadow .iot-setup-table-pagination .searchInput,.modal .u-modal-body-scroll-xl .iot-setup-table-pagination .searchInput,.modal .u-modal-body-scroll-xl .box-shadow .iot-setup-table-pagination .searchInput{width:auto!important;position:static!important;right:auto!important}}@media(max-width:575.98px){.modal-body .iot-setup-table-toolbar,.modal-body-padding .iot-setup-table-toolbar,.modal .u-modal-body-scroll .iot-setup-table-toolbar,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar{margin-left:8px;margin-right:8px;padding:10px}.modal-body .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal-body .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal-body-padding .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal-body-padding .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll-lg .iot-setup-table-toolbar__actions .iot-filter-trigger,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-setup-add-button,.modal .u-modal-body-scroll-xl .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important}}.modal-body .box-shadow,.modal-body-padding .box-shadow,.modal .u-modal-body-scroll .box-shadow,.modal .u-modal-body-scroll-lg .box-shadow,.modal .u-modal-body-scroll-xl .box-shadow{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-card);border-radius:var(--border-radius-lg)}.modal-body .box-shadow.iot-setup-table-card,.modal-body-padding .box-shadow.iot-setup-table-card,.modal .u-modal-body-scroll .box-shadow.iot-setup-table-card,.modal .u-modal-body-scroll-lg .box-shadow.iot-setup-table-card,.modal .u-modal-body-scroll-xl .box-shadow.iot-setup-table-card{display:flex;flex-direction:column;overflow:hidden}.modal-body .box-shadow .table,.modal-body-padding .box-shadow .table,.modal .u-modal-body-scroll .box-shadow .table,.modal .u-modal-body-scroll-lg .box-shadow .table,.modal .u-modal-body-scroll-xl .box-shadow .table{margin-bottom:0}.modal-body .box-shadow .pagination,.modal-body .box-shadow .iot-setup-table-pagination,.modal-body-padding .box-shadow .pagination,.modal-body-padding .box-shadow .iot-setup-table-pagination,.modal .u-modal-body-scroll .box-shadow .pagination,.modal .u-modal-body-scroll .box-shadow .iot-setup-table-pagination,.modal .u-modal-body-scroll-lg .box-shadow .pagination,.modal .u-modal-body-scroll-lg .box-shadow .iot-setup-table-pagination,.modal .u-modal-body-scroll-xl .box-shadow .pagination,.modal .u-modal-body-scroll-xl .box-shadow .iot-setup-table-pagination{margin:0;padding:5px;border-top:1px solid var(--border-color);flex:0 0 auto;position:relative!important;top:0!important;background:var(--bg-elevated)}.modal-body .iot-setup-field,.modal-body-padding .iot-setup-field,.modal .u-modal-body-scroll .iot-setup-field,.modal .u-modal-body-scroll-lg .iot-setup-field,.modal .u-modal-body-scroll-xl .iot-setup-field{display:flex;flex-direction:column;gap:2px;width:100%}.modal-body .form-label-themed,.modal-body label.form-label-themed,.modal-body .text-dark,.modal-body .modal-body .form-label,.modal-body .modal-body-padding .form-label,.modal-body-padding .form-label-themed,.modal-body-padding label.form-label-themed,.modal-body-padding .text-dark,.modal-body-padding .modal-body .form-label,.modal-body-padding .modal-body-padding .form-label,.modal .u-modal-body-scroll .form-label-themed,.modal .u-modal-body-scroll label.form-label-themed,.modal .u-modal-body-scroll .text-dark,.modal .u-modal-body-scroll .modal-body .form-label,.modal .u-modal-body-scroll .modal-body-padding .form-label,.modal .u-modal-body-scroll-lg .form-label-themed,.modal .u-modal-body-scroll-lg label.form-label-themed,.modal .u-modal-body-scroll-lg .text-dark,.modal .u-modal-body-scroll-lg .modal-body .form-label,.modal .u-modal-body-scroll-lg .modal-body-padding .form-label,.modal .u-modal-body-scroll-xl .form-label-themed,.modal .u-modal-body-scroll-xl label.form-label-themed,.modal .u-modal-body-scroll-xl .text-dark,.modal .u-modal-body-scroll-xl .modal-body .form-label,.modal .u-modal-body-scroll-xl .modal-body-padding .form-label{color:var(--text-primary)!important;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;text-align:left;margin-bottom:0;line-height:1.2}.modal-body .custom-select,.modal-body input.custom-select,.modal-body select.custom-select,.modal-body input.form-control,.modal-body select.form-control,.modal-body-padding .custom-select,.modal-body-padding input.custom-select,.modal-body-padding select.custom-select,.modal-body-padding input.form-control,.modal-body-padding select.form-control,.modal .u-modal-body-scroll .custom-select,.modal .u-modal-body-scroll input.custom-select,.modal .u-modal-body-scroll select.custom-select,.modal .u-modal-body-scroll input.form-control,.modal .u-modal-body-scroll select.form-control,.modal .u-modal-body-scroll-lg .custom-select,.modal .u-modal-body-scroll-lg input.custom-select,.modal .u-modal-body-scroll-lg select.custom-select,.modal .u-modal-body-scroll-lg input.form-control,.modal .u-modal-body-scroll-lg select.form-control,.modal .u-modal-body-scroll-xl .custom-select,.modal .u-modal-body-scroll-xl input.custom-select,.modal .u-modal-body-scroll-xl select.custom-select,.modal .u-modal-body-scroll-xl input.form-control,.modal .u-modal-body-scroll-xl select.form-control{color:var(--text-primary)!important;background-color:var(--bg-input)!important;border:1px solid var(--border-color-input)!important;border-radius:var(--border-radius-md);height:36px;padding:6px 10px;font-size:.8125rem;line-height:1.3;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.modal-body .custom-select::placeholder,.modal-body input.custom-select::placeholder,.modal-body select.custom-select::placeholder,.modal-body input.form-control::placeholder,.modal-body select.form-control::placeholder,.modal-body-padding .custom-select::placeholder,.modal-body-padding input.custom-select::placeholder,.modal-body-padding select.custom-select::placeholder,.modal-body-padding input.form-control::placeholder,.modal-body-padding select.form-control::placeholder,.modal .u-modal-body-scroll .custom-select::placeholder,.modal .u-modal-body-scroll input.custom-select::placeholder,.modal .u-modal-body-scroll select.custom-select::placeholder,.modal .u-modal-body-scroll input.form-control::placeholder,.modal .u-modal-body-scroll select.form-control::placeholder,.modal .u-modal-body-scroll-lg .custom-select::placeholder,.modal .u-modal-body-scroll-lg input.custom-select::placeholder,.modal .u-modal-body-scroll-lg select.custom-select::placeholder,.modal .u-modal-body-scroll-lg input.form-control::placeholder,.modal .u-modal-body-scroll-lg select.form-control::placeholder,.modal .u-modal-body-scroll-xl .custom-select::placeholder,.modal .u-modal-body-scroll-xl input.custom-select::placeholder,.modal .u-modal-body-scroll-xl select.custom-select::placeholder,.modal .u-modal-body-scroll-xl input.form-control::placeholder,.modal .u-modal-body-scroll-xl select.form-control::placeholder{color:var(--text-muted)}.modal-body .custom-select:focus,.modal-body input.custom-select:focus,.modal-body select.custom-select:focus,.modal-body input.form-control:focus,.modal-body select.form-control:focus,.modal-body-padding .custom-select:focus,.modal-body-padding input.custom-select:focus,.modal-body-padding select.custom-select:focus,.modal-body-padding input.form-control:focus,.modal-body-padding select.form-control:focus,.modal .u-modal-body-scroll .custom-select:focus,.modal .u-modal-body-scroll input.custom-select:focus,.modal .u-modal-body-scroll select.custom-select:focus,.modal .u-modal-body-scroll input.form-control:focus,.modal .u-modal-body-scroll select.form-control:focus,.modal .u-modal-body-scroll-lg .custom-select:focus,.modal .u-modal-body-scroll-lg input.custom-select:focus,.modal .u-modal-body-scroll-lg select.custom-select:focus,.modal .u-modal-body-scroll-lg input.form-control:focus,.modal .u-modal-body-scroll-lg select.form-control:focus,.modal .u-modal-body-scroll-xl .custom-select:focus,.modal .u-modal-body-scroll-xl input.custom-select:focus,.modal .u-modal-body-scroll-xl select.custom-select:focus,.modal .u-modal-body-scroll-xl input.form-control:focus,.modal .u-modal-body-scroll-xl select.form-control:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.modal-body .custom-select:disabled,.modal-body .custom-select.bg-disabled,.modal-body input.custom-select:disabled,.modal-body input.custom-select.bg-disabled,.modal-body select.custom-select:disabled,.modal-body select.custom-select.bg-disabled,.modal-body input.form-control:disabled,.modal-body input.form-control.bg-disabled,.modal-body select.form-control:disabled,.modal-body select.form-control.bg-disabled,.modal-body-padding .custom-select:disabled,.modal-body-padding .custom-select.bg-disabled,.modal-body-padding input.custom-select:disabled,.modal-body-padding input.custom-select.bg-disabled,.modal-body-padding select.custom-select:disabled,.modal-body-padding select.custom-select.bg-disabled,.modal-body-padding input.form-control:disabled,.modal-body-padding input.form-control.bg-disabled,.modal-body-padding select.form-control:disabled,.modal-body-padding select.form-control.bg-disabled,.modal .u-modal-body-scroll .custom-select:disabled,.modal .u-modal-body-scroll .custom-select.bg-disabled,.modal .u-modal-body-scroll input.custom-select:disabled,.modal .u-modal-body-scroll input.custom-select.bg-disabled,.modal .u-modal-body-scroll select.custom-select:disabled,.modal .u-modal-body-scroll select.custom-select.bg-disabled,.modal .u-modal-body-scroll input.form-control:disabled,.modal .u-modal-body-scroll input.form-control.bg-disabled,.modal .u-modal-body-scroll select.form-control:disabled,.modal .u-modal-body-scroll select.form-control.bg-disabled,.modal .u-modal-body-scroll-lg .custom-select:disabled,.modal .u-modal-body-scroll-lg .custom-select.bg-disabled,.modal .u-modal-body-scroll-lg input.custom-select:disabled,.modal .u-modal-body-scroll-lg input.custom-select.bg-disabled,.modal .u-modal-body-scroll-lg select.custom-select:disabled,.modal .u-modal-body-scroll-lg select.custom-select.bg-disabled,.modal .u-modal-body-scroll-lg input.form-control:disabled,.modal .u-modal-body-scroll-lg input.form-control.bg-disabled,.modal .u-modal-body-scroll-lg select.form-control:disabled,.modal .u-modal-body-scroll-lg select.form-control.bg-disabled,.modal .u-modal-body-scroll-xl .custom-select:disabled,.modal .u-modal-body-scroll-xl .custom-select.bg-disabled,.modal .u-modal-body-scroll-xl input.custom-select:disabled,.modal .u-modal-body-scroll-xl input.custom-select.bg-disabled,.modal .u-modal-body-scroll-xl select.custom-select:disabled,.modal .u-modal-body-scroll-xl select.custom-select.bg-disabled,.modal .u-modal-body-scroll-xl input.form-control:disabled,.modal .u-modal-body-scroll-xl input.form-control.bg-disabled,.modal .u-modal-body-scroll-xl select.form-control:disabled,.modal .u-modal-body-scroll-xl select.form-control.bg-disabled{background-color:var(--bg-secondary)!important;color:var(--text-muted)!important;opacity:.85}.modal-body select,.modal-body select option,.modal-body-padding select,.modal-body-padding select option,.modal .u-modal-body-scroll select,.modal .u-modal-body-scroll select option,.modal .u-modal-body-scroll-lg select,.modal .u-modal-body-scroll-lg select option,.modal .u-modal-body-scroll-xl select,.modal .u-modal-body-scroll-xl select option{color:var(--text-primary);background-color:var(--bg-input)!important}.modal-body .input-textArea,.modal-body-padding .input-textArea,.modal .u-modal-body-scroll .input-textArea,.modal .u-modal-body-scroll-lg .input-textArea,.modal .u-modal-body-scroll-xl .input-textArea{color:var(--text-primary);background-color:var(--bg-input);border-color:var(--border-color-input);height:36px;min-height:36px;resize:vertical}.modal-body .input-textArea:focus,.modal-body-padding .input-textArea:focus,.modal .u-modal-body-scroll .input-textArea:focus,.modal .u-modal-body-scroll-lg .input-textArea:focus,.modal .u-modal-body-scroll-xl .input-textArea:focus{border-color:var(--color-primary)}.modal-body .input-text-area,.modal-body-padding .input-text-area,.modal .u-modal-body-scroll .input-text-area,.modal .u-modal-body-scroll-lg .input-text-area,.modal .u-modal-body-scroll-xl .input-text-area{display:flex!important;flex-direction:column;align-items:stretch!important;gap:2px}.modal-body .form-check-label,.modal-body-padding .form-check-label,.modal .u-modal-body-scroll .form-check-label,.modal .u-modal-body-scroll-lg .form-check-label,.modal .u-modal-body-scroll-xl .form-check-label{color:var(--text-primary)}.modal-body .form-check-input,.modal-body-padding .form-check-input,.modal .u-modal-body-scroll .form-check-input,.modal .u-modal-body-scroll-lg .form-check-input,.modal .u-modal-body-scroll-xl .form-check-input{border-color:var(--border-color-strong);background-color:var(--bg-input)}.modal-body .form-check-input:checked,.modal-body-padding .form-check-input:checked,.modal .u-modal-body-scroll .form-check-input:checked,.modal .u-modal-body-scroll-lg .form-check-input:checked,.modal .u-modal-body-scroll-xl .form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.modal-body .rmsc,.modal-body-padding .rmsc,.modal .u-modal-body-scroll .rmsc,.modal .u-modal-body-scroll-lg .rmsc,.modal .u-modal-body-scroll-xl .rmsc{--rmsc-h: 32px;--rmsc-bg: var(--bg-input);--rmsc-border: var(--border-color-input);--rmsc-gray: var(--text-muted);--rmsc-main: var(--color-primary);--rmsc-hover: var(--bg-secondary);--rmsc-selected: var(--color-primary);--rmsc-disabled: var(--text-muted);--rmsc-radius: var(--border-radius-md);--rmsc-p: 4px;--rmsc-py: 2px;color:var(--text-primary);font-size:.8125rem}.modal-body .rmsc .dropdown-container,.modal-body-padding .rmsc .dropdown-container,.modal .u-modal-body-scroll .rmsc .dropdown-container,.modal .u-modal-body-scroll-lg .rmsc .dropdown-container,.modal .u-modal-body-scroll-xl .rmsc .dropdown-container{border-radius:var(--border-radius-md);min-height:32px}.modal-body .rmsc .dropdown-heading,.modal-body-padding .rmsc .dropdown-heading,.modal .u-modal-body-scroll .rmsc .dropdown-heading,.modal .u-modal-body-scroll-lg .rmsc .dropdown-heading,.modal .u-modal-body-scroll-xl .rmsc .dropdown-heading{height:32px;padding:2px 8px}.modal-body .rmsc .dropdown-content,.modal-body-padding .rmsc .dropdown-content,.modal .u-modal-body-scroll .rmsc .dropdown-content,.modal .u-modal-body-scroll-lg .rmsc .dropdown-content,.modal .u-modal-body-scroll-xl .rmsc .dropdown-content{z-index:100000;background:var(--bg-elevated);border-color:var(--border-color)}.modal-body .rmsc .dropdown-content .panel-content,.modal-body-padding .rmsc .dropdown-content .panel-content,.modal .u-modal-body-scroll .rmsc .dropdown-content .panel-content,.modal .u-modal-body-scroll-lg .rmsc .dropdown-content .panel-content,.modal .u-modal-body-scroll-xl .rmsc .dropdown-content .panel-content{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.modal-body .rmsc .dropdown-content ul,.modal-body-padding .rmsc .dropdown-content ul,.modal .u-modal-body-scroll .rmsc .dropdown-content ul,.modal .u-modal-body-scroll-lg .rmsc .dropdown-content ul,.modal .u-modal-body-scroll-xl .rmsc .dropdown-content ul{max-height:240px;overflow-y:auto}.modal-body .rmsc .select-item,.modal-body-padding .rmsc .select-item,.modal .u-modal-body-scroll .rmsc .select-item,.modal .u-modal-body-scroll-lg .rmsc .select-item,.modal .u-modal-body-scroll-xl .rmsc .select-item{color:var(--text-primary)}.modal-body .rmsc .select-item.selected,.modal-body-padding .rmsc .select-item.selected,.modal .u-modal-body-scroll .rmsc .select-item.selected,.modal .u-modal-body-scroll-lg .rmsc .select-item.selected,.modal .u-modal-body-scroll-xl .rmsc .select-item.selected{background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.modal-body .table,.modal-body table.table,.modal-body-padding .table,.modal-body-padding table.table,.modal .u-modal-body-scroll .table,.modal .u-modal-body-scroll table.table,.modal .u-modal-body-scroll-lg .table,.modal .u-modal-body-scroll-lg table.table,.modal .u-modal-body-scroll-xl .table,.modal .u-modal-body-scroll-xl table.table{color:var(--text-primary);background:var(--bg-elevated);margin-bottom:0;font-size:.8125rem;border-collapse:separate;border-spacing:0;border:1px solid var(--iot-table-border);border-radius:0;width:max-content;min-width:100%;table-layout:auto}.modal-body table thead,.modal-body-padding table thead,.modal .u-modal-body-scroll table thead,.modal .u-modal-body-scroll-lg table thead,.modal .u-modal-body-scroll-xl table thead{color:var(--text-on-primary)}.modal-body .table thead th,.modal-body .table-light th,.modal-body thead.table-light th,.modal-body-padding .table thead th,.modal-body-padding .table-light th,.modal-body-padding thead.table-light th,.modal .u-modal-body-scroll .table thead th,.modal .u-modal-body-scroll .table-light th,.modal .u-modal-body-scroll thead.table-light th,.modal .u-modal-body-scroll-lg .table thead th,.modal .u-modal-body-scroll-lg .table-light th,.modal .u-modal-body-scroll-lg thead.table-light th,.modal .u-modal-body-scroll-xl .table thead th,.modal .u-modal-body-scroll-xl .table-light th,.modal .u-modal-body-scroll-xl thead.table-light th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;border-bottom:1px solid var(--iot-table-border)!important}.modal-body .table td,.modal-body .table th,.modal-body-padding .table td,.modal-body-padding .table th,.modal .u-modal-body-scroll .table td,.modal .u-modal-body-scroll .table th,.modal .u-modal-body-scroll-lg .table td,.modal .u-modal-body-scroll-lg .table th,.modal .u-modal-body-scroll-xl .table td,.modal .u-modal-body-scroll-xl .table th{border-color:var(--iot-table-border);vertical-align:middle;padding:5px 8px!important;width:auto;max-width:none}.modal-body .table tbody td,.modal-body-padding .table tbody td,.modal .u-modal-body-scroll .table tbody td,.modal .u-modal-body-scroll-lg .table tbody td,.modal .u-modal-body-scroll-xl .table tbody td{color:var(--text-primary);font-size:.8125rem;line-height:1.5;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--iot-table-border);background:transparent}.modal-body .table tbody td:has(.item-option-edit),.modal-body-padding .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-lg .table tbody td:has(.item-option-edit),.modal .u-modal-body-scroll-xl .table tbody td:has(.item-option-edit){width:1%;white-space:nowrap}.modal-body .table tbody td span,.modal-body .table tbody td div:not(.item-option-edit):not(.iot-status-badge),.modal-body-padding .table tbody td span,.modal-body-padding .table tbody td div:not(.item-option-edit):not(.iot-status-badge),.modal .u-modal-body-scroll .table tbody td span,.modal .u-modal-body-scroll .table tbody td div:not(.item-option-edit):not(.iot-status-badge),.modal .u-modal-body-scroll-lg .table tbody td span,.modal .u-modal-body-scroll-lg .table tbody td div:not(.item-option-edit):not(.iot-status-badge),.modal .u-modal-body-scroll-xl .table tbody td span,.modal .u-modal-body-scroll-xl .table tbody td div:not(.item-option-edit):not(.iot-status-badge){color:inherit;word-break:break-word}.modal-body .table tbody tr,.modal-body-padding .table tbody tr,.modal .u-modal-body-scroll .table tbody tr,.modal .u-modal-body-scroll-lg .table tbody tr,.modal .u-modal-body-scroll-xl .table tbody tr{transition:background-color var(--transition-fast);background-color:var(--iot-table-row-even)}.modal-body .table tbody tr:nth-child(odd),.modal-body .table-striped tbody tr:nth-of-type(odd),.modal-body-padding .table tbody tr:nth-child(odd),.modal-body-padding .table-striped tbody tr:nth-of-type(odd),.modal .u-modal-body-scroll .table tbody tr:nth-child(odd),.modal .u-modal-body-scroll .table-striped tbody tr:nth-of-type(odd),.modal .u-modal-body-scroll-lg .table tbody tr:nth-child(odd),.modal .u-modal-body-scroll-lg .table-striped tbody tr:nth-of-type(odd),.modal .u-modal-body-scroll-xl .table tbody tr:nth-child(odd),.modal .u-modal-body-scroll-xl .table-striped tbody tr:nth-of-type(odd){background-color:var(--iot-table-row-odd)}.modal-body .table tbody tr:nth-child(2n),.modal-body .table-striped tbody tr:nth-of-type(2n),.modal-body-padding .table tbody tr:nth-child(2n),.modal-body-padding .table-striped tbody tr:nth-of-type(2n),.modal .u-modal-body-scroll .table tbody tr:nth-child(2n),.modal .u-modal-body-scroll .table-striped tbody tr:nth-of-type(2n),.modal .u-modal-body-scroll-lg .table tbody tr:nth-child(2n),.modal .u-modal-body-scroll-lg .table-striped tbody tr:nth-of-type(2n),.modal .u-modal-body-scroll-xl .table tbody tr:nth-child(2n),.modal .u-modal-body-scroll-xl .table-striped tbody tr:nth-of-type(2n){background-color:var(--iot-table-row-even)}.modal-body .table-hover tbody tr:hover,.modal-body .table tbody tr:hover,.modal-body-padding .table-hover tbody tr:hover,.modal-body-padding .table tbody tr:hover,.modal .u-modal-body-scroll .table-hover tbody tr:hover,.modal .u-modal-body-scroll .table tbody tr:hover,.modal .u-modal-body-scroll-lg .table-hover tbody tr:hover,.modal .u-modal-body-scroll-lg .table tbody tr:hover,.modal .u-modal-body-scroll-xl .table-hover tbody tr:hover,.modal .u-modal-body-scroll-xl .table tbody tr:hover{background-color:var(--iot-table-row-hover)!important}.modal-body .table-bordered,.modal-body-padding .table-bordered,.modal .u-modal-body-scroll .table-bordered,.modal .u-modal-body-scroll-lg .table-bordered,.modal .u-modal-body-scroll-xl .table-bordered{border-color:var(--iot-table-border)}.modal-body .box-shadow .table,.modal-body-padding .box-shadow .table,.modal .u-modal-body-scroll .box-shadow .table,.modal .u-modal-body-scroll-lg .box-shadow .table,.modal .u-modal-body-scroll-xl .box-shadow .table{border-radius:0;border-left:0;border-right:0;border-bottom:0}.modal-body .box-shadow>.row:first-child .table thead th:first-child,.modal-body-padding .box-shadow>.row:first-child .table thead th:first-child,.modal .u-modal-body-scroll .box-shadow>.row:first-child .table thead th:first-child,.modal .u-modal-body-scroll-lg .box-shadow>.row:first-child .table thead th:first-child,.modal .u-modal-body-scroll-xl .box-shadow>.row:first-child .table thead th:first-child{border-top-left-radius:0}.modal-body .box-shadow>.row:first-child .table thead th:last-child,.modal-body-padding .box-shadow>.row:first-child .table thead th:last-child,.modal .u-modal-body-scroll .box-shadow>.row:first-child .table thead th:last-child,.modal .u-modal-body-scroll-lg .box-shadow>.row:first-child .table thead th:last-child,.modal .u-modal-body-scroll-xl .box-shadow>.row:first-child .table thead th:last-child{border-top-right-radius:0}.modal-body .item-option-edit,.modal-body-padding .item-option-edit,.modal .u-modal-body-scroll .item-option-edit,.modal .u-modal-body-scroll-lg .item-option-edit,.modal .u-modal-body-scroll-xl .item-option-edit{display:inline-flex;align-items:center;flex-wrap:nowrap;flex-shrink:0;gap:10px;white-space:nowrap}.modal-body .item-option-edit>a,.modal-body-padding .item-option-edit>a,.modal .u-modal-body-scroll .item-option-edit>a,.modal .u-modal-body-scroll-lg .item-option-edit>a,.modal .u-modal-body-scroll-xl .item-option-edit>a{display:inline-flex;flex-shrink:0;text-decoration:none}.modal-body .item-option-edit>span,.modal-body .item-option-edit>button,.modal-body .item-option-edit>a>span,.modal-body-padding .item-option-edit>span,.modal-body-padding .item-option-edit>button,.modal-body-padding .item-option-edit>a>span,.modal .u-modal-body-scroll .item-option-edit>span,.modal .u-modal-body-scroll .item-option-edit>button,.modal .u-modal-body-scroll .item-option-edit>a>span,.modal .u-modal-body-scroll-lg .item-option-edit>span,.modal .u-modal-body-scroll-lg .item-option-edit>button,.modal .u-modal-body-scroll-lg .item-option-edit>a>span,.modal .u-modal-body-scroll-xl .item-option-edit>span,.modal .u-modal-body-scroll-xl .item-option-edit>button,.modal .u-modal-body-scroll-xl .item-option-edit>a>span{display:inline-flex!important;align-items:center;justify-content:center;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;padding:0!important;margin:0!important;border-radius:8px;border:1px solid transparent;cursor:pointer;line-height:0;font-size:0;box-sizing:border-box;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;aspect-ratio:1/1;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.modal-body .item-option-edit>span:hover,.modal-body .item-option-edit>button:hover,.modal-body .item-option-edit>a>span:hover,.modal-body-padding .item-option-edit>span:hover,.modal-body-padding .item-option-edit>button:hover,.modal-body-padding .item-option-edit>a>span:hover,.modal .u-modal-body-scroll .item-option-edit>span:hover,.modal .u-modal-body-scroll .item-option-edit>button:hover,.modal .u-modal-body-scroll .item-option-edit>a>span:hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:hover,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:hover,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:hover{transform:translateY(-1px)}.modal-body .item-option-edit>span:disabled,.modal-body .item-option-edit>button:disabled,.modal-body .item-option-edit>a>span:disabled,.modal-body-padding .item-option-edit>span:disabled,.modal-body-padding .item-option-edit>button:disabled,.modal-body-padding .item-option-edit>a>span:disabled,.modal .u-modal-body-scroll .item-option-edit>span:disabled,.modal .u-modal-body-scroll .item-option-edit>button:disabled,.modal .u-modal-body-scroll .item-option-edit>a>span:disabled,.modal .u-modal-body-scroll-lg .item-option-edit>span:disabled,.modal .u-modal-body-scroll-lg .item-option-edit>button:disabled,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:disabled,.modal .u-modal-body-scroll-xl .item-option-edit>span:disabled,.modal .u-modal-body-scroll-xl .item-option-edit>button:disabled,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:disabled{opacity:.55;cursor:not-allowed;transform:none}.modal-body .item-option-edit>span.p-2,.modal-body .item-option-edit>span.p-1,.modal-body .item-option-edit>span.pr-1,.modal-body .item-option-edit>span.pl-1,.modal-body .item-option-edit>button.p-2,.modal-body .item-option-edit>button.p-1,.modal-body .item-option-edit>button.pr-1,.modal-body .item-option-edit>button.pl-1,.modal-body .item-option-edit>a>span.p-2,.modal-body .item-option-edit>a>span.p-1,.modal-body .item-option-edit>a>span.pr-1,.modal-body .item-option-edit>a>span.pl-1,.modal-body-padding .item-option-edit>span.p-2,.modal-body-padding .item-option-edit>span.p-1,.modal-body-padding .item-option-edit>span.pr-1,.modal-body-padding .item-option-edit>span.pl-1,.modal-body-padding .item-option-edit>button.p-2,.modal-body-padding .item-option-edit>button.p-1,.modal-body-padding .item-option-edit>button.pr-1,.modal-body-padding .item-option-edit>button.pl-1,.modal-body-padding .item-option-edit>a>span.p-2,.modal-body-padding .item-option-edit>a>span.p-1,.modal-body-padding .item-option-edit>a>span.pr-1,.modal-body-padding .item-option-edit>a>span.pl-1,.modal .u-modal-body-scroll .item-option-edit>span.p-2,.modal .u-modal-body-scroll .item-option-edit>span.p-1,.modal .u-modal-body-scroll .item-option-edit>span.pr-1,.modal .u-modal-body-scroll .item-option-edit>span.pl-1,.modal .u-modal-body-scroll .item-option-edit>button.p-2,.modal .u-modal-body-scroll .item-option-edit>button.p-1,.modal .u-modal-body-scroll .item-option-edit>button.pr-1,.modal .u-modal-body-scroll .item-option-edit>button.pl-1,.modal .u-modal-body-scroll .item-option-edit>a>span.p-2,.modal .u-modal-body-scroll .item-option-edit>a>span.p-1,.modal .u-modal-body-scroll .item-option-edit>a>span.pr-1,.modal .u-modal-body-scroll .item-option-edit>a>span.pl-1,.modal .u-modal-body-scroll-lg .item-option-edit>span.p-2,.modal .u-modal-body-scroll-lg .item-option-edit>span.p-1,.modal .u-modal-body-scroll-lg .item-option-edit>span.pr-1,.modal .u-modal-body-scroll-lg .item-option-edit>span.pl-1,.modal .u-modal-body-scroll-lg .item-option-edit>button.p-2,.modal .u-modal-body-scroll-lg .item-option-edit>button.p-1,.modal .u-modal-body-scroll-lg .item-option-edit>button.pr-1,.modal .u-modal-body-scroll-lg .item-option-edit>button.pl-1,.modal .u-modal-body-scroll-lg .item-option-edit>a>span.p-2,.modal .u-modal-body-scroll-lg .item-option-edit>a>span.p-1,.modal .u-modal-body-scroll-lg .item-option-edit>a>span.pr-1,.modal .u-modal-body-scroll-lg .item-option-edit>a>span.pl-1,.modal .u-modal-body-scroll-xl .item-option-edit>span.p-2,.modal .u-modal-body-scroll-xl .item-option-edit>span.p-1,.modal .u-modal-body-scroll-xl .item-option-edit>span.pr-1,.modal .u-modal-body-scroll-xl .item-option-edit>span.pl-1,.modal .u-modal-body-scroll-xl .item-option-edit>button.p-2,.modal .u-modal-body-scroll-xl .item-option-edit>button.p-1,.modal .u-modal-body-scroll-xl .item-option-edit>button.pr-1,.modal .u-modal-body-scroll-xl .item-option-edit>button.pl-1,.modal .u-modal-body-scroll-xl .item-option-edit>a>span.p-2,.modal .u-modal-body-scroll-xl .item-option-edit>a>span.p-1,.modal .u-modal-body-scroll-xl .item-option-edit>a>span.pr-1,.modal .u-modal-body-scroll-xl .item-option-edit>a>span.pl-1{padding:0!important}.modal-body .item-option-edit>span svg,.modal-body .item-option-edit>span .svg-inline--fa,.modal-body .item-option-edit>button svg,.modal-body .item-option-edit>button .svg-inline--fa,.modal-body .item-option-edit>a>span svg,.modal-body .item-option-edit>a>span .svg-inline--fa,.modal-body-padding .item-option-edit>span svg,.modal-body-padding .item-option-edit>span .svg-inline--fa,.modal-body-padding .item-option-edit>button svg,.modal-body-padding .item-option-edit>button .svg-inline--fa,.modal-body-padding .item-option-edit>a>span svg,.modal-body-padding .item-option-edit>a>span .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span svg,.modal .u-modal-body-scroll .item-option-edit>span .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button svg,.modal .u-modal-body-scroll .item-option-edit>button .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>a>span svg,.modal .u-modal-body-scroll .item-option-edit>a>span .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span svg,.modal .u-modal-body-scroll-lg .item-option-edit>span .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button svg,.modal .u-modal-body-scroll-lg .item-option-edit>button .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>a>span svg,.modal .u-modal-body-scroll-lg .item-option-edit>a>span .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span svg,.modal .u-modal-body-scroll-xl .item-option-edit>span .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button svg,.modal .u-modal-body-scroll-xl .item-option-edit>button .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>a>span svg,.modal .u-modal-body-scroll-xl .item-option-edit>a>span .svg-inline--fa{display:block;flex-shrink:0;margin:0!important;padding:0!important;font-size:.85rem;width:.9em;height:.9em;vertical-align:middle;pointer-events:none}.modal-body .item-option-edit>span:has(svg[data-icon=plus]),.modal-body .item-option-edit>button:has(svg[data-icon=plus]),.modal-body .item-option-edit>a>span:has(svg[data-icon=plus]),.modal-body .item-option-edit>span:has(.fa-plus),.modal-body .item-option-edit>button:has(.fa-plus),.modal-body .item-option-edit>a>span:has(.fa-plus),.modal-body-padding .item-option-edit>span:has(svg[data-icon=plus]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=plus]),.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=plus]),.modal-body-padding .item-option-edit>span:has(.fa-plus),.modal-body-padding .item-option-edit>button:has(.fa-plus),.modal-body-padding .item-option-edit>a>span:has(.fa-plus),.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=plus]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=plus]),.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=plus]),.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-plus),.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-plus),.modal .u-modal-body-scroll .item-option-edit>a>span:has(.fa-plus),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=plus]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=plus]),.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=plus]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-plus),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-plus),.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(.fa-plus),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=plus]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=plus]),.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=plus]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-plus),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-plus),.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(.fa-plus){color:var(--iot-action-add)!important;background:color-mix(in srgb,var(--iot-action-add) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-add) 28%,transparent)}.modal-body .item-option-edit>span:has(svg[data-icon=plus]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=plus]):hover,.modal-body .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.modal-body .item-option-edit>span:has(.fa-plus):hover,.modal-body .item-option-edit>button:has(.fa-plus):hover,.modal-body .item-option-edit>a>span:has(.fa-plus):hover,.modal-body-padding .item-option-edit>span:has(svg[data-icon=plus]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=plus]):hover,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.modal-body-padding .item-option-edit>span:has(.fa-plus):hover,.modal-body-padding .item-option-edit>button:has(.fa-plus):hover,.modal-body-padding .item-option-edit>a>span:has(.fa-plus):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-plus):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-plus):hover,.modal .u-modal-body-scroll .item-option-edit>a>span:has(.fa-plus):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-plus):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-plus):hover,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(.fa-plus):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-plus):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-plus):hover,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(.fa-plus):hover{background:color-mix(in srgb,var(--iot-action-add) 24%,transparent);border-color:var(--iot-action-add)}.modal-body .item-option-edit>span:has(svg[data-icon=plus]) svg,.modal-body .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=plus]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.modal-body .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.modal-body .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal-body .item-option-edit>span:has(.fa-plus) svg,.modal-body .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.modal-body .item-option-edit>button:has(.fa-plus) svg,.modal-body .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.modal-body .item-option-edit>a>span:has(.fa-plus) svg,.modal-body .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(svg[data-icon=plus]) svg,.modal-body-padding .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=plus]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(.fa-plus) svg,.modal-body-padding .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(.fa-plus) svg,.modal-body-padding .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.modal-body-padding .item-option-edit>a>span:has(.fa-plus) svg,.modal-body-padding .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-plus) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-plus) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>a>span:has(.fa-plus) svg,.modal .u-modal-body-scroll .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-plus) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-plus) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(.fa-plus) svg,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-plus) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-plus) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(.fa-plus) svg,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa{color:inherit!important}.modal-body .item-option-edit>button:has(svg[data-icon=pen-to-square]),.modal-body .item-option-edit>button:has(svg[data-icon=square-pen]),.modal-body .item-option-edit>button:has(svg[data-icon=edit]),.modal-body .item-option-edit>button:has(.fa-pencil-square-o),.modal-body .item-option-edit>a>span:has(svg[data-icon=pen-to-square]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=pen-to-square]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=square-pen]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=edit]),.modal-body-padding .item-option-edit>button:has(.fa-pencil-square-o),.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=pen-to-square]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=pen-to-square]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=square-pen]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=edit]),.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-pencil-square-o),.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=pen-to-square]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=pen-to-square]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=square-pen]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=edit]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-pencil-square-o),.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=pen-to-square]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=pen-to-square]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=square-pen]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=edit]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-pencil-square-o),.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=pen-to-square]){color:var(--iot-action-edit)!important;background:color-mix(in srgb,var(--iot-action-edit) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-edit) 28%,transparent)}.modal-body .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=edit]):hover,.modal-body .item-option-edit>button:has(.fa-pencil-square-o):hover,.modal-body .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=edit]):hover,.modal-body-padding .item-option-edit>button:has(.fa-pencil-square-o):hover,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=edit]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-pencil-square-o):hover,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=edit]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-pencil-square-o):hover,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=edit]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-pencil-square-o):hover,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover{background:color-mix(in srgb,var(--iot-action-edit) 24%,transparent);border-color:var(--iot-action-edit)}.modal-body .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=edit]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.modal-body .item-option-edit>button:has(.fa-pencil-square-o) svg,.modal-body .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.modal-body .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.modal-body .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=edit]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(.fa-pencil-square-o) svg,.modal-body-padding .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=edit]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-pencil-square-o) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=edit]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-pencil-square-o) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=edit]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-pencil-square-o) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa{color:inherit!important}.modal-body .item-option-edit>span:has(svg[data-icon=key]),.modal-body .item-option-edit>button:has(svg[data-icon=key]),.modal-body .item-option-edit>span:has(.fa-key),.modal-body .item-option-edit>button:has(.fa-key),.modal-body .item-option-edit>a>span:has(svg[data-icon=key]),.modal-body-padding .item-option-edit>span:has(svg[data-icon=key]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=key]),.modal-body-padding .item-option-edit>span:has(.fa-key),.modal-body-padding .item-option-edit>button:has(.fa-key),.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=key]),.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=key]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=key]),.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-key),.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-key),.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=key]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=key]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=key]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-key),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-key),.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=key]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=key]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=key]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-key),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-key),.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=key]){color:var(--iot-action-key)!important;background:color-mix(in srgb,var(--iot-action-key) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-key) 28%,transparent)}.modal-body .item-option-edit>span:has(svg[data-icon=key]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=key]):hover,.modal-body .item-option-edit>span:has(.fa-key):hover,.modal-body .item-option-edit>button:has(.fa-key):hover,.modal-body .item-option-edit>a>span:has(svg[data-icon=key]):hover,.modal-body-padding .item-option-edit>span:has(svg[data-icon=key]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=key]):hover,.modal-body-padding .item-option-edit>span:has(.fa-key):hover,.modal-body-padding .item-option-edit>button:has(.fa-key):hover,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-key):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-key):hover,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-key):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-key):hover,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=key]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-key):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-key):hover,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=key]):hover{background:color-mix(in srgb,var(--iot-action-key) 24%,transparent);border-color:var(--iot-action-key)}.modal-body .item-option-edit>span:has(svg[data-icon=key]) svg,.modal-body .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=key]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.modal-body .item-option-edit>span:has(.fa-key) svg,.modal-body .item-option-edit>span:has(.fa-key) .svg-inline--fa,.modal-body .item-option-edit>button:has(.fa-key) svg,.modal-body .item-option-edit>button:has(.fa-key) .svg-inline--fa,.modal-body .item-option-edit>a>span:has(svg[data-icon=key]) svg,.modal-body .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(svg[data-icon=key]) svg,.modal-body-padding .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=key]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(.fa-key) svg,.modal-body-padding .item-option-edit>span:has(.fa-key) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(.fa-key) svg,.modal-body-padding .item-option-edit>button:has(.fa-key) .svg-inline--fa,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=key]) svg,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-key) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-key) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-key) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-key) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-key) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-key) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-key) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-key) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-key) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-key) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-key) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-key) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=key]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa{color:inherit!important}.modal-body .item-option-edit>span:has(svg[data-icon=trash]),.modal-body .item-option-edit>button:has(svg[data-icon=trash]),.modal-body .item-option-edit>span:has(svg[data-icon=trash-can]),.modal-body .item-option-edit>button:has(svg[data-icon=trash-can]),.modal-body .item-option-edit>span:has(svg[data-icon=delete-left]),.modal-body .item-option-edit>button:has(svg[data-icon=delete-left]),.modal-body .item-option-edit>span:has(.fa-trash),.modal-body .item-option-edit>button:has(.fa-trash),.modal-body .item-option-edit>a>span:has(svg[data-icon=trash]),.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash]),.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash-can]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash-can]),.modal-body-padding .item-option-edit>span:has(svg[data-icon=delete-left]),.modal-body-padding .item-option-edit>button:has(svg[data-icon=delete-left]),.modal-body-padding .item-option-edit>span:has(.fa-trash),.modal-body-padding .item-option-edit>button:has(.fa-trash),.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=trash]),.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash]),.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash-can]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash-can]),.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=delete-left]),.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=delete-left]),.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-trash),.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-trash),.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=trash]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash-can]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash-can]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=delete-left]),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=delete-left]),.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-trash),.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-trash),.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=trash]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash-can]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash-can]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=delete-left]),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=delete-left]),.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-trash),.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-trash),.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=trash]){color:var(--iot-action-delete)!important;background:color-mix(in srgb,var(--iot-action-delete) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-delete) 28%,transparent)}.modal-body .item-option-edit>span:has(svg[data-icon=trash]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=trash]):hover,.modal-body .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.modal-body .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.modal-body .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.modal-body .item-option-edit>span:has(.fa-trash):hover,.modal-body .item-option-edit>button:has(.fa-trash):hover,.modal-body .item-option-edit>a>span:has(svg[data-icon=trash]):hover,.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash]):hover,.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.modal-body-padding .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.modal-body-padding .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.modal-body-padding .item-option-edit>span:has(.fa-trash):hover,.modal-body-padding .item-option-edit>button:has(.fa-trash):hover,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-trash):hover,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-trash):hover,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-trash):hover,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-trash):hover,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-trash):hover,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-trash):hover,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=trash]):hover{background:color-mix(in srgb,var(--iot-action-delete) 24%,transparent);border-color:var(--iot-action-delete)}.modal-body .item-option-edit>span:has(svg[data-icon=trash]) svg,.modal-body .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=trash]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.modal-body .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.modal-body .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal-body .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.modal-body .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal-body .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.modal-body .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal-body .item-option-edit>span:has(.fa-trash) svg,.modal-body .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.modal-body .item-option-edit>button:has(.fa-trash) svg,.modal-body .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.modal-body .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.modal-body .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash]) svg,.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.modal-body-padding .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.modal-body-padding .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.modal-body-padding .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal-body-padding .item-option-edit>span:has(.fa-trash) svg,.modal-body-padding .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.modal-body-padding .item-option-edit>button:has(.fa-trash) svg,.modal-body-padding .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.modal-body-padding .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-trash) svg,.modal .u-modal-body-scroll .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-trash) svg,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-trash) svg,.modal .u-modal-body-scroll-lg .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-trash) svg,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll-lg .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-trash) svg,.modal .u-modal-body-scroll-xl .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-trash) svg,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.modal .u-modal-body-scroll-xl .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa{color:inherit!important}.modal-body .item-option-edit>span,.modal-body .item-option-edit>button,.modal-body-padding .item-option-edit>span,.modal-body-padding .item-option-edit>button,.modal .u-modal-body-scroll .item-option-edit>span,.modal .u-modal-body-scroll .item-option-edit>button,.modal .u-modal-body-scroll-lg .item-option-edit>span,.modal .u-modal-body-scroll-lg .item-option-edit>button,.modal .u-modal-body-scroll-xl .item-option-edit>span,.modal .u-modal-body-scroll-xl .item-option-edit>button{position:relative}.modal-body .item-option-edit>span:after,.modal-body .item-option-edit>button:after,.modal-body-padding .item-option-edit>span:after,.modal-body-padding .item-option-edit>button:after,.modal .u-modal-body-scroll .item-option-edit>span:after,.modal .u-modal-body-scroll .item-option-edit>button:after,.modal .u-modal-body-scroll-lg .item-option-edit>span:after,.modal .u-modal-body-scroll-lg .item-option-edit>button:after,.modal .u-modal-body-scroll-xl .item-option-edit>span:after,.modal .u-modal-body-scroll-xl .item-option-edit>button:after{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:3px 8px;border-radius:6px;background:var(--bg-sidebar, #071a35);color:#fff;font-size:.68rem;font-weight:600;line-height:1.2;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:30;box-shadow:var(--shadow-md);transition:opacity var(--transition-fast),transform var(--transition-fast)}.modal-body .item-option-edit>span:hover:after,.modal-body .item-option-edit>button:hover:after,.modal-body-padding .item-option-edit>span:hover:after,.modal-body-padding .item-option-edit>button:hover:after,.modal .u-modal-body-scroll .item-option-edit>span:hover:after,.modal .u-modal-body-scroll .item-option-edit>button:hover:after,.modal .u-modal-body-scroll-lg .item-option-edit>span:hover:after,.modal .u-modal-body-scroll-lg .item-option-edit>button:hover:after,.modal .u-modal-body-scroll-xl .item-option-edit>span:hover:after,.modal .u-modal-body-scroll-xl .item-option-edit>button:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.modal-body .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.modal-body .item-option-edit>button:has(svg[data-icon=square-pen]):after,.modal-body .item-option-edit>button:has(svg[data-icon=edit]):after,.modal-body .item-option-edit>button:has(.fa-pencil-square-o):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=square-pen]):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=edit]):after,.modal-body-padding .item-option-edit>button:has(.fa-pencil-square-o):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=square-pen]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=edit]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-pencil-square-o):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=square-pen]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=edit]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-pencil-square-o):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=square-pen]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=edit]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-pencil-square-o):after{content:"Edit"}.modal-body .item-option-edit>button:has(svg[data-icon=trash]):after,.modal-body .item-option-edit>button:has(svg[data-icon=trash-can]):after,.modal-body .item-option-edit>button:has(svg[data-icon=delete-left]):after,.modal-body .item-option-edit>button:has(.fa-trash):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash]):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=trash-can]):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=delete-left]):after,.modal-body-padding .item-option-edit>button:has(.fa-trash):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=trash-can]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=delete-left]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-trash):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=trash-can]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=delete-left]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-trash):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=trash-can]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=delete-left]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-trash):after{content:"Delete"}.modal-body .item-option-edit>button:has(svg[data-icon=plus]):after,.modal-body .item-option-edit>button:has(.fa-plus):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=plus]):after,.modal-body-padding .item-option-edit>button:has(.fa-plus):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=plus]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-plus):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=plus]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-plus):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=plus]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-plus):after{content:"Add"}.modal-body .item-option-edit>button:has(svg[data-icon=key]):after,.modal-body .item-option-edit>button:has(.fa-key):after,.modal-body-padding .item-option-edit>button:has(svg[data-icon=key]):after,.modal-body-padding .item-option-edit>button:has(.fa-key):after,.modal .u-modal-body-scroll .item-option-edit>button:has(svg[data-icon=key]):after,.modal .u-modal-body-scroll .item-option-edit>button:has(.fa-key):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(svg[data-icon=key]):after,.modal .u-modal-body-scroll-lg .item-option-edit>button:has(.fa-key):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(svg[data-icon=key]):after,.modal .u-modal-body-scroll-xl .item-option-edit>button:has(.fa-key):after{content:"Regenerate Password"}.modal-body .pagination,.modal-body-padding .pagination,.modal .u-modal-body-scroll .pagination,.modal .u-modal-body-scroll-lg .pagination,.modal .u-modal-body-scroll-xl .pagination{padding:var(--space-3);background:var(--bg-elevated);border-top:1px solid var(--border-color)}.modal-body .pagination .page-link,.modal-body-padding .pagination .page-link,.modal .u-modal-body-scroll .pagination .page-link,.modal .u-modal-body-scroll-lg .pagination .page-link,.modal .u-modal-body-scroll-xl .pagination .page-link{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color)}.modal-body .pagination .page-link:hover,.modal-body-padding .pagination .page-link:hover,.modal .u-modal-body-scroll .pagination .page-link:hover,.modal .u-modal-body-scroll-lg .pagination .page-link:hover,.modal .u-modal-body-scroll-xl .pagination .page-link:hover,.modal-body .pagination .page-item.active .page-link,.modal-body-padding .pagination .page-item.active .page-link,.modal .u-modal-body-scroll .pagination .page-item.active .page-link,.modal .u-modal-body-scroll-lg .pagination .page-item.active .page-link,.modal .u-modal-body-scroll-xl .pagination .page-item.active .page-link{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.modal-body .pagination .page-item.disabled .page-link,.modal-body-padding .pagination .page-item.disabled .page-link,.modal .u-modal-body-scroll .pagination .page-item.disabled .page-link,.modal .u-modal-body-scroll-lg .pagination .page-item.disabled .page-link,.modal .u-modal-body-scroll-xl .pagination .page-item.disabled .page-link{color:var(--text-muted);background:var(--bg-secondary)}.modal-body .bg-success.btn,.modal-body .btn-success,.modal-body-padding .bg-success.btn,.modal-body-padding .btn-success,.modal .u-modal-body-scroll .bg-success.btn,.modal .u-modal-body-scroll .btn-success,.modal .u-modal-body-scroll-lg .bg-success.btn,.modal .u-modal-body-scroll-lg .btn-success,.modal .u-modal-body-scroll-xl .bg-success.btn,.modal .u-modal-body-scroll-xl .btn-success{background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--text-on-primary)!important}.modal-body .bg-success.btn:hover,.modal-body .btn-success:hover,.modal-body-padding .bg-success.btn:hover,.modal-body-padding .btn-success:hover,.modal .u-modal-body-scroll .bg-success.btn:hover,.modal .u-modal-body-scroll .btn-success:hover,.modal .u-modal-body-scroll-lg .bg-success.btn:hover,.modal .u-modal-body-scroll-lg .btn-success:hover,.modal .u-modal-body-scroll-xl .bg-success.btn:hover,.modal .u-modal-body-scroll-xl .btn-success:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.modal-body .bg-light,.modal-body .border.rounded.bg-light,.modal-body .border.rounded.bg-white,.modal-body-padding .bg-light,.modal-body-padding .border.rounded.bg-light,.modal-body-padding .border.rounded.bg-white,.modal .u-modal-body-scroll .bg-light,.modal .u-modal-body-scroll .border.rounded.bg-light,.modal .u-modal-body-scroll .border.rounded.bg-white,.modal .u-modal-body-scroll-lg .bg-light,.modal .u-modal-body-scroll-lg .border.rounded.bg-light,.modal .u-modal-body-scroll-lg .border.rounded.bg-white,.modal .u-modal-body-scroll-xl .bg-light,.modal .u-modal-body-scroll-xl .border.rounded.bg-light,.modal .u-modal-body-scroll-xl .border.rounded.bg-white{background-color:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-primary)}.modal-body .bg-white,.modal-body-padding .bg-white,.modal .u-modal-body-scroll .bg-white,.modal .u-modal-body-scroll-lg .bg-white,.modal .u-modal-body-scroll-xl .bg-white{background-color:var(--bg-elevated)!important;color:var(--text-primary)}.modal-body .text-muted,.modal-body-padding .text-muted,.modal .u-modal-body-scroll .text-muted,.modal .u-modal-body-scroll-lg .text-muted,.modal .u-modal-body-scroll-xl .text-muted,.modal-body label,.modal-body .form-label,.modal-body-padding label,.modal-body-padding .form-label,.modal .u-modal-body-scroll label,.modal .u-modal-body-scroll .form-label,.modal .u-modal-body-scroll-lg label,.modal .u-modal-body-scroll-lg .form-label,.modal .u-modal-body-scroll-xl label,.modal .u-modal-body-scroll-xl .form-label,.modal-body label.form-label.text-muted,.modal-body .form-label.text-muted,.modal-body-padding label.form-label.text-muted,.modal-body-padding .form-label.text-muted,.modal .u-modal-body-scroll label.form-label.text-muted,.modal .u-modal-body-scroll .form-label.text-muted,.modal .u-modal-body-scroll-lg label.form-label.text-muted,.modal .u-modal-body-scroll-lg .form-label.text-muted,.modal .u-modal-body-scroll-xl label.form-label.text-muted,.modal .u-modal-body-scroll-xl .form-label.text-muted{color:var(--text-secondary)!important}.modal-body .card,.modal-body-padding .card,.modal .u-modal-body-scroll .card,.modal .u-modal-body-scroll-lg .card,.modal .u-modal-body-scroll-xl .card{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.modal-body .card-header,.modal-body .card-footer,.modal-body-padding .card-header,.modal-body-padding .card-footer,.modal .u-modal-body-scroll .card-header,.modal .u-modal-body-scroll .card-footer,.modal .u-modal-body-scroll-lg .card-header,.modal .u-modal-body-scroll-lg .card-footer,.modal .u-modal-body-scroll-xl .card-header,.modal .u-modal-body-scroll-xl .card-footer{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.modal-body .list-group-item,.modal-body-padding .list-group-item,.modal .u-modal-body-scroll .list-group-item,.modal .u-modal-body-scroll-lg .list-group-item,.modal .u-modal-body-scroll-xl .list-group-item{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.modal-body .action-icon:hover,.modal-body-padding .action-icon:hover,.modal .u-modal-body-scroll .action-icon:hover,.modal .u-modal-body-scroll-lg .action-icon:hover,.modal .u-modal-body-scroll-xl .action-icon:hover{background:var(--bg-secondary)}.modal-body .searchInput input,.modal-body .innerSearchInput,.modal-body-padding .searchInput input,.modal-body-padding .innerSearchInput,.modal .u-modal-body-scroll .searchInput input,.modal .u-modal-body-scroll .innerSearchInput,.modal .u-modal-body-scroll-lg .searchInput input,.modal .u-modal-body-scroll-lg .innerSearchInput,.modal .u-modal-body-scroll-xl .searchInput input,.modal .u-modal-body-scroll-xl .innerSearchInput{color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color-input)}.modal-body .c-switch-slider,.modal-body-padding .c-switch-slider,.modal .u-modal-body-scroll .c-switch-slider,.modal .u-modal-body-scroll-lg .c-switch-slider,.modal .u-modal-body-scroll-xl .c-switch-slider{background:var(--border-color-strong);border:1px solid var(--border-color);box-shadow:none!important}.modal-body .c-switch-input:checked~.c-switch-slider,.modal-body-padding .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll-lg .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll-xl .c-switch-input:checked~.c-switch-slider{background:var(--color-primary)!important;border-color:var(--color-primary)}.modal-body .c-switch-input:focus~.c-switch-slider,.modal-body-padding .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll-lg .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll-xl .c-switch-input:focus~.c-switch-slider{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)!important}.modal-body .c-switch-slider:before,.modal-body-padding .c-switch-slider:before,.modal .u-modal-body-scroll .c-switch-slider:before,.modal .u-modal-body-scroll-lg .c-switch-slider:before,.modal .u-modal-body-scroll-xl .c-switch-slider:before{background:var(--bg-elevated)!important;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.modal-body .c-switch-3d .c-switch-slider:before,.modal-body-padding .c-switch-3d .c-switch-slider:before,.modal .u-modal-body-scroll .c-switch-3d .c-switch-slider:before,.modal .u-modal-body-scroll-lg .c-switch-3d .c-switch-slider:before,.modal .u-modal-body-scroll-xl .c-switch-3d .c-switch-slider:before{top:0;box-shadow:var(--shadow-sm)!important}.modal-body .iot-setup-switch-row,.modal-body-padding .iot-setup-switch-row,.modal .u-modal-body-scroll .iot-setup-switch-row,.modal .u-modal-body-scroll-lg .iot-setup-switch-row,.modal .u-modal-body-scroll-xl .iot-setup-switch-row{display:flex;flex-direction:column;gap:6px}.modal-body .iot-setup-switch-row>label:first-child,.modal-body-padding .iot-setup-switch-row>label:first-child,.modal .u-modal-body-scroll .iot-setup-switch-row>label:first-child,.modal .u-modal-body-scroll-lg .iot-setup-switch-row>label:first-child,.modal .u-modal-body-scroll-xl .iot-setup-switch-row>label:first-child{font-size:.8125rem;font-weight:500;color:var(--text-primary);margin-bottom:0}.modal-body .iot-setup-switch.c-switch,.modal-body .c-switch.iot-setup-switch,.modal-body .form-check-input-custom.c-switch,.modal-body .c-switch.form-check-input-custom,.modal-body-padding .iot-setup-switch.c-switch,.modal-body-padding .c-switch.iot-setup-switch,.modal-body-padding .form-check-input-custom.c-switch,.modal-body-padding .c-switch.form-check-input-custom,.modal .u-modal-body-scroll .iot-setup-switch.c-switch,.modal .u-modal-body-scroll .c-switch.iot-setup-switch,.modal .u-modal-body-scroll .form-check-input-custom.c-switch,.modal .u-modal-body-scroll .c-switch.form-check-input-custom,.modal .u-modal-body-scroll-lg .iot-setup-switch.c-switch,.modal .u-modal-body-scroll-lg .c-switch.iot-setup-switch,.modal .u-modal-body-scroll-lg .form-check-input-custom.c-switch,.modal .u-modal-body-scroll-lg .c-switch.form-check-input-custom,.modal .u-modal-body-scroll-xl .iot-setup-switch.c-switch,.modal .u-modal-body-scroll-xl .c-switch.iot-setup-switch,.modal .u-modal-body-scroll-xl .form-check-input-custom.c-switch,.modal .u-modal-body-scroll-xl .c-switch.form-check-input-custom{display:inline-flex;align-items:center;margin:0;padding:0;width:48px;height:24px;min-height:24px;border:0;background:transparent!important}.modal-body .iot-setup-switch .c-switch-slider,.modal-body .form-check-input-custom .c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-slider{width:48px!important;height:24px!important;padding:0!important;border:1px solid var(--border-color-input)!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-input) 78%,var(--border-color-strong))!important;box-shadow:inset 0 1px 2px #071a352e!important}.modal-body .iot-setup-switch .c-switch-slider:before,.modal-body .form-check-input-custom .c-switch-slider:before,.modal-body-padding .iot-setup-switch .c-switch-slider:before,.modal-body-padding .form-check-input-custom .c-switch-slider:before,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-slider:before,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-slider:before,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-slider:before,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-slider:before,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-slider:before,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-slider:before{top:2px!important;left:2px!important;width:18px!important;height:18px!important;border:1px solid var(--border-color)!important;border-radius:50%!important;background:var(--text-secondary)!important;box-shadow:var(--shadow-sm)!important}.modal-body .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.modal-body .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:checked~.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.modal-body .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.modal-body .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.modal-body .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.modal-body .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before,.modal-body-padding .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.modal-body-padding .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.modal-body-padding .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.modal-body-padding .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before{transform:translate(24px)!important;border-color:var(--text-on-primary)!important;background:var(--text-on-primary)!important}.modal-body .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.modal-body .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:focus~.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:focus~.c-switch-slider{box-shadow:inset 0 1px 2px #071a352e,0 0 0 2px color-mix(in srgb,var(--color-primary) 24%,transparent)!important}.modal-body .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.modal-body .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:disabled~.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:disabled~.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:disabled~.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:disabled~.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:disabled~.c-switch-slider{cursor:not-allowed;opacity:.55}.modal-body .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.modal-body .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.modal-body .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.modal-body-padding .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.modal-body-padding .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.modal .u-modal-body-scroll .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.modal .u-modal-body-scroll .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.modal .u-modal-body-scroll-lg .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.modal .u-modal-body-scroll-lg .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.modal .u-modal-body-scroll-xl .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.modal .u-modal-body-scroll-xl .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.modal-body .nav-pills .nav-link,.modal-body-padding .nav-pills .nav-link,.modal .u-modal-body-scroll .nav-pills .nav-link,.modal .u-modal-body-scroll-lg .nav-pills .nav-link,.modal .u-modal-body-scroll-xl .nav-pills .nav-link{color:var(--text-secondary);background:transparent;border:1px solid transparent}.modal-body .nav-pills .nav-link.active,.modal-body .nav-pills .nav-link:hover,.modal-body-padding .nav-pills .nav-link.active,.modal-body-padding .nav-pills .nav-link:hover,.modal .u-modal-body-scroll .nav-pills .nav-link.active,.modal .u-modal-body-scroll .nav-pills .nav-link:hover,.modal .u-modal-body-scroll-lg .nav-pills .nav-link.active,.modal .u-modal-body-scroll-lg .nav-pills .nav-link:hover,.modal .u-modal-body-scroll-xl .nav-pills .nav-link.active,.modal .u-modal-body-scroll-xl .nav-pills .nav-link:hover{color:var(--text-on-primary);background:var(--color-primary)}.modal-body .nav-pills .nav-item .nav-link.active,.modal-body-padding .nav-pills .nav-item .nav-link.active,.modal .u-modal-body-scroll .nav-pills .nav-item .nav-link.active,.modal .u-modal-body-scroll-lg .nav-pills .nav-item .nav-link.active,.modal .u-modal-body-scroll-xl .nav-pills .nav-item .nav-link.active{background:var(--color-primary);color:var(--text-on-primary)}.modal-body .form-row,.modal-body .row.g-3,.modal-body .row.g-2,.modal-body-padding .form-row,.modal-body-padding .row.g-3,.modal-body-padding .row.g-2,.modal .u-modal-body-scroll .form-row,.modal .u-modal-body-scroll .row.g-3,.modal .u-modal-body-scroll .row.g-2,.modal .u-modal-body-scroll-lg .form-row,.modal .u-modal-body-scroll-lg .row.g-3,.modal .u-modal-body-scroll-lg .row.g-2,.modal .u-modal-body-scroll-xl .form-row,.modal .u-modal-body-scroll-xl .row.g-3,.modal .u-modal-body-scroll-xl .row.g-2{display:flex;flex-wrap:wrap;margin-right:-10px;margin-left:-10px;row-gap:0}.modal-body .form-row>.form-group,.modal-body .form-row>[class*=col-],.modal-body .row>.form-group,.modal-body .row>[class*=col-],.modal-body-padding .form-row>.form-group,.modal-body-padding .form-row>[class*=col-],.modal-body-padding .row>.form-group,.modal-body-padding .row>[class*=col-],.modal .u-modal-body-scroll .form-row>.form-group,.modal .u-modal-body-scroll .form-row>[class*=col-],.modal .u-modal-body-scroll .row>.form-group,.modal .u-modal-body-scroll .row>[class*=col-],.modal .u-modal-body-scroll-lg .form-row>.form-group,.modal .u-modal-body-scroll-lg .form-row>[class*=col-],.modal .u-modal-body-scroll-lg .row>.form-group,.modal .u-modal-body-scroll-lg .row>[class*=col-],.modal .u-modal-body-scroll-xl .form-row>.form-group,.modal .u-modal-body-scroll-xl .form-row>[class*=col-],.modal .u-modal-body-scroll-xl .row>.form-group,.modal .u-modal-body-scroll-xl .row>[class*=col-]{padding-right:10px;padding-left:10px;margin-bottom:14px;height:auto!important;min-width:0}@media(min-width:768px){.modal-body .form-row>.form-group.col-md-3,.modal-body .form-row>.col-md-3,.modal-body .row>.col-md-3,.modal-body-padding .form-row>.form-group.col-md-3,.modal-body-padding .form-row>.col-md-3,.modal-body-padding .row>.col-md-3,.modal .u-modal-body-scroll .form-row>.form-group.col-md-3,.modal .u-modal-body-scroll .form-row>.col-md-3,.modal .u-modal-body-scroll .row>.col-md-3,.modal .u-modal-body-scroll-lg .form-row>.form-group.col-md-3,.modal .u-modal-body-scroll-lg .form-row>.col-md-3,.modal .u-modal-body-scroll-lg .row>.col-md-3,.modal .u-modal-body-scroll-xl .form-row>.form-group.col-md-3,.modal .u-modal-body-scroll-xl .form-row>.col-md-3,.modal .u-modal-body-scroll-xl .row>.col-md-3{flex:0 0 25%;max-width:25%}}@media(min-width:768px){.modal-body .form-row>.form-group.col-md-4,.modal-body .form-row>.col-md-4,.modal-body .row>.col-md-4,.modal-body-padding .form-row>.form-group.col-md-4,.modal-body-padding .form-row>.col-md-4,.modal-body-padding .row>.col-md-4,.modal .u-modal-body-scroll .form-row>.form-group.col-md-4,.modal .u-modal-body-scroll .form-row>.col-md-4,.modal .u-modal-body-scroll .row>.col-md-4,.modal .u-modal-body-scroll-lg .form-row>.form-group.col-md-4,.modal .u-modal-body-scroll-lg .form-row>.col-md-4,.modal .u-modal-body-scroll-lg .row>.col-md-4,.modal .u-modal-body-scroll-xl .form-row>.form-group.col-md-4,.modal .u-modal-body-scroll-xl .form-row>.col-md-4,.modal .u-modal-body-scroll-xl .row>.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}}@media(min-width:768px){.modal-body .form-row>.form-group.col-md-6,.modal-body .form-row>.col-md-6,.modal-body .row>.col-md-6,.modal-body-padding .form-row>.form-group.col-md-6,.modal-body-padding .form-row>.col-md-6,.modal-body-padding .row>.col-md-6,.modal .u-modal-body-scroll .form-row>.form-group.col-md-6,.modal .u-modal-body-scroll .form-row>.col-md-6,.modal .u-modal-body-scroll .row>.col-md-6,.modal .u-modal-body-scroll-lg .form-row>.form-group.col-md-6,.modal .u-modal-body-scroll-lg .form-row>.col-md-6,.modal .u-modal-body-scroll-lg .row>.col-md-6,.modal .u-modal-body-scroll-xl .form-row>.form-group.col-md-6,.modal .u-modal-body-scroll-xl .form-row>.col-md-6,.modal .u-modal-body-scroll-xl .row>.col-md-6{flex:0 0 50%;max-width:50%}}@media(min-width:768px){.modal-body .form-row>.form-group.col-md-8,.modal-body .form-row>.col-md-8,.modal-body .row>.col-md-8,.modal-body-padding .form-row>.form-group.col-md-8,.modal-body-padding .form-row>.col-md-8,.modal-body-padding .row>.col-md-8,.modal .u-modal-body-scroll .form-row>.form-group.col-md-8,.modal .u-modal-body-scroll .form-row>.col-md-8,.modal .u-modal-body-scroll .row>.col-md-8,.modal .u-modal-body-scroll-lg .form-row>.form-group.col-md-8,.modal .u-modal-body-scroll-lg .form-row>.col-md-8,.modal .u-modal-body-scroll-lg .row>.col-md-8,.modal .u-modal-body-scroll-xl .form-row>.form-group.col-md-8,.modal .u-modal-body-scroll-xl .form-row>.col-md-8,.modal .u-modal-body-scroll-xl .row>.col-md-8{flex:0 0 66.666667%;max-width:66.666667%}}.modal-body .form-row>.form-group.col-md-12,.modal-body .form-row>.col-md-12,.modal-body .form-row>.col-12,.modal-body .row>.col-md-12,.modal-body .row>.col-12,.modal-body-padding .form-row>.form-group.col-md-12,.modal-body-padding .form-row>.col-md-12,.modal-body-padding .form-row>.col-12,.modal-body-padding .row>.col-md-12,.modal-body-padding .row>.col-12,.modal .u-modal-body-scroll .form-row>.form-group.col-md-12,.modal .u-modal-body-scroll .form-row>.col-md-12,.modal .u-modal-body-scroll .form-row>.col-12,.modal .u-modal-body-scroll .row>.col-md-12,.modal .u-modal-body-scroll .row>.col-12,.modal .u-modal-body-scroll-lg .form-row>.form-group.col-md-12,.modal .u-modal-body-scroll-lg .form-row>.col-md-12,.modal .u-modal-body-scroll-lg .form-row>.col-12,.modal .u-modal-body-scroll-lg .row>.col-md-12,.modal .u-modal-body-scroll-lg .row>.col-12,.modal .u-modal-body-scroll-xl .form-row>.form-group.col-md-12,.modal .u-modal-body-scroll-xl .form-row>.col-md-12,.modal .u-modal-body-scroll-xl .form-row>.col-12,.modal .u-modal-body-scroll-xl .row>.col-md-12,.modal .u-modal-body-scroll-xl .row>.col-12{flex:0 0 100%;max-width:100%}@media(max-width:767.98px){.modal-body .form-row>[class*=col-],.modal-body .row>[class*=col-],.modal-body-padding .form-row>[class*=col-],.modal-body-padding .row>[class*=col-],.modal .u-modal-body-scroll .form-row>[class*=col-],.modal .u-modal-body-scroll .row>[class*=col-],.modal .u-modal-body-scroll-lg .form-row>[class*=col-],.modal .u-modal-body-scroll-lg .row>[class*=col-],.modal .u-modal-body-scroll-xl .form-row>[class*=col-],.modal .u-modal-body-scroll-xl .row>[class*=col-]{flex:0 0 100%;max-width:100%}}.modal-body .custom-select-wrapper,.modal-body .rmsc,.modal-body .iot-setup-field,.modal-body-padding .custom-select-wrapper,.modal-body-padding .rmsc,.modal-body-padding .iot-setup-field,.modal .u-modal-body-scroll .custom-select-wrapper,.modal .u-modal-body-scroll .rmsc,.modal .u-modal-body-scroll .iot-setup-field,.modal .u-modal-body-scroll-lg .custom-select-wrapper,.modal .u-modal-body-scroll-lg .rmsc,.modal .u-modal-body-scroll-lg .iot-setup-field,.modal .u-modal-body-scroll-xl .custom-select-wrapper,.modal .u-modal-body-scroll-xl .rmsc,.modal .u-modal-body-scroll-xl .iot-setup-field{width:100%}.modal-body .rmsc .dropdown-container,.modal-body-padding .rmsc .dropdown-container,.modal .u-modal-body-scroll .rmsc .dropdown-container,.modal .u-modal-body-scroll-lg .rmsc .dropdown-container,.modal .u-modal-body-scroll-xl .rmsc .dropdown-container{min-height:36px}.modal-body .rmsc .dropdown-heading,.modal-body-padding .rmsc .dropdown-heading,.modal .u-modal-body-scroll .rmsc .dropdown-heading,.modal .u-modal-body-scroll-lg .rmsc .dropdown-heading,.modal .u-modal-body-scroll-xl .rmsc .dropdown-heading{height:36px}.modal-body label:not(.form-check-label):not(.form-label-themed),.modal-body-padding label:not(.form-check-label):not(.form-label-themed),.modal .u-modal-body-scroll label:not(.form-check-label):not(.form-label-themed),.modal .u-modal-body-scroll-lg label:not(.form-check-label):not(.form-label-themed),.modal .u-modal-body-scroll-xl label:not(.form-check-label):not(.form-label-themed){display:block;color:var(--text-primary);font-size:.8125rem;font-weight:500;margin-bottom:4px;text-transform:capitalize;text-align:left}.modal-body .form-label-themed,.modal-body-padding .form-label-themed,.modal .u-modal-body-scroll .form-label-themed,.modal .u-modal-body-scroll-lg .form-label-themed,.modal .u-modal-body-scroll-xl .form-label-themed{font-size:.8125rem;font-weight:500;text-transform:capitalize;letter-spacing:normal;margin-bottom:4px;text-align:left}.modal-body textarea.input-textArea,.modal-body textarea.form-control,.modal-body-padding textarea.input-textArea,.modal-body-padding textarea.form-control,.modal .u-modal-body-scroll textarea.input-textArea,.modal .u-modal-body-scroll textarea.form-control,.modal .u-modal-body-scroll-lg textarea.input-textArea,.modal .u-modal-body-scroll-lg textarea.form-control,.modal .u-modal-body-scroll-xl textarea.input-textArea,.modal .u-modal-body-scroll-xl textarea.form-control{height:36px;min-height:36px;width:100%;padding:6px 10px;resize:vertical;line-height:1.3}.modal-body .input-text-area,.modal-body-padding .input-text-area,.modal .u-modal-body-scroll .input-text-area,.modal .u-modal-body-scroll-lg .input-text-area,.modal .u-modal-body-scroll-xl .input-text-area{display:flex;flex-direction:column;align-items:stretch;gap:2px}.modal-body .input-text-area>label,.modal-body-padding .input-text-area>label,.modal .u-modal-body-scroll .input-text-area>label,.modal .u-modal-body-scroll-lg .input-text-area>label,.modal .u-modal-body-scroll-xl .input-text-area>label{align-self:flex-start;text-align:left;text-transform:capitalize}.modal-body .form-group:has(.c-switch),.modal-body .form-group:has(.iot-setup-switch),.modal-body-padding .form-group:has(.c-switch),.modal-body-padding .form-group:has(.iot-setup-switch),.modal .u-modal-body-scroll .form-group:has(.c-switch),.modal .u-modal-body-scroll .form-group:has(.iot-setup-switch),.modal .u-modal-body-scroll-lg .form-group:has(.c-switch),.modal .u-modal-body-scroll-lg .form-group:has(.iot-setup-switch),.modal .u-modal-body-scroll-xl .form-group:has(.c-switch),.modal .u-modal-body-scroll-xl .form-group:has(.iot-setup-switch){display:flex;flex-direction:column;gap:6px}.modal-body .form-group:has(.c-switch)>br,.modal-body .form-group:has(.iot-setup-switch)>br,.modal-body-padding .form-group:has(.c-switch)>br,.modal-body-padding .form-group:has(.iot-setup-switch)>br,.modal .u-modal-body-scroll .form-group:has(.c-switch)>br,.modal .u-modal-body-scroll .form-group:has(.iot-setup-switch)>br,.modal .u-modal-body-scroll-lg .form-group:has(.c-switch)>br,.modal .u-modal-body-scroll-lg .form-group:has(.iot-setup-switch)>br,.modal .u-modal-body-scroll-xl .form-group:has(.c-switch)>br,.modal .u-modal-body-scroll-xl .form-group:has(.iot-setup-switch)>br{display:none}.modal-body .form-group:has(.c-switch)>label,.modal-body .form-group:has(.iot-setup-switch)>label,.modal-body-padding .form-group:has(.c-switch)>label,.modal-body-padding .form-group:has(.iot-setup-switch)>label,.modal .u-modal-body-scroll .form-group:has(.c-switch)>label,.modal .u-modal-body-scroll .form-group:has(.iot-setup-switch)>label,.modal .u-modal-body-scroll-lg .form-group:has(.c-switch)>label,.modal .u-modal-body-scroll-lg .form-group:has(.iot-setup-switch)>label,.modal .u-modal-body-scroll-xl .form-group:has(.c-switch)>label,.modal .u-modal-body-scroll-xl .form-group:has(.iot-setup-switch)>label{margin-bottom:0}.modal-body,.modal-body-padding,.modal .u-modal-body-scroll,.modal .u-modal-body-scroll-lg,.modal .u-modal-body-scroll-xl{padding:16px 20px!important}.dept-type-radios{display:flex;flex-wrap:wrap;align-items:center;gap:16px;min-height:36px}.dept-type-radios .custom-control,.dept-type-radios .custom-control-inline{display:inline-flex;align-items:center;flex-shrink:0;position:relative;width:auto;min-height:1rem;margin:0;padding-left:1.5rem}.dept-type-radios .custom-control-label,.dept-type-radios .iot-themed-radio-label{position:relative;display:inline-block;margin:0;padding:0;min-height:1rem;line-height:1rem;font-size:.8125rem;font-weight:500;letter-spacing:normal;text-transform:none;white-space:nowrap;color:var(--text-primary)!important;cursor:pointer;vertical-align:middle}.dept-type-radios .custom-control-label:before,.dept-type-radios .custom-control-label:after,.dept-type-radios .iot-themed-radio-label:before,.dept-type-radios .iot-themed-radio-label:after{top:0!important;width:1rem;height:1rem;transform:none!important}.dept-type-radios .custom-control-label:before,.dept-type-radios .iot-themed-radio-label:before{border-radius:50%;border-color:var(--border-color-strong, var(--border-color-input));background-color:var(--bg-input)}.dept-type-radios .custom-control-input:checked~.custom-control-label:before,.dept-type-radios .custom-control-input:checked~.iot-themed-radio-label:before{border-color:var(--color-primary);background-color:var(--color-primary)}.dept-type-radios .custom-control-input:focus~.custom-control-label:before,.dept-type-radios .custom-control-input:focus~.iot-themed-radio-label:before{box-shadow:0 0 0 .2rem color-mix(in srgb,var(--color-primary) 25%,transparent)}.modal.iot-setup-form-modal{z-index:1100!important}body.modal-open:has(.iot-setup-form-modal) .modal-backdrop{z-index:1095!important}body.modal-open:has(.iot-delete-modal){overflow:hidden!important}body.modal-open:has(.iot-delete-modal) .c-wrapper,body.modal-open:has(.iot-delete-modal) .c-body,body.modal-open:has(.iot-delete-modal) .mainbody,body.modal-open:has(.iot-delete-modal) .app-main-content{overflow:hidden!important}.iot-setup-form-modal__footer{position:relative;z-index:2;pointer-events:auto}.iot-setup-modal .modal-content,.modal-content.iot-setup-modal{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-modal)}.modal-content{color:var(--text-primary);background:var(--bg-elevated);border-color:var(--border-color)}.modal-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px;padding:10px 16px!important;min-height:46px;color:var(--text-on-primary)!important;background-color:var(--bg-header)!important;border-bottom:1px solid var(--border-color)!important}.modal-header .modal-title{color:var(--text-on-primary);font-size:.9375rem;font-weight:600;margin:0;line-height:1.3;flex:1 1 auto}.modal-header>.d-flex,.modal-header>.col-md-3,.modal-header>div:not(.modal-title):last-child{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-left:auto;flex:0 0 auto}.modal-header .btn,.modal-header .iot-setup-btn{min-height:30px;padding:5px 8px;font-size:.6rem!important}.modal-header .iot-setup-btn--ghost{color:var(--text-on-primary);background:transparent;border-color:color-mix(in srgb,var(--text-on-primary) 40%,transparent)}.modal-header .iot-setup-btn--ghost:hover:not(:disabled),.modal-header .iot-setup-btn--ghost:focus:not(:disabled){color:var(--text-on-primary);background:color-mix(in srgb,var(--text-on-primary) 12%,transparent);border-color:var(--text-on-primary)}.modal-header .iot-setup-btn--primary{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.modal-header .iot-setup-btn--primary:hover:not(:disabled),.modal-header .iot-setup-btn--primary:focus:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.modal-header .btn-outline-dark,.modal-header .iot-setup-btn.btn-outline-dark{color:var(--text-on-primary);border-color:color-mix(in srgb,var(--text-on-primary) 40%,transparent);background:transparent}.modal-header .btn-outline-dark:hover:not(:disabled),.modal-header .iot-setup-btn.btn-outline-dark:hover:not(:disabled){color:var(--text-on-primary);background:color-mix(in srgb,var(--text-on-primary) 14%,transparent);border-color:var(--text-on-primary)}.modal-header .btn-dark,.modal-header .iot-setup-btn.btn-dark{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-on-primary)}.modal-header .btn-dark:hover:not(:disabled),.modal-header .iot-setup-btn.btn-dark:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--text-on-primary)}.modal-header .close,.modal-header .btn-close{color:var(--text-on-primary)!important;opacity:.85;text-shadow:none;padding:0;margin:0 0 0 4px;font-size:1.25rem;line-height:1}.modal-header .close:hover,.modal-header .btn-close:hover{opacity:1;color:var(--text-on-primary)!important}.modal-header span,.modal-header .col-md-3{color:var(--text-on-primary);font-size:.8125rem}.modal-title{color:var(--text-on-primary)}.modal-body,.modal-body-padding,.modal .u-modal-body-scroll,.modal .u-modal-body-scroll-lg,.modal .u-modal-body-scroll-xl{color:var(--text-primary);background:var(--bg-primary)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px;padding:10px 16px!important;background:var(--bg-elevated);border-top:1px solid var(--border-color)}.modal-footer .btn,.modal-footer .iot-setup-btn{margin:0!important;min-width:0;min-height:30px;padding:5px 9px;font-size:.6rem!important}.modal-footer .iot-setup-btn--ghost{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color-strong)}.modal-footer .iot-setup-btn--ghost:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border-color-strong);color:var(--text-primary)}.modal-footer .iot-setup-btn--primary{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.modal-footer .iot-setup-btn--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.modal-footer .btn-outline-dark,.modal-footer .iot-setup-btn.btn-outline-dark{color:var(--text-primary);border-color:var(--border-color-strong);background:var(--bg-input)}.modal-footer .btn-outline-dark:hover:not(:disabled),.modal-footer .iot-setup-btn.btn-outline-dark:hover:not(:disabled){color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.modal-footer .btn-dark,.modal-footer .iot-setup-btn.btn-dark{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-on-primary)}.modal-footer .btn-dark:hover:not(:disabled),.modal-footer .iot-setup-btn.btn-dark:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.iot-associated-tags-modal .modal-dialog{max-height:calc(100vh - 2rem)}.iot-associated-tags-modal .modal-content{max-height:calc(100vh - 2rem);display:flex;flex-direction:column;overflow:hidden}.iot-associated-tags-modal .modal-header{flex-shrink:0;padding:6px 10px!important;min-height:36px}.iot-associated-tags-modal .modal-header .modal-title{font-size:.875rem}.iot-associated-tags-modal .modal-header>.d-flex,.iot-associated-tags-modal .modal-header>div:not(.modal-title):last-child{gap:4px}.iot-associated-tags-modal .modal-header .btn,.iot-associated-tags-modal .modal-header .iot-setup-btn{min-height:22px!important;height:22px;padding:2px 8px!important;font-size:.6rem!important;line-height:1;border-radius:5px}.iot-associated-tags-modal .modal-body,.iot-associated-tags-modal .modal-body-padding{flex:1 1 auto;min-height:0;max-height:calc(100vh - 6.5rem);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 10px!important;background:var(--bg-primary)}.iot-associated-tags-modal__sections{display:flex;flex-direction:column;gap:10px}.iot-associated-tags-modal__section{display:flex;flex-direction:column;gap:6px}.iot-associated-tags-modal__section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.iot-associated-tags-modal__section-title{margin:0;color:var(--text-primary);font-size:.8125rem;font-weight:700;letter-spacing:.01em}.iot-associated-tags-modal__filter{flex:0 1 240px;min-width:180px;max-width:280px}.iot-associated-tags-modal__filter .iot-setup-field{gap:3px}.iot-associated-tags-modal__filter .form-label-themed{font-size:.625rem!important}.iot-associated-tags-modal__filter .custom-select{height:28px!important;min-height:28px!important;padding:4px 8px!important;font-size:.75rem!important}.iot-associated-tags-modal__empty{color:var(--text-muted);font-size:.75rem}.iot-associated-tags-modal .row.g-2{--bs-gutter-x: .5rem;--bs-gutter-y: .5rem}.iot-associated-tags-modal .iot-setup-field{gap:3px}.iot-associated-tags-modal .iot-setup-field .form-label-themed{font-size:.625rem!important;line-height:1.2;margin-bottom:0}.iot-associated-tags-modal .iot-setup-field .custom-select,.iot-associated-tags-modal .iot-setup-field input.custom-select{height:28px!important;min-height:28px!important;padding:4px 8px!important;font-size:.75rem!important;line-height:1.3;border-radius:5px!important}.iot-associated-tags-modal .iot-tag-config-card{margin-bottom:6px}.iot-associated-tags-modal .iot-tag-config-card__header{padding:8px 10px}.iot-associated-tags-modal .iot-tag-config-card__fields{width:100%;min-width:0}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row{display:grid;gap:4px 6px;align-items:end}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row--three{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"actions actions actions" "name display unit"}@media(min-width:992px){.iot-associated-tags-modal .iot-tag-config-card__header-fields-row--three{grid-template-columns:repeat(3,minmax(0,1fr)) auto;grid-template-areas:"name display unit actions"}}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row--two{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"actions actions" "name unit"}@media(min-width:992px){.iot-associated-tags-modal .iot-tag-config-card__header-fields-row--two{grid-template-columns:repeat(2,minmax(0,1fr)) auto;grid-template-areas:"name unit actions"}}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row .iot-tag-config-card__actions{grid-area:actions;justify-self:end;align-self:end;margin:0;height:28px}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row .iot-tag-config-card__header-name{grid-area:name;min-width:0}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row .iot-tag-config-card__header-display{grid-area:display;min-width:0}.iot-associated-tags-modal .iot-tag-config-card__header-fields-row .iot-tag-config-card__header-unit{grid-area:unit;min-width:0}.iot-associated-tags-modal .iot-tag-config-card__actions{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:4px;flex:0 0 auto}.iot-associated-tags-modal .iot-tag-config-card__body{padding:8px 10px}.iot-associated-tags-modal .iot-tag-config-card__checks{margin-top:6px;padding:6px 8px;gap:4px 6px;grid-template-columns:repeat(6,minmax(0,1fr))}.iot-associated-tags-modal .iot-tag-config-card__checks--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.iot-associated-tags-modal .iot-tag-config-card__checks--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-associated-tags-modal .iot-tag-config-card__checks--cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:767.98px){.iot-associated-tags-modal .iot-tag-config-card__checks,.iot-associated-tags-modal .iot-tag-config-card__checks--cols-3,.iot-associated-tags-modal .iot-tag-config-card__checks--cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}.iot-associated-tags-modal .iot-tag-config-card__checks--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:479.98px){.iot-associated-tags-modal .iot-tag-config-card__checks,.iot-associated-tags-modal .iot-tag-config-card__checks--cols-3,.iot-associated-tags-modal .iot-tag-config-card__checks--cols-6,.iot-associated-tags-modal .iot-tag-config-card__checks--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.iot-associated-tags-modal .iot-tag-config-card__toggle{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;min-width:0;text-align:center}.iot-associated-tags-modal .iot-tag-config-card__toggle-label{display:block;width:100%;font-size:.5625rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-associated-tags-modal .iot-tag-config-card__toggle-control{display:flex;align-items:center;justify-content:center;min-height:20px;flex-shrink:0}.iot-associated-tags-modal .iot-tag-config-card__calculation{margin-top:6px}.iot-associated-tags-modal .iot-tag-config-card__action-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;max-height:28px!important;margin:0!important;padding:0!important;flex:0 0 28px;font-size:.6875rem;line-height:1}@media(max-width:991.98px){.iot-associated-tags-modal .iot-tag-config-card__metrics-row{flex-wrap:wrap!important}.iot-associated-tags-modal .iot-tag-config-card__metrics-row>.col{flex:0 0 50%;max-width:50%}}@media(max-width:575.98px){.iot-associated-tags-modal .iot-tag-config-card__metrics-row>.col{flex:0 0 100%;max-width:100%}}.iot-associated-tags-modal .iot-formula-editor--compact{padding:6px 8px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--bg-input) 90%,var(--bg-secondary));display:flex;flex-direction:column;gap:6px}.iot-associated-tags-modal .iot-formula-editor__title{margin:0;color:var(--text-secondary);font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:capitalize;line-height:1.2}.iot-associated-tags-modal .iot-formula-editor__field{display:grid;grid-template-rows:auto 28px;gap:4px;min-width:0;align-content:start}.iot-associated-tags-modal .iot-formula-editor__field--search{grid-template-rows:auto auto}.iot-associated-tags-modal .iot-formula-editor__label{display:block;margin:0!important;min-height:0;color:var(--text-secondary)!important;font-size:.625rem!important;font-weight:600!important;line-height:1.2;letter-spacing:.02em;text-transform:capitalize}.iot-associated-tags-modal .iot-formula-editor__math-section{display:flex;flex-direction:column;gap:4px}.iot-associated-tags-modal .iot-formula-editor__math-section .math-function-buttons{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px;margin-top:0!important}.iot-associated-tags-modal .iot-formula-editor__math-section .math-function-btn{min-height:20px!important;height:20px!important;padding:1px 6px!important;font-size:.625rem!important;line-height:1.2}.iot-associated-tags-modal .iot-formula-editor__math-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.iot-associated-tags-modal .iot-formula-editor__math-row>strong{margin:0;color:var(--text-secondary);font-size:.625rem;font-weight:600;line-height:1.2;white-space:nowrap}.iot-associated-tags-modal .iot-formula-editor__math-row .math-function-buttons{margin-top:0!important;gap:4px}.iot-associated-tags-modal .iot-formula-editor__math-row .math-function-btn{min-height:22px!important;height:22px!important;padding:1px 6px!important;font-size:.625rem!important;line-height:1.2}.iot-associated-tags-modal .iot-formula-editor__formula-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;align-items:start}@media(max-width:767.98px){.iot-associated-tags-modal .iot-formula-editor__formula-grid{grid-template-columns:1fr}}.iot-associated-tags-modal .iot-formula-editor__formatted{height:28px;min-height:28px;display:flex;align-items:center;padding:0 8px!important;border:1px solid var(--border-color-input);border-radius:5px;background:color-mix(in srgb,var(--bg-secondary) 65%,var(--bg-elevated))!important;color:var(--text-primary);font-size:.75rem;line-height:1.3;word-break:break-word;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.iot-associated-tags-modal .iot-formula-editor--compact .form-control{min-height:28px;height:28px;padding:4px 8px;font-size:.75rem;line-height:1.3;border:1px solid var(--border-color-input);border-radius:5px}.iot-associated-tags-modal .iot-formula-editor--compact .formula-suggestions{max-height:120px}.iot-associated-tags-modal .iot-formula-editor--compact .formula-suggestion-item,.iot-associated-tags-modal .iot-formula-editor--compact .formula-suggestion-empty{padding:4px 8px;font-size:.75rem}.iot-associated-tags-modal .iot-tag-protocol-config--compact{margin-top:6px;padding:6px 8px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--bg-input) 90%,var(--bg-secondary));display:flex;flex-direction:column;gap:6px;--iot-select-height: 28px}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__title{margin:0;color:var(--text-secondary);font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:capitalize;line-height:1.2}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__array{display:flex;flex-direction:column;gap:8px;margin-top:4px}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__array-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__array-title{margin:0;color:var(--text-secondary);font-size:.6875rem;font-weight:700;letter-spacing:.02em;text-transform:capitalize;line-height:1.2}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__array-rows{display:flex;flex-direction:column;gap:12px}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__array-row{display:flex;flex-direction:column;gap:.5rem;padding-bottom:12px;margin-bottom:0;border-bottom:1px solid color-mix(in srgb,var(--border-color) 82%,transparent)}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__array-row:last-child{padding-bottom:0;border-bottom:0}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__layout{display:flex;flex-direction:column;gap:.5rem}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-bottom:0;align-items:start}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field{min-width:0;width:100%;padding:0}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--toggle{display:flex;flex-direction:column;justify-content:flex-start}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--toggle .iot-setup-field{width:100%;display:flex;flex-direction:column;gap:3px}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--toggle .iot-tag-protocol-config__switch{display:flex;align-items:center;justify-content:flex-start;height:28px;min-height:28px;width:100%}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--toggle .iot-tag-config-switch.c-switch,.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--toggle .c-switch.iot-tag-config-switch{margin:0;flex-shrink:0}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--action{display:flex;align-items:flex-end;justify-content:flex-start;align-self:stretch;min-height:100%}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields>.iot-tag-protocol-config__field--action .btn{height:28px;min-height:28px;padding:0 10px;line-height:1;font-size:.75rem}@media(max-width:991.98px){.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575.98px){.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-tag-protocol-config__fields{grid-template-columns:minmax(0,1fr)}}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-setup-field{gap:3px}.iot-associated-tags-modal .iot-tag-protocol-config--compact .iot-setup-field .form-label-themed{font-size:.625rem!important;line-height:1.2;margin-bottom:0}.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-control]{min-height:28px!important;height:28px!important;width:100%;border-radius:5px!important;font-size:.75rem!important}.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-ValueContainer],.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-valueContainer]{min-height:26px!important;height:26px!important;padding:0 6px!important;font-size:.75rem!important;min-width:0}.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-singleValue],.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-placeholder]{font-size:.75rem!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-indicatorContainer]{padding:2px 4px!important;flex-shrink:0}.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-IndicatorsContainer],.iot-associated-tags-modal .iot-tag-protocol-config--compact .custom-select-wrapper [class*=-indicatorsContainer]{flex-shrink:0}.iot-associated-tags-modal .iot-tag-config-switch.c-switch,.iot-associated-tags-modal .c-switch.iot-tag-config-switch{display:inline-flex;align-items:center;margin:0;padding:0;width:40px;height:20px;min-height:20px;border:0;background:transparent!important}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-slider{box-sizing:border-box!important;width:40px!important;height:20px!important;padding:0!important;border:1px solid var(--border-color-input)!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-input) 78%,var(--border-color-strong))!important;box-shadow:inset 0 1px 2px #071a352e!important;overflow:hidden}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-slider:before{top:50%!important;left:2px!important;right:auto!important;bottom:auto!important;width:16px!important;height:16px!important;margin:0!important;border:1px solid var(--border-color)!important;border-radius:50%!important;background:var(--text-secondary)!important;box-shadow:var(--shadow-sm)!important;box-sizing:border-box!important;transform:translateY(-50%)!important}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:checked+.c-switch-slider,.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:checked+.c-switch-slider:before,.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:checked~.c-switch-slider:before{transform:translate(18px,-50%)!important;border-color:var(--text-on-primary)!important;background:var(--text-on-primary)!important}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:focus+.c-switch-slider,.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:focus~.c-switch-slider{box-shadow:inset 0 1px 2px #071a352e,0 0 0 2px color-mix(in srgb,var(--color-primary) 24%,transparent)!important}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:disabled+.c-switch-slider,.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:disabled~.c-switch-slider{cursor:not-allowed;opacity:.55}.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:disabled:checked+.c-switch-slider,.iot-associated-tags-modal .iot-tag-config-switch .c-switch-input:disabled:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-tag-config-card{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);margin-bottom:10px;overflow:visible}.iot-tag-config-card__header{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:nowrap;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 70%,var(--bg-elevated))}.iot-tag-config-card__fields{flex:1 1 auto;min-width:0}.iot-tag-config-card__fields .row{flex-wrap:nowrap}.iot-tag-config-card__fields [class*=col-]{min-width:0}.iot-tag-config-card__body{padding:14px 16px;background:var(--bg-primary)}.iot-tag-config-card__metrics-row{margin-bottom:0;flex-wrap:nowrap}.iot-tag-config-card__metrics-row>.col{flex:1 1 0;min-width:0;max-width:20%}.iot-tag-config-card__metrics-row label,.iot-tag-config-card__metrics-row .form-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:991.98px){.iot-tag-config-card__metrics-row{flex-wrap:wrap}.iot-tag-config-card__metrics-row>.col{flex:0 0 50%;max-width:50%}}@media(max-width:575.98px){.iot-tag-config-card__metrics-row>.col{flex:0 0 100%;max-width:100%}}.iot-tag-config-card__checks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:10px 12px;width:100%;margin-top:12px;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--bg-input) 88%,var(--bg-secondary))}.iot-tag-config-card__checks--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.iot-tag-config-card__checks--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-tag-config-card__checks--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.iot-tag-config-card__checks--cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:1199.98px){.iot-tag-config-card__checks--cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:767.98px){.iot-tag-config-card__checks,.iot-tag-config-card__checks--cols-3,.iot-tag-config-card__checks--cols-4,.iot-tag-config-card__checks--cols-6{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:479.98px){.iot-tag-config-card__checks,.iot-tag-config-card__checks--cols-3,.iot-tag-config-card__checks--cols-4,.iot-tag-config-card__checks--cols-6{grid-template-columns:1fr}}.iot-tag-config-card__toggle{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;min-width:0;text-align:center}.iot-tag-config-card__toggle-label{display:block;width:100%;color:var(--text-secondary);font-size:.625rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-tag-config-card__toggle-control{display:flex;align-items:center;justify-content:center;min-height:20px}.iot-tag-config-card__subsection-title{margin:8px 0 6px;padding:0 14px;color:var(--text-secondary);font-size:.8125rem;font-weight:700;letter-spacing:.02em;text-transform:capitalize}.iot-tag-config-card__actions{display:flex;align-items:center;align-self:center;gap:6px;flex-shrink:0;margin:0!important}.iot-tag-config-card__action-btn{display:inline-flex;align-items:center;justify-content:center;width:30px!important;min-width:30px!important;height:30px!important;margin:0!important;padding:0!important;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:.75rem;line-height:1;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.iot-tag-config-card__action-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 12%,var(--bg-secondary))!important;border-color:var(--color-primary);color:var(--color-primary)}.iot-tag-config-card__action-btn--danger{background:var(--color-error);border-color:var(--color-error);color:var(--text-on-primary)}.iot-tag-config-card__action-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-error) 88%,#000)!important;border-color:color-mix(in srgb,var(--color-error) 88%,#000);color:var(--text-on-primary)}.iot-tag-config-card__action-btn--success{background:var(--color-success);border-color:var(--color-success);color:var(--text-on-primary)}.iot-tag-config-card__action-btn--success:hover:not(:disabled){background:color-mix(in srgb,var(--color-success) 88%,#000)!important;border-color:color-mix(in srgb,var(--color-success) 88%,#000);color:var(--text-on-primary)}[data-theme=dark] .iot-setup-page .custom-select-wrapper [class*=-control],[data-theme=dark] .modal-body .custom-select-wrapper [class*=-control],[data-theme=dark] .modal-body-padding .custom-select-wrapper [class*=-control]{background:var(--bg-input);border-color:var(--border-color-input)}[data-theme=dark] .iot-setup-page select option,[data-theme=dark] .modal-body select option,[data-theme=dark] .modal-body-padding select option{background-color:var(--bg-elevated)!important;color:var(--text-primary)!important}[data-theme=dark] .iot-setup-page .table tbody td,[data-theme=dark] .modal-body .table tbody td,[data-theme=dark] .modal-body-padding .table tbody td{color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .iot-setup-page .table tbody tr,[data-theme=dark] .modal-body .table tbody tr,[data-theme=dark] .modal-body-padding .table tbody tr{background-color:var(--bg-elevated)}[data-theme=dark] .iot-setup-page .table-striped tbody tr:nth-of-type(odd),[data-theme=dark] .modal-body .table-striped tbody tr:nth-of-type(odd),[data-theme=dark] .modal-body-padding .table-striped tbody tr:nth-of-type(odd){background-color:var(--bg-secondary)}[data-theme=dark] .modal-header{background-color:var(--bg-header)!important;border-bottom-color:var(--border-color)!important}[data-theme=dark] .modal-body,[data-theme=dark] .modal-body-padding,[data-theme=dark] .modal .u-modal-body-scroll-lg,[data-theme=dark] .modal .u-modal-body-scroll-xl{background:var(--bg-primary)}[data-theme=dark] .modal-footer{background:var(--bg-elevated);border-top-color:var(--border-color)}.file-drop-area{border:2px dashed var(--border-color-strong);border-radius:var(--border-radius-lg);background:var(--bg-secondary);padding:var(--space-8);text-align:center;transition:border-color var(--transition-fast),background var(--transition-fast)}.file-drop-area.active,.file-drop-area:hover{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-secondary))}.file-drop-area .file-label{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--text-secondary);cursor:pointer;margin:0;font-size:.875rem;font-weight:500}.file-drop-area .file-label i,.file-drop-area .file-label svg{font-size:1.75rem;width:1.75rem;height:1.75rem;color:var(--color-primary)}.file-drop-area .file-label .file-hint{font-size:.75rem;font-weight:400;color:var(--text-muted)}.file-drop-area .file-input{display:none}.toast-msg{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--border-radius-md);font-size:var(--font-size-sm)}.toast-msg.error{color:var(--color-error);background:color-mix(in srgb,var(--color-error) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-error) 35%,transparent)}.toast-msg.success{color:var(--color-success);background:color-mix(in srgb,var(--color-success) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-success) 35%,transparent)}.iot-health-efficiency{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:700;line-height:1.4;margin-left:4px;vertical-align:middle}.iot-health-efficiency--low{color:#fff;background:var(--color-error)}.iot-health-efficiency--mid{color:#1a1a1a;background:#fbbf24}.iot-health-efficiency--high{color:#fff;background:var(--color-success)}.iot-sensor-health{--sh-card: var(--bg-secondary);--sh-card-body: #0f172a;--sh-meta-bg: #162032;--sh-table-panel: #0b1220;--sh-table-odd: #1e293b;--sh-table-even: #243044;--sh-table-border: rgba(148, 163, 184, .24);--sh-table-text: #e2e8f0;--sh-meta-text: #cbd5e1;width:100%;max-width:100%;min-height:0;padding:var(--space-1) var(--space-2) var(--space-5);overflow:visible}.iot-sensor-health .container-fluid{width:100%;max-width:100%;padding-left:6px;padding-right:6px}.iot-sensor-health__body{width:100%;max-width:100%;min-height:0;background:transparent!important;box-shadow:none!important;overflow:visible}.iot-sensor-health__loader{width:100%;min-height:60vh}.iot-sensor-health__section{width:100%;max-width:100%;margin-bottom:var(--space-3);overflow:visible}.iot-sensor-health__tabs{margin-bottom:var(--space-2)}.iot-sensor-health__tabs .nav-pills{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:10px;padding:4px;box-shadow:var(--shadow-card)}.iot-sensor-health__tabs .nav-link{border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer}.iot-sensor-health__section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:var(--space-2) 0 var(--space-2);padding:8px 12px;border-radius:10px;background:var(--bg-sidebar);color:var(--text-on-primary);border:1px solid color-mix(in srgb,var(--text-on-primary) 12%,transparent);box-shadow:var(--shadow-card)}.iot-sensor-health__section-head h2{margin:0;padding:0;font-size:.9375rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-on-primary);text-align:left}.iot-sensor-health__section-head .iot-sensor-health__legend-bar{flex-shrink:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.iot-sensor-health__section-head .iot-sensor-health__legend-title,.iot-sensor-health__section-head .iot-sensor-health__legend-item{color:var(--text-on-primary)}.iot-sensor-health__grid{--sensor-health-gap: 8px;row-gap:var(--sensor-health-gap);align-items:flex-start;margin-left:calc(-.5 * var(--sensor-health-gap));margin-right:calc(-.5 * var(--sensor-health-gap))}.iot-sensor-health__grid>[class*=col-]{display:flex;min-width:0;padding-left:calc(var(--sensor-health-gap) * .5);padding-right:calc(var(--sensor-health-gap) * .5)}.iot-sensor-health__card{display:flex;flex-direction:column;width:100%;min-width:0;border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,var(--sh-table-border) 70%,var(--border-color));background:var(--sh-card);box-shadow:var(--shadow-card)}.iot-sensor-health__card .list-group-item{background:var(--sh-meta-bg)!important;border-color:var(--sh-table-border)!important;color:var(--sh-meta-text)!important}.iot-sensor-health__card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:var(--bg-table-header);border-bottom:1px solid color-mix(in srgb,var(--text-on-primary) 12%,transparent)}.iot-sensor-health__card-title{min-width:0;flex:1;font-size:.72rem;font-weight:600;color:var(--text-on-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-sensor-health__card-title b{color:color-mix(in srgb,var(--text-on-primary) 80%,transparent);font-weight:600}.iot-sensor-health__card-title--hoverable{cursor:help;border-radius:6px;padding:2px 4px;margin:-2px -4px;transition:background-color .15s ease}.iot-sensor-health__card-title--hoverable:hover,.iot-sensor-health__card-title--hoverable:focus-visible{background:color-mix(in srgb,var(--text-on-primary) 12%,transparent);outline:none}.iot-sensor-health__hover-popover{--sensor-hover-surface: #f8fafc;--sensor-hover-label: #64748b;--sensor-hover-value: #0f172a;--sensor-hover-muted: #475569;--sensor-hover-border: rgba(15, 23, 42, .12);--sensor-hover-label-bg: #eef2f7;--bs-popover-max-width: min(92vw, 380px);border:1px solid var(--sensor-hover-border);border-radius:8px;overflow:hidden;background:var(--sensor-hover-surface);box-shadow:0 8px 20px #0f172a2e;z-index:1080}.iot-sensor-health__hover-popover .popover-arrow:before{border-top-color:var(--sensor-hover-border)}.iot-sensor-health__hover-popover .popover-arrow:after{border-top-color:var(--sensor-hover-surface)}.iot-sensor-health__hover-popover-body{padding:0!important;background:var(--sensor-hover-surface)}.iot-sensor-health__hover-table-wrap{width:100%;max-width:100%;overflow:hidden}.iot-sensor-health__hover-table{width:100%;margin:0;border-collapse:collapse;font-size:.62rem;table-layout:fixed}.iot-sensor-health__hover-table tr:not(:last-child){border-bottom:1px solid var(--sensor-hover-border)}.iot-sensor-health__hover-table th,.iot-sensor-health__hover-table td{padding:4px 8px;vertical-align:top;line-height:1.25}.iot-sensor-health__hover-table th{width:34%;font-weight:700;color:var(--sensor-hover-label);background:var(--sensor-hover-label-bg);border-right:1px solid var(--sensor-hover-border);white-space:nowrap}.iot-sensor-health__hover-table td{color:var(--sensor-hover-value);background:var(--sensor-hover-surface);word-break:break-word;white-space:normal}.iot-sensor-health__hover-value{display:block;font-weight:600;color:var(--sensor-hover-value);word-break:break-word;white-space:normal}.iot-sensor-health__hover-hint{display:block;margin-top:1px;font-size:.54rem;font-weight:500;color:var(--sensor-hover-muted);line-height:1.15;word-break:break-word;white-space:normal}.iot-sensor-health__hover-status{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font-size:.54rem;font-weight:700;line-height:1.2;border:1px solid transparent}.iot-sensor-health__hover-status--ok{background:#dcfce7;color:#166534;border-color:#1665342e}.iot-sensor-health__hover-status--warn{background:#fef3c7;color:#92400e;border-color:#92400e2e}.iot-sensor-health__hover-status--error{background:#fee2e2;color:#991b1b;border-color:#991b1b2e}.iot-sensor-health__header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;min-width:0}.iot-sensor-health__updated-badge{display:inline-flex;align-items:center;justify-content:center;max-width:150px;padding:3px 7px;border-radius:999px;background:#16a34a;color:#fff;font-size:.58rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-sensor-health__status-dot{flex-shrink:0;width:14px;height:14px;border-radius:50%}.iot-sensor-health__status-dot--ok{background:#22c55e;box-shadow:0 0 0 2px color-mix(in srgb,#22c55e 30%,transparent)}.iot-sensor-health__status-dot--warn{background:#f59e0b;box-shadow:0 0 0 2px color-mix(in srgb,#f59e0b 30%,transparent)}.iot-sensor-health__status-dot--error{background:#ef4444;box-shadow:0 0 0 2px color-mix(in srgb,#ef4444 30%,transparent)}.iot-sensor-health__legend{display:flex;justify-content:flex-start;align-items:center;gap:12px;flex-wrap:wrap;padding:0}.iot-sensor-health__legend-bar{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 var(--space-2);padding:6px 10px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-elevated);box-shadow:var(--shadow-card)}.iot-sensor-health__legend-title{color:var(--text-primary);font-size:.68rem;font-weight:700;line-height:1;white-space:nowrap}.iot-sensor-health__legend-item{display:flex;align-items:center;gap:4px;font-size:.62rem;color:var(--text-secondary);white-space:nowrap}.iot-sensor-health__legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.iot-sensor-health__legend-dot--ok{background:#22c55e}.iot-sensor-health__legend-dot--warn{background:#f59e0b}.iot-sensor-health__legend-dot--error{background:#ef4444}.iot-sensor-health__meta{display:flex;flex-direction:column;gap:2px;padding-top:6px!important;padding-bottom:6px!important;font-size:.66rem;color:var(--sh-meta-text);background:var(--sh-meta-bg);border-bottom:1px solid var(--sh-table-border);line-height:1.35}.iot-sensor-health__meta b{color:#94a3b8;font-weight:600}.iot-sensor-health__meta--inline{flex-direction:row;align-items:center;flex-wrap:nowrap;justify-content:flex-start;gap:10px}.iot-sensor-health__meta-line{display:inline-block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-sensor-health__meta-line:first-child{flex:1 1 auto}.iot-sensor-health__meta-line:not(:first-child){flex:0 0 auto}.iot-sensor-health__table-wrap{width:100%;max-width:100%;min-width:0;padding:4px 6px;margin:0;background:var(--sh-table-panel);border-top:1px solid var(--sh-table-border);overflow-x:auto;-webkit-overflow-scrolling:touch}.iot-sensor-health__table{width:100%;min-width:0;table-layout:fixed;font-size:.58rem;margin:0;border-radius:6px;overflow:hidden;border:1px solid var(--sh-table-border);background:var(--sh-card-body);box-shadow:inset 0 1px #ffffff0a}.iot-sensor-health__table thead th{padding:3px 2px;color:#f8fafc;font-size:.54rem;font-weight:700;letter-spacing:.03em;line-height:1.15;text-align:center;text-transform:uppercase;vertical-align:middle;white-space:nowrap;border-color:var(--sh-table-border);background:var(--bg-table-header)}.iot-sensor-health__table tbody td{padding:2px 3px;color:var(--sh-table-text);font-size:.58rem;font-weight:600;line-height:1.15;text-align:center;vertical-align:middle;word-break:break-word;border-color:var(--sh-table-border)}.iot-sensor-health__table tbody tr:nth-child(odd){background-color:var(--sh-table-odd)}.iot-sensor-health__table tbody tr:nth-child(2n){background-color:var(--sh-table-even)}.iot-sensor-health__table tbody tr:hover{background-color:color-mix(in srgb,var(--color-primary) 16%,var(--sh-table-even))!important}.iot-sensor-health__type-cell{text-align:left!important;width:36%}.iot-sensor-health__type-label{display:block;color:#f1f5f9;font-size:.56rem;font-weight:700;line-height:1.1}.iot-sensor-health__dual-cell{padding:2px 4px!important;vertical-align:middle!important}.iot-sensor-health__dual-line{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:14px}.iot-sensor-health__dual-line+.iot-sensor-health__dual-line{margin-top:1px;padding-top:1px;border-top:1px dashed color-mix(in srgb,var(--sh-table-border) 80%,transparent)}.iot-sensor-health__dual-key{flex-shrink:0;font-size:.5rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#94a3b8}.iot-sensor-health__dual-val{font-size:.58rem;font-weight:700;color:var(--sh-table-text);line-height:1.1}.iot-sensor-health__table-wrap .iot-health-efficiency{display:inline-flex;align-items:center;justify-content:center;min-width:36px;margin:1px 0 0;padding:0 4px;font-size:.5rem;line-height:1.2;vertical-align:top}.iot-sensor-health__footer{padding:5px 8px;background:var(--bg-secondary);border-top:1px solid var(--border-color);font-size:.64rem;color:var(--text-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-sensor-health .list-group-item{padding-left:8px;padding-right:8px}@media(max-width:991px){.iot-sensor-health__grid>.col-xl-4,.iot-sensor-health__grid>.col-lg-6{flex:0 0 100%;max-width:100%}.iot-sensor-health__card-header,.iot-sensor-health__meta--inline{flex-wrap:wrap}.iot-sensor-health__updated-badge{max-width:100%}.iot-sensor-health__section-head{align-items:flex-start;flex-direction:column}}[data-theme=light] .iot-sensor-health{--sh-surface: var(--bg-primary);--sh-card: #eef3f9;--sh-card-head: var(--bg-surface-soft);--sh-card-body: #ffffff;--sh-meta-bg: #e8eef5;--sh-table-panel: #dfe8f2;--sh-border: #c5d4e8;--sh-table-odd: #ffffff;--sh-table-even: #edf2f8;--sh-table-border: rgba(71, 85, 105, .18);--sh-table-text: #334155;--sh-meta-text: #475569;--sh-table-hover: #d9e5f2;background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-sensor-health>.category{background:transparent!important}[data-theme=light] .iot-sensor-health .list-group-item{background:var(--sh-card-body)!important;border-color:var(--sh-border)!important;color:var(--text-primary)!important}[data-theme=light] .iot-sensor-health .card{background:var(--sh-card)!important;border-color:color-mix(in srgb,var(--color-primary) 14%,var(--sh-border))!important;color:var(--text-primary)!important}[data-theme=light] .iot-sensor-health .card-header,[data-theme=light] .iot-sensor-health .card-footer{background:linear-gradient(180deg,var(--sh-card-head) 0%,#dfe9f4 100%)!important;border-color:var(--sh-border)!important;color:var(--text-primary)!important}[data-theme=light] .iot-sensor-health__card{background:var(--sh-card);border-color:color-mix(in srgb,var(--color-primary) 14%,var(--sh-border));box-shadow:0 4px 18px #071a3512}[data-theme=light] .iot-sensor-health__card-header.card-header{background:var(--bg-table-header)!important;border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)!important}[data-theme=light] .iot-sensor-health__footer{background:linear-gradient(180deg,var(--sh-card-head) 0%,#dfe9f4 100%);border-color:var(--sh-border)}[data-theme=light] .iot-sensor-health__meta{background:var(--sh-meta-bg);color:var(--sh-meta-text);border-bottom:1px solid var(--sh-table-border)}[data-theme=light] .iot-sensor-health__table-wrap{background:var(--sh-table-panel);border-top-color:var(--sh-table-border)}[data-theme=light] .iot-sensor-health__tabs .nav-pills{background:var(--bg-surface-soft);border-color:var(--sh-border);box-shadow:0 2px 12px #071a350d}[data-theme=light] .iot-sensor-health__tabs .nav-link{color:#64748b;background:transparent;transition:color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}[data-theme=light] .iot-sensor-health__tabs .nav-link:hover:not(.active){color:var(--brand-mid);background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-surface-soft))}[data-theme=light] .iot-sensor-health__tabs .nav-link.active{color:#fff;background:var(--brand-gradient);box-shadow:0 2px 10px #1e3a5f38}[data-theme=light] .iot-sensor-health__section-head{background:var(--bg-sidebar);border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent);box-shadow:0 4px 16px #071a351a}[data-theme=light] .iot-sensor-health__section-head h2{color:#f8fafc}[data-theme=light] .iot-sensor-health__legend-item{color:#64748b}[data-theme=light] .iot-sensor-health__table{border-color:var(--sh-table-border);background:var(--sh-card-body);box-shadow:inset 0 1px #ffffffa6}[data-theme=light] .iot-sensor-health__table thead th{background:linear-gradient(180deg,var(--brand-mid) 0%,var(--brand-deep) 100%);border-color:color-mix(in srgb,#ffffff 12%,var(--sh-border));color:#f1f5f9}[data-theme=light] .iot-sensor-health__table tbody td{border-color:var(--sh-table-border);color:var(--sh-table-text)}[data-theme=light] .iot-sensor-health__table tbody tr:nth-child(odd){background-color:var(--sh-table-odd)}[data-theme=light] .iot-sensor-health__table tbody tr:nth-child(2n){background-color:var(--sh-table-even)}[data-theme=light] .iot-sensor-health__table tbody tr:hover{background-color:var(--sh-table-hover)!important}[data-theme=light] .iot-sensor-health__type-label{color:#334155}[data-theme=light] .iot-sensor-health__dual-key{color:#64748b}[data-theme=light] .iot-sensor-health__dual-val{color:var(--sh-table-text)}[data-theme=light] .iot-sensor-health__table-wrap .iot-health-efficiency--high{color:#fff;background:#059669}[data-theme=light] .iot-sensor-health__table-wrap .iot-health-efficiency--mid{color:#1e293b;background:#fcd34d}[data-theme=light] .iot-sensor-health__table-wrap .iot-health-efficiency--low{color:#fff;background:#dc2626}[data-theme=light] .iot-sensor-health__hover-popover{--sensor-hover-surface: #0f172a;--sensor-hover-label: #94a3b8;--sensor-hover-value: #f8fafc;--sensor-hover-muted: #cbd5e1;--sensor-hover-border: rgba(148, 163, 184, .24);--sensor-hover-label-bg: #1e293b;box-shadow:0 8px 20px #02061747}[data-theme=light] .iot-sensor-health__hover-table th{background:var(--sensor-hover-label-bg)}[data-theme=light] .iot-sensor-health__hover-table td{background:var(--sensor-hover-surface)}[data-theme=light] .iot-sensor-health__hover-status--ok{background:#14532d;color:#bbf7d0;border-color:#bbf7d03d}[data-theme=light] .iot-sensor-health__hover-status--warn{background:#78350f;color:#fde68a;border-color:#fde68a3d}[data-theme=light] .iot-sensor-health__hover-status--error{background:#7f1d1d;color:#fecaca;border-color:#fecaca3d}[data-theme=dark] .iot-sensor-health{--sh-card: #1a2332;--sh-card-body: #0f172a;--sh-meta-bg: #162032;--sh-table-panel: #0b1220;--sh-table-odd: #1e293b;--sh-table-even: #243044;--sh-table-border: rgba(148, 163, 184, .24);--sh-table-text: #e2e8f0;--sh-meta-text: #cbd5e1}[data-theme=dark] .iot-sensor-health__card{background:var(--sh-card);border-color:color-mix(in srgb,var(--sh-table-border) 70%,var(--border-color));box-shadow:0 8px 24px #00000047}[data-theme=dark] .iot-sensor-health__card-header{background:var(--bg-table-header)}[data-theme=dark] .iot-sensor-health__meta{background:var(--sh-meta-bg);color:var(--sh-meta-text);border-bottom-color:var(--sh-table-border)}[data-theme=dark] .iot-sensor-health__table-wrap{background:var(--sh-table-panel);border-top-color:var(--sh-table-border)}[data-theme=dark] .iot-sensor-health__table{background:var(--sh-card-body);border-color:var(--sh-table-border)}[data-theme=dark] .iot-sensor-health__table tbody td{color:var(--sh-table-text)}[data-theme=dark] .iot-sensor-health__table tbody tr:nth-child(odd){background-color:var(--sh-table-odd)}[data-theme=dark] .iot-sensor-health__table tbody tr:nth-child(2n){background-color:var(--sh-table-even)}[data-theme=dark] .iot-sensor-health__type-label{color:#f1f5f9}[data-theme=dark] .iot-sensor-health__hover-popover{--sensor-hover-surface: #f8fafc;--sensor-hover-label: #64748b;--sensor-hover-value: #0f172a;--sensor-hover-muted: #475569;--sensor-hover-border: rgba(15, 23, 42, .12);--sensor-hover-label-bg: #eef2f7;box-shadow:0 8px 20px #0f172a38}[data-theme=dark] .iot-sensor-health__hover-table th{background:var(--sensor-hover-label-bg)}[data-theme=dark] .iot-sensor-health__hover-table td{background:var(--sensor-hover-surface)}[data-theme=dark] .iot-sensor-health__hover-status--ok{background:#dcfce7;color:#166534;border-color:#1665342e}[data-theme=dark] .iot-sensor-health__hover-status--warn{background:#fef3c7;color:#92400e;border-color:#92400e2e}[data-theme=dark] .iot-sensor-health__hover-status--error{background:#fee2e2;color:#991b1b;border-color:#991b1b2e}[data-theme=dark] .iot-sensor-health__section-head{background:var(--bg-sidebar);border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)}.iot-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:4px 10px;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.25;white-space:nowrap}.iot-status-badge--active{color:#15803d;background:color-mix(in srgb,#22c55e 14%,var(--bg-elevated, #eef2f6));border:1px solid color-mix(in srgb,#22c55e 32%,transparent)}.iot-status-badge--inactive{color:#b91c1c;background:color-mix(in srgb,#ef4444 12%,var(--bg-elevated, #eef2f6));border:1px solid color-mix(in srgb,#ef4444 30%,transparent)}.iot-status-badge--warning{color:#f59e0b;background:color-mix(in srgb,#f59e0b 16%,var(--bg-elevated, #eef2f6));border:1px solid color-mix(in srgb,#f59e0b 34%,transparent)}[data-theme=light] .iot-setup-page .box-shadow,[data-theme=light] .iot-setup-page.box-shadow,[data-theme=light] .iot-setup-filters .box-shadow,[data-theme=light] .iot-setup-filters.box-shadow,[data-theme=light] .iot-setup-search .box-shadow,[data-theme=light] .iot-setup-search.box-shadow,[data-theme=light] .modal-body .box-shadow,[data-theme=light] .modal-body.box-shadow,[data-theme=light] .modal-body-padding .box-shadow,[data-theme=light] .modal-body-padding.box-shadow{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-input) 100%);border-color:color-mix(in srgb,var(--color-primary) 16%,var(--border-color));box-shadow:var(--shadow-card)}[data-theme=light] .iot-setup-page .table tbody td,[data-theme=light] .iot-setup-filters .table tbody td,[data-theme=light] .iot-setup-search .table tbody td,[data-theme=light] .modal-body .table tbody td,[data-theme=light] .modal-body-padding .table tbody td{color:var(--text-primary)}[data-theme=light] .iot-setup-page .table-striped tbody tr:nth-of-type(odd),[data-theme=light] .iot-setup-page .table tbody tr:nth-child(odd),[data-theme=light] .iot-setup-filters .table-striped tbody tr:nth-of-type(odd),[data-theme=light] .iot-setup-filters .table tbody tr:nth-child(odd),[data-theme=light] .iot-setup-search .table-striped tbody tr:nth-of-type(odd),[data-theme=light] .iot-setup-search .table tbody tr:nth-child(odd),[data-theme=light] .modal-body .table-striped tbody tr:nth-of-type(odd),[data-theme=light] .modal-body .table tbody tr:nth-child(odd),[data-theme=light] .modal-body-padding .table-striped tbody tr:nth-of-type(odd),[data-theme=light] .modal-body-padding .table tbody tr:nth-child(odd){background-color:color-mix(in srgb,var(--bg-secondary) 55%,var(--bg-elevated))}[data-theme=light] .iot-setup-page .table-striped tbody tr:nth-of-type(2n),[data-theme=light] .iot-setup-page .table tbody tr:nth-child(2n),[data-theme=light] .iot-setup-filters .table-striped tbody tr:nth-of-type(2n),[data-theme=light] .iot-setup-filters .table tbody tr:nth-child(2n),[data-theme=light] .iot-setup-search .table-striped tbody tr:nth-of-type(2n),[data-theme=light] .iot-setup-search .table tbody tr:nth-child(2n),[data-theme=light] .modal-body .table-striped tbody tr:nth-of-type(2n),[data-theme=light] .modal-body .table tbody tr:nth-child(2n),[data-theme=light] .modal-body-padding .table-striped tbody tr:nth-of-type(2n),[data-theme=light] .modal-body-padding .table tbody tr:nth-child(2n){background-color:var(--bg-elevated)}[data-theme=light] .iot-setup-page .table-hover tbody tr:hover,[data-theme=light] .iot-setup-page .table tbody tr:hover,[data-theme=light] .iot-setup-filters .table-hover tbody tr:hover,[data-theme=light] .iot-setup-filters .table tbody tr:hover,[data-theme=light] .iot-setup-search .table-hover tbody tr:hover,[data-theme=light] .iot-setup-search .table tbody tr:hover,[data-theme=light] .modal-body .table-hover tbody tr:hover,[data-theme=light] .modal-body .table tbody tr:hover,[data-theme=light] .modal-body-padding .table-hover tbody tr:hover,[data-theme=light] .modal-body-padding .table tbody tr:hover{background-color:color-mix(in srgb,var(--color-primary) 6%,var(--bg-elevated))}[data-theme=light] .iot-setup-page .iot-setup-btn--ghost,[data-theme=light] .iot-setup-filters .iot-setup-btn--ghost,[data-theme=light] .iot-setup-search .iot-setup-btn--ghost,[data-theme=light] .modal-body .iot-setup-btn--ghost,[data-theme=light] .modal-body-padding .iot-setup-btn--ghost{background:color-mix(in srgb,var(--bg-input) 88%,var(--bg-secondary))}[data-theme=light] .iot-setup-filters,[data-theme=light] .iot-setup-search{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-input) 100%);border-color:color-mix(in srgb,var(--color-primary) 14%,var(--border-color))}[data-theme=light] .iot-status-badge--active{color:#15803d;background:color-mix(in srgb,#22c55e 14%,var(--bg-elevated));border-color:color-mix(in srgb,#22c55e 32%,transparent)}[data-theme=light] .iot-status-badge--inactive{color:#b91c1c;background:color-mix(in srgb,#ef4444 10%,var(--bg-elevated));border-color:color-mix(in srgb,#ef4444 26%,transparent)}[data-theme=light] .iot-status-badge--warning{color:#f59e0b;background:color-mix(in srgb,#f59e0b 14%,var(--bg-elevated));border-color:color-mix(in srgb,#f59e0b 32%,transparent)}[data-theme=light] .item-option-edit>button:has(svg[data-icon=plus]),[data-theme=light] .item-option-edit>a>span:has(svg[data-icon=plus]){background:color-mix(in srgb,var(--iot-action-add) 10%,var(--bg-elevated))}[data-theme=light] .item-option-edit>button:has(svg[data-icon=pen-to-square]),[data-theme=light] .item-option-edit>button:has(svg[data-icon=square-pen]),[data-theme=light] .item-option-edit>button:has(svg[data-icon=edit]),[data-theme=light] .item-option-edit>button:has(.fa-pencil-square-o){background:color-mix(in srgb,var(--iot-action-edit) 10%,var(--bg-elevated))}[data-theme=light] .item-option-edit>button:has(svg[data-icon=trash]),[data-theme=light] .item-option-edit>button:has(svg[data-icon=trash-can]),[data-theme=light] .item-option-edit>button:has(svg[data-icon=delete-left]),[data-theme=light] .item-option-edit>button:has(.fa-trash){background:color-mix(in srgb,var(--iot-action-delete) 10%,var(--bg-elevated))}.iot-audit-trail{width:100%;max-width:100%;min-height:0;padding:5px var(--space-4) 5px!important}.iot-audit-trail .iot-setup-filters{margin-top:0;margin-bottom:var(--space-4)}.iot-audit-trail__content{width:100%;max-width:100%;min-width:0}.iot-audit-trail__table-section{width:100%;min-width:0}.iot-audit-trail__section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:0 0 12px;padding:10px 14px;border:1px solid var(--border-color);border-radius:10px;background:linear-gradient(135deg,var(--bg-table-header) 0%,color-mix(in srgb,var(--bg-table-header) 82%,#000) 100%);box-shadow:var(--shadow-card)}.iot-audit-trail__title{margin:0;color:var(--text-on-primary);font-size:.82rem;font-weight:800;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.iot-audit-trail__count{display:inline-flex;align-items:center;padding:3px 10px;color:var(--text-on-primary);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18)}.iot-audit-trail__loading{display:flex;align-items:center;justify-content:center;min-height:220px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-elevated)}.iot-audit-trail__table-panel{width:100%;padding:0!important;overflow:hidden}.iot-audit-trail__table-panel .table{width:100%;margin:0;font-size:.68rem}.iot-audit-trail__table-panel .table thead th{padding:8px 10px;font-size:.6rem;white-space:nowrap}.iot-audit-trail__table-panel .table tbody td{padding:7px 10px;font-size:.68rem;vertical-align:middle}.iot-audit-trail__description-cell{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal;line-height:1.35}.iot-audit-trail__detail-cell{vertical-align:middle!important;line-height:1.2;text-align:center;white-space:nowrap}.iot-audit-trail__detail-link{display:inline;vertical-align:middle;margin:0;padding:0;color:var(--color-primary);font-size:inherit;font-weight:600;line-height:inherit;text-decoration:none;text-transform:none;border:0;background:transparent;cursor:pointer;transition:color var(--transition-fast)}.iot-audit-trail__detail-link svg,.iot-audit-trail__detail-link .svg-inline--fa{display:inline-block;vertical-align:middle;margin:0!important;padding:0!important;font-size:.95em;width:1em;height:1em;line-height:1;color:inherit}.iot-audit-trail__detail-link:hover,.iot-audit-trail__detail-link:focus-visible{color:var(--color-primary-hover);text-decoration:none;outline:none}.iot-audit-trail__detail-empty{display:inline;color:var(--text-muted);font-size:inherit;line-height:inherit}.iot-audit-trail__pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:34px;padding:0;border:0;background:transparent}.iot-audit-trail .iot-setup-table-card{min-width:0}.iot-audit-trail .iot-setup-table-toolbar__actions{overflow:visible!important;overflow-x:visible!important;scrollbar-width:none}.iot-audit-trail .iot-setup-table-toolbar__actions::-webkit-scrollbar{display:none}.iot-audit-trail .iot-filter-trigger{flex-shrink:0}.iot-audit-trail .iot-table-head__table,.iot-audit-trail .iot-table-body-scroll table{min-width:900px}@media(max-width:991.98px){.iot-audit-trail .iot-table-head__table,.iot-audit-trail .iot-table-body-scroll table{min-width:720px}}@media(max-width:575.98px){.iot-audit-trail .iot-table-head__table,.iot-audit-trail .iot-table-body-scroll table{min-width:560px}}.iot-audit-trail .iot-table-body-scroll{overflow-x:auto!important}.iot-audit-trail .iot-table-body-scroll .table tbody td{padding-top:5px!important;padding-bottom:5px!important;line-height:1.2;vertical-align:middle!important}.iot-audit-trail .iot-table-body-scroll .table tbody td.iot-audit-trail__detail-cell{padding-top:5px!important;padding-bottom:5px!important}.iot-audit-trail .iot-table-body-scroll .iot-setup-cell-truncate{white-space:nowrap}.iot-audit-trail .iot-setup-table-pagination{background:var(--bg-elevated);border-top:1px solid var(--border-color)}.iot-audit-trail .iot-setup-table-pagination .pagination{margin:0}.iot-audit-trail__modal .modal-dialog{max-width:min(480px,calc(100vw - 2rem));margin:1rem auto}.iot-audit-trail__modal .modal-dialog-scrollable{max-height:calc(100% - 2rem)}.iot-audit-trail__modal .modal-dialog-scrollable .modal-content,.iot-audit-trail__modal .modal-dialog-centered.modal-dialog-scrollable .modal-content{display:flex;flex-direction:column;max-height:min(80vh,560px);overflow:hidden}.iot-audit-trail__modal .modal-content{overflow:hidden;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-elevated);box-shadow:var(--shadow-modal)}.iot-audit-trail__modal .modal-header,.iot-audit-trail__modal .modal-footer{flex-shrink:0}.iot-audit-trail__modal .btn-close{flex-shrink:0;width:1.75rem!important;min-width:1.75rem!important;height:1.75rem!important;min-height:1.75rem!important;margin:0 0 0 8px!important;padding:0!important;background-color:transparent!important;background-image:var(--bs-btn-close-bg)!important;border:0!important;border-radius:6px!important;box-shadow:none!important;opacity:.9}.iot-audit-trail__modal .btn-close:hover,.iot-audit-trail__modal .btn-close:focus{margin-top:0!important;background-color:color-mix(in srgb,var(--text-on-primary) 14%,transparent)!important;border:0!important;opacity:1;box-shadow:none!important}.iot-audit-trail__modal-header{padding:12px 16px!important;border-bottom:1px solid var(--border-color);background:var(--bg-header)!important}.iot-audit-trail__modal-header .modal-title{display:inline-flex;align-items:center;gap:8px;color:var(--text-on-primary);font-size:.9375rem;font-weight:700;letter-spacing:.01em;text-transform:none}.iot-audit-trail__modal-title{margin:0}.iot-audit-trail__modal-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;color:var(--text-on-primary);font-size:.6875rem;font-weight:700;line-height:1;border-radius:999px;background:color-mix(in srgb,var(--text-on-primary) 18%,transparent)}.iot-audit-trail__modal-body{flex:1 1 auto;min-height:0;max-height:none;padding:14px 16px!important;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--bg-primary);scrollbar-gutter:stable}.iot-audit-trail__modal-changes{display:flex;flex-direction:column;gap:10px}.iot-audit-trail__change-item{padding:12px 14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-elevated)}.iot-audit-trail__change-item--raw{padding:10px 12px}.iot-audit-trail__change-field{margin-bottom:8px;color:var(--text-primary);font-size:.8125rem;font-weight:700;line-height:1.3;text-transform:capitalize}.iot-audit-trail__change-values{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.iot-audit-trail__change-label{color:var(--text-muted);font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.iot-audit-trail__change-from,.iot-audit-trail__change-to{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;font-size:.8125rem;font-weight:600;line-height:1.2;border-radius:6px}.iot-audit-trail__change-from{color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color)}.iot-audit-trail__change-to{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 24%,transparent)}.iot-audit-trail__change-arrow{color:var(--text-muted);font-size:.875rem;line-height:1}.iot-audit-trail__change-raw{margin:0;color:var(--text-primary);font-size:.8125rem;line-height:1.45;word-break:break-word}.iot-audit-trail__modal-empty{margin:0;padding:8px 0;color:var(--text-muted);font-size:.8125rem;text-align:center}.iot-audit-trail__modal-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:8px;padding:10px 16px!important;border-top:1px solid var(--border-color);background:var(--bg-elevated)}.iot-audit-trail__modal-footer .btn,.iot-audit-trail__modal-footer button{min-width:0!important;width:auto!important;height:auto!important;min-height:32px!important;margin:0!important;padding:6px 14px!important;border-radius:8px!important;font-size:.8125rem!important;font-weight:600!important;box-shadow:none!important}.iot-sensor-health-report{width:100%;max-width:100%;min-height:0}.iot-sensor-health-report .iot-setup-filters{margin-top:0;margin-bottom:var(--space-3)}.iot-sensor-health-report__table-section{width:100%;min-width:0}.iot-sensor-health-report__multiselect .rmsc{--rmsc-h: var(--iot-report-control-height, 32px)}.iot-sensor-health-report__multiselect .dropdown-container{border-color:var(--border-color-strong);border-radius:var(--border-radius-sm);background:var(--bg-input)}.iot-sensor-health-report__multiselect .dropdown-heading{min-height:var(--iot-report-control-height, 32px);padding-top:0;padding-bottom:0}.iot-sensor-health-report__loading{display:flex;align-items:center;justify-content:center;min-height:220px;padding:24px}.iot-sensor-health-report__pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:34px;padding:0;border:0;background:transparent}.iot-sensor-health-report .iot-setup-table-card{min-width:0}.iot-sensor-health-report .iot-setup-table-toolbar__actions{overflow:visible!important;overflow-x:visible!important;scrollbar-width:none}.iot-sensor-health-report .iot-setup-table-toolbar__actions::-webkit-scrollbar{display:none}.iot-sensor-health-report .iot-filter-trigger{flex-shrink:0}.iot-sensor-health-report .iot-table-head__table,.iot-sensor-health-report .iot-table-body-scroll table{min-width:1180px}@media(max-width:991.98px){.iot-sensor-health-report .iot-table-head__table,.iot-sensor-health-report .iot-table-body-scroll table{min-width:720px}}@media(max-width:575.98px){.iot-sensor-health-report .iot-table-head__table,.iot-sensor-health-report .iot-table-body-scroll table{min-width:560px}}.iot-sensor-health-report .iot-table-body-scroll{overflow-x:auto!important}.iot-sensor-health-report .iot-table-body-scroll .table tbody td{padding-top:5px!important;padding-bottom:5px!important;line-height:1.25;vertical-align:middle!important;font-size:.75rem}.iot-sensor-health-report__date-cell,.iot-sensor-health-report__sensor-cell{white-space:nowrap}.iot-sensor-health-report__sensor-cell{text-align:left!important;font-weight:600;max-width:180px;overflow:hidden;text-overflow:ellipsis}.iot-sensor-health-report__metric-cell{text-align:center!important;white-space:nowrap;font-variant-numeric:tabular-nums}.iot-sensor-health-report__efficiency-cell{text-align:center!important;white-space:nowrap}.iot-sensor-health-report__efficiency-cell .iot-health-efficiency{display:inline-flex;align-items:center;justify-content:center;min-width:46px;margin:0;padding:2px 8px;font-size:.6875rem;line-height:1.3;vertical-align:middle}.iot-sensor-health-report .iot-setup-table-pagination{background:var(--bg-elevated);border-top:1px solid var(--border-color)}.iot-manual-entry{--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-status: #60a5fa;--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 50%, #0f2138 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-shadow: 0 8px 28px rgba(7, 26, 53, .1)}.iot-manual-entry>.iot-cat-overview__header,.iot-manual-entry .iot-cat-overview__header{margin-bottom:10px;background:var(--bg-sidebar)!important;border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)!important;box-shadow:0 8px 28px #071a351a;font-family:var(--font-family-base)}.iot-manual-entry .iot-cat-overview__header-title{color:var(--text-on-primary)!important;font-family:var(--font-family-base)!important;font-size:clamp(.62rem,1.05vw,.74rem);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-manual-entry .iot-cat-overview__header-subtitle{color:color-mix(in srgb,var(--text-on-primary) 78%,transparent)!important;font-family:var(--font-family-base)!important;font-size:.64rem;font-weight:500;letter-spacing:.02em;line-height:1.25;text-transform:none}.iot-manual-entry .iot-cat-overview__header-badge{color:color-mix(in srgb,var(--text-on-primary) 82%,transparent)!important;font-family:var(--font-family-base)!important;background:color-mix(in srgb,var(--text-on-primary) 10%,transparent)!important;border-color:color-mix(in srgb,var(--text-on-primary) 18%,transparent)!important}.iot-manual-entry .iot-cat-overview__header-brand-icon{background:linear-gradient(135deg,#2a4f7a,#1e3a5f,#0f2138)!important;color:#fff}.iot-manual-entry .iot-report-page__header-meta,.iot-manual-entry .iot-pie-chart__header-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}.iot-manual-entry{width:100%;max-width:100%;min-height:0;padding:var(--space-2) var(--space-3) var(--space-8)}.iot-manual-entry .iot-setup-filters{margin-top:0;margin-bottom:0}.iot-manual-entry__section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;min-height:74px;margin:0 0 14px;padding:10px 16px;border:1px solid var(--border-color);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));box-shadow:var(--shadow-card)}.iot-manual-entry__head-copy{min-width:0}.iot-manual-entry__eyebrow{margin:0 0 3px;color:var(--color-primary);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-manual-entry__title{margin:0;color:var(--text-primary);font-size:clamp(.92rem,1.6vw,1.12rem);font-weight:800;letter-spacing:-.01em;line-height:1.2;text-transform:none}.iot-manual-entry__subtitle{margin:3px 0 0;color:var(--text-secondary);font-size:.78rem;font-weight:500;line-height:1.4;max-width:560px}.iot-manual-entry .iot-setup-filters.iot-report-filters .iot-setup-filters__body,.iot-manual-entry .iot-setup-filters__body{flex-direction:column;align-items:stretch;gap:16px;padding:18px 20px 16px}.iot-manual-entry__form-grid{flex:1 1 100%!important;width:100%!important;max-width:none!important;align-items:flex-end!important}.iot-manual-entry__form-grid .form-group,.iot-manual-entry__form-grid [class*=col-md-]{flex:1 1 calc(20% - 10px)!important;min-width:160px!important;max-width:none!important}@media(max-width:767.98px){.iot-manual-entry__form-grid .form-group,.iot-manual-entry__form-grid [class*=col-md-]{flex:1 1 100%!important;min-width:0!important}}.iot-manual-entry .container-buttons{width:100%;padding-top:4px;border-top:1px solid var(--border-color)}.iot-pie-chart{--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-status: #60a5fa;--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 50%, #0f2138 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-shadow: 0 8px 28px rgba(7, 26, 53, .1)}.iot-pie-chart>.iot-cat-overview__header,.iot-pie-chart .iot-cat-overview__header{margin-bottom:10px;background:var(--bg-sidebar)!important;border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)!important;box-shadow:0 8px 28px #071a351a;font-family:var(--font-family-base)}.iot-pie-chart .iot-cat-overview__header-title{color:var(--text-on-primary)!important;font-family:var(--font-family-base)!important;font-size:clamp(.62rem,1.05vw,.74rem);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-pie-chart .iot-cat-overview__header-subtitle{color:color-mix(in srgb,var(--text-on-primary) 78%,transparent)!important;font-family:var(--font-family-base)!important;font-size:.64rem;font-weight:500;letter-spacing:.02em;line-height:1.25;text-transform:none}.iot-pie-chart .iot-cat-overview__header-badge{color:color-mix(in srgb,var(--text-on-primary) 82%,transparent)!important;font-family:var(--font-family-base)!important;background:color-mix(in srgb,var(--text-on-primary) 10%,transparent)!important;border-color:color-mix(in srgb,var(--text-on-primary) 18%,transparent)!important}.iot-pie-chart .iot-cat-overview__header-brand-icon{background:linear-gradient(135deg,#2a4f7a,#1e3a5f,#0f2138)!important;color:#fff}.iot-pie-chart .iot-report-page__header-meta,.iot-pie-chart .iot-pie-chart__header-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}.iot-pie-chart{width:100%;max-width:100%;min-height:0;padding:var(--space-2) var(--space-3) var(--space-8)}.iot-pie-chart .iot-setup-filters{margin-top:0;margin-bottom:var(--space-4)}.iot-pie-chart__section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;min-height:74px;margin:0 0 14px;padding:10px 16px;border:1px solid var(--border-color);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));box-shadow:var(--shadow-card)}.iot-pie-chart__head-copy{min-width:0}.iot-pie-chart__eyebrow{margin:0 0 3px;color:var(--color-primary);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-pie-chart__title{margin:0;color:var(--text-primary);font-size:clamp(.92rem,1.6vw,1.12rem);font-weight:800;letter-spacing:-.01em;line-height:1.2;text-transform:none}.iot-pie-chart__subtitle{margin:3px 0 0;color:var(--text-secondary);font-size:.78rem;font-weight:500;line-height:1.4;max-width:560px}.iot-pie-chart__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.iot-pie-chart__badge{display:inline-flex;align-items:center;padding:5px 10px;color:var(--text-secondary);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;background:color-mix(in srgb,var(--bg-input) 88%,transparent);border:1px solid var(--border-color)}.iot-pie-chart__badge--muted{text-transform:none;letter-spacing:.02em;font-weight:600;color:var(--text-primary)}.iot-pie-chart__content{width:100%;min-width:0}.iot-pie-chart__loading,.iot-pie-chart__empty{display:flex;align-items:center;justify-content:center;min-height:280px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-elevated);box-shadow:var(--shadow-card)}.iot-pie-chart__empty{padding:0;overflow:hidden}.iot-pie-chart__empty .empty-page{width:100%;height:auto!important;min-height:var(--empty-page-height, 42vh);color:var(--text-secondary);background:transparent}.iot-pie-chart__empty .empty-page h5{margin:0;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.iot-pie-chart__main-panel,.iot-pie-chart__grid-item{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-elevated);box-shadow:var(--shadow-card);overflow:hidden}.iot-pie-chart__main-panel{margin-bottom:14px}.iot-pie-chart__panel-head{padding:10px 14px;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-elevated))}.iot-pie-chart__panel-title{margin:0;color:var(--text-primary);font-size:.72rem;font-weight:800;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.iot-pie-chart__chart-wrap{padding:8px 10px 12px;min-height:280px}.iot-pie-chart__chart-wrap--main{min-height:360px;padding:10px 14px 16px}.iot-pie-chart__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:1199px){.iot-pie-chart__grid{grid-template-columns:1fr}}.iot-pie-chart-canvas{width:100%}.iot-pie-chart-canvas .highcharts-container,.iot-pie-chart-canvas .highcharts-root{width:100%!important}.iot-pie-chart-canvas--main{min-height:340px}.iot-pie-chart-canvas--sub{min-height:260px}.iot-report-filters,.iot-report-page .iot-setup-filters{--iot-report-control-height: 32px;--iot-select-height: var(--iot-report-control-height);width:100%;margin:0 0 8px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-card);overflow:visible}.iot-report-filters .iot-setup-filters__body,.iot-report-page .iot-setup-filters .iot-setup-filters__body{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-start;gap:8px 10px;padding:10px 12px}.iot-report-filters .form-row,.iot-report-filters .row,.iot-report-page .iot-setup-filters .form-row,.iot-report-page .iot-setup-filters .row{display:flex;flex:1 1 100%;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;width:100%;margin:0;min-width:0}.iot-report-filters .iot-setup-filters__body:has(>.container-buttons)>.form-row:nth-last-child(2),.iot-report-filters .iot-setup-filters__body:has(>.container-buttons)>.row:nth-last-child(2),.iot-report-page .iot-setup-filters .iot-setup-filters__body:has(>.container-buttons)>.form-row:nth-last-child(2),.iot-report-page .iot-setup-filters .iot-setup-filters__body:has(>.container-buttons)>.row:nth-last-child(2){flex:1 1 auto;width:auto;max-width:calc(100% - 150px)}.iot-report-filters .form-group,.iot-report-filters .col-md-height,.iot-report-filters [class*=col-md-],.iot-report-filters [class*=col-],.iot-report-page .iot-setup-filters .form-group,.iot-report-page .iot-setup-filters .col-md-height,.iot-report-page .iot-setup-filters [class*=col-md-],.iot-report-page .iot-setup-filters [class*=col-]{flex:1 1 150px;min-width:128px;max-width:min(200px,calc((100% - 50px) / 6));height:auto!important;margin:0!important;padding:0!important;background:none!important;border:none!important;box-shadow:none!important}.iot-report-filters .iot-shift-report__shifts,.iot-report-page .iot-setup-filters .iot-shift-report__shifts{flex:1 1 240px;min-width:200px;max-width:200px}.iot-report-filters .iot-setup-field,.iot-report-page .iot-setup-filters .iot-setup-field{gap:3px;width:100%}.iot-report-filters .form-label-themed,.iot-report-page .iot-setup-filters .form-label-themed{font-size:.68rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;text-align:left;color:var(--text-secondary)!important;margin-bottom:0;line-height:1.15}.iot-report-filters .iot-report-axis-options,.iot-report-page .iot-setup-filters .iot-report-axis-options{display:flex;flex:0 0 auto;align-items:center;flex-wrap:nowrap;gap:16px;min-width:auto;max-width:none}.iot-report-filters .iot-report-axis-options .custom-control,.iot-report-filters .iot-report-axis-options .custom-control-inline,.iot-report-page .iot-setup-filters .iot-report-axis-options .custom-control,.iot-report-page .iot-setup-filters .iot-report-axis-options .custom-control-inline{display:inline-flex;align-items:center;flex-shrink:0;width:auto;margin-right:0;min-height:var(--iot-report-control-height)}.iot-report-filters .iot-report-axis-options .custom-control-label.form-label-themed,.iot-report-page .iot-setup-filters .iot-report-axis-options .custom-control-label.form-label-themed{white-space:nowrap;display:inline-flex;align-items:center;min-height:1rem;line-height:1rem}.iot-report-filters .iot-report-axis-options .custom-control-label.form-label-themed:before,.iot-report-filters .iot-report-axis-options .custom-control-label.form-label-themed:after,.iot-report-page .iot-setup-filters .iot-report-axis-options .custom-control-label.form-label-themed:before,.iot-report-page .iot-setup-filters .iot-report-axis-options .custom-control-label.form-label-themed:after{top:50%;transform:translateY(-50%)}.iot-report-filters .form-row:has(.iot-report-axis-options),.iot-report-page .iot-setup-filters .form-row:has(.iot-report-axis-options){align-items:center}.iot-report-filters .custom-select,.iot-report-filters input.custom-select,.iot-report-filters select.custom-select,.iot-report-filters .form-control,.iot-report-page .iot-setup-filters .custom-select,.iot-report-page .iot-setup-filters input.custom-select,.iot-report-page .iot-setup-filters select.custom-select,.iot-report-page .iot-setup-filters .form-control{display:block!important;box-sizing:border-box;min-height:var(--iot-report-control-height)!important;height:var(--iot-report-control-height)!important;margin:0!important;padding:0 8px!important;border:1px solid var(--border-color-input)!important;border-radius:var(--border-radius-md)!important;background:var(--bg-input)!important;font-size:.75rem!important;line-height:calc(var(--iot-report-control-height) - 2px)!important;width:100%}.iot-report-filters input[type=date].custom-select,.iot-report-filters input[type=datetime-local].custom-select,.iot-report-filters input[type=time].custom-select,.iot-report-filters input[type=number].custom-select,.iot-report-filters input[type=text].custom-select,.iot-report-filters input[type=search].custom-select,.iot-report-filters select.custom-select,.iot-report-page .iot-setup-filters input[type=date].custom-select,.iot-report-page .iot-setup-filters input[type=datetime-local].custom-select,.iot-report-page .iot-setup-filters input[type=time].custom-select,.iot-report-page .iot-setup-filters input[type=number].custom-select,.iot-report-page .iot-setup-filters input[type=text].custom-select,.iot-report-page .iot-setup-filters input[type=search].custom-select,.iot-report-page .iot-setup-filters select.custom-select{min-height:var(--iot-report-control-height)!important;height:var(--iot-report-control-height)!important}.iot-report-filters input.custom-select::-webkit-calendar-picker-indicator,.iot-report-page .iot-setup-filters input.custom-select::-webkit-calendar-picker-indicator{margin:0}.iot-report-filters .custom-select-wrapper,.iot-report-page .iot-setup-filters .custom-select-wrapper{width:100%}.iot-report-filters .custom-select-wrapper [class*=-control],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-control]{min-height:var(--iot-report-control-height)!important;height:var(--iot-report-control-height)!important;font-size:.75rem!important;flex-wrap:nowrap!important;overflow:hidden!important;align-items:center!important}.iot-report-filters .custom-select-wrapper [class*=-ValueContainer],.iot-report-filters .custom-select-wrapper [class*=-valueContainer],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-ValueContainer],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-valueContainer]{min-height:var(--iot-report-control-height)!important;height:var(--iot-report-control-height)!important;padding-top:0!important;padding-bottom:0!important;flex-wrap:nowrap!important;overflow:hidden!important}.iot-report-filters .custom-select-wrapper [class*=-placeholder],.iot-report-filters .custom-select-wrapper [class*=-singleValue],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-placeholder],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-singleValue]{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%}.iot-report-filters .custom-select-wrapper--multi [class*=-ValueContainer],.iot-report-filters .custom-select-wrapper--multi [class*=-valueContainer],.iot-report-page .iot-setup-filters .custom-select-wrapper--multi [class*=-ValueContainer],.iot-report-page .iot-setup-filters .custom-select-wrapper--multi [class*=-valueContainer]{flex:1 1 0%!important;min-width:0!important;flex-wrap:nowrap!important;overflow:hidden!important}.iot-report-filters .custom-select-wrapper--multi [class*=-multiValue],.iot-report-page .iot-setup-filters .custom-select-wrapper--multi [class*=-multiValue]{flex:0 1 auto;min-width:0;max-width:100%}.iot-report-filters .custom-select-wrapper--multi [class*=-multiValueLabel],.iot-report-page .iot-setup-filters .custom-select-wrapper--multi [class*=-multiValueLabel]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-report-filters .custom-select-wrapper [class*=-Input],.iot-report-filters .custom-select-wrapper [class*=-input],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-Input],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-input]{margin:0!important;padding:0!important}.iot-report-filters .custom-select-wrapper [class*=-IndicatorsContainer],.iot-report-filters .custom-select-wrapper [class*=-indicatorsContainer],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-IndicatorsContainer],.iot-report-page .iot-setup-filters .custom-select-wrapper [class*=-indicatorsContainer]{flex:0 0 auto!important;align-self:stretch!important;height:var(--iot-report-control-height)!important}.iot-report-filters .rmsc,.iot-report-page .iot-setup-filters .rmsc{--rmsc-h: var(--iot-report-control-height);--rmsc-p: 4px;--rmsc-py: 0;width:100%;font-size:.75rem}.iot-report-filters .rmsc .dropdown-container,.iot-report-page .iot-setup-filters .rmsc .dropdown-container{min-height:var(--iot-report-control-height)!important;height:var(--iot-report-control-height)!important}.iot-report-filters .rmsc .dropdown-heading,.iot-report-page .iot-setup-filters .rmsc .dropdown-heading{min-height:var(--iot-report-control-height)!important;height:var(--iot-report-control-height)!important;padding-top:0;padding-bottom:0}.iot-report-filters .container-buttons,.iot-report-page .iot-setup-filters .container-buttons{display:flex;flex:0 0 auto;flex-wrap:nowrap;align-items:center;align-self:flex-end;justify-content:flex-end;gap:5px;width:auto;margin:0 0 0 auto!important;padding:0!important;border:none!important;border-top:none!important}.iot-report-filters .container-buttons .iot-setup-btn,.iot-report-filters .container-buttons .btn,.iot-report-page .iot-setup-filters .container-buttons .iot-setup-btn,.iot-report-page .iot-setup-filters .container-buttons .btn{min-height:var(--iot-report-control-height);height:var(--iot-report-control-height);padding:0 10px;font-size:.75rem!important}@media(max-width:991px){.iot-report-filters .form-group,.iot-report-filters [class*=col-md-],.iot-report-page .iot-setup-filters .form-group,.iot-report-page .iot-setup-filters [class*=col-md-]{flex:1 1 calc(50% - 10px);max-width:calc(50% - 10px)}}@media(max-width:575px){.iot-report-filters .form-group,.iot-report-filters [class*=col-md-],.iot-report-page .iot-setup-filters .form-group,.iot-report-page .iot-setup-filters [class*=col-md-]{flex:1 1 100%;max-width:100%}.iot-report-filters .form-row,.iot-report-filters .row,.iot-report-filters .iot-setup-filters__body:has(>.container-buttons)>.form-row:nth-last-child(2),.iot-report-filters .iot-setup-filters__body:has(>.container-buttons)>.row:nth-last-child(2),.iot-report-page .iot-setup-filters .form-row,.iot-report-page .iot-setup-filters .row,.iot-report-page .iot-setup-filters .iot-setup-filters__body:has(>.container-buttons)>.form-row:nth-last-child(2),.iot-report-page .iot-setup-filters .iot-setup-filters__body:has(>.container-buttons)>.row:nth-last-child(2){flex:1 1 100%;width:100%;max-width:100%}.iot-report-filters .container-buttons,.iot-report-page .iot-setup-filters .container-buttons{width:100%;margin-left:0!important;justify-content:flex-end}}.iot-daily-delta{min-width:0}.iot-daily-delta__table-panel{width:100%;max-width:100%;min-width:0;margin-top:8px;border:1px solid var(--border-color);border-radius:var(--border-radius-lg, 12px);background:var(--bg-elevated);overflow:hidden}.iot-daily-delta__table-scroll{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.iot-daily-delta__table{width:max-content;min-width:100%;margin-bottom:0}.iot-daily-delta__table th,.iot-daily-delta__table td{white-space:nowrap;vertical-align:middle}.iot-daily-delta__counts{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:max-content}.iot-report-page{--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-status: #60a5fa;--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 50%, #0f2138 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-shadow: 0 8px 28px rgba(7, 26, 53, .1)}.iot-report-page>.iot-cat-overview__header,.iot-report-page .iot-cat-overview__header{margin-bottom:10px;background:var(--bg-sidebar)!important;border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)!important;box-shadow:0 8px 28px #071a351a;font-family:var(--font-family-base)}.iot-report-page .iot-cat-overview__header-title{color:var(--text-on-primary)!important;font-family:var(--font-family-base)!important;font-size:clamp(.62rem,1.05vw,.74rem);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-report-page .iot-cat-overview__header-subtitle{color:color-mix(in srgb,var(--text-on-primary) 78%,transparent)!important;font-family:var(--font-family-base)!important;font-size:.64rem;font-weight:500;letter-spacing:.02em;line-height:1.25;text-transform:none}.iot-report-page .iot-cat-overview__header-badge{color:color-mix(in srgb,var(--text-on-primary) 82%,transparent)!important;font-family:var(--font-family-base)!important;background:color-mix(in srgb,var(--text-on-primary) 10%,transparent)!important;border-color:color-mix(in srgb,var(--text-on-primary) 18%,transparent)!important}.iot-report-page .iot-cat-overview__header-brand-icon{background:linear-gradient(135deg,#2a4f7a,#1e3a5f,#0f2138)!important;color:#fff}.iot-report-page .iot-report-page__header-meta,.iot-report-page .iot-pie-chart__header-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}.iot-report-page{width:100%;max-width:100%;min-height:0;height:auto!important;max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important;padding:var(--space-2) var(--space-3) var(--space-8)}.iot-report-page .iot-setup-filters{margin-top:0;margin-bottom:var(--space-3)}.iot-report-page .iot-report-chart{position:relative;padding:12px 16px 8px;margin:8px 0 16px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-elevated);box-shadow:var(--shadow-card);overflow:visible;--trend-tooltip-surface: #0f172a;--trend-tooltip-label: #94a3b8;--trend-tooltip-value: #f8fafc;--trend-tooltip-border: rgba(148, 163, 184, .24);--trend-tooltip-label-bg: #1e293b;--trend-tooltip-shadow: 0 8px 20px rgba(2, 6, 23, .28)}.iot-report-page .iot-report-chart .iot-report-chart__inner{width:100%;display:flex;justify-content:center;overflow-x:auto;padding:4px 0 8px}.iot-report-page .iot-report-chart .iot-report-chart__inner--multi-axis .canvasjs-chart-container{min-width:min(100%,960px)}.iot-report-page .iot-report-chart .canvasjs-chart-container{position:relative;width:100%!important;margin:0 auto}.iot-report-page .iot-report-chart .canvasjs-chart-toolbar{position:absolute!important;top:8px!important;right:8px!important;left:auto!important;border:none!important;border-radius:8px;z-index:5;background:transparent!important}.iot-report-page .iot-report-chart .canvasjs-chart-toolbar>button{margin-top:0!important;border:1px solid color-mix(in srgb,var(--color-primary) 35%,var(--border-color))!important;border-radius:8px!important;background:var(--color-primary)!important;box-shadow:0 1px 3px #0f172a1f}.iot-report-page .iot-report-chart .canvasjs-chart-credit{display:none!important}.iot-report-page .iot-report-chart .canvasjs-chart-tooltip{pointer-events:none}.iot-report-page .iot-report-chart .canvasjs-chart-tooltip>div{width:fit-content!important;max-width:320px!important;border:1px solid var(--trend-tooltip-border)!important;box-shadow:var(--trend-tooltip-shadow)!important;padding:8px 10px!important}.iot-report-page .iot-report-chart .iot-trend-tooltip{display:inline-block;width:max-content;max-width:300px;color:var(--trend-tooltip-value)}.iot-report-page .iot-report-chart .iot-trend-tooltip__row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.68rem;line-height:1.25}.iot-report-page .iot-report-chart .iot-trend-tooltip__time{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--trend-tooltip-border);font-size:.72rem;font-weight:700;color:var(--trend-tooltip-value);line-height:1.3;text-align:center;white-space:nowrap}.iot-report-page .iot-report-chart .iot-trend-tooltip__table{width:auto;border-collapse:collapse;table-layout:auto;font-size:.68rem;line-height:1.25}.iot-report-page .iot-report-chart .iot-trend-tooltip__table thead th{padding:4px 8px;font-size:.62rem;font-weight:700;text-align:left;color:var(--trend-tooltip-label);background:var(--trend-tooltip-label-bg);border-bottom:1px solid var(--trend-tooltip-border)}.iot-report-page .iot-report-chart .iot-trend-tooltip__table thead th:last-child{text-align:right}.iot-report-page .iot-report-chart .iot-trend-tooltip__table tbody td{padding:5px 8px;vertical-align:top;background:var(--trend-tooltip-surface);border-bottom:1px solid var(--trend-tooltip-border)}.iot-report-page .iot-report-chart .iot-trend-tooltip__table tbody tr:last-child td{border-bottom:none}.iot-report-page .iot-report-chart .iot-trend-tooltip__series{color:var(--trend-tooltip-value);word-break:break-word;white-space:normal}.iot-report-page .iot-report-chart .iot-trend-tooltip__dot{display:inline-block;margin-right:4px;font-size:.72rem;line-height:1;vertical-align:middle}.iot-report-page .iot-report-chart .iot-trend-tooltip__name{display:inline;vertical-align:middle;font-weight:500}.iot-report-page .iot-report-chart .iot-trend-tooltip__value{text-align:right;font-weight:700;color:var(--trend-tooltip-value);white-space:nowrap}.iot-report-page .iot-report-sensors-scroll .iot-setup-field,.iot-report-page .iot-report-sensors-scroll .form-group{margin-bottom:0}.iot-report-page .iot-report-empty-state .empty-page{height:20vh;min-height:20vh}.c-body:has(.iot-report-page){overflow:hidden!important}.app-main-content:has(.iot-report-page),.mainbody:has(.iot-report-page){display:block!important;height:100%!important;max-height:100%!important;min-width:0;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.app-main-content:has(.iot-report-page)>div,.mainbody:has(.iot-report-page)>div{display:block!important;height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.app-main-content:has(.iot-report-page) .fade,.app-main-content:has(.iot-report-page) .fade.show,.mainbody:has(.iot-report-page) .fade,.mainbody:has(.iot-report-page) .fade.show{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-report-page) .container-fluid{height:auto!important;max-height:none!important;overflow:visible!important}.c-wrapper:has(.iot-report-page):not(:has(.iot-setup-form-page)){overflow:hidden}.iot-daily-energy{--cat-header-bg: var(--bg-sidebar);--cat-header-border: color-mix(in srgb, var(--text-on-primary) 12%, transparent);--cat-header-text: var(--text-on-primary);--cat-header-text-muted: color-mix(in srgb, var(--text-on-primary) 78%, transparent);--cat-header-status: #60a5fa;--cat-header-badge-bg: color-mix(in srgb, var(--text-on-primary) 10%, transparent);--cat-header-badge-text: color-mix(in srgb, var(--text-on-primary) 82%, transparent);--cat-header-badge-border: color-mix(in srgb, var(--text-on-primary) 18%, transparent);--cat-header-icon-bg: linear-gradient(135deg, #2a4f7a 0%, #1e3a5f 50%, #0f2138 100%);--cat-header-status-bg: color-mix(in srgb, #60a5fa 14%, transparent);--cat-header-status-border: color-mix(in srgb, #60a5fa 35%, transparent);--cat-shadow: 0 8px 28px rgba(7, 26, 53, .1)}.iot-daily-energy>.iot-cat-overview__header,.iot-daily-energy .iot-cat-overview__header{margin-bottom:10px;background:var(--bg-sidebar)!important;border-color:color-mix(in srgb,var(--text-on-primary) 12%,transparent)!important;box-shadow:0 8px 28px #071a351a;font-family:var(--font-family-base)}.iot-daily-energy .iot-cat-overview__header-title{color:var(--text-on-primary)!important;font-family:var(--font-family-base)!important;font-size:clamp(.62rem,1.05vw,.74rem);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.iot-daily-energy .iot-cat-overview__header-subtitle{color:color-mix(in srgb,var(--text-on-primary) 78%,transparent)!important;font-family:var(--font-family-base)!important;font-size:.64rem;font-weight:500;letter-spacing:.02em;line-height:1.25;text-transform:none}.iot-daily-energy .iot-cat-overview__header-badge{color:color-mix(in srgb,var(--text-on-primary) 82%,transparent)!important;font-family:var(--font-family-base)!important;background:color-mix(in srgb,var(--text-on-primary) 10%,transparent)!important;border-color:color-mix(in srgb,var(--text-on-primary) 18%,transparent)!important}.iot-daily-energy .iot-cat-overview__header-brand-icon{background:linear-gradient(135deg,#2a4f7a,#1e3a5f,#0f2138)!important;color:#fff}.iot-daily-energy .iot-report-page__header-meta,.iot-daily-energy .iot-pie-chart__header-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}.iot-daily-energy{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;max-width:100%;padding-bottom:var(--space-6)}.iot-daily-energy__hero{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:74px;padding:10px 16px;border:1px solid var(--border-color);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));box-shadow:var(--shadow-card)}.iot-daily-energy__hero h1{margin:0;color:var(--text-primary);font-size:clamp(.92rem,1.6vw,1.12rem);font-weight:800;letter-spacing:-.01em;line-height:1.2}.iot-daily-energy__hero span{display:block;margin-top:3px;color:var(--text-secondary);font-size:.78rem;line-height:1.4}.iot-daily-energy__eyebrow{margin:0 0 3px;color:var(--color-primary);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-daily-energy__date-card{flex:0 0 auto;min-width:148px;padding:8px 12px;border:1px solid var(--border-color);border-radius:10px;background:color-mix(in srgb,var(--bg-input) 78%,transparent);text-align:right}.iot-daily-energy__date-card span{margin:0;color:var(--text-muted);font-size:.68rem;font-weight:700}.iot-daily-energy__date-card strong{display:block;margin-top:2px;color:var(--text-primary);font-size:.88rem}.iot-daily-energy__filters{margin-bottom:0!important}.iot-daily-energy__filters .iot-setup-filters__body{align-items:flex-end;flex-wrap:nowrap;gap:10px;min-height:0;padding:10px 12px}.iot-daily-energy__filters .form-row{flex:0 1 230px;width:auto;min-width:210px}.iot-daily-energy__filters .form-group,.iot-daily-energy__filters [class*=col-md-]{flex:1 1 auto;max-width:none}.iot-daily-energy__filters .container-buttons{align-self:flex-end;margin-left:auto!important}.iot-daily-energy__loader{display:flex;align-items:center;justify-content:center;min-height:90px;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-card)}.iot-daily-energy__card{min-width:0;max-width:100%;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-card)}.iot-daily-energy__section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:13px 16px;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 76%,var(--bg-elevated))}.iot-daily-energy__section-head>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;min-width:0}.iot-daily-energy__section-head p{margin:0;color:var(--color-primary);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.iot-daily-energy__section-head h2{margin:0;color:var(--text-primary);font-size:.98rem;font-weight:800;line-height:1.2}.iot-daily-energy__section-head>span{flex:0 0 auto;padding:5px 9px;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:999px;background:var(--bg-input);font-size:.72rem;font-weight:700}.iot-daily-energy__table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.iot-daily-energy__table{width:100%;min-width:760px;margin:0;border-collapse:separate;border-spacing:0;color:var(--text-primary)}.iot-daily-energy__table th,.iot-daily-energy__table td{padding:9px 11px;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);vertical-align:middle;font-size:.78rem}.iot-daily-energy__table th:last-child,.iot-daily-energy__table td:last-child{border-right:0}.iot-daily-energy__table thead th{position:sticky;top:0;z-index:1;color:var(--text-secondary);background:var(--bg-secondary);font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.iot-daily-energy__table tbody tr:last-child td{border-bottom:0}.iot-daily-energy__table tbody tr:nth-child(2n):not(.iot-daily-energy__group-row){background:color-mix(in srgb,var(--bg-secondary) 34%,transparent)}.iot-daily-energy__table tbody tr:hover:not(.iot-daily-energy__group-row){background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-elevated))}.iot-daily-energy__table--wide{min-width:1040px}.iot-daily-energy__col-serial{width:70px}.iot-daily-energy__scope-cell{color:var(--text-primary);font-weight:700}.iot-daily-energy__group-row td{padding:8px 11px;color:var(--text-on-primary);background:var(--brand-gradient);border-right:0;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.iot-daily-energy__number-input,.iot-daily-energy__remarks-input{width:100%;color:var(--text-primary);border:1px solid var(--border-color-input);border-radius:var(--border-radius-md);background:var(--bg-input);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.iot-daily-energy__number-input:focus,.iot-daily-energy__remarks-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 18%,transparent)}.iot-daily-energy__number-input{max-width:118px;height:32px;padding:0 9px;text-align:center;font-size:.78rem}.iot-daily-energy__remarks-cell{min-width:260px;background:color-mix(in srgb,var(--bg-secondary) 30%,transparent)}.iot-daily-energy__remarks-input{min-height:118px;padding:9px 10px;resize:vertical;font-size:.78rem;line-height:1.45}.iot-daily-energy__remarks-input--tall{min-height:220px}@media(max-width:767px){.iot-daily-energy__hero,.iot-daily-energy__section-head{align-items:flex-start;flex-direction:column}.iot-daily-energy__date-card{width:100%;text-align:left}.iot-daily-energy__filters .iot-setup-filters__body{flex-wrap:wrap}.iot-daily-energy__filters .form-row,.iot-daily-energy__filters .container-buttons{width:100%}}.iot-report-page .iot-setup-filters.iot-daily-energy__filters,.iot-report-filters.iot-daily-energy__filters{margin-bottom:0!important}.iot-report-page .iot-setup-filters.iot-daily-energy__filters .iot-setup-filters__body,.iot-report-filters.iot-daily-energy__filters .iot-setup-filters__body{display:flex!important;align-items:flex-end!important;flex-wrap:nowrap!important;gap:10px!important;min-height:0!important;padding:10px 12px!important}.iot-report-page .iot-setup-filters.iot-daily-energy__filters .form-row,.iot-report-page .iot-setup-filters.iot-daily-energy__filters .row,.iot-report-filters.iot-daily-energy__filters .form-row,.iot-report-filters.iot-daily-energy__filters .row{flex:0 0 230px!important;width:230px!important;max-width:230px!important}.iot-report-page .iot-setup-filters.iot-daily-energy__filters .form-group,.iot-report-page .iot-setup-filters.iot-daily-energy__filters [class*=col-md-],.iot-report-page .iot-setup-filters.iot-daily-energy__filters [class*=col-],.iot-report-filters.iot-daily-energy__filters .form-group,.iot-report-filters.iot-daily-energy__filters [class*=col-md-],.iot-report-filters.iot-daily-energy__filters [class*=col-]{flex:1 1 auto!important;max-width:none!important}.iot-report-page .iot-setup-filters.iot-daily-energy__filters .container-buttons,.iot-report-filters.iot-daily-energy__filters .container-buttons{align-self:flex-end!important;width:auto!important;margin-left:auto!important;justify-content:flex-end!important}@media(max-width:575px){.iot-report-page .iot-setup-filters.iot-daily-energy__filters .iot-setup-filters__body,.iot-report-filters.iot-daily-energy__filters .iot-setup-filters__body{flex-wrap:wrap!important}.iot-report-page .iot-setup-filters.iot-daily-energy__filters .form-row,.iot-report-page .iot-setup-filters.iot-daily-energy__filters .row,.iot-report-page .iot-setup-filters.iot-daily-energy__filters .container-buttons,.iot-report-filters.iot-daily-energy__filters .form-row,.iot-report-filters.iot-daily-energy__filters .row,.iot-report-filters.iot-daily-energy__filters .container-buttons{flex:1 1 100%!important;width:100%!important;max-width:100%!important}}[data-theme=light] .iot-audit-trail{background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-audit-trail .iot-setup-filters{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-surface-soft) 100%);border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8)}[data-theme=light] .iot-audit-trail__section-head{background:var(--brand-gradient);border-color:color-mix(in srgb,var(--color-primary) 20%,#c5d4e8)}[data-theme=light] .iot-audit-trail__table-panel{background:var(--bg-elevated);border-color:color-mix(in srgb,var(--color-primary) 12%,#c5d4e8)}[data-theme=light] .iot-audit-trail__table-panel .table tbody tr:nth-child(odd){background-color:var(--bg-surface-soft)}[data-theme=light] .iot-audit-trail__table-panel .table tbody tr:nth-child(2n){background-color:var(--bg-elevated)}[data-theme=light] .iot-audit-trail__table-panel .table tbody tr:hover{background-color:#dcebe3!important}[data-theme=light] .iot-audit-trail__pagination{background:var(--bg-surface-soft);border-top-color:#c5d4e8}[data-theme=light] .iot-sensor-health-report{background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-sensor-health-report .iot-setup-filters{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-surface-soft) 100%);border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8)}[data-theme=light] .iot-sensor-health-report .iot-setup-table-pagination{background:var(--bg-surface-soft);border-top-color:#c5d4e8}[data-theme=light] .iot-manual-entry{background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-manual-entry .iot-setup-filters{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-surface-soft) 100%);border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8);box-shadow:0 4px 18px #1e3a5f0f,inset 0 1px #ffffffa6}[data-theme=light] .iot-manual-entry__section-head{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8)}[data-theme=light] .iot-manual-entry .container-buttons{border-top-color:#c5d4e8}[data-theme=light] .iot-report-page{background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-report-page .iot-setup-filters{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-surface-soft) 100%);border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8);box-shadow:0 4px 18px #1e3a5f0f,inset 0 1px #ffffffa6}[data-theme=light] .iot-report-page .container-buttons{border-top-color:#c5d4e8}[data-theme=light] .iot-pie-chart{background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-pie-chart .iot-setup-filters{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-surface-soft) 100%);border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8);box-shadow:0 4px 18px #1e3a5f0f,inset 0 1px #ffffffa6}[data-theme=light] .iot-pie-chart__section-head{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));border-color:color-mix(in srgb,var(--color-primary) 14%,#c5d4e8)}[data-theme=light] .iot-pie-chart__main-panel,[data-theme=light] .iot-pie-chart__grid-item,[data-theme=light] .iot-pie-chart__loading,[data-theme=light] .iot-pie-chart__empty{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-surface-soft) 100%);border-color:color-mix(in srgb,var(--color-primary) 12%,#c5d4e8)}[data-theme=light] .iot-pie-chart__panel-head{background:linear-gradient(180deg,var(--bg-surface-soft) 0%,var(--bg-input) 100%);border-bottom-color:#c5d4e8}[data-theme=dark] .iot-audit-trail{background:var(--bg-primary)}[data-theme=dark] .iot-audit-trail__table-panel{box-shadow:0 8px 24px #00000047}[data-theme=dark] .iot-audit-trail__section-head{background:var(--brand-gradient);border-color:#6789be47}[data-theme=dark] .iot-sensor-health-report{background:var(--bg-primary)}[data-theme=dark] .iot-sensor-health-report .iot-setup-table-card,[data-theme=dark] .iot-sensor-health-report .iot-setup-filters{box-shadow:0 8px 24px #00000038}[data-theme=dark] .iot-manual-entry{background:var(--bg-primary)}[data-theme=dark] .iot-manual-entry__section-head{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));border-color:color-mix(in srgb,var(--color-primary) 20%,var(--border-color))}[data-theme=dark] .iot-manual-entry .iot-setup-filters{box-shadow:0 8px 24px #00000038}[data-theme=dark] .iot-report-page{background:var(--bg-primary)}[data-theme=dark] .iot-report-page .iot-setup-filters{box-shadow:0 8px 24px #00000038}[data-theme=dark] .iot-report-page .iot-report-chart{background:var(--bg-elevated);border-color:color-mix(in srgb,var(--border-color) 90%,transparent);box-shadow:0 8px 24px #00000038;--trend-tooltip-surface: #f8fafc;--trend-tooltip-label: #64748b;--trend-tooltip-value: #0f172a;--trend-tooltip-border: rgba(15, 23, 42, .12);--trend-tooltip-label-bg: #eef2f7;--trend-tooltip-shadow: 0 8px 20px rgba(15, 23, 42, .22)}[data-theme=dark] .iot-pie-chart{background:var(--bg-primary)}[data-theme=dark] .iot-pie-chart__section-head{background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 88%,var(--color-primary)),var(--bg-elevated));border-color:color-mix(in srgb,var(--color-primary) 20%,var(--border-color))}[data-theme=dark] .iot-pie-chart__main-panel,[data-theme=dark] .iot-pie-chart__grid-item,[data-theme=dark] .iot-pie-chart__loading,[data-theme=dark] .iot-pie-chart__empty{box-shadow:0 8px 24px #00000038}[data-theme=dark] .iot-status-badge--active{color:#86efac;background:color-mix(in srgb,#22c55e 24%,#0f172a);border-color:color-mix(in srgb,#22c55e 50%,transparent)}[data-theme=dark] .iot-status-badge--inactive{color:#fca5a5;background:color-mix(in srgb,#ef4444 22%,#0f172a);border-color:color-mix(in srgb,#ef4444 48%,transparent)}[data-theme=dark] .iot-status-badge--warning{color:#fbbf24;background:color-mix(in srgb,#f59e0b 22%,#0f172a);border-color:color-mix(in srgb,#f59e0b 48%,transparent)}[data-theme=dark] .iot-setup-page .table tbody td,[data-theme=dark] .modal-body .table tbody td{color:var(--text-primary)}[data-theme=dark] .iot-setup-page .table-striped tbody tr:nth-of-type(odd),[data-theme=dark] .iot-setup-page .table tbody tr:nth-child(odd),[data-theme=dark] .modal-body .table-striped tbody tr:nth-of-type(odd),[data-theme=dark] .modal-body .table tbody tr:nth-child(odd){background-color:var(--iot-table-row-odd)}[data-theme=dark] .iot-setup-page .table-striped tbody tr:nth-of-type(2n),[data-theme=dark] .iot-setup-page .table tbody tr:nth-child(2n),[data-theme=dark] .modal-body .table-striped tbody tr:nth-of-type(2n),[data-theme=dark] .modal-body .table tbody tr:nth-child(2n){background-color:var(--iot-table-row-even)}[data-theme=dark] .iot-setup-page .table tbody tr:hover,[data-theme=dark] .modal-body .table tbody tr:hover{background-color:var(--iot-table-row-hover)!important}.iot-assign-permission{display:flex!important;flex-direction:column!important;width:100%;max-width:100%;min-height:0;height:100%;max-height:100%;overflow:hidden;padding:var(--space-2) var(--space-3) var(--space-3)}.iot-assign-permission__section-head{display:flex;flex-wrap:wrap;flex:0 0 auto;align-items:center;justify-content:space-between;gap:10px 14px;margin:0 0 12px;padding:12px 16px;border:1px solid var(--border-color);border-radius:10px;background:linear-gradient(135deg,var(--bg-table-header) 0%,color-mix(in srgb,var(--bg-table-header) 82%,#000) 100%);box-shadow:var(--shadow-card)}.iot-assign-permission__head-copy{min-width:0}.iot-assign-permission__title{margin:0 0 4px;color:var(--text-on-primary);font-size:.82rem;font-weight:800;letter-spacing:.07em;line-height:1.2;text-transform:uppercase}.iot-assign-permission__subtitle{margin:0;color:color-mix(in srgb,var(--text-on-primary) 78%,transparent);font-size:.68rem;font-weight:500;line-height:1.4;max-width:560px}.iot-assign-permission__badge{display:inline-flex;align-items:center;padding:4px 10px;color:var(--text-on-primary);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);white-space:nowrap}.iot-assign-permission__head-actions{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.iot-assign-permission__panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;padding:0!important}.iot-assign-permission__search{flex:0 1 280px;width:100%;max-width:280px}.iot-assign-permission__scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-assign-permission__empty{padding:28px 16px;color:var(--text-secondary);font-size:.75rem;font-weight:600;text-align:center}.iot-assign-permission__actions{flex:0 0 auto;padding:12px 16px!important;margin:0!important;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.iot-permissions-accordion{padding:0!important;margin:0!important;border:0!important;border-radius:0!important}.iot-permissions-accordion .accordion-item,.iot-permissions-accordion__item{margin:0;background:var(--bg-elevated)!important;border:0!important;border-bottom:1px solid var(--border-color)!important;border-radius:0!important}.iot-permissions-accordion .accordion-item:last-child,.iot-permissions-accordion__item:last-child{border-bottom:0!important}.iot-permissions-accordion .accordion-header{position:relative;margin:0}.iot-permissions-accordion .accordion-button{position:relative;display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 190px 12px 48px!important;color:var(--text-primary)!important;font-size:.78rem!important;font-weight:700;letter-spacing:.03em;text-transform:capitalize;background:var(--bg-elevated)!important;border:0!important;border-radius:0!important;box-shadow:none!important}.iot-permissions-accordion .accordion-button:before{content:"+";position:absolute;left:14px;top:50%;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--text-secondary);font-size:1rem;font-weight:700;line-height:1;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);transform:translateY(-50%);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.iot-permissions-accordion .accordion-button:not(.collapsed):before{content:"−";color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 35%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 12%,var(--bg-secondary))}.iot-permissions-accordion .accordion-button:not(.collapsed){color:var(--color-primary)!important;background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-elevated))!important}.iot-permissions-accordion .accordion-button:hover{color:var(--text-primary)!important;background:color-mix(in srgb,var(--color-primary) 5%,var(--bg-elevated))!important}.iot-permissions-accordion .accordion-button:hover:before{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 28%,var(--border-color))}.iot-permissions-accordion .accordion-button:focus{border-color:transparent!important;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--color-primary) 28%,transparent)!important}.iot-permissions-accordion .accordion-button:after{position:absolute;right:14px;top:50%;flex-shrink:0;width:.95rem!important;height:.95rem!important;margin:0!important;background-size:.95rem!important;transform:translateY(-50%) rotate(-90deg)!important;filter:none;opacity:.85;transition:transform var(--transition-fast),opacity var(--transition-fast)}.iot-permissions-accordion .accordion-button:not(.collapsed):after{transform:translateY(-50%) rotate(0)!important;opacity:1}.iot-permissions-accordion .accordion-body{padding:12px 16px 16px!important;color:var(--text-primary)!important;background:var(--bg-primary)!important;border-top:1px solid var(--border-color)}.iot-permissions-accordion__module-name{flex:1;min-width:0;color:inherit;font-weight:700}.iot-permissions-accordion__module-actions{position:absolute;top:50%;right:43px;z-index:4;display:inline-flex;align-items:center;gap:8px;transform:translateY(-50%)}.iot-permissions-accordion__module-count{display:inline-flex;align-items:center;justify-content:center;min-width:36px;margin:0;padding:2px 8px;color:var(--text-secondary);font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;background:var(--bg-secondary);border:1px solid var(--border-color)}.iot-permissions-accordion__module-select{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:30px;margin:0;padding:5px 9px;color:var(--text-secondary);font-family:inherit;font-size:.65rem;font-weight:700;line-height:1;white-space:nowrap;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.iot-permissions-accordion__module-select:hover{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 38%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-secondary))}.iot-permissions-accordion__module-select:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 20%,transparent)}.iot-permissions-accordion__module-select--selected{color:var(--color-primary);border-color:color-mix(in srgb,var(--color-primary) 45%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 12%,var(--bg-secondary))}.iot-permissions-accordion__module-select-box{position:relative;display:inline-flex;flex:0 0 15px;width:15px;height:15px;border:1.5px solid var(--border-color-strong);border-radius:4px;background:var(--bg-input);transition:border-color var(--transition-fast),background var(--transition-fast)}.iot-permissions-accordion__module-select--selected .iot-permissions-accordion__module-select-box,.iot-permissions-accordion__module-select--partial .iot-permissions-accordion__module-select-box{border-color:var(--color-primary);background:var(--color-primary)}.iot-permissions-accordion__module-select--selected .iot-permissions-accordion__module-select-box:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}.iot-permissions-accordion__module-select--partial .iot-permissions-accordion__module-select-box:after{content:"";position:absolute;left:3px;top:6px;width:7px;height:2px;border-radius:1px;background:#fff}.iot-permissions-accordion__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px}.iot-permissions-accordion__check{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;column-gap:10px;min-height:40px;margin:0;padding:9px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-elevated);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.iot-permissions-accordion__check:hover{border-color:color-mix(in srgb,var(--color-primary) 32%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 4%,var(--bg-elevated))}.iot-permissions-accordion__check--checked{border-color:color-mix(in srgb,var(--color-primary) 42%,var(--border-color));background:color-mix(in srgb,var(--color-primary) 10%,var(--bg-elevated));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary) 12%,transparent)}.iot-permissions-accordion__input{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:block;flex:none;width:16px;height:16px;min-width:16px;margin:0!important;padding:0;float:none!important;position:static!important;border:1.5px solid var(--border-color-strong)!important;border-radius:4px;background-color:var(--bg-input)!important;background-image:none!important;background-repeat:no-repeat;background-position:center;background-size:10px 10px;cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}.iot-permissions-accordion__input:checked{background-color:var(--color-primary)!important;border-color:var(--color-primary)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2 6l3 3 5-6'/%3E%3C/svg%3E")!important}.iot-permissions-accordion__input:focus{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent)!important}.iot-permissions-accordion__label{display:block;min-width:0;overflow:visible;color:var(--text-primary)!important;font-size:.72rem;font-weight:600;line-height:1.3;text-transform:capitalize;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:normal;word-break:break-word}@media(max-width:575.98px){.iot-assign-permission__search{flex-basis:100%;max-width:100%}.iot-permissions-accordion .accordion-button{padding-right:122px!important}.iot-permissions-accordion__module-actions{gap:5px}.iot-permissions-accordion__module-select{width:30px;padding:5px}.iot-permissions-accordion__module-select-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}}[data-theme=light] .iot-assign-permission{background:linear-gradient(180deg,var(--bg-page-gradient-start) 0%,var(--bg-page-gradient-end) 100%)}[data-theme=light] .iot-assign-permission__section-head{background:var(--brand-gradient);border-color:color-mix(in srgb,var(--color-primary) 20%,#c5d4e8)}[data-theme=light] .iot-assign-permission__panel{border-color:color-mix(in srgb,var(--color-primary) 12%,var(--border-color))}[data-theme=light] .iot-permissions-accordion .accordion-button:after{filter:brightness(.35);opacity:.9}[data-theme=dark] .iot-assign-permission{background:var(--bg-primary)}[data-theme=dark] .iot-assign-permission__section-head{background:var(--brand-gradient);border-color:color-mix(in srgb,var(--color-primary) 20%,var(--border-color))}[data-theme=dark] .iot-assign-permission__panel{box-shadow:0 8px 24px #00000038}[data-theme=dark] .iot-permissions-accordion .accordion-button:after{filter:brightness(0) invert(1);opacity:.82}[data-theme=dark] .iot-permissions-accordion .accordion-button:before{color:var(--text-secondary);background:color-mix(in srgb,var(--bg-secondary) 88%,#000)}[data-theme=dark] .iot-permissions-accordion__module-count{color:var(--text-secondary);background:color-mix(in srgb,var(--bg-secondary) 88%,#000)}.c-wrapper:has(.iot-setup-page):not(:has(.iot-setup-form-page)){height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}@media(max-width:991.98px){.c-wrapper:has(.iot-setup-page):not(:has(.iot-setup-form-page)){height:100%!important;max-height:100%!important}.c-body:has(.iot-setup-page):not(:has(.iot-setup-form-page)){min-height:0}.iot-setup-page{padding:8px 8px 10px!important;min-width:0!important}.iot-setup-list-page,.iot-setup-page:has(.iot-setup-table-card){min-width:0!important}.iot-setup-list-page .iot-table-head__track,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__track{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.iot-setup-list-page .iot-table-head__track::-webkit-scrollbar,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__track::-webkit-scrollbar{display:none}.iot-setup-list-page .iot-setup-table-pagination,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-pagination,.iot-setup-table-pagination.pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px}.iot-setup-list-page .iot-setup-table-pagination .pagination,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-pagination .pagination{flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;width:auto!important;margin:0!important}.iot-setup-list-page .iot-table-body-scroll,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll{min-height:180px!important}}.c-body:has(.iot-setup-page):not(:has(.iot-setup-form-page)){flex:1 1 auto;min-height:0;height:auto;max-height:none;overflow:hidden!important;display:flex;flex-direction:column}.app-main-content:has(.iot-setup-page):not(:has(.iot-setup-form-page)),.mainbody:has(.iot-setup-page):not(:has(.iot-setup-form-page)){display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:hidden;padding:0!important}.app-main-content:has(.iot-setup-page):not(:has(.iot-setup-form-page))>div,.mainbody:has(.iot-setup-page):not(:has(.iot-setup-form-page))>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.app-main-content:has(.iot-setup-page):not(:has(.iot-setup-form-page)) .fade,.app-main-content:has(.iot-setup-page):not(:has(.iot-setup-form-page)) .fade.show,.mainbody:has(.iot-setup-page):not(:has(.iot-setup-form-page)) .fade,.mainbody:has(.iot-setup-page):not(:has(.iot-setup-form-page)) .fade.show{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden;opacity:1!important}.c-body:has(.iot-setup-page):not(:has(.iot-setup-form-page)) .container-fluid{padding:0!important;height:100%;overflow:hidden}.c-wrapper:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)){overflow:hidden}.c-body:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)){overflow:hidden!important}.app-main-content:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)),.mainbody:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)){display:block!important;height:100%!important;max-height:100%!important;min-width:0;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin}.app-main-content:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page))>div,.mainbody:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page))>div{display:block!important;height:auto!important;max-height:none!important;min-height:0!important;min-width:0;overflow:visible!important}.app-main-content:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)) .fade,.app-main-content:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)) .fade.show,.mainbody:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)) .fade,.mainbody:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)) .fade.show{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-setup-page.iot-report-page):not(:has(.iot-setup-form-page)) .container-fluid{height:auto!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-daily-energy){overflow:hidden!important}.app-main-content:has(.iot-daily-energy),.mainbody:has(.iot-daily-energy){display:block!important;height:100%!important;max-height:100%!important;min-width:0;overflow-x:hidden!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-daily-energy)>div,.mainbody:has(.iot-daily-energy)>div{display:block!important;height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.c-body:has(.iot-daily-energy) .container-fluid{height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.c-body:has(.iot-daily-energy) .fade,.c-body:has(.iot-daily-energy) .fade.show{height:auto!important;max-height:none!important;overflow:visible!important}.app-main-content:has(.iot-daily-energy)>.iot-daily-energy,.mainbody:has(.iot-daily-energy)>.iot-daily-energy,.app-main-content:has(.iot-daily-energy)>div>.iot-daily-energy,.mainbody:has(.iot-daily-energy)>div>.iot-daily-energy,.c-body:has(.iot-daily-energy) .iot-daily-energy{flex:1 1 auto!important;min-height:100%!important;height:auto!important;max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important}.c-body:has(.iot-sensor-health){overflow:hidden!important}.app-main-content:has(.iot-sensor-health),.mainbody:has(.iot-sensor-health){display:block!important;height:100%!important;max-height:100%!important;min-width:0;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-sensor-health)>div,.mainbody:has(.iot-sensor-health)>div{display:block!important;height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.c-body:has(.iot-sensor-health) .container-fluid{height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.c-body:has(.iot-sensor-health) .fade,.c-body:has(.iot-sensor-health) .fade.show{height:auto!important;max-height:none!important;overflow:visible!important}.app-main-content:has(.iot-sensor-health)>.iot-sensor-health,.mainbody:has(.iot-sensor-health)>.iot-sensor-health,.app-main-content:has(.iot-sensor-health)>div>.iot-sensor-health,.mainbody:has(.iot-sensor-health)>div>.iot-sensor-health,.c-body:has(.iot-sensor-health) .iot-sensor-health{flex:1 1 auto!important;min-height:100%!important;height:auto!important;max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important}.c-body:has(.iot-manual-entry){overflow:hidden!important}.app-main-content:has(.iot-manual-entry),.mainbody:has(.iot-manual-entry){display:block!important;height:100%!important;max-height:100%!important;min-width:0;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.app-main-content:has(.iot-manual-entry)>div,.mainbody:has(.iot-manual-entry)>div{display:block!important;height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.app-main-content:has(.iot-manual-entry) .fade,.app-main-content:has(.iot-manual-entry) .fade.show,.mainbody:has(.iot-manual-entry) .fade,.mainbody:has(.iot-manual-entry) .fade.show{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-manual-entry) .container-fluid{height:auto!important;max-height:none!important;min-width:0;overflow:visible!important}.c-body:has(.iot-manual-entry) .fade,.c-body:has(.iot-manual-entry) .fade.show{height:auto!important;max-height:none!important;overflow:visible!important}.app-main-content:has(.iot-manual-entry)>.iot-manual-entry,.mainbody:has(.iot-manual-entry)>.iot-manual-entry,.app-main-content:has(.iot-manual-entry)>div>.iot-manual-entry,.mainbody:has(.iot-manual-entry)>div>.iot-manual-entry,.c-body:has(.iot-manual-entry) .iot-manual-entry{flex:1 1 auto!important;min-height:100%!important;height:auto!important;max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important}.iot-setup-page .iot-setup-table-section{flex:1 1 auto;min-height:0;overflow:hidden}.iot-setup-page .iot-setup-table-section>.iot-setup-table-panel{flex:1 1 auto;min-height:0;overflow:hidden}.iot-setup-page .pagination,.iot-setup-page .iot-setup-table-pagination{position:relative!important;top:0!important;display:flex!important;align-items:center;justify-content:space-between;flex:0 0 auto;flex-shrink:0;width:100%;visibility:visible;opacity:1}[data-theme=dark] .iot-setup-page,[data-theme=dark] .iot-setup-page .modal-body,[data-theme=dark] .iot-setup-page .modal-body-padding,[data-theme=dark] .iot-setup-page h3,[data-theme=dark] .iot-setup-page h4,[data-theme=dark] .iot-setup-page h5,[data-theme=dark] .iot-setup-page p,[data-theme=dark] .iot-setup-page td,[data-theme=dark] .iot-setup-page th,[data-theme=dark] .iot-setup-page label,[data-theme=dark] .iot-setup-page .form-label,[data-theme=dark] .iot-setup-page .text-dark,[data-theme=dark] .iot-setup-page .iot-setup-table-toolbar__heading,[data-theme=dark] .iot-setup-page .modal-body h3,[data-theme=dark] .iot-setup-page .modal-body h4,[data-theme=dark] .iot-setup-page .modal-body h5,[data-theme=dark] .iot-setup-page .modal-body p,[data-theme=dark] .iot-setup-page .modal-body td,[data-theme=dark] .iot-setup-page .modal-body th,[data-theme=dark] .iot-setup-page .modal-body label,[data-theme=dark] .iot-setup-page .modal-body .form-label,[data-theme=dark] .iot-setup-page .modal-body .text-dark,[data-theme=dark] .iot-setup-page .modal-body .iot-setup-table-toolbar__heading,[data-theme=dark] .iot-setup-page .modal-body-padding h3,[data-theme=dark] .iot-setup-page .modal-body-padding h4,[data-theme=dark] .iot-setup-page .modal-body-padding h5,[data-theme=dark] .iot-setup-page .modal-body-padding p,[data-theme=dark] .iot-setup-page .modal-body-padding td,[data-theme=dark] .iot-setup-page .modal-body-padding th,[data-theme=dark] .iot-setup-page .modal-body-padding label,[data-theme=dark] .iot-setup-page .modal-body-padding .form-label,[data-theme=dark] .iot-setup-page .modal-body-padding .text-dark,[data-theme=dark] .iot-setup-page .modal-body-padding .iot-setup-table-toolbar__heading{color:var(--text-primary)}[data-theme=dark] .iot-setup-page .text-muted,[data-theme=dark] .iot-setup-page label.text-muted,[data-theme=dark] .iot-setup-page .form-label.text-muted,[data-theme=dark] .iot-setup-page h3.text-muted,[data-theme=dark] .iot-setup-page h4.text-muted,[data-theme=dark] .iot-setup-page .modal-body .text-muted,[data-theme=dark] .iot-setup-page .modal-body label.text-muted,[data-theme=dark] .iot-setup-page .modal-body .form-label.text-muted,[data-theme=dark] .iot-setup-page .modal-body h3.text-muted,[data-theme=dark] .iot-setup-page .modal-body h4.text-muted,[data-theme=dark] .iot-setup-page .modal-body-padding .text-muted,[data-theme=dark] .iot-setup-page .modal-body-padding label.text-muted,[data-theme=dark] .iot-setup-page .modal-body-padding .form-label.text-muted,[data-theme=dark] .iot-setup-page .modal-body-padding h3.text-muted,[data-theme=dark] .iot-setup-page .modal-body-padding h4.text-muted{color:var(--text-secondary)!important}[data-theme=dark] .iot-setup-page .table tbody td,[data-theme=dark] .iot-setup-page .table tbody td span,[data-theme=dark] .iot-setup-page .table tbody td div:not(.item-option-edit):not(.iot-status-badge),[data-theme=dark] .iot-setup-page .modal-body .table tbody td,[data-theme=dark] .iot-setup-page .modal-body .table tbody td span,[data-theme=dark] .iot-setup-page .modal-body .table tbody td div:not(.item-option-edit):not(.iot-status-badge),[data-theme=dark] .iot-setup-page .modal-body-padding .table tbody td,[data-theme=dark] .iot-setup-page .modal-body-padding .table tbody td span,[data-theme=dark] .iot-setup-page .modal-body-padding .table tbody td div:not(.item-option-edit):not(.iot-status-badge){color:var(--text-primary)!important}[data-theme=dark] .iot-setup-page .btn.text-white,[data-theme=dark] .iot-setup-page span.btn.text-white,[data-theme=dark] .iot-setup-page .bg-success.btn,[data-theme=dark] .iot-setup-page .modal-body .btn.text-white,[data-theme=dark] .iot-setup-page .modal-body span.btn.text-white,[data-theme=dark] .iot-setup-page .modal-body .bg-success.btn,[data-theme=dark] .iot-setup-page .modal-body-padding .btn.text-white,[data-theme=dark] .iot-setup-page .modal-body-padding span.btn.text-white,[data-theme=dark] .iot-setup-page .modal-body-padding .bg-success.btn{color:#fff!important}[data-theme=dark] .iot-setup-page input,[data-theme=dark] .iot-setup-page select,[data-theme=dark] .iot-setup-page textarea,[data-theme=dark] .iot-setup-page .form-control,[data-theme=dark] .iot-setup-page .custom-select,[data-theme=dark] .iot-setup-page .modal-body input,[data-theme=dark] .iot-setup-page .modal-body select,[data-theme=dark] .iot-setup-page .modal-body textarea,[data-theme=dark] .iot-setup-page .modal-body .form-control,[data-theme=dark] .iot-setup-page .modal-body .custom-select,[data-theme=dark] .iot-setup-page .modal-body-padding input,[data-theme=dark] .iot-setup-page .modal-body-padding select,[data-theme=dark] .iot-setup-page .modal-body-padding textarea,[data-theme=dark] .iot-setup-page .modal-body-padding .form-control,[data-theme=dark] .iot-setup-page .modal-body-padding .custom-select{color:var(--text-primary)!important;-webkit-text-fill-color:var(--text-primary)}[data-theme=dark] .iot-setup-page .bg-white,[data-theme=dark] .iot-setup-page .modal-body .bg-white,[data-theme=dark] .iot-setup-page .modal-body-padding .bg-white{background-color:var(--bg-elevated)!important;color:var(--text-primary)!important}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar){flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card){display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row{flex:1 1 auto;min-height:0;margin:0;overflow:hidden;display:flex;flex-direction:column}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-]{flex:1 1 auto;min-height:0;padding:0;overflow:auto;-webkit-overflow-scrolling:touch;position:relative;isolation:isolate}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] .table,.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] table.table{display:table!important;overflow:visible!important;border-collapse:separate!important}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] thead{position:sticky;top:0;z-index:6}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] .table thead th,.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] .table-light th,.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] .thead-light th,.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] thead.table-light th,.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] thead.thead-light th,.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-] thead th{position:sticky!important;top:0!important;z-index:7!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-setup-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.pagination{flex-shrink:0}.iot-setup-page .iot-setup-table-scroll .iot-fixed-table{flex:1 1 auto;min-height:0;height:100%;max-height:100%}.iot-setup-page .iot-fixed-table__body .table-responsive{overflow:visible!important}.iot-setup-page .iot-setup-sticky-table .table,.iot-setup-page .iot-setup-sticky-table table.table,.iot-setup-page .iot-setup-sticky-table table.table-striped,.iot-setup-page .iot-setup-table-inner-scroll .table,.iot-setup-page .iot-setup-table-inner-scroll table.table,.iot-setup-page .iot-setup-table-inner-scroll table.table-striped,.iot-setup-page .iot-setup-table-scroll .table,.iot-setup-page .iot-setup-table-scroll table.table,.iot-setup-page .iot-setup-table-scroll table.table-striped,.iot-setup-page .iot-setup-table-section [class*=col-] .table,.iot-setup-page .iot-setup-table-section [class*=col-] table.table,.iot-setup-page .iot-setup-table-section [class*=col-] table.table-striped{display:table!important;overflow:visible!important;border-collapse:separate!important}.iot-setup-page .iot-setup-sticky-table thead,.iot-setup-page .iot-setup-table-inner-scroll thead,.iot-setup-page .iot-setup-table-scroll thead,.iot-setup-page .iot-setup-table-section [class*=col-] thead{position:sticky;top:0;z-index:10}.iot-setup-page .iot-setup-sticky-table .table thead th,.iot-setup-page .iot-setup-sticky-table .table-light th,.iot-setup-page .iot-setup-sticky-table .thead-light th,.iot-setup-page .iot-setup-sticky-table thead.table-light th,.iot-setup-page .iot-setup-sticky-table thead.thead-light th,.iot-setup-page .iot-setup-sticky-table thead th,.iot-setup-page .iot-setup-table-inner-scroll .table thead th,.iot-setup-page .iot-setup-table-inner-scroll .table-light th,.iot-setup-page .iot-setup-table-inner-scroll .thead-light th,.iot-setup-page .iot-setup-table-inner-scroll thead.table-light th,.iot-setup-page .iot-setup-table-inner-scroll thead.thead-light th,.iot-setup-page .iot-setup-table-inner-scroll thead th,.iot-setup-page .iot-setup-table-scroll .table thead th,.iot-setup-page .iot-setup-table-scroll .table-light th,.iot-setup-page .iot-setup-table-scroll .thead-light th,.iot-setup-page .iot-setup-table-scroll thead.table-light th,.iot-setup-page .iot-setup-table-scroll thead.thead-light th,.iot-setup-page .iot-setup-table-scroll thead th,.iot-setup-page .iot-setup-table-section [class*=col-] .table thead th,.iot-setup-page .iot-setup-table-section [class*=col-] .table-light th,.iot-setup-page .iot-setup-table-section [class*=col-] .thead-light th,.iot-setup-page .iot-setup-table-section [class*=col-] thead.table-light th,.iot-setup-page .iot-setup-table-section [class*=col-] thead.thead-light th,.iot-setup-page .iot-setup-table-section [class*=col-] thead th{position:sticky!important;top:0!important;z-index:11!important;overflow:visible!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.mainbody:has(.iot-setup-page) .iot-setup-sticky-table .table,.mainbody:has(.iot-setup-page) .iot-setup-sticky-table table.table,.mainbody:has(.iot-setup-page) .iot-setup-sticky-table table.table-striped,.mainbody:has(.iot-setup-page) .iot-setup-table-inner-scroll .table,.mainbody:has(.iot-setup-page) .iot-setup-table-inner-scroll table.table,.mainbody:has(.iot-setup-page) .iot-setup-table-inner-scroll table.table-striped,.mainbody:has(.iot-setup-page) .iot-setup-table-scroll .table,.mainbody:has(.iot-setup-page) .iot-setup-table-scroll table.table,.mainbody:has(.iot-setup-page) .iot-setup-table-scroll table.table-striped,.mainbody:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table,.mainbody:has(.iot-setup-page) .iot-setup-table-section [class*=col-] table.table,.mainbody:has(.iot-setup-page) .iot-setup-table-section [class*=col-] table.table-striped,.app-main-content:has(.iot-setup-page) .iot-setup-sticky-table .table,.app-main-content:has(.iot-setup-page) .iot-setup-sticky-table table.table,.app-main-content:has(.iot-setup-page) .iot-setup-sticky-table table.table-striped,.app-main-content:has(.iot-setup-page) .iot-setup-table-inner-scroll .table,.app-main-content:has(.iot-setup-page) .iot-setup-table-inner-scroll table.table,.app-main-content:has(.iot-setup-page) .iot-setup-table-inner-scroll table.table-striped,.app-main-content:has(.iot-setup-page) .iot-setup-table-scroll .table,.app-main-content:has(.iot-setup-page) .iot-setup-table-scroll table.table,.app-main-content:has(.iot-setup-page) .iot-setup-table-scroll table.table-striped,.app-main-content:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table,.app-main-content:has(.iot-setup-page) .iot-setup-table-section [class*=col-] table.table,.app-main-content:has(.iot-setup-page) .iot-setup-table-section [class*=col-] table.table-striped{display:table!important;overflow:visible!important;white-space:normal;max-width:none}.mainbody:has(.iot-setup-page) .iot-setup-sticky-table .table thead,.mainbody:has(.iot-setup-page) .iot-setup-table-inner-scroll .table thead,.mainbody:has(.iot-setup-page) .iot-setup-table-scroll .table thead,.mainbody:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table thead,.app-main-content:has(.iot-setup-page) .iot-setup-sticky-table .table thead,.app-main-content:has(.iot-setup-page) .iot-setup-table-inner-scroll .table thead,.app-main-content:has(.iot-setup-page) .iot-setup-table-scroll .table thead,.app-main-content:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table thead{display:table-header-group!important;width:auto}.mainbody:has(.iot-setup-page) .iot-setup-sticky-table .table tbody,.mainbody:has(.iot-setup-page) .iot-setup-table-inner-scroll .table tbody,.mainbody:has(.iot-setup-page) .iot-setup-table-scroll .table tbody,.mainbody:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table tbody,.app-main-content:has(.iot-setup-page) .iot-setup-sticky-table .table tbody,.app-main-content:has(.iot-setup-page) .iot-setup-table-inner-scroll .table tbody,.app-main-content:has(.iot-setup-page) .iot-setup-table-scroll .table tbody,.app-main-content:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table tbody{display:table-row-group!important;width:auto}.mainbody:has(.iot-setup-page) .iot-setup-sticky-table .table tr,.mainbody:has(.iot-setup-page) .iot-setup-table-inner-scroll .table tr,.mainbody:has(.iot-setup-page) .iot-setup-table-scroll .table tr,.mainbody:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table tr,.app-main-content:has(.iot-setup-page) .iot-setup-sticky-table .table tr,.app-main-content:has(.iot-setup-page) .iot-setup-table-inner-scroll .table tr,.app-main-content:has(.iot-setup-page) .iot-setup-table-scroll .table tr,.app-main-content:has(.iot-setup-page) .iot-setup-table-section [class*=col-] .table tr{display:table-row!important;width:auto}.iot-setup-list-page,.iot-setup-page:has(.iot-setup-table-card){display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;max-height:100%!important;overflow:hidden!important}.iot-setup-list-page .iot-setup-table-section,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-section{display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-height:0!important;overflow:hidden!important}.iot-setup-list-page .iot-setup-table-panel,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-panel{display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-height:0!important;overflow:hidden!important}.iot-setup-list-page .iot-setup-table-card,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-card{display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-height:0!important;overflow:hidden!important}.iot-setup-list-page .iot-table-head,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head{flex:0 0 auto!important;flex-shrink:0!important;width:100%;overflow:hidden;background:var(--iot-table-header-bg, var(--bg-table-header));border-bottom:1px solid var(--iot-table-border, var(--border-color));z-index:12}.iot-setup-list-page .iot-table-head__track,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__track{width:100%;overflow:hidden}.iot-setup-list-page .iot-table-head__table,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table{width:100%;min-width:100%;margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-setup-list-page .iot-table-head__table thead th,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg, var(--bg-table-header))!important;border-color:var(--iot-table-border, var(--border-color))!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle}.iot-setup-list-page .iot-table-body-scroll,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll{flex:1 1 0!important;min-height:0!important;width:100%;overflow:auto!important;overflow-x:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.iot-setup-list-page .iot-table-body-scroll .table-responsive,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-setup-list-page .iot-table-body-scroll .position-relative,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .position-relative{overflow:visible!important}.iot-setup-list-page .iot-table-body-scroll table,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll table{margin-bottom:0!important;width:100%;min-width:100%;table-layout:fixed;border-collapse:separate!important;border-spacing:0;border-top:0!important}.iot-setup-list-page .iot-table-body-scroll thead,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll thead{display:none!important}.iot-setup-list-page .iot-setup-table-pagination,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-pagination{flex:0 0 auto!important;flex-shrink:0!important;padding:4px 8px!important;margin:0!important}.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-truncate,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-truncate,.iot-setup-list-page .iot-table-head__table .iot-setup-cell-truncate,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-truncate>div:not(.item-option-edit),.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-truncate>span:not(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-truncate>div:not(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-truncate>span:not(.item-option-edit),.iot-setup-list-page .iot-table-head__table .iot-setup-cell-truncate>div:not(.item-option-edit),.iot-setup-list-page .iot-table-head__table .iot-setup-cell-truncate>span:not(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-truncate>div:not(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-truncate>span:not(.item-option-edit){display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal;max-width:100%}.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;text-align:center!important}.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action .item-option-edit,.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>span,.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>button,.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>a,.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>a>span,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action .item-option-edit,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>span,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>button,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>a,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action .item-option-edit>a>span,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>span,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>button,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>a,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>a>span,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>span,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>button,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>a,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit) .item-option-edit>a>span,.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action .item-option-edit,.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action .item-option-edit>span,.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action .item-option-edit>button,.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action .item-option-edit>a,.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action .item-option-edit>a>span,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action .item-option-edit,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action .item-option-edit>span,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action .item-option-edit>button,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action .item-option-edit>a,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action .item-option-edit>a>span{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}@media(min-width:992px){.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action{position:sticky;right:0;z-index:3;background-clip:padding-box;border-left:1px solid var(--iot-table-border)!important;box-shadow:none}.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action{z-index:13;background-color:var(--iot-table-header-bg, var(--bg-table-header))!important;border-left-color:color-mix(in srgb,var(--text-on-primary) 22%,transparent)!important}.iot-setup-list-page .iot-setup-table-card.is-scrolled-x .iot-table-head__table .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-card.is-scrolled-x .iot-table-head__table .iot-setup-cell-action,.iot-setup-list-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-list-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll td:has(.item-option-edit){box-shadow:-8px 0 14px -10px #0f172a73}.iot-setup-list-page .iot-table-body-scroll tbody tr:nth-child(odd)>.iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll tbody tr:nth-child(odd)>.iot-setup-cell-action,.iot-setup-list-page .iot-table-body-scroll tbody tr:nth-child(odd)>td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll tbody tr:nth-child(odd)>td:has(.item-option-edit),.iot-setup-list-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>.iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>.iot-setup-cell-action{background-color:var(--iot-table-row-odd)!important}.iot-setup-list-page .iot-table-body-scroll tbody tr:nth-child(2n)>.iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll tbody tr:nth-child(2n)>.iot-setup-cell-action,.iot-setup-list-page .iot-table-body-scroll tbody tr:nth-child(2n)>td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll tbody tr:nth-child(2n)>td:has(.item-option-edit),.iot-setup-list-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>.iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>.iot-setup-cell-action{background-color:var(--iot-table-row-even)!important}.iot-setup-list-page .iot-table-body-scroll tbody tr:hover>.iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll tbody tr:hover>.iot-setup-cell-action,.iot-setup-list-page .iot-table-body-scroll tbody tr:hover>td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll tbody tr:hover>td:has(.item-option-edit){background-color:var(--iot-table-row-hover)!important}}@media(max-width:991.98px){.iot-setup-list-page .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll .iot-setup-cell-action,.iot-setup-list-page .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-page:has(.iot-setup-table-card) .iot-table-body-scroll td:has(.item-option-edit),.iot-setup-list-page .iot-table-head__table .iot-setup-cell-action,.iot-setup-page:has(.iot-setup-table-card) .iot-table-head__table .iot-setup-cell-action{position:static!important;right:auto!important;z-index:auto!important;box-shadow:none!important;background-color:transparent!important}}.mainbody .iot-setup-list-page,.app-main-content .iot-setup-list-page,.mainbody .iot-setup-page:has(.iot-setup-table-card),.app-main-content .iot-setup-page:has(.iot-setup-table-card){height:100%;max-height:100%;overflow:hidden}.mainbody .iot-setup-list-page>.iot-setup-table-section,.app-main-content .iot-setup-list-page>.iot-setup-table-section,.mainbody .iot-setup-page:has(.iot-setup-table-card)>.iot-setup-table-section,.app-main-content .iot-setup-page:has(.iot-setup-table-card)>.iot-setup-table-section,.mainbody .iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-section,.app-main-content .iot-setup-page:has(.iot-setup-table-card) .iot-setup-table-section{flex:1 1 0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.c-body .mainbody .fade,.c-body .mainbody .fade.show{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.c-body .mainbody>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.iot-setup-page.iot-setup-form-page{height:auto!important;max-height:none!important;overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section,.iot-setup-page.iot-setup-form-page .iot-setup-table-section>.iot-setup-form-panel,.iot-setup-page.iot-setup-form-page .iot-setup-table-section>.iot-setup-form-panel>.box-shadow,.iot-setup-page.iot-setup-form-page .iot-setup-table-section>.iot-setup-form-panel>.iot-settings-card{overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>.iot-setup-form-panel{margin-left:10px!important;margin-right:10px!important;margin-bottom:10px!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar){overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card){overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row{overflow:visible!important}.iot-setup-page.iot-setup-form-page .iot-setup-table-section>div:not(.iot-setup-table-toolbar)>.box-shadow:not(.iot-setup-table-card)>.row>[class*=col-]{overflow:visible!important}html:has(.iot-settings-page),body:has(.iot-settings-page),#root:has(.iot-settings-page),.c-default-layout:has(.iot-settings-page){height:100vh!important;max-height:100vh!important;min-height:0!important;overflow:hidden!important}.c-default-layout:has(.iot-settings-page)>.c-wrapper{height:100vh!important;max-height:100vh!important;overflow:hidden!important}.c-body:has(.iot-settings-page){flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important}.c-body:has(.iot-settings-page) .mainbody,.c-body:has(.iot-settings-page) .app-main-content{align-self:stretch;height:100%!important;min-height:100%!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-settings-page) .mainbody>div,.c-body:has(.iot-settings-page) .app-main-content>div,.c-body:has(.iot-settings-page) .mainbody>div>.fade,.c-body:has(.iot-settings-page) .app-main-content>div>.fade{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-settings-page) .iot-settings-page{height:100%!important;min-height:100%!important;max-height:none!important;overflow:auto!important}.c-body:has(.iot-system-settings-page){overflow-y:auto!important}.c-body:has(.iot-system-settings-page) .iot-system-settings-page{height:auto!important;min-height:100%!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important}@media(max-width:900px){.c-body:has(.iot-system-settings-page){overflow-y:auto!important}.c-body:has(.iot-system-settings-page) .iot-system-settings-page{min-height:100%!important;overflow-y:auto!important}}.iot-backup-restore-page,.iot-backup-restore-page h3,.iot-backup-restore-page h4,.iot-backup-restore-page h5{color:var(--text-primary)}.iot-backup-restore-page .total-records{color:var(--text-secondary);font-size:var(--font-size-md)}.iot-backup-restore-page .iot-setup-filters{margin-top:0;margin-bottom:0}.iot-backup-restore-page .iot-filter-host{margin-bottom:2px}.iot-backup-restore-page .iot-setup-table-section{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0;overflow:hidden}.iot-backup-restore-page .iot-setup-table-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;margin-right:10px;margin-left:10px}.iot-backup-restore-page .iot-setup-table-panel__loader{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:0;padding:20px}.iot-backup-restore-page .iot-setup-table-card{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-backup-restore-page .iot-table-head{flex:0 0 auto;flex-shrink:0;width:100%;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:12}.iot-backup-restore-page .iot-table-head__track{width:100%;overflow:hidden}.iot-backup-restore-page .iot-table-head__table{width:100%;margin-bottom:0!important;table-layout:auto;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-backup-restore-page .iot-table-head__table thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle;text-align:left}.iot-backup-restore-page .iot-table-head__table thead th.iot-th--center,.iot-backup-restore-page .iot-table-head__table thead th.iot-setup-cell-action{text-align:center}@media(min-width:992px){.iot-backup-restore-page .iot-table-head__table thead th.iot-setup-cell-action{position:sticky;right:0;z-index:13;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;border-left:1px solid color-mix(in srgb,var(--text-on-primary) 22%,transparent)!important;box-shadow:none}}.iot-backup-restore-page .iot-table-body-scroll{flex:1 1 auto;min-height:0;width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.iot-backup-restore-page .iot-table-body-scroll .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-backup-restore-page .iot-table-body-scroll .position-relative{overflow:visible!important}.iot-backup-restore-page .iot-table-body-scroll table{margin-bottom:0!important;width:100%;min-width:100%;table-layout:fixed;border-collapse:separate!important;border-spacing:0;border-top:0!important}.iot-backup-restore-page .iot-table-body-scroll thead{display:none!important}.iot-backup-restore-page .iot-table-body-scroll .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem;text-align:left}.iot-backup-restore-page .iot-table-body-scroll .table tbody td:has(.iot-status-badge){text-align:center!important}.iot-backup-restore-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-backup-restore-page .iot-table-body-scroll .table tbody td:has(.item-option-edit){text-align:center!important}@media(min-width:992px){.iot-backup-restore-page .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-backup-restore-page .iot-table-body-scroll .table tbody td:has(.item-option-edit){position:sticky;right:0;z-index:3;background-clip:padding-box;border-left:1px solid var(--iot-table-border)!important;box-shadow:none}}@media(min-width:992px){.iot-backup-restore-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td.iot-setup-cell-action,.iot-backup-restore-page .iot-table-body-scroll .table tbody tr:nth-child(odd)>td:has(.item-option-edit),.iot-backup-restore-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(odd)>td.iot-setup-cell-action{background-color:var(--iot-table-row-odd)!important}.iot-backup-restore-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td.iot-setup-cell-action,.iot-backup-restore-page .iot-table-body-scroll .table tbody tr:nth-child(2n)>td:has(.item-option-edit),.iot-backup-restore-page .iot-table-body-scroll .table-striped tbody tr:nth-of-type(2n)>td.iot-setup-cell-action{background-color:var(--iot-table-row-even)!important}.iot-backup-restore-page .iot-table-body-scroll .table tbody tr:hover>td.iot-setup-cell-action,.iot-backup-restore-page .iot-table-body-scroll .table tbody tr:hover>td:has(.item-option-edit){background-color:var(--iot-table-row-hover)!important}}@media(min-width:992px){.iot-backup-restore-page .iot-setup-table-card.is-scrolled-x .iot-table-head__table thead th.iot-setup-cell-action,.iot-backup-restore-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td.iot-setup-cell-action,.iot-backup-restore-page .iot-setup-table-card.is-scrolled-x .iot-table-body-scroll .table tbody td:has(.item-option-edit){box-shadow:-8px 0 14px -10px #0f172a73}}.iot-backup-restore-page .iot-setup-table-scroll{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.iot-backup-restore-page .iot-fixed-table{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:hidden}.iot-backup-restore-page .iot-fixed-table__header{flex:0 0 auto;flex-shrink:0;overflow:hidden;background:var(--iot-table-header-bg);border-bottom:1px solid var(--iot-table-border);z-index:5}.iot-backup-restore-page .iot-fixed-table__header-track{overflow:hidden;width:100%}.iot-backup-restore-page .iot-fixed-table__header table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-bottom:0!important}.iot-backup-restore-page .iot-fixed-table__header thead th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;vertical-align:middle}.iot-backup-restore-page .iot-fixed-table__body{flex:1 1 auto;min-height:0;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-backup-restore-page .iot-fixed-table__body thead{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}.iot-backup-restore-page .iot-fixed-table__body .table-responsive{overflow:visible!important;margin-bottom:0!important}.iot-backup-restore-page .iot-fixed-table__body .position-relative{overflow:visible!important}.iot-backup-restore-page .iot-fixed-table__body table{margin-bottom:0!important;table-layout:fixed;border-collapse:separate;border-spacing:0;border-top:0!important}.iot-backup-restore-page .iot-fixed-table__body .table tbody td{padding:5px 8px!important;vertical-align:middle;font-size:.8125rem}.iot-backup-restore-page .iot-setup-sticky-table{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow-x:auto;overflow-y:hidden;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.iot-backup-restore-page .iot-setup-sticky-table>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}.iot-backup-restore-page .iot-setup-sticky-table .position-relative{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden!important}.iot-backup-restore-page .iot-setup-sticky-table table.iot-sticky-data-table,.iot-backup-restore-page .iot-setup-sticky-table .table.iot-sticky-data-table{display:block!important;height:100%;width:max-content;min-width:100%;margin-bottom:0!important;border-collapse:separate!important;border-spacing:0;overflow:visible!important}.iot-backup-restore-page .iot-setup-sticky-table thead{display:table;width:100%;table-layout:fixed}.iot-backup-restore-page .iot-setup-sticky-table thead tr{display:table-row}.iot-backup-restore-page .iot-setup-sticky-table thead th{background-color:var(--iot-table-header-bg)!important;color:var(--text-on-primary)!important;border-color:var(--iot-table-border)!important;overflow:visible!important}.iot-backup-restore-page .iot-setup-sticky-table tbody{display:block!important;width:100%;height:calc(100% - var(--iot-sticky-thead-h, 34px));max-height:calc(100% - var(--iot-sticky-thead-h, 34px));overflow:auto!important;-webkit-overflow-scrolling:touch}.iot-backup-restore-page .iot-setup-sticky-table tbody tr{display:table!important;width:100%;table-layout:fixed}.iot-backup-restore-page .iot-setup-table-inner-scroll{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.iot-backup-restore-page .iot-setup-table-inner-scroll>.position-relative,.iot-backup-restore-page .iot-setup-table-inner-scroll>div{overflow:visible!important;max-height:none!important}.iot-backup-restore-page .iot-setup-table-inner-scroll .table,.iot-backup-restore-page .iot-setup-table-inner-scroll table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.iot-backup-restore-page .iot-setup-table-inner-scroll thead,.iot-backup-restore-page .iot-setup-table-inner-scroll thead tr{position:sticky;top:0;z-index:10}.iot-backup-restore-page .iot-setup-table-inner-scroll .table thead th,.iot-backup-restore-page .iot-setup-table-inner-scroll .table-light th,.iot-backup-restore-page .iot-setup-table-inner-scroll .thead-light th,.iot-backup-restore-page .iot-setup-table-inner-scroll thead.table-light th,.iot-backup-restore-page .iot-setup-table-inner-scroll thead.thead-light th,.iot-backup-restore-page .iot-setup-table-inner-scroll thead th{position:sticky!important;top:0!important;z-index:11!important;overflow:visible!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)){overflow:auto;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;isolation:isolate}.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll))>div,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-responsive{overflow:visible!important;max-height:none!important}.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) table.table{display:table!important;width:max-content;min-width:100%;overflow:visible!important;border-collapse:separate!important;border-spacing:0}.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead{position:sticky;top:0;z-index:10}.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead tr{position:sticky;top:0;z-index:10}.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table thead th,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .table-light th,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) .thead-light th,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.table-light th,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead.thead-light th,.iot-backup-restore-page .iot-setup-table-scroll:not(:has(.iot-setup-table-inner-scroll)) thead th{position:sticky!important;top:0!important;z-index:11!important;background-color:var(--iot-table-header-bg)!important;background-clip:padding-box;box-shadow:0 1px 0 var(--iot-table-border)}.iot-backup-restore-page .iot-setup-table-pagination{flex:0 0 auto;flex-shrink:0;position:relative!important;top:0!important;z-index:2;background:var(--bg-elevated)}.iot-backup-restore-page .iot-setup-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:0 20px 0 16px;border-radius:var(--border-radius-lg);flex:0 0 auto;flex-shrink:0;z-index:3;background:var(--bg-sidebar);margin:10px}.iot-backup-restore-page .iot-setup-table-toolbar__meta{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.iot-backup-restore-page .iot-setup-table-toolbar__page{display:block;margin:0;padding:0;color:var(--text-on-primary);font-size:1.05rem;font-weight:700;line-height:1.2;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iot-backup-restore-page .iot-setup-table-toolbar__heading,.iot-backup-restore-page .iot-setup-table-toolbar__count{display:inline;margin:0;padding:0;border:0;border-radius:0;background:none;color:color-mix(in srgb,var(--text-on-primary) 78%,transparent);font-size:.875rem;font-weight:500;line-height:1.3;letter-spacing:.01em;white-space:nowrap}.iot-backup-restore-page .iot-setup-table-toolbar__heading strong,.iot-backup-restore-page .iot-setup-table-toolbar__count strong{color:var(--text-on-primary);font-size:.9375rem;font-weight:700}.iot-backup-restore-page .iot-setup-table-toolbar__actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;min-width:0;overflow:visible;-webkit-overflow-scrolling:touch}.iot-backup-restore-page .iot-setup-table-toolbar__actions .btn,.iot-backup-restore-page .iot-setup-table-toolbar__actions span.btn,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn,.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px;height:40px!important;min-height:40px!important;margin:0!important;padding:0 16px!important;line-height:1!important;vertical-align:middle;flex-shrink:0;white-space:nowrap;font-size:.8125rem;font-weight:600;border-radius:10px!important;box-shadow:none!important;transition:background-color var(--transition-fast, .15s ease),transform var(--transition-fast, .15s ease),box-shadow var(--transition-fast, .15s ease)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .btn svg,.iot-backup-restore-page .iot-setup-table-toolbar__actions .btn .svg-inline--fa,.iot-backup-restore-page .iot-setup-table-toolbar__actions span.btn svg,.iot-backup-restore-page .iot-setup-table-toolbar__actions span.btn .svg-inline--fa,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn svg,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn .svg-inline--fa,.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger svg,.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger .svg-inline--fa{width:15px!important;height:15px!important;font-size:15px!important;margin:0;flex-shrink:0}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important;padding:0!important}.iot-backup-restore-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-backup-restore-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger),.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button){width:auto!important;min-width:0!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.iot-backup-restore-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-backup-restore-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):hover,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):hover{background:#fff3!important;transform:translateY(-1px)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-backup-restore-page .iot-setup-table-toolbar__actions span.btn:not(.iot-setup-add-button):not(.iot-filter-trigger):active,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn:not(.iot-setup-add-button):active{transform:translateY(0)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger{float:none!important;position:relative;align-self:center;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger:hover{background:#fff3!important;transform:translateY(-1px)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger:active{transform:translateY(0)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffff40!important}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon{display:inline-flex!important;align-items:center;justify-content:center;width:15px!important;height:15px!important;margin:0!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:15px!important;line-height:1}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__icon svg{display:block;width:15px!important;height:15px!important;margin:0}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger .iot-filter-trigger__badge{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-primary, #2f80ed)!important;color:#fff!important;border:2px solid var(--bg-sidebar)!important;font-size:.6rem;font-weight:700;line-height:1}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button{background:var(--color-primary, #2f80ed)!important;border:1px solid var(--color-primary, #2f80ed)!important;color:#fff!important}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button:hover,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:hover{background:color-mix(in srgb,var(--color-primary, #2f80ed) 85%,#fff)!important;transform:translateY(-1px)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button:active,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button:active{transform:translateY(0)}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button svg,.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button .svg-inline--fa,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button svg,.iot-backup-restore-page .iot-setup-table-toolbar__actions .bg-success.btn.iot-setup-add-button .svg-inline--fa{width:28px!important;height:28px!important;font-size:28px!important;color:#fff!important}@media(max-width:991.98px){.iot-backup-restore-page .iot-setup-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;min-height:0;padding:10px 12px;margin:4px 8px 8px}.iot-backup-restore-page .iot-setup-table-toolbar__meta{flex:1 1 auto;min-width:0;width:auto}.iot-backup-restore-page .iot-setup-table-toolbar__page{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1rem}.iot-backup-restore-page .iot-setup-table-toolbar__heading,.iot-backup-restore-page .iot-setup-table-toolbar__count{white-space:nowrap}.iot-backup-restore-page .iot-setup-table-toolbar__actions{flex:0 0 auto;width:auto;margin-left:0;justify-content:flex-end;flex-wrap:nowrap;gap:8px}.iot-backup-restore-page .iot-setup-table-section{margin-left:0;margin-right:0;min-width:0}.iot-backup-restore-page .iot-setup-table-card,.iot-backup-restore-page .box-shadow.iot-setup-table-card{min-width:0;width:100%}.iot-backup-restore-page .iot-table-body-scroll{min-height:180px!important}.iot-backup-restore-page .iot-setup-table-pagination,.iot-backup-restore-page .box-shadow .iot-setup-table-pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px;padding:6px 8px!important}.iot-backup-restore-page .iot-setup-table-pagination .pagination,.iot-backup-restore-page .box-shadow .iot-setup-table-pagination .pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:4px;margin:0!important;padding:0!important;width:auto!important;position:static!important}.iot-backup-restore-page .iot-setup-table-pagination .page-item,.iot-backup-restore-page .box-shadow .iot-setup-table-pagination .page-item{flex:0 0 auto!important}.iot-backup-restore-page .iot-setup-table-pagination .page-link,.iot-backup-restore-page .box-shadow .iot-setup-table-pagination .page-link{min-width:32px;min-height:32px!important;height:32px;padding:0 8px!important}.iot-backup-restore-page .iot-setup-table-pagination .searchInput,.iot-backup-restore-page .box-shadow .iot-setup-table-pagination .searchInput{width:auto!important;position:static!important;right:auto!important}}@media(max-width:575.98px){.iot-backup-restore-page .iot-setup-table-toolbar{margin-left:8px;margin-right:8px;padding:10px}.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-setup-add-button,.iot-backup-restore-page .iot-setup-table-toolbar__actions .iot-filter-trigger{width:40px!important;min-width:40px!important}}.iot-backup-restore-page .box-shadow{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-card);border-radius:var(--border-radius-lg)}.iot-backup-restore-page .box-shadow.iot-setup-table-card{display:flex;flex-direction:column;overflow:hidden}.iot-backup-restore-page .box-shadow .table{margin-bottom:0}.iot-backup-restore-page .box-shadow .pagination,.iot-backup-restore-page .box-shadow .iot-setup-table-pagination{margin:0;padding:5px;border-top:1px solid var(--border-color);flex:0 0 auto;position:relative!important;top:0!important;background:var(--bg-elevated)}.iot-backup-restore-page .iot-setup-field{display:flex;flex-direction:column;gap:2px;width:100%}.iot-backup-restore-page .form-label-themed,.iot-backup-restore-page label.form-label-themed,.iot-backup-restore-page .text-dark,.iot-backup-restore-page .modal-body .form-label,.iot-backup-restore-page .modal-body-padding .form-label{color:var(--text-primary)!important;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;text-align:left;margin-bottom:0;line-height:1.2}.iot-backup-restore-page .custom-select,.iot-backup-restore-page input.custom-select,.iot-backup-restore-page select.custom-select,.iot-backup-restore-page input.form-control,.iot-backup-restore-page select.form-control{color:var(--text-primary)!important;background-color:var(--bg-input)!important;border:1px solid var(--border-color-input)!important;border-radius:var(--border-radius-md);height:36px;padding:6px 10px;font-size:.8125rem;line-height:1.3;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.iot-backup-restore-page .custom-select::placeholder,.iot-backup-restore-page input.custom-select::placeholder,.iot-backup-restore-page select.custom-select::placeholder,.iot-backup-restore-page input.form-control::placeholder,.iot-backup-restore-page select.form-control::placeholder{color:var(--text-muted)}.iot-backup-restore-page .custom-select:focus,.iot-backup-restore-page input.custom-select:focus,.iot-backup-restore-page select.custom-select:focus,.iot-backup-restore-page input.form-control:focus,.iot-backup-restore-page select.form-control:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent);outline:none}.iot-backup-restore-page .custom-select:disabled,.iot-backup-restore-page .custom-select.bg-disabled,.iot-backup-restore-page input.custom-select:disabled,.iot-backup-restore-page input.custom-select.bg-disabled,.iot-backup-restore-page select.custom-select:disabled,.iot-backup-restore-page select.custom-select.bg-disabled,.iot-backup-restore-page input.form-control:disabled,.iot-backup-restore-page input.form-control.bg-disabled,.iot-backup-restore-page select.form-control:disabled,.iot-backup-restore-page select.form-control.bg-disabled{background-color:var(--bg-secondary)!important;color:var(--text-muted)!important;opacity:.85}.iot-backup-restore-page select,.iot-backup-restore-page select option{color:var(--text-primary);background-color:var(--bg-input)!important}.iot-backup-restore-page .input-textArea{color:var(--text-primary);background-color:var(--bg-input);border-color:var(--border-color-input);height:36px;min-height:36px;resize:vertical}.iot-backup-restore-page .input-textArea:focus{border-color:var(--color-primary)}.iot-backup-restore-page .input-text-area{display:flex!important;flex-direction:column;align-items:stretch!important;gap:2px}.iot-backup-restore-page .form-check-label{color:var(--text-primary)}.iot-backup-restore-page .form-check-input{border-color:var(--border-color-strong);background-color:var(--bg-input)}.iot-backup-restore-page .form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.iot-backup-restore-page .rmsc{--rmsc-h: 32px;--rmsc-bg: var(--bg-input);--rmsc-border: var(--border-color-input);--rmsc-gray: var(--text-muted);--rmsc-main: var(--color-primary);--rmsc-hover: var(--bg-secondary);--rmsc-selected: var(--color-primary);--rmsc-disabled: var(--text-muted);--rmsc-radius: var(--border-radius-md);--rmsc-p: 4px;--rmsc-py: 2px;color:var(--text-primary);font-size:.8125rem}.iot-backup-restore-page .rmsc .dropdown-container{border-radius:var(--border-radius-md);min-height:32px}.iot-backup-restore-page .rmsc .dropdown-heading{height:32px;padding:2px 8px}.iot-backup-restore-page .rmsc .dropdown-content{z-index:100000;background:var(--bg-elevated);border-color:var(--border-color)}.iot-backup-restore-page .rmsc .dropdown-content .panel-content{background:var(--bg-elevated);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.iot-backup-restore-page .rmsc .dropdown-content ul{max-height:240px;overflow-y:auto}.iot-backup-restore-page .rmsc .select-item{color:var(--text-primary)}.iot-backup-restore-page .rmsc .select-item.selected{background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.iot-backup-restore-page .table,.iot-backup-restore-page table.table{color:var(--text-primary);background:var(--bg-elevated);margin-bottom:0;font-size:.8125rem;border-collapse:separate;border-spacing:0;border:1px solid var(--iot-table-border);border-radius:0;width:max-content;min-width:100%;table-layout:auto}.iot-backup-restore-page table thead{color:var(--text-on-primary)}.iot-backup-restore-page .table thead th,.iot-backup-restore-page .table-light th,.iot-backup-restore-page thead.table-light th{color:var(--text-on-primary)!important;background-color:var(--iot-table-header-bg)!important;border-color:var(--iot-table-border)!important;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 8px!important;white-space:nowrap;border-bottom:1px solid var(--iot-table-border)!important}.iot-backup-restore-page .table td,.iot-backup-restore-page .table th{border-color:var(--iot-table-border);vertical-align:middle;padding:5px 8px!important;width:auto;max-width:none}.iot-backup-restore-page .table tbody td{color:var(--text-primary);font-size:.8125rem;line-height:1.5;font-variant-numeric:tabular-nums;border-bottom:1px solid var(--iot-table-border);background:transparent}.iot-backup-restore-page .table tbody td:has(.item-option-edit){width:1%;white-space:nowrap}.iot-backup-restore-page .table tbody td span,.iot-backup-restore-page .table tbody td div:not(.item-option-edit):not(.iot-status-badge){color:inherit;word-break:break-word}.iot-backup-restore-page .table tbody tr{transition:background-color var(--transition-fast);background-color:var(--iot-table-row-even)}.iot-backup-restore-page .table tbody tr:nth-child(odd),.iot-backup-restore-page .table-striped tbody tr:nth-of-type(odd){background-color:var(--iot-table-row-odd)}.iot-backup-restore-page .table tbody tr:nth-child(2n),.iot-backup-restore-page .table-striped tbody tr:nth-of-type(2n){background-color:var(--iot-table-row-even)}.iot-backup-restore-page .table-hover tbody tr:hover,.iot-backup-restore-page .table tbody tr:hover{background-color:var(--iot-table-row-hover)!important}.iot-backup-restore-page .table-bordered{border-color:var(--iot-table-border)}.iot-backup-restore-page .box-shadow .table{border-radius:0;border-left:0;border-right:0;border-bottom:0}.iot-backup-restore-page .box-shadow>.row:first-child .table thead th:first-child{border-top-left-radius:0}.iot-backup-restore-page .box-shadow>.row:first-child .table thead th:last-child{border-top-right-radius:0}.iot-backup-restore-page .item-option-edit{display:inline-flex;align-items:center;flex-wrap:nowrap;flex-shrink:0;gap:10px;white-space:nowrap}.iot-backup-restore-page .item-option-edit>a{display:inline-flex;flex-shrink:0;text-decoration:none}.iot-backup-restore-page .item-option-edit>span,.iot-backup-restore-page .item-option-edit>button,.iot-backup-restore-page .item-option-edit>a>span{display:inline-flex!important;align-items:center;justify-content:center;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;padding:0!important;margin:0!important;border-radius:8px;border:1px solid transparent;cursor:pointer;line-height:0;font-size:0;box-sizing:border-box;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;aspect-ratio:1/1;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.iot-backup-restore-page .item-option-edit>span:hover,.iot-backup-restore-page .item-option-edit>button:hover,.iot-backup-restore-page .item-option-edit>a>span:hover{transform:translateY(-1px)}.iot-backup-restore-page .item-option-edit>span:disabled,.iot-backup-restore-page .item-option-edit>button:disabled,.iot-backup-restore-page .item-option-edit>a>span:disabled{opacity:.55;cursor:not-allowed;transform:none}.iot-backup-restore-page .item-option-edit>span.p-2,.iot-backup-restore-page .item-option-edit>span.p-1,.iot-backup-restore-page .item-option-edit>span.pr-1,.iot-backup-restore-page .item-option-edit>span.pl-1,.iot-backup-restore-page .item-option-edit>button.p-2,.iot-backup-restore-page .item-option-edit>button.p-1,.iot-backup-restore-page .item-option-edit>button.pr-1,.iot-backup-restore-page .item-option-edit>button.pl-1,.iot-backup-restore-page .item-option-edit>a>span.p-2,.iot-backup-restore-page .item-option-edit>a>span.p-1,.iot-backup-restore-page .item-option-edit>a>span.pr-1,.iot-backup-restore-page .item-option-edit>a>span.pl-1{padding:0!important}.iot-backup-restore-page .item-option-edit>span svg,.iot-backup-restore-page .item-option-edit>span .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button svg,.iot-backup-restore-page .item-option-edit>button .svg-inline--fa,.iot-backup-restore-page .item-option-edit>a>span svg,.iot-backup-restore-page .item-option-edit>a>span .svg-inline--fa{display:block;flex-shrink:0;margin:0!important;padding:0!important;font-size:.85rem;width:.9em;height:.9em;vertical-align:middle;pointer-events:none}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=plus]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=plus]),.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=plus]),.iot-backup-restore-page .item-option-edit>span:has(.fa-plus),.iot-backup-restore-page .item-option-edit>button:has(.fa-plus),.iot-backup-restore-page .item-option-edit>a>span:has(.fa-plus){color:var(--iot-action-add)!important;background:color-mix(in srgb,var(--iot-action-add) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-add) 28%,transparent)}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=plus]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=plus]):hover,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=plus]):hover,.iot-backup-restore-page .item-option-edit>span:has(.fa-plus):hover,.iot-backup-restore-page .item-option-edit>button:has(.fa-plus):hover,.iot-backup-restore-page .item-option-edit>a>span:has(.fa-plus):hover{background:color-mix(in srgb,var(--iot-action-add) 24%,transparent);border-color:var(--iot-action-add)}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=plus]) svg,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=plus]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=plus]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=plus]) svg,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=plus]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>span:has(.fa-plus) svg,.iot-backup-restore-page .item-option-edit>span:has(.fa-plus) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(.fa-plus) svg,.iot-backup-restore-page .item-option-edit>button:has(.fa-plus) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>a>span:has(.fa-plus) svg,.iot-backup-restore-page .item-option-edit>a>span:has(.fa-plus) .svg-inline--fa{color:inherit!important}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=pen-to-square]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=square-pen]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=edit]),.iot-backup-restore-page .item-option-edit>button:has(.fa-pencil-square-o),.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]){color:var(--iot-action-edit)!important;background:color-mix(in srgb,var(--iot-action-edit) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-edit) 28%,transparent)}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=square-pen]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=edit]):hover,.iot-backup-restore-page .item-option-edit>button:has(.fa-pencil-square-o):hover,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]):hover{background:color-mix(in srgb,var(--iot-action-edit) 24%,transparent);border-color:var(--iot-action-edit)}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=pen-to-square]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=square-pen]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=square-pen]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=edit]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=edit]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(.fa-pencil-square-o) svg,.iot-backup-restore-page .item-option-edit>button:has(.fa-pencil-square-o) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) svg,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=pen-to-square]) .svg-inline--fa{color:inherit!important}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=key]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=key]),.iot-backup-restore-page .item-option-edit>span:has(.fa-key),.iot-backup-restore-page .item-option-edit>button:has(.fa-key),.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=key]){color:var(--iot-action-key)!important;background:color-mix(in srgb,var(--iot-action-key) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-key) 28%,transparent)}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=key]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=key]):hover,.iot-backup-restore-page .item-option-edit>span:has(.fa-key):hover,.iot-backup-restore-page .item-option-edit>button:has(.fa-key):hover,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=key]):hover{background:color-mix(in srgb,var(--iot-action-key) 24%,transparent);border-color:var(--iot-action-key)}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=key]) svg,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=key]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=key]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=key]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>span:has(.fa-key) svg,.iot-backup-restore-page .item-option-edit>span:has(.fa-key) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(.fa-key) svg,.iot-backup-restore-page .item-option-edit>button:has(.fa-key) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=key]) svg,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=key]) .svg-inline--fa{color:inherit!important}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash]),.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash-can]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash-can]),.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=delete-left]),.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=delete-left]),.iot-backup-restore-page .item-option-edit>span:has(.fa-trash),.iot-backup-restore-page .item-option-edit>button:has(.fa-trash),.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=trash]){color:var(--iot-action-delete)!important;background:color-mix(in srgb,var(--iot-action-delete) 14%,transparent);border-color:color-mix(in srgb,var(--iot-action-delete) 28%,transparent)}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash]):hover,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash-can]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash-can]):hover,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=delete-left]):hover,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=delete-left]):hover,.iot-backup-restore-page .item-option-edit>span:has(.fa-trash):hover,.iot-backup-restore-page .item-option-edit>button:has(.fa-trash):hover,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=trash]):hover{background:color-mix(in srgb,var(--iot-action-delete) 24%,transparent);border-color:var(--iot-action-delete)}.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash]) svg,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash-can]) svg,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash-can]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash-can]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=delete-left]) svg,.iot-backup-restore-page .item-option-edit>span:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=delete-left]) svg,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=delete-left]) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>span:has(.fa-trash) svg,.iot-backup-restore-page .item-option-edit>span:has(.fa-trash) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>button:has(.fa-trash) svg,.iot-backup-restore-page .item-option-edit>button:has(.fa-trash) .svg-inline--fa,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=trash]) svg,.iot-backup-restore-page .item-option-edit>a>span:has(svg[data-icon=trash]) .svg-inline--fa{color:inherit!important}.iot-backup-restore-page .item-option-edit>span,.iot-backup-restore-page .item-option-edit>button{position:relative}.iot-backup-restore-page .item-option-edit>span:after,.iot-backup-restore-page .item-option-edit>button:after{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:3px 8px;border-radius:6px;background:var(--bg-sidebar, #071a35);color:#fff;font-size:.68rem;font-weight:600;line-height:1.2;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:30;box-shadow:var(--shadow-md);transition:opacity var(--transition-fast),transform var(--transition-fast)}.iot-backup-restore-page .item-option-edit>span:hover:after,.iot-backup-restore-page .item-option-edit>button:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=pen-to-square]):after,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=square-pen]):after,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=edit]):after,.iot-backup-restore-page .item-option-edit>button:has(.fa-pencil-square-o):after{content:"Edit"}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash]):after,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=trash-can]):after,.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=delete-left]):after,.iot-backup-restore-page .item-option-edit>button:has(.fa-trash):after{content:"Delete"}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=plus]):after,.iot-backup-restore-page .item-option-edit>button:has(.fa-plus):after{content:"Add"}.iot-backup-restore-page .item-option-edit>button:has(svg[data-icon=key]):after,.iot-backup-restore-page .item-option-edit>button:has(.fa-key):after{content:"Regenerate Password"}.iot-backup-restore-page .pagination{padding:var(--space-3);background:var(--bg-elevated);border-top:1px solid var(--border-color)}.iot-backup-restore-page .pagination .page-link{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color)}.iot-backup-restore-page .pagination .page-link:hover,.iot-backup-restore-page .pagination .page-item.active .page-link{color:var(--text-on-primary);background:var(--color-primary);border-color:var(--color-primary)}.iot-backup-restore-page .pagination .page-item.disabled .page-link{color:var(--text-muted);background:var(--bg-secondary)}.iot-backup-restore-page .bg-success.btn,.iot-backup-restore-page .btn-success{background:var(--color-primary)!important;border-color:var(--color-primary)!important;color:var(--text-on-primary)!important}.iot-backup-restore-page .bg-success.btn:hover,.iot-backup-restore-page .btn-success:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.iot-backup-restore-page .bg-light,.iot-backup-restore-page .border.rounded.bg-light,.iot-backup-restore-page .border.rounded.bg-white{background-color:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-primary)}.iot-backup-restore-page .bg-white{background-color:var(--bg-elevated)!important;color:var(--text-primary)}.iot-backup-restore-page .text-muted,.iot-backup-restore-page label,.iot-backup-restore-page .form-label,.iot-backup-restore-page label.form-label.text-muted,.iot-backup-restore-page .form-label.text-muted{color:var(--text-secondary)!important}.iot-backup-restore-page .card{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.iot-backup-restore-page .card-header,.iot-backup-restore-page .card-footer{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.iot-backup-restore-page .list-group-item{background:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}.iot-backup-restore-page .action-icon:hover{background:var(--bg-secondary)}.iot-backup-restore-page .searchInput input,.iot-backup-restore-page .innerSearchInput{color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color-input)}.iot-backup-restore-page .c-switch-slider{background:var(--border-color-strong);border:1px solid var(--border-color);box-shadow:none!important}.iot-backup-restore-page .c-switch-input:checked~.c-switch-slider{background:var(--color-primary)!important;border-color:var(--color-primary)}.iot-backup-restore-page .c-switch-input:focus~.c-switch-slider{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)!important}.iot-backup-restore-page .c-switch-slider:before{background:var(--bg-elevated)!important;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.iot-backup-restore-page .c-switch-3d .c-switch-slider:before{top:0;box-shadow:var(--shadow-sm)!important}.iot-backup-restore-page .iot-setup-switch-row{display:flex;flex-direction:column;gap:6px}.iot-backup-restore-page .iot-setup-switch-row>label:first-child{font-size:.8125rem;font-weight:500;color:var(--text-primary);margin-bottom:0}.iot-backup-restore-page .iot-setup-switch.c-switch,.iot-backup-restore-page .c-switch.iot-setup-switch,.iot-backup-restore-page .form-check-input-custom.c-switch,.iot-backup-restore-page .c-switch.form-check-input-custom{display:inline-flex;align-items:center;margin:0;padding:0;width:48px;height:24px;min-height:24px;border:0;background:transparent!important}.iot-backup-restore-page .iot-setup-switch .c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-slider{width:48px!important;height:24px!important;padding:0!important;border:1px solid var(--border-color-input)!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-input) 78%,var(--border-color-strong))!important;box-shadow:inset 0 1px 2px #071a352e!important}.iot-backup-restore-page .iot-setup-switch .c-switch-slider:before,.iot-backup-restore-page .form-check-input-custom .c-switch-slider:before{top:2px!important;left:2px!important;width:18px!important;height:18px!important;border:1px solid var(--border-color)!important;border-radius:50%!important;background:var(--text-secondary)!important;box-shadow:var(--shadow-sm)!important}.iot-backup-restore-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider,.iot-backup-restore-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-backup-restore-page .iot-setup-switch .c-switch-input:checked+.c-switch-slider:before,.iot-backup-restore-page .iot-setup-switch .c-switch-input:checked~.c-switch-slider:before,.iot-backup-restore-page .form-check-input-custom .c-switch-input:checked+.c-switch-slider:before,.iot-backup-restore-page .form-check-input-custom .c-switch-input:checked~.c-switch-slider:before{transform:translate(24px)!important;border-color:var(--text-on-primary)!important;background:var(--text-on-primary)!important}.iot-backup-restore-page .iot-setup-switch .c-switch-input:focus+.c-switch-slider,.iot-backup-restore-page .iot-setup-switch .c-switch-input:focus~.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:focus+.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:focus~.c-switch-slider{box-shadow:inset 0 1px 2px #071a352e,0 0 0 2px color-mix(in srgb,var(--color-primary) 24%,transparent)!important}.iot-backup-restore-page .iot-setup-switch .c-switch-input:disabled+.c-switch-slider,.iot-backup-restore-page .iot-setup-switch .c-switch-input:disabled~.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:disabled+.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:disabled~.c-switch-slider{cursor:not-allowed;opacity:.55}.iot-backup-restore-page .iot-setup-switch .c-switch-input:disabled:checked+.c-switch-slider,.iot-backup-restore-page .iot-setup-switch .c-switch-input:disabled:checked~.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:disabled:checked+.c-switch-slider,.iot-backup-restore-page .form-check-input-custom .c-switch-input:disabled:checked~.c-switch-slider{border-color:color-mix(in srgb,var(--color-primary) 78%,var(--border-color-input))!important;background:color-mix(in srgb,var(--color-primary) 86%,var(--bg-elevated))!important}.iot-backup-restore-page .nav-pills .nav-link{color:var(--text-secondary);background:transparent;border:1px solid transparent}.iot-backup-restore-page .nav-pills .nav-link.active,.iot-backup-restore-page .nav-pills .nav-link:hover{color:var(--text-on-primary);background:var(--color-primary)}.iot-backup-restore-page .nav-pills .nav-item .nav-link.active{background:var(--color-primary);color:var(--text-on-primary)}.iot-backup-restore-page{display:flex!important;flex-direction:column!important;align-items:stretch!important;flex:1 1 auto;width:100%!important;max-width:100%!important;min-height:100%;height:auto;margin:0!important;padding:12px!important;gap:0;background:var(--bg-primary);overflow:visible}.iot-backup-restore-page .iot-backup-restore-card{display:flex;flex-direction:column;flex:0 0 auto;width:100%;max-width:1100px;min-height:0;margin:0 auto!important;overflow:hidden}.iot-backup-restore-card{overflow:hidden}.iot-backup-restore-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.iot-backup-restore-card__heading{flex:1 1 280px;min-width:0}.iot-backup-restore-card__subtitle{margin-top:4px;font-size:var(--font-size-sm)}.iot-backup-restore-card__settings-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-width:0;height:auto;margin:0;padding:8px 14px;border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--bg-elevated);color:var(--text-link);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;transition:border-color var(--transition-fast),background var(--transition-fast)}.iot-backup-restore-card__settings-link:hover{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--bg-elevated));text-decoration:none;color:var(--color-primary-hover)}.iot-backup-restore-card__settings-link .c-icon{font-size:.95rem}.iot-backup-restore-card__body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:20px;padding:20px 24px 24px!important;overflow-x:hidden;overflow-y:visible}.iot-backup-restore-main{display:flex;flex-direction:column;gap:16px;flex-shrink:0}.iot-backup-restore-info{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:color-mix(in srgb,var(--bg-secondary) 70%,var(--bg-elevated));flex-shrink:0}.iot-backup-restore-info__icon{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:var(--border-radius-md);background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.iot-backup-restore-info__icon .c-icon{font-size:1.1rem}.iot-backup-restore-info__content{min-width:0}.iot-backup-restore-info__content strong{display:block;margin-bottom:4px;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.iot-backup-restore-info__content a{color:var(--text-link);font-weight:var(--font-weight-medium);text-decoration:none}.iot-backup-restore-info__content a:hover{text-decoration:underline}.iot-backup-restore-info__path{padding:2px 6px;border-radius:var(--border-radius-sm);background:var(--bg-elevated);color:var(--text-primary);font-size:var(--font-size-xs);word-break:break-all}.iot-backup-restore-prompt{margin:0;color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.iot-backup-restore-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px;align-items:stretch}.iot-backup-restore-action{display:flex;flex-direction:row;align-items:center;gap:18px;width:100%!important;min-width:0!important;height:auto!important;min-height:132px;margin:0!important;padding:28px 24px;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow-card);color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.iot-backup-restore-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--text-primary);border-style:solid;border-width:1px;border-color:var(--border-color);background:var(--bg-elevated)}.iot-backup-restore-action:hover:not(:disabled) .iot-backup-restore-action__label{color:var(--text-primary)}.iot-backup-restore-action:hover:not(:disabled) .iot-backup-restore-action__hint{color:var(--text-muted)}.iot-backup-restore-action:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.iot-backup-restore-action:disabled{opacity:.65;cursor:not-allowed}.iot-backup-restore-action__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 64px;width:64px;height:64px;border-radius:var(--border-radius-lg);font-size:1.45rem}.iot-backup-restore-action__text{display:flex;flex-direction:column;gap:6px;min-width:0}.iot-backup-restore-action__label{font-size:1.25rem;font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.iot-backup-restore-action__hint{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.iot-backup-restore-action--backup{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--border-color))}.iot-backup-restore-action--backup .iot-backup-restore-action__icon{background:color-mix(in srgb,var(--color-primary) 16%,transparent);color:var(--color-primary)}.iot-backup-restore-action--backup:hover:not(:disabled){border-color:var(--color-primary);border-width:1px;background:color-mix(in srgb,var(--color-primary) 6%,var(--bg-elevated));color:var(--text-primary)}.iot-backup-restore-action--backup:hover:not(:disabled) .iot-backup-restore-action__icon{color:var(--color-primary)}.iot-backup-restore-action--backup:hover:not(:disabled) .iot-backup-restore-action__label{color:var(--text-primary)}.iot-backup-restore-action--backup:hover:not(:disabled) .iot-backup-restore-action__hint{color:var(--text-muted)}.iot-backup-restore-action--restore{border-color:color-mix(in srgb,var(--color-warning) 35%,var(--border-color))}.iot-backup-restore-action--restore .iot-backup-restore-action__icon{background:color-mix(in srgb,var(--color-warning) 18%,transparent);color:#b45309}.iot-backup-restore-action--restore:hover:not(:disabled){border-color:var(--color-warning);border-width:1px;background:color-mix(in srgb,var(--color-warning) 8%,var(--bg-elevated));color:var(--text-primary)}.iot-backup-restore-action--restore:hover:not(:disabled) .iot-backup-restore-action__icon{color:#b45309}.iot-backup-restore-action--restore:hover:not(:disabled) .iot-backup-restore-action__label{color:var(--text-primary)}.iot-backup-restore-action--restore:hover:not(:disabled) .iot-backup-restore-action__hint{color:var(--text-muted)}.iot-backup-restore-note{flex-shrink:0;margin:0;padding:14px 16px;border-left:3px solid var(--color-warning);border-radius:0 var(--border-radius-md) var(--border-radius-md) 0;background:color-mix(in srgb,var(--color-warning) 10%,var(--bg-elevated));color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.iot-backup-restore-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:240px;padding:28px 16px;border:1px dashed var(--border-color);border-radius:var(--border-radius-lg);color:var(--text-muted);text-align:center}.iot-backup-restore-empty .c-icon{font-size:1.5rem;opacity:.75}@media(max-width:767.98px){.iot-backup-restore-page{padding:8px!important}.iot-backup-restore-card__header{gap:12px;padding:16px!important}.iot-backup-restore-card__heading{flex-basis:100%}.iot-backup-restore-card__settings-link{width:100%}.iot-backup-restore-card__body{gap:16px;padding:16px!important}.iot-backup-restore-info{padding:14px}.iot-backup-restore-prompt{font-size:1rem}.iot-backup-restore-actions{grid-template-columns:minmax(0,1fr);gap:12px}.iot-backup-restore-action{min-height:108px;gap:14px;padding:18px 16px}.iot-backup-restore-action__icon{flex-basis:50px;width:50px;height:50px;font-size:1.2rem}.iot-backup-restore-action__label{font-size:1rem}}@media(max-width:479.98px){.iot-backup-restore-card__header,.iot-backup-restore-card__body{padding:14px!important}.iot-backup-restore-card__subtitle{line-height:1.45}.iot-backup-restore-info{gap:12px}.iot-backup-restore-info__icon{flex-basis:40px;width:40px;height:40px}.iot-backup-restore-action{align-items:flex-start;min-height:0}.iot-backup-restore-note{padding:12px 14px}}html:has(.iot-backup-restore-page),body:has(.iot-backup-restore-page),#root:has(.iot-backup-restore-page),.c-default-layout:has(.iot-backup-restore-page){height:100vh!important;max-height:100vh!important;min-height:0!important;overflow:hidden!important}.c-default-layout:has(.iot-backup-restore-page)>.c-wrapper{height:100vh!important;max-height:100vh!important;overflow:hidden!important}.c-body:has(.iot-backup-restore-page){flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important}.c-body:has(.iot-backup-restore-page) .mainbody,.c-body:has(.iot-backup-restore-page) .app-main-content{align-self:stretch;height:100%!important;min-height:100%!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-backup-restore-page) .mainbody>div,.c-body:has(.iot-backup-restore-page) .app-main-content>div,.c-body:has(.iot-backup-restore-page) .mainbody>div>.fade,.c-body:has(.iot-backup-restore-page) .app-main-content>div>.fade{display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;max-height:none!important;overflow:visible!important}.c-body:has(.iot-backup-restore-page) .iot-backup-restore-page{height:auto!important;min-height:100%!important;max-height:none!important;overflow:visible!important}html,body,#root{max-width:100%;overflow-x:hidden}.c-default-layout{max-width:100%}.c-wrapper,.c-body{min-width:0}.mainbody{min-width:0;max-width:100%;padding:var(--space-4);box-sizing:border-box}@media(max-width:767.98px){.mainbody{padding:var(--space-3)}}@media(max-width:575.98px){.mainbody{padding:var(--space-2)}}section{max-width:100%}img,svg,video,canvas{max-width:100%;height:auto}h1,.h1{font-size:clamp(1.25rem,calc(2.5vw + .5rem),1.75rem)}h2,.h2{font-size:clamp(1.125rem,calc(2vw + .5rem),1.5rem)}h3,.h3{font-size:clamp(1rem,calc(1.5vw + .5rem),1.25rem)}.PageHeading{font-size:clamp(1.25rem,3vw,1.875rem)!important}.heading{font-size:clamp(1rem,2vw,1.25rem)!important}@media(max-width:991.98px){.app-header__inner{padding:0 14px}.email-header{max-width:min(160px,38vw);font-size:12px}}@media(max-width:575.98px){.app-header .email-header{display:none}}.sidebar-mobile-backdrop{display:none}@media(max-width:991.98px){.header1.app-header.c-header{display:flex!important;flex:0 0 48px!important;min-height:48px!important;height:48px!important;position:sticky;top:0;z-index:1020;background:#051125!important;box-shadow:0 1px #ffffff0f!important}.header1.app-header.c-header .email-header{color:#e2e8f0!important}.header1.app-header.c-header .theme-toggle{width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.35)!important;background:#0f172aa6!important;color:#cbd5e1!important;box-shadow:inset 0 0 0 1px #ffffff0a!important}.header1.app-header.c-header .theme-toggle svg,.header1.app-header.c-header .theme-toggle .c-icon{width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important}.header1.app-header.c-header .theme-toggle:hover,.header1.app-header.c-header .theme-toggle:focus-visible{background:#3b82f62e!important;border-color:#93c5fd8c!important;color:#93c5fd!important;box-shadow:0 0 0 2px #3b82f633!important}.header1.app-header.c-header .menubar-icon{width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.35)!important;background:#0f172aa6!important;color:#e2e8f0!important;box-shadow:inset 0 0 0 1px #ffffff0a!important}.header1.app-header.c-header .menubar-icon .menubar-icon__svg{width:18px!important;height:18px!important}.header1.app-header.c-header .menubar-icon:hover,.header1.app-header.c-header .menubar-icon:focus-visible{background:#3b82f62e!important;border-color:#93c5fd8c!important;color:#93c5fd!important}.header1.app-header.c-header .app-header__inner{height:48px;min-height:48px;padding:0 14px!important;align-items:center}.header1.app-header.c-header .app-header__end{gap:8px;align-items:center}.c-default-layout>.c-sidebar.c-sidebar-show~.c-wrapper .header1.app-header.c-header{border:0!important;box-shadow:none!important;outline:none!important}.c-default-layout>.c-sidebar.c-sidebar-show~.c-wrapper .header1.app-header.c-header .theme-toggle,.c-default-layout>.c-sidebar.c-sidebar-show~.c-wrapper .header1.app-header.c-header .menubar-icon{border:0!important;box-shadow:none!important;outline:none!important}.sidebar-mobile-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1035;margin:0;padding:0;border:0;cursor:pointer;background:#0511258c;-webkit-tap-highlight-color:transparent}.c-sidebar.sidebar-nav,.c-default-layout>.c-sidebar.sidebar-nav{position:fixed!important;top:0!important;left:0!important;right:auto!important;bottom:0!important;z-index:1040!important;height:100vh!important;max-height:100vh!important;width:200px!important;min-width:200px!important;max-width:200px!important;flex:0 0 200px!important;margin-left:-200px!important;transform:none!important;transition:margin-left .28s ease!important;box-shadow:4px 0 28px #00000059!important}.c-sidebar.sidebar-nav.c-sidebar-show{margin-left:0!important}.c-sidebar.sidebar-nav.c-sidebar-lg-show:not(.c-sidebar-show){margin-left:-200px!important}.c-default-layout>.c-wrapper,.c-default-layout.sidebar-collapsed>.c-wrapper,.c-wrapper{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important}.c-sidebar.sidebar-nav.sidebar-nav--collapsed{width:200px!important;min-width:200px!important;max-width:200px!important;flex:0 0 200px!important}.c-sidebar.sidebar-nav .sidebar-toggle-button,.c-sidebar.sidebar-nav .sidebar-toggle-button--collapsed,.c-sidebar.sidebar-nav:not(.sidebar-nav--collapsed) .sidebar-toggle-button,.c-sidebar.sidebar-nav.sidebar-nav--collapsed .sidebar-toggle-button,.c-sidebar.sidebar-nav .sidebar-rail-header .sidebar-toggle-button{display:none!important;visibility:hidden!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;pointer-events:none!important}.c-sidebar.sidebar-nav .sidebar-rail-header{position:relative;flex-shrink:0}.c-sidebar.sidebar-nav .c-sidebar-brand-themed{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:96px!important;padding:14px 8px 7px!important;background:transparent!important}.c-sidebar.sidebar-nav .c-sidebar-logo,.c-sidebar.sidebar-nav .c-sidebar-brand-themed .slid.c-sidebar-logo{display:block!important;width:58px!important;height:30px!important;max-width:58px!important;max-height:30px!important;margin:0 0 10px 2px!important;object-fit:contain}.c-sidebar.sidebar-nav .c-sidebar-user{display:flex!important}.c-sidebar.sidebar-nav .sidebar-mobile-close{display:inline-flex!important;visibility:visible!important;position:absolute;top:14px;right:9px;z-index:5;width:24px!important;min-width:24px!important;max-width:24px!important;height:24px!important;min-height:24px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#dce8f8!important;pointer-events:auto!important;overflow:visible!important}.c-sidebar.sidebar-nav .sidebar-mobile-close .menubar-icon__svg{width:16px!important;height:16px!important}.c-sidebar.sidebar-nav .sidebar-mobile-close:hover,.c-sidebar.sidebar-nav .sidebar-mobile-close:focus-visible{background:transparent!important;border-color:transparent!important;box-shadow:none!important;color:#fff!important}}.table-scroll-wrap,.mainbody .table-responsive,.modal-body .table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-3)}@media(max-width:991.98px){.mainbody:not(:has(.iot-setup-table-card)):not(:has(.iot-setup-page)) .table,.mainbody:not(:has(.iot-setup-table-card)):not(:has(.iot-setup-page)) table.table,.mainbody:not(:has(.iot-setup-table-card)):not(:has(.iot-setup-page)) table.table-striped,.modal-body .table,.modal-body table.table,.modal-body table.table-striped,.modal-body-padding .table,.modal-body-padding table.table,.modal-body-padding table.table-striped{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.mainbody:not(:has(.iot-setup-table-card)):not(:has(.iot-setup-page)) .table thead,.mainbody:not(:has(.iot-setup-table-card)):not(:has(.iot-setup-page)) .table tbody,.mainbody:not(:has(.iot-setup-table-card)):not(:has(.iot-setup-page)) .table tr,.modal-body .table thead,.modal-body .table tbody,.modal-body .table tr,.modal-body-padding .table thead,.modal-body-padding .table tbody,.modal-body-padding .table tr{display:table;width:100%;table-layout:auto}.table th,.table td{padding:.5rem .65rem;font-size:var(--font-size-sm)}.iot-setup-page .iot-table-body-scroll,.iot-setup-list-page .iot-table-body-scroll,.iot-setup-table-card .iot-table-body-scroll{overflow-x:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;max-width:100%}.iot-setup-table-card{overflow:hidden!important;max-width:100%}.iot-report-page .iot-report-sensors-scroll{overflow-x:auto!important;overflow-y:hidden;-webkit-overflow-scrolling:touch;max-width:100%;scrollbar-width:thin}.iot-report-page .iot-report-sensors-scroll>.table{min-width:820px;margin-bottom:0;white-space:normal}.r-table-scroll,.table-scroll-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch;max-width:100%}}@media(max-width:767.98px){.form-row>[class*=col-],.row>[class*=col-md-],.row>[class*=col-lg-],.row>[class*=col-xl-]{flex:0 0 100%;max-width:100%}.col-md-44{flex:0 0 100%!important;max-width:100%!important;margin:var(--space-2) 0!important}.form-control,.custom-select,select.form-control,.evaluation-form-dropdown,.input-textArea{width:100%!important;max-width:100%;box-sizing:border-box}.form-group,.mb-3{margin-bottom:var(--space-3)!important}label{font-size:var(--font-size-sm)}.col-md-height{height:auto;min-height:0}.plr--180{padding-left:var(--space-3)!important;padding-right:var(--space-3)!important}.check-toggle{width:100%;max-width:100%}}@media(max-width:767.98px){.container-buttons,.modal-button,.custom-modal-handle{flex-direction:column;align-items:stretch;margin-top:0!important;margin-right:0!important;gap:var(--space-2)}.container-buttons .btn,.modal-button .btn,.modal-footer .btn{width:100%;margin:0!important}.btn,button:not(.theme-toggle):not(.menubar-icon):not(.close):not(.btn-close):not(.login-screen__theme-btn):not(.login-screen__affix--btn){min-height:44px;touch-action:manipulation}.pagination .page-link,.iot-setup-table-pagination .page-link,.iot-setup-table-toolbar .btn,.iot-setup-table-toolbar button,.iot-filter-trigger,.iot-setup-add-button{min-height:0!important;height:auto}.item-option-edit>button,.item-option-edit>span,.item-option-edit>a>span,.item-option-edit button,.iot-setup-cell-action button,.iot-setup-cell-action .item-option-edit>button,.iot-setup-cell-action .item-option-edit>span{width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;max-height:32px!important;padding:0!important;margin:0!important;aspect-ratio:1/1!important;box-sizing:border-box!important}.action-icon{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}}.modal-dialog{margin:.5rem auto;display:flex;align-items:center;min-height:calc(100% - 1rem);max-width:min(500px,calc(100vw - 1rem))}@media(max-width:575.98px){.modal-dialog{margin:.5rem;width:calc(100% - 1rem);max-width:none;min-height:calc(100% - 1rem)}.iot-setup-page{padding-left:.5rem;padding-right:.5rem}.iot-setup-table-section{overflow-x:auto}}.modal-xl{max-width:min(900px,calc(100vw - 1rem))!important;width:auto!important}.modal-lg{max-width:min(800px,calc(100vw - 1rem))}.modal-content{display:flex;flex-direction:column}.modal-body,.modal-body-padding{overflow:visible;-webkit-overflow-scrolling:touch;flex:1 1 auto}.modal .modal-body.u-modal-body-scroll,.modal .modal-body-padding.u-modal-body-scroll,.modal .modal-body.u-modal-body-scroll-lg,.modal .modal-body-padding.u-modal-body-scroll-lg,.modal .modal-body.u-modal-body-scroll-xl,.modal .modal-body-padding.u-modal-body-scroll-xl{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal .user-form-modal-body{overflow:visible}.modal .user-form-modal-body .rmsc .dropdown-content ul{max-height:min(50vh,420px)}.modal-footer{flex-shrink:0}@media(max-width:767.98px){.modal-body-padding{padding:var(--space-3)!important}.modal-header{flex-wrap:wrap;padding:var(--space-3)}.modal-title{font-size:var(--font-size-md);flex:1 1 auto;padding-right:var(--space-2)}.modal-footer{flex-direction:column-reverse;gap:var(--space-2)}.modal-footer .btn{width:100%;margin:0!important}.u-modal-body-scroll,.u-modal-body-scroll-lg,.u-modal-body-scroll-xl{max-height:calc(100vh - 180px)}}@media(max-width:575.98px){.sweet-alert{width:calc(100vw - 2rem)!important;max-width:100%!important;margin:0 1rem;left:0!important;right:0!important}}@media(max-width:767.98px){.pagination{flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:4px;top:0}.pagination .page-item{flex:0 0 auto!important;width:auto!important;max-width:none!important}.pagination .page-link{width:auto!important;min-width:32px;min-height:32px!important;height:32px;padding:0 8px!important;display:inline-flex!important;align-items:center;justify-content:center;line-height:1}.iot-setup-table-pagination,.iot-setup-table-pagination.pagination,.box-shadow .iot-setup-table-pagination,.iot-setup-table-card .iot-setup-table-pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%;padding:6px 8px!important;margin:0!important}.iot-setup-table-pagination .pagination,.iot-setup-table-pagination.pagination .pagination,.box-shadow .iot-setup-table-pagination .pagination,.iot-setup-table-card .iot-setup-table-pagination .pagination{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:4px!important;width:auto!important;max-width:100%;margin:0!important;padding:0!important;position:static!important;top:0!important}.iot-setup-table-pagination .searchInput,.iot-setup-table-pagination.pagination .searchInput,.box-shadow .iot-setup-table-pagination .searchInput,.iot-setup-table-card .iot-setup-table-pagination .searchInput{width:auto!important;max-width:100%;margin:0!important;position:static!important;right:auto!important;text-align:left;flex:0 0 auto}.searchInput{width:auto;text-align:left}.auction-filter{height:auto;padding:var(--space-3)}}.category-main{margin-left:0!important;margin-right:0!important}@media(max-width:767.98px){.v2-widgetbig{font-size:var(--font-size-sm)}.v2-widgetvalue{font-size:clamp(.65rem,2.5vw,.9375rem);letter-spacing:.5px}.v2-subHeading{font-size:var(--font-size-md)}.widgetheader{flex-wrap:wrap;gap:var(--space-1)}.section,.inspection-section,.dealers-section,.car-section{width:100%!important}.main-section{margin:0!important}.hex-master-wrap{min-width:0!important;position:relative!important;width:100%!important}.intro-block .grid-1,.intro-block .grid-2,.intro-block .grid-3{width:100%}.iot-dashboard__health-grid,.iot-dashboard .iot-dashboard__health-grid{min-width:0!important;width:100%!important;grid-template-columns:1fr!important}.centerContainer,.ProcessConet{width:100%!important;max-width:100%!important;padding-left:var(--space-2);padding-right:var(--space-2)}.app-main-content:not(:has(.iot-setup-page)):not(:has(.iot-setup-list-page)):not(:has(.sld-electrical-page)),.mainbody:not(:has(.iot-setup-page)):not(:has(.iot-setup-list-page)):not(:has(.sld-electrical-page)){padding-left:12px!important;padding-right:12px!important}.row{margin-left:-8px;margin-right:-8px}.row>[class*=col-]{padding-left:8px;padding-right:8px}}@media(max-width:575.98px){.iot-dashboard__health-grid,.iot-dashboard .iot-dashboard__health-grid{grid-template-columns:1fr!important;gap:8px!important}.app-main-content:not(:has(.iot-setup-page)):not(:has(.iot-setup-list-page)),.mainbody:not(:has(.iot-setup-page)):not(:has(.iot-setup-list-page)){padding-left:8px!important;padding-right:8px!important}}@media(max-width:991.98px){.c-default-layout:has(>.c-sidebar.c-sidebar-show){overflow:hidden}}.charts,.chart-container-themed,.recharts-responsive-container,.highcharts-container{width:100%!important;max-width:100%}@media(max-width:767.98px){.charts{height:min(300px,50vh)!important;margin-top:var(--space-4)}}@media(max-width:575.98px){.charts{height:min(220px,45vh)!important;margin-top:var(--space-3)}}@media(max-width:767.98px){.input-block{width:100%!important;max-width:100%;padding-top:var(--space-4)}.login-input{width:100%}.header{width:100%!important;font-size:clamp(1.5rem,6vw,2.5rem);line-height:1.2;padding-top:var(--space-6);padding-bottom:var(--space-4)}}@media(max-width:767.98px){.r-stack-sm{flex-direction:column!important;align-items:stretch!important}}@media(max-width:767.98px){.r-full-width-sm{width:100%!important;max-width:100%!important}}.r-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:767.98px){.r-hide-mobile{display:none!important}}.r-touch-target{min-height:44px;min-width:44px}@media(max-width:767.98px){.c-default-layout:has(.iot-cat-detail--fitpage)>.c-wrapper,.c-default-layout:has(.iot-cat-detail--subpage)>.c-wrapper{overflow:hidden!important}.c-body:has(.iot-cat-detail--fitpage),.c-body:has(.iot-cat-detail--subpage){flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.app-main-content:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--subpage){display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;flex:none!important}.app-main-content:has(.iot-cat-detail--fitpage)>div,.app-main-content:has(.iot-cat-detail--fitpage) .fade,.category:has(.iot-cat-detail--fitpage),.app-main-content:has(.iot-cat-detail--subpage)>div,.app-main-content:has(.iot-cat-detail--subpage) .fade,.category:has(.iot-cat-detail--subpage){display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;flex:none!important}.iot-cat-detail--fitpage,.iot-cat-detail--subpage,.mainbody.iot-cat-detail--fitpage,.mainbody.iot-cat-detail--subpage{display:block!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;flex:none!important}.iot-cat-detail--fitpage>.container-fluid,.iot-cat-detail--subpage>.container-fluid{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;flex:none!important}.iot-cat-detail--fitpage .iot-cat-detail__grid{display:flex!important;flex-direction:column!important;gap:12px!important;height:auto!important;min-height:0!important;flex:none!important;overflow:visible!important}.iot-cat-detail--fitpage .iot-cat-detail__panel{flex:none!important;height:auto!important;min-height:0!important;max-height:none!important}.iot-cat-detail__table-wrap,.iot-cat-detail--fitpage .iot-cat-detail__table-wrap,.iot-cat-detail__panel--generation .iot-cat-detail__table-wrap,.iot-cat-detail__panel--consumption .iot-cat-detail__table-wrap{flex:0 0 auto!important;width:100%!important;max-width:100%!important;min-width:0!important;height:256px!important;max-height:256px!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.iot-cat-detail__table{table-layout:fixed!important;width:100%!important;min-width:0!important;max-width:100%!important}.iot-cat-detail__th--load{width:15%!important}.iot-cat-detail__th--value{width:20%!important}.iot-cat-detail__th--energy{width:24%!important}.iot-cat-detail__panel-footer,.iot-cat-detail--fitpage .iot-cat-detail__panel-footer{flex:0 0 auto!important;position:relative!important;max-width:100%!important;min-width:0!important;flex-wrap:wrap!important}}.category.iot-cat-overview-page,.category:has(.iot-cat-page),.category:has(.iot-dept-dashboard),.category:has(.iot-dashboard),.category.iot-widget-page,.mainbody.iot-cat-overview,.mainbody.iot-cat-overview-page,.mainbody.iot-cat-page,.mainbody.iot-dept-dashboard,.mainbody.iot-widget-page,.mainbody.iot-dashboard,.c-body:has(.iot-cat-overview-page)>.app-main-content,.c-body:has(.iot-cat-page)>.app-main-content,.c-body:has(.iot-dept-dashboard)>.app-main-content,.c-body:has(.iot-dashboard)>.app-main-content,.c-body:has(.iot-widget-page)>.app-main-content,.c-body:has(.iot-cat-overview-page) .app-main-content>div,.c-body:has(.iot-cat-page) .app-main-content>div,.c-body:has(.iot-dashboard) .app-main-content>div,.c-body:has(.iot-cat-overview-page) .fade,.c-body:has(.iot-cat-page) .fade,.c-body:has(.iot-dashboard) .fade{width:100%!important;max-width:100%!important;box-sizing:border-box}.c-body:has(.iot-cat-overview-page)>.app-main-content,.c-body:has(.iot-cat-page)>.app-main-content,.c-body:has(.iot-dept-dashboard)>.app-main-content,.c-body:has(.iot-dashboard)>.app-main-content,.c-body:has(.iot-widget-page)>.app-main-content{flex:1 1 auto!important;min-width:0!important;align-self:stretch!important}.iot-cat-overview>.container-fluid,.iot-cat-detail>.container-fluid,.iot-cat-page>.container-fluid,.iot-dept-dashboard>.container-fluid,.iot-widget-page>.container-fluid,.iot-dashboard .container-fluid,.iot-dashboard .container-fluid.iot-dashboard__inner{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;min-width:0;box-sizing:border-box}.c-default-layout,.c-body,.app-main-content,.mainbody,.iot-dashboard,.iot-cat-overview{min-width:0;max-width:100%;box-sizing:border-box}.iot-dashboard .iot-dashboard__card-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:1.5rem;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;box-sizing:border-box}.iot-dashboard .iot-dashboard__card-col{min-width:0!important;max-width:100%!important;width:auto!important;padding:0!important;box-sizing:border-box}.iot-dashboard .iot-category-card,.iot-dashboard .iot-category-card__link,.iot-dashboard .iot-category-card__today,.iot-dashboard .iot-category-card__chart,.iot-dashboard .iot-sparkline-wrap{min-width:0!important;max-width:100%}.iot-dashboard{overflow-x:hidden}.iot-cat-overview__grid,.iot-cat-page__grid,.iot-cat-detail__grid,.iot-cat-gencon-grid{width:100%;min-width:0;justify-items:stretch;align-items:stretch}.iot-cat-overview__card,.iot-cat-detail__panel,.iot-cat-gencon-card{width:100%;min-width:0;max-width:none;box-sizing:border-box}@media(max-width:991.98px){.iot-cat-overview__grid{grid-template-columns:1fr}.iot-dashboard .iot-dashboard__card-grid{grid-template-columns:minmax(0,1fr)!important}}@media(min-width:1920px){.iot-cat-overview__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:14px}.iot-cat-page__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}.iot-cat-overview__header-title,.iot-cat-detail__title{font-size:clamp(.78rem,.55vw,1.05rem)}.iot-cat-overview__card-title{font-size:clamp(.8rem,.6vw,1.05rem)}.iot-cat-overview__gauge-wrap,.iot-cat-overview__gauge-wrap--classic{max-width:clamp(200px,14vw,280px);max-width:clamp(200px,55cqi,280px)}.iot-dashboard .container-fluid.iot-dashboard__inner{max-width:100%!important;margin-left:auto!important;margin-right:auto!important}.iot-dept-dashboard .iot-cat-gencon-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}}@media(min-width:2560px){.iot-cat-overview__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,30rem),1fr));gap:16px}.iot-cat-overview__gauge-wrap,.iot-cat-overview__gauge-wrap--classic{max-width:clamp(220px,16vw,320px);max-width:clamp(220px,58cqi,320px)}.iot-cat-overview__header{min-height:58px}.iot-dashboard .iot-dashboard__card-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px}}@media(min-width:3200px){.iot-cat-overview__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,32rem),1fr));gap:20px}.iot-cat-overview__gauge-wrap,.iot-cat-overview__gauge-wrap--classic{max-width:clamp(240px,18vw,360px);max-width:clamp(240px,60cqi,360px)}.iot-cat-overview__card{padding:16px 16px 14px}.iot-cat-overview__dual-panel{gap:12px}.iot-dashboard .iot-dashboard__card-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px}}:root:not([data-theme=dark]) .modal-content.iot-health-modal .modal-header,:root:not([data-theme=dark]) .iot-health-modal .modal-header.iot-health-modal__header{color:var(--text-on-primary)!important}:root:not([data-theme=dark]) .iot-health-modal .modal-title,:root:not([data-theme=dark]) .iot-health-modal .iot-health-modal__title{color:var(--text-on-primary)!important}:root:not([data-theme=dark]) body{background-color:var(--bg-primary)!important}:root:not([data-theme=dark]) .mainbody,:root:not([data-theme=dark]) .c-main,:root:not([data-theme=dark]) .app-main-content,:root:not([data-theme=dark]) .c-wrapper,:root:not([data-theme=dark]) .c-body{background-color:var(--shell-bg, var(--bg-primary))!important}:root:not([data-theme=dark]) .bg-white{background-color:var(--bg-elevated)!important}:root:not([data-theme=dark]) .bg-grey{background-color:var(--bg-secondary)!important}:root:not([data-theme=dark]) .box-shadow{background-color:var(--bg-elevated);border:1px solid var(--border-color)}:root:not([data-theme=dark]) .card,:root:not([data-theme=dark]) .card-body,:root:not([data-theme=dark]) .modal-content,:root:not([data-theme=dark]) .dropdown-menu,:root:not([data-theme=dark]) .list-group-item{background-color:var(--bg-elevated);border-color:var(--border-color);color:var(--text-primary)}:root:not([data-theme=dark]) .custom-select,:root:not([data-theme=dark]) input.custom-select,:root:not([data-theme=dark]) select.custom-select,:root:not([data-theme=dark]) .form-control,:root:not([data-theme=dark]) textarea,:root:not([data-theme=dark]) input[type=date],:root:not([data-theme=dark]) input[type=datetime-local],:root:not([data-theme=dark]) input[type=time],:root:not([data-theme=dark]) input[type=number],:root:not([data-theme=dark]) input[type=text],:root:not([data-theme=dark]) input[type=password],:root:not([data-theme=dark]) select{background-color:var(--bg-input)!important;border-color:var(--border-color-input)!important;color:var(--text-primary)!important}:root:not([data-theme=dark]) .table{color:var(--text-primary);background-color:transparent}:root:not([data-theme=dark]) .table td,:root:not([data-theme=dark]) .table th{border-color:var(--border-color)}:root:not([data-theme=dark]) .table-striped tbody tr:nth-of-type(odd),:root:not([data-theme=dark]) .table tbody tr:nth-child(odd){background-color:var(--iot-table-row-odd, var(--bg-surface-soft))}:root:not([data-theme=dark]) .table-striped tbody tr:nth-of-type(2n),:root:not([data-theme=dark]) .table tbody tr:nth-child(2n){background-color:var(--iot-table-row-even, var(--bg-elevated))}:root:not([data-theme=dark]) .searchbox .sBtn,:root:not([data-theme=dark]) .login-input{background-color:var(--bg-input)!important}:root:not([data-theme=dark]) select option{background-color:var(--bg-elevated)!important;color:var(--text-primary)!important}:root:not([data-theme=dark]) input:-webkit-autofill,:root:not([data-theme=dark]) input:-webkit-autofill:hover,:root:not([data-theme=dark]) input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg-input) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary)}:root:not([data-theme=dark]) .hexagon-shape{background-color:var(--bg-elevated)}:root:not([data-theme=dark]) .ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected,:root:not([data-theme=dark]) .ant-menu-item:hover,:root:not([data-theme=dark]) .ant-menu-item:active,:root:not([data-theme=dark]) .ant-menu-item a:hover{background-color:var(--bg-elevated)!important;border-color:var(--border-color)!important}.c-default-layout:has(.create-tags-page){align-items:stretch;height:auto!important;max-height:none!important;min-height:100vh!important;overflow:visible!important}.c-default-layout:has(.create-tags-page) .c-sidebar.sidebar-nav{height:auto!important;min-height:100%!important;max-height:none!important;align-self:stretch!important}html:has(.create-tags-page),body:has(.create-tags-page){overflow-x:hidden!important;overflow-y:auto!important;height:auto!important}.c-wrapper:has(.create-tags-page){height:auto!important;max-height:none!important;min-height:100vh!important;overflow:visible!important}.c-body:has(.create-tags-page){height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}.app-main-content:has(.create-tags-page),.mainbody:has(.create-tags-page),.c-body:has(.create-tags-page) .mainbody,.c-body:has(.create-tags-page) .app-main-content{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;padding:0!important}.c-body:has(.create-tags-page) .mainbody>div,.c-body:has(.create-tags-page) .app-main-content>div,.c-body:has(.create-tags-page) .fade,.c-body:has(.create-tags-page) .fade.show{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;opacity:1!important}.create-tags-page,.create-tags-page.iot-setup-page,.create-tags-page.iot-setup-form-page{display:flex!important;flex-direction:column!important;align-items:stretch!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}.create-tags-page .iot-setup-table-section,.create-tags-page .iot-setup-form-panel,.create-tags-page .iot-settings-card,.create-tags-page .box-shadow{overflow:visible!important;max-height:none!important}.create-tags-page .iot-setup-table-toolbar{position:relative!important;top:auto!important;margin:10px}.c-wrapper.iot-setup-list-active{display:flex!important;flex-direction:column!important;overflow:hidden!important;height:100vh!important;max-height:100vh!important}.c-body.iot-setup-list-active .mainbody,.c-body.iot-setup-list-active .app-main-content{overflow:hidden!important;display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;max-height:100%!important;padding:0!important}.c-body.iot-setup-list-active .mainbody>div,.c-body.iot-setup-list-active .app-main-content>div{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;overflow:hidden!important}.c-body.iot-setup-list-active .fade,.c-body.iot-setup-list-active .fade.show{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;overflow:hidden!important;opacity:1!important}.iot-setup-list-page{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;overflow:hidden!important}.iot-setup-list-page .iot-setup-table-section,.iot-setup-list-page .iot-setup-table-panel{flex:1 1 auto!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.iot-setup-list-page .iot-setup-table-card{display:flex!important;flex-direction:column!important;overflow:hidden!important;flex:1 1 0!important;min-height:0!important}.iot-setup-list-page .iot-table-head{flex:0 0 auto!important;flex-shrink:0!important;position:relative!important;z-index:20!important;background:var(--iot-table-header-bg, var(--bg-table-header))!important}.iot-setup-list-page .iot-table-body-scroll{flex:1 1 0!important;min-height:0!important;overflow:auto!important;overflow-x:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.iot-setup-list-page .iot-setup-table-pagination{flex:0 0 auto!important;flex-shrink:0!important}.c-body:has(.iot-dashboard),.c-body:has(.iot-dashboard) .app-main-content,.c-body:has(.iot-dashboard) .mainbody,.c-body:has(.iot-dashboard) .category,.c-body:has(.iot-dashboard) .fade,.c-body:has(.iot-dashboard) .iot-dashboard,.c-body:has(.iot-dashboard) .bg-grey{background:var(--shell-bg, var(--bg-primary))!important;background-image:none!important}.c-body:has(.iot-dashboard) .app-main-content,.c-body:has(.iot-dashboard) .app-main-content>div,.c-body:has(.iot-dashboard) .app-main-content .fade,.c-body:has(.iot-dashboard) .category:has(.iot-dashboard),.c-body:has(.iot-dashboard) .iot-dashboard{display:flex;flex-direction:column;flex:1 1 auto;min-height:100%}.c-body:has(.iot-dashboard) .iot-dashboard{--iot-page-bg: var(--shell-bg, var(--bg-primary))}:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page),:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page) .app-main-content,:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page) .mainbody,:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page) .category,:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page) .fade,:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page) .iot-cat-overview,:root:not([data-theme=dark]) .c-body:has(.iot-cat-overview-page) .bg-grey{background:radial-gradient(circle at 12% 6%,rgba(59,130,246,.12),transparent 30%),radial-gradient(circle at 88% 8%,rgba(59,130,246,.08),transparent 26%),linear-gradient(180deg,#e1eaf5,#d5e1ef)!important;background-color:transparent!important}[data-theme=dark] .c-body:has(.iot-cat-overview-page),[data-theme=dark] .c-body:has(.iot-cat-overview-page) .app-main-content,[data-theme=dark] .c-body:has(.iot-cat-overview-page) .mainbody,[data-theme=dark] .c-body:has(.iot-cat-overview-page) .category,[data-theme=dark] .c-body:has(.iot-cat-overview-page) .fade,[data-theme=dark] .c-body:has(.iot-cat-overview-page) .iot-cat-overview,[data-theme=dark] .c-body:has(.iot-cat-overview-page) .bg-grey{background:#060d18!important;background-color:#060d18!important}.c-body:has(.iot-cat-overview-page) .app-main-content,.c-body:has(.iot-cat-overview-page) .app-main-content>div,.c-body:has(.iot-cat-overview-page) .app-main-content .fade,.c-body:has(.iot-cat-overview-page) .category,.c-body:has(.iot-cat-overview-page) .iot-cat-overview{display:block;flex:none;height:auto;max-height:none;min-height:0;overflow:visible;align-self:stretch;width:100%}.c-body:has(.iot-cat-overview-page) .iot-cat-overview{min-height:calc(100vh - 56px)}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)),.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .mainbody,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .category,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .fade,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .iot-cat-overview,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .bg-grey,.c-body:has(.iot-dept-dashboard),.c-body:has(.iot-dept-dashboard) .app-main-content,.c-body:has(.iot-dept-dashboard) .mainbody,.c-body:has(.iot-dept-dashboard) .category,.c-body:has(.iot-dept-dashboard) .fade,.c-body:has(.iot-dept-dashboard) .iot-cat-overview,.c-body:has(.iot-dept-dashboard) .bg-grey{background:var(--shell-bg, var(--bg-primary))!important;background-image:none!important}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content>div,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .app-main-content .fade,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .category,.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .iot-cat-overview,.c-body:has(.iot-dept-dashboard) .app-main-content,.c-body:has(.iot-dept-dashboard) .app-main-content>div,.c-body:has(.iot-dept-dashboard) .app-main-content .fade,.c-body:has(.iot-dept-dashboard) .category,.c-body:has(.iot-dept-dashboard) .iot-cat-overview{display:block;flex:none;height:auto;max-height:none;min-height:0;overflow:visible;align-self:stretch;width:100%}.c-body:has(.iot-cat-page):not(:has(.iot-cat-overview-page)) .iot-cat-overview,.c-body:has(.iot-dept-dashboard) .iot-cat-overview{--cat-page-bg: var(--shell-bg, var(--bg-primary));background:var(--shell-bg, var(--bg-primary))!important;min-height:calc(100vh - 56px)}.login-screen{--login-accent: var(--color-primary);--login-accent-strong: var(--color-primary-hover);--login-accent-soft: rgba(59, 130, 246, .16);--login-page-bg: #e8eef5;--login-frame-bg: #f4f7fb;--login-card-bg: #ffffff;--login-text: #0f172a;--login-text-soft: #64748b;--login-border: rgba(15, 23, 42, .1);--login-input-bg: #f1f5f9;--login-input-border: #d6dee8;--login-icon: var(--color-primary);--login-bar-bg: rgba(255, 255, 255, .72);--login-btn-gradient: linear-gradient(90deg, var(--brand-mid) 0%, var(--color-primary) 100%);--login-metric-bg: rgba(255, 255, 255, .94);--login-glow: 0 0 0 1px rgba(59, 130, 246, .08), 0 18px 48px rgba(15, 23, 42, .1);width:100%;min-height:100vh;min-height:100dvh;display:flex;align-items:stretch;justify-content:stretch;padding:0;background:var(--login-page-bg);color:var(--login-text);box-sizing:border-box;overflow-x:hidden;color-scheme:light}[data-theme=dark] .login-screen{--login-page-bg: #010813;--login-frame-bg: #010813;--login-card-bg: #0c1622;--login-text: #f8fafc;--login-text-soft: #94a3b8;--login-border: rgba(148, 163, 184, .16);--login-input-bg: #0b1522;--login-input-border: rgba(148, 163, 184, .22);--login-icon: var(--color-accent);--login-bar-bg: #060e18;--login-btn-gradient: linear-gradient(90deg, var(--brand-mid) 0%, var(--color-primary) 100%);--login-metric-bg: #0a121e;--login-glow: 0 0 0 1px rgba(59, 130, 246, .12), 0 20px 50px rgba(0, 0, 0, .45);--login-accent-soft: rgba(59, 130, 246, .18);color-scheme:dark}.login-screen *,.login-screen *:before,.login-screen *:after{box-sizing:border-box}.login-screen__frame{width:100%;min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:var(--login-frame-bg)}.login-screen__top{position:relative;z-index:3;padding:clamp(18px,2.4vw,28px) clamp(20px,3vw,40px) 0}.login-screen__logo{display:block;height:clamp(44px,5.5vh,58px);width:auto;max-width:170px;object-fit:contain;mix-blend-mode:lighten}[data-theme=light] .login-screen__logo{filter:invert(1);mix-blend-mode:darken}.login-screen__body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.9fr);align-items:center;gap:clamp(12px,2vw,28px);min-height:0;padding:8px clamp(20px,3vw,40px) 12px}.login-screen__visual{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;height:100%;padding-right:clamp(100px,16%,180px)}.login-screen__hero-img{display:block;width:100%;max-width:680px;max-height:min(560px,62dvh);height:auto;object-fit:contain;filter:drop-shadow(0 22px 40px rgba(0,0,0,.35));pointer-events:none;-webkit-user-select:none;user-select:none}[data-theme=light] .login-screen__hero-img{filter:drop-shadow(0 16px 28px rgba(15,23,42,.14))}.login-screen__metrics{list-style:none;margin:0;padding:0;position:absolute;right:0;top:50%;transform:translateY(-50%);width:min(180px,32%);display:flex;flex-direction:column;gap:8px;z-index:2}.login-screen__metric{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--login-border);border-radius:12px;background:var(--login-metric-bg);box-shadow:0 8px 18px #00000029;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-screen__metric-icon{width:30px;height:30px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;line-height:0}.login-screen__metric-icon svg{width:12px!important;height:12px!important;max-width:12px!important;max-height:12px!important;display:block!important}.login-screen__metric--power .login-screen__metric-icon{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover))}.login-screen__metric--water .login-screen__metric-icon{background:linear-gradient(135deg,#38bdf8,#0284c7)}.login-screen__metric--gas .login-screen__metric-icon{background:linear-gradient(135deg,#fb923c,#ea580c)}.login-screen__metric--steam .login-screen__metric-icon{background:linear-gradient(135deg,#a78bfa,#7c3aed)}.login-screen__metric-body{display:flex;flex-direction:column;min-width:0}.login-screen__metric-label{font-size:.6rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--login-text-soft)}.login-screen__metric-value{font-size:.8rem;font-weight:700;color:var(--login-text);line-height:1.25;white-space:nowrap}.login-screen__metric-value small{font-size:.66rem;font-weight:600;color:var(--login-text-soft)}.login-screen__aside{display:flex;align-items:center;justify-content:center;min-width:0;padding:clamp(8px,1.5vw,18px) 0}.login-screen__card{position:relative;width:min(420px,100%);display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vh,40px) clamp(22px,3vw,34px);background:var(--login-card-bg);border:1px solid var(--login-border);border-radius:18px;box-shadow:var(--login-glow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-screen__mobile-brand{display:none}.login-screen__theme{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;gap:10px;z-index:3}.login-screen__theme-label{font-size:.68rem;font-weight:700;letter-spacing:.1em;color:var(--login-text-soft);line-height:1}.login-screen__theme-switch{display:inline-flex;align-items:center;justify-content:center;height:34px;max-height:34px;padding:3px;border:1px solid var(--login-border);border-radius:999px;background:var(--login-input-bg);box-sizing:border-box;overflow:hidden;flex-shrink:0;line-height:1}.login-screen__theme-btn{box-sizing:border-box;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;max-width:28px!important;max-height:28px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;align-self:center;overflow:hidden;line-height:0;font-size:0;background:transparent!important;color:var(--login-text-soft);cursor:pointer;outline:none;box-shadow:none!important;transition:background .2s ease,color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-moz-appearance:none;appearance:none;-webkit-appearance:none}.login-screen__theme-btn svg{width:13px!important;height:13px!important;max-width:13px!important;max-height:13px!important;display:block!important}.login-screen__theme-btn:hover,.login-screen__theme-btn:focus,.login-screen__theme-btn:active{border:0!important;outline:none;box-shadow:none!important;color:var(--login-text);background:transparent!important}.login-screen__theme-btn:focus-visible{outline:2px solid var(--login-accent);outline-offset:1px}.login-screen__theme-btn.is-active,.login-screen__theme-btn.is-active:hover,.login-screen__theme-btn.is-active:focus,.login-screen__theme-btn.is-active:active{background:var(--login-accent)!important;color:#fff!important;border:0!important}.login-screen__form-head{margin:4px 0 26px;padding-right:130px}.login-screen__form-head h2{margin:0;font-size:clamp(1.55rem,2vw,1.95rem);font-weight:700;letter-spacing:-.02em;color:var(--login-text)}.login-screen__form-head p{margin:8px 0 0;font-size:.9rem;color:var(--login-text-soft)}.login-screen__accent{color:var(--login-accent)}.login-screen__field{margin-bottom:16px}.login-screen__field label{display:block;margin-bottom:7px;font-size:.8rem;font-weight:600;color:var(--login-text)}.login-screen__field:last-of-type{margin-bottom:22px}.login-screen__input{display:flex;align-items:center;width:100%;height:48px;padding:0 8px 0 12px;border:1px solid var(--login-input-border);border-radius:12px;background-color:var(--login-input-bg);transition:border-color .2s ease,box-shadow .2s ease;overflow:hidden}.login-screen__input:focus-within{border-color:var(--login-accent);box-shadow:0 0 0 3px var(--login-accent-soft)}.login-screen__input input,.login-screen__input input[type=text],.login-screen__input input[type=email],.login-screen__input input[type=password]{flex:1 1 auto;width:100%;min-width:0;height:100%;margin:0;padding:0 10px;border:0!important;border-radius:0!important;outline:none!important;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--login-input-bg)!important;background-color:var(--login-input-bg)!important;background-image:none!important;box-shadow:none!important;color:var(--login-text)!important;-webkit-text-fill-color:var(--login-text)!important;caret-color:var(--login-text);font-size:.9rem;line-height:normal}.login-screen__input input::placeholder,.login-screen__input input[type=text]::placeholder,.login-screen__input input[type=email]::placeholder,.login-screen__input input[type=password]::placeholder{color:var(--login-text-soft)!important;-webkit-text-fill-color:var(--login-text-soft)!important;opacity:.85}.login-screen__input input::-ms-reveal,.login-screen__input input::-ms-clear,.login-screen__input input[type=text]::-ms-reveal,.login-screen__input input[type=text]::-ms-clear,.login-screen__input input[type=email]::-ms-reveal,.login-screen__input input[type=email]::-ms-clear,.login-screen__input input[type=password]::-ms-reveal,.login-screen__input input[type=password]::-ms-clear{display:none}.login-screen__input input:hover,.login-screen__input input:focus,.login-screen__input input:active,.login-screen__input input[type=text]:hover,.login-screen__input input[type=text]:focus,.login-screen__input input[type=text]:active,.login-screen__input input[type=email]:hover,.login-screen__input input[type=email]:focus,.login-screen__input input[type=email]:active,.login-screen__input input[type=password]:hover,.login-screen__input input[type=password]:focus,.login-screen__input input[type=password]:active{border:0!important;outline:none!important;box-shadow:none!important;background:var(--login-input-bg)!important;background-color:var(--login-input-bg)!important;background-image:none!important;color:var(--login-text)!important;-webkit-text-fill-color:var(--login-text)!important}.login-screen__input input:-webkit-autofill,.login-screen__input input:-webkit-autofill:hover,.login-screen__input input:-webkit-autofill:focus,.login-screen__input input:-webkit-autofill:active,.login-screen__input input[type=text]:-webkit-autofill,.login-screen__input input[type=text]:-webkit-autofill:hover,.login-screen__input input[type=text]:-webkit-autofill:focus,.login-screen__input input[type=text]:-webkit-autofill:active,.login-screen__input input[type=email]:-webkit-autofill,.login-screen__input input[type=email]:-webkit-autofill:hover,.login-screen__input input[type=email]:-webkit-autofill:focus,.login-screen__input input[type=email]:-webkit-autofill:active,.login-screen__input input[type=password]:-webkit-autofill,.login-screen__input input[type=password]:-webkit-autofill:hover,.login-screen__input input[type=password]:-webkit-autofill:focus,.login-screen__input input[type=password]:-webkit-autofill:active{-webkit-text-fill-color:var(--login-text)!important;caret-color:var(--login-text)!important;border:0!important;background:var(--login-input-bg)!important;background-color:var(--login-input-bg)!important;background-image:none!important;-webkit-box-shadow:0 0 0 1000px var(--login-input-bg) inset!important;box-shadow:0 0 0 1000px var(--login-input-bg) inset!important;transition:background-color 99999s ease-in-out 0s,color 99999s ease-in-out 0s}.login-screen__affix{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;color:var(--login-icon);line-height:0}.login-screen__affix svg{width:15px!important;height:15px!important;max-width:15px!important;max-height:15px!important;display:block!important}.login-screen__affix--btn{margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:var(--login-text-soft);cursor:pointer}.login-screen__affix--btn:hover{color:var(--login-text)}.login-screen__row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 20px}.login-screen__row--center{justify-content:center;margin:22px 0 0}.login-screen__back,.login-screen__forgot{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;color:var(--login-accent)!important;text-decoration:none}.login-screen__back svg,.login-screen__forgot svg{width:12px!important;height:12px!important;max-width:12px!important;max-height:12px!important}.login-screen__back:hover,.login-screen__forgot:hover{color:var(--login-accent-strong)!important;text-decoration:underline}.login-screen__submit{width:100%;height:50px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:space-between;padding:0 7px 0 22px;background:var(--login-btn-gradient);color:#fff;font-size:.98rem;font-weight:700;cursor:pointer;transition:transform .15s ease,filter .2s ease,box-shadow .2s ease;box-shadow:0 10px 24px #3b82f647}.login-screen__submit:hover:not(:disabled){filter:brightness(1.05)}.login-screen__submit:active:not(:disabled){transform:translateY(1px)}.login-screen__submit:disabled{opacity:.75;cursor:not-allowed}.login-screen__submit-arrow{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff3;font-size:.8rem;line-height:0;flex-shrink:0}.login-screen__submit-arrow svg{width:12px!important;height:12px!important;max-width:12px!important;max-height:12px!important;display:block!important}.login-screen__spinner{width:20px;height:20px;margin:0 auto;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:login-spin .7s linear infinite}@keyframes login-spin{to{transform:rotate(360deg)}}.login-screen__bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 20px;padding:14px clamp(20px,3vw,40px);border-top:1px solid var(--login-border);background:var(--login-bar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.78rem;color:var(--login-text-soft)}.login-screen__bar-left{display:inline-flex;align-items:center;gap:10px;min-width:0}.login-screen__shield{position:relative;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;color:var(--login-accent);flex-shrink:0;line-height:0}.login-screen__shield>svg:first-child{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}.login-screen__shield-check{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);color:#fff!important;width:8px!important;height:8px!important;max-width:8px!important;max-height:8px!important}.login-screen__bar-right strong{color:var(--login-accent);font-weight:700}@media(max-width:1100px){.login-screen__body{grid-template-columns:minmax(0,1.25fr) minmax(320px,1fr)}.login-screen__visual{padding-right:0;flex-direction:column;gap:14px}.login-screen__metrics{position:static;transform:none;width:100%;max-width:420px;display:grid;grid-template-columns:1fr 1fr}.login-screen__metric-value{white-space:normal}.login-screen__hero-img{max-width:460px}}@media(max-width:860px){.login-screen__body{grid-template-columns:1fr;grid-template-areas:"aside" "visual";padding:8px 16px 16px}.login-screen__visual{grid-area:visual;padding:8px 0 0}.login-screen__aside{grid-area:aside}.login-screen__card{width:100%;max-width:480px;margin:0 auto}.login-screen__top{display:none}.login-screen__mobile-brand{display:block;margin-bottom:16px}.login-screen__mobile-brand .login-screen__logo{height:48px}.login-screen__form-head{padding-right:0}.login-screen__hero-img{max-width:320px;max-height:240px}}@media(max-width:560px){.login-screen__body{padding:8px 14px 12px}.login-screen__visual{display:none}.login-screen__card{box-shadow:none;border:0;background:transparent;padding:56px 4px 12px}.login-screen__theme{top:8px;right:0}.login-screen__theme-label{display:none}.login-screen__bar{flex-direction:column;align-items:flex-start;padding:14px 16px 18px}.login-screen__form-head h2{font-size:1.5rem}}@media(max-height:700px)and (min-width:861px){.login-screen__top{padding-top:12px}.login-screen__logo{height:40px}.login-screen__hero-img{max-height:48dvh}.login-screen__card{padding:22px 24px}.login-screen__form-head{margin-bottom:16px}.login-screen__field{margin-bottom:12px}.login-screen__field:last-of-type{margin-bottom:16px}.login-screen__input,.login-screen__submit{height:44px}.login-screen__bar{padding-top:10px;padding-bottom:10px}}:root{--toastify-toast-offset: 20px;--toastify-toast-bottom: max(20px, env(safe-area-inset-bottom, 0px))}.Toastify__toast-container{z-index:200000!important;pointer-events:none}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom)}.Toastify__toast{overflow:hidden;margin-bottom:.75rem;padding:14px 40px 20px 14px;min-height:64px;pointer-events:auto}.Toastify__toast-body{padding:0;margin:0;line-height:1.45}.Toastify__toast-container button,.Toastify__close-button{min-width:0!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;box-sizing:border-box;font-size:inherit;font-weight:400;color:inherit}.Toastify__close-button{position:absolute!important;top:8px!important;right:8px!important;opacity:.75;line-height:1;cursor:pointer}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1;background:transparent!important;border:none!important;color:inherit!important}.Toastify__close-button>svg{width:14px;height:16px}.Toastify__progress-bar--wrp{height:4px;bottom:0;left:0;width:100%;overflow:hidden;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}html,body,#root{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;overflow-anchor:none}.c-default-layout{display:flex!important;flex-direction:row!important;align-items:stretch!important;width:100%!important;max-width:100%!important;min-height:100vh!important;min-width:0!important;height:100vh!important;height:100dvh!important;overflow-x:hidden!important;box-sizing:border-box!important}.c-default-layout>.c-sidebar,.c-sidebar.sidebar-nav{flex:0 0 var(--shell-sidebar-width, var(--sidebar-width, 200px))!important;width:var(--shell-sidebar-width, var(--sidebar-width, 200px))!important;min-width:var(--shell-sidebar-width, var(--sidebar-width, 200px))!important;max-width:var(--shell-sidebar-width, var(--sidebar-width, 200px))!important;align-self:stretch!important;height:100%!important;max-height:100%!important;overflow-x:hidden!important}@media(min-width:992px){.c-default-layout.sidebar-collapsed>.c-sidebar,.c-sidebar.sidebar-nav.sidebar-nav--collapsed,.c-sidebar.sidebar-nav.c-sidebar-minimized{flex:0 0 var(--shell-sidebar-collapsed-width, var(--sidebar-width-min, 64px))!important;width:var(--shell-sidebar-collapsed-width, var(--sidebar-width-min, 64px))!important;min-width:var(--shell-sidebar-collapsed-width, var(--sidebar-width-min, 64px))!important;max-width:var(--shell-sidebar-collapsed-width, var(--sidebar-width-min, 64px))!important}}.c-default-layout>.c-wrapper,.c-wrapper{flex:1!important;min-width:0!important;width:100%!important;max-width:100%!important;height:100%!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important}.c-body,.app-main-content,.app-main-content>div,.mainbody,.category,.container-fluid,.iot-dashboard,.iot-dashboard__inner,.iot-dashboard__section,.iot-cat-overview,.iot-cat-page,.iot-dept-dashboard,.iot-widget-page{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.c-body{flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important}.app-main-content .container,.app-main-content .container-fluid,.mainbody .container,.mainbody .container-fluid,.iot-dashboard .container-fluid.iot-dashboard__inner,.iot-cat-overview>.container-fluid,.iot-cat-page>.container-fluid,.iot-cat-detail>.container-fluid,.iot-dept-dashboard>.container-fluid,.iot-widget-page>.container-fluid{width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;min-width:0!important;box-sizing:border-box!important}.iot-dashboard{overflow-x:hidden!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:.75rem!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.iot-dashboard .iot-dashboard__kpi-group{display:flex!important;flex:1 1 auto!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:.75rem!important;min-width:0!important;width:auto!important;max-width:none!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card{flex:0 0 auto!important;min-width:0!important;width:auto!important;max-width:none!important;box-sizing:border-box!important}.iot-dashboard .iot-dashboard__header-actions,.iot-dashboard .iot-dashboard__header-sort{display:inline-flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;align-items:center!important;align-self:center!important;min-width:0!important;width:auto!important;max-width:none!important;margin-left:auto!important}.iot-dashboard .iot-kpi-card__label,.iot-dashboard .iot-kpi-card__value,.iot-dashboard .iot-kpi-card__status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iot-dashboard .iot-kpi-card__value-row{flex-wrap:nowrap!important}.iot-dashboard .iot-dashboard__card-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important;gap:1.5rem!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;box-sizing:border-box!important}@media(min-width:640px){.iot-dashboard .iot-dashboard__card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(min-width:1200px){.iot-dashboard .iot-dashboard__card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(min-width:2560px){.iot-dashboard .iot-dashboard__card-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}.iot-dashboard .iot-dashboard__card-col,.iot-dashboard .iot-category-card,.iot-dashboard .iot-category-card__link,.iot-dashboard .iot-category-card__today,.iot-dashboard .iot-category-card__chart,.iot-dashboard .iot-sparkline-wrap,.iot-dashboard .iot-sparkline,.iot-dashboard .iot-sparkline svg{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.iot-dashboard .iot-category-card,.iot-dashboard .iot-category-card__link{overflow:hidden!important}.iot-dashboard .iot-category-card__today{width:100%!important;max-width:100%!important;margin-left:0!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.iot-dashboard .iot-sparkline-wrap,.iot-dashboard .iot-sparkline,.iot-dashboard .iot-sparkline svg{overflow:hidden!important}.iot-dashboard .iot-dashboard__health-grid{min-width:0!important;width:100%!important;max-width:100%!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr))!important}.iot-cat-overview>.container-fluid,.iot-cat-overview__grid,.iot-cat-page__grid,.iot-cat-detail__grid,.iot-cat-gencon-grid{width:100%!important;max-width:100%!important;min-width:0!important}.iot-widget-page .iot-widget-sensor-grid{display:block!important;position:relative!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important}.iot-widget-page .iot-widget-sensor-card{position:absolute!important;max-width:100%!important}.iot-cat-overview__grid,.iot-cat-page__grid,.iot-cat-gencon-grid,.iot-dept-dashboard .iot-cat-gencon-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:1.5rem!important}@media(min-width:640px){.iot-cat-overview__grid,.iot-cat-page__grid,.iot-cat-gencon-grid,.iot-dept-dashboard .iot-cat-gencon-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(min-width:1200px){.iot-cat-page__grid,.iot-cat-gencon-grid,.iot-dept-dashboard .iot-cat-gencon-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(min-width:2560px){.iot-cat-overview__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.iot-cat-page__grid,.iot-cat-gencon-grid,.iot-dept-dashboard .iot-cat-gencon-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}.iot-cat-overview__card,.iot-cat-detail__panel,.iot-cat-gencon-card{width:100%;min-width:0;max-width:100%;box-sizing:border-box}@media(max-width:991.98px){.c-default-layout>.c-wrapper,.c-wrapper{flex:1!important;width:100%!important;max-width:100%!important;min-width:0!important}}@media(max-width:767.98px){.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:8px!important}.iot-dashboard .iot-dashboard__kpi-group{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;max-width:100%!important;gap:8px!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card{flex:none!important;width:100%!important}.iot-dashboard .iot-dashboard__header.iot-dashboard__kpi-strip .iot-kpi-card--status{grid-column:1/-1}.iot-dashboard .iot-dashboard__header-actions,.iot-dashboard .iot-dashboard__header-sort{width:100%!important;max-width:100%!important;margin-left:0!important}}@media(max-width:639.98px){.iot-dashboard .iot-category-card__today{grid-template-columns:minmax(0,1fr)!important}}@media(max-width:400px){.iot-dashboard .iot-dashboard__kpi-group{grid-template-columns:1fr!important}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0px;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
