*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;color:#111827;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.5;margin:0;min-height:100vh}h1,h2,h3,h4,h5,h6{color:#111827;line-height:1.25;margin:0 0 8px}h1{font-size:24px;font-weight:700}h2{font-size:20px}h2,h3{font-weight:600}h3{font-size:18px}h4,h5,h6{font-size:16px;font-weight:600}p{margin:0 0 12px}a{color:#0059b2;text-decoration:none}a:hover{text-decoration:underline}code,kbd,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}button,input,select,textarea{color:inherit;font:inherit}[role=button],button{cursor:pointer}button:disabled{cursor:not-allowed}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #0059b2;outline-offset:2px}img,svg{max-width:100%}hr{border:0;border-top:1px solid #e5e7eb;margin:16px 0}::selection{background-color:#e3eef9}@media(prefers-reduced-motion:reduce){*,:after,:before{-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.ui-page{margin:0 auto;max-width:1200px;padding:16px;width:100%}@media(min-width:600px){.ui-page{padding:24px}}.ui-page--narrow{max-width:720px}.ui-page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.ui-page-header__text{flex:1 1 240px;min-width:0}.ui-page-header__title{font-size:24px;font-weight:700;margin:0;overflow-wrap:anywhere}@media(min-width:1024px){.ui-page-header__title{font-size:28px}}.ui-page-header__description{color:#6b7280;margin:4px 0 0}.ui-page-header__actions{display:flex;flex-wrap:wrap;gap:8px}.ui-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);padding:16px}@media(min-width:600px){.ui-card{padding:20px}}.ui-card+.ui-card{margin-top:12px}.ui-card__header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:12px}.ui-card__title{font-size:18px;font-weight:600;margin:0}.ui-card__subtitle{color:#6b7280;font-size:14px;margin:2px 0 0}.ui-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.ui-grid>.ui-card+.ui-card{margin-top:0}.ui-btn{align-items:center;border:1px solid transparent;border-radius:8px;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;line-height:1.2;min-height:44px;padding:12px 16px;text-decoration:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease;white-space:nowrap}.ui-btn:focus{outline:none}.ui-btn:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.ui-btn:hover{text-decoration:none}.ui-btn--primary{background-color:#0059b2;color:#fff}.ui-btn--primary:hover:not(:disabled){background-color:#00417f}.ui-btn--secondary{background-color:#fff;border-color:#0059b2;color:#0059b2}.ui-btn--secondary:hover:not(:disabled){background-color:#e3eef9}.ui-btn--danger{background-color:#dc2626;color:#fff}.ui-btn--danger:hover:not(:disabled){background-color:#bb1e1e}.ui-btn--ghost{background-color:transparent;color:#0059b2}.ui-btn--ghost:hover:not(:disabled){background-color:#f3f4f6}.ui-btn--tone-danger:not(:disabled){border-color:currentColor;color:#dc2626}.ui-btn--tone-danger:not(:disabled):hover{background-color:#fee2e2}.ui-btn--ghost.ui-btn--tone-danger:not(:disabled){border-color:transparent}.ui-btn--sm{font-size:14px;min-height:36px;padding:4px 12px}.ui-btn--block{width:100%}.ui-btn:disabled,.ui-btn[aria-disabled=true]{background-color:#e5e7eb;border-color:transparent;color:#9ca3af;cursor:not-allowed}.ui-segmented{background-color:#fff;border:1px solid #0059b2;border-radius:8px;display:inline-flex;max-width:100%;overflow:hidden}.ui-segmented--block{display:flex;width:100%}.ui-segmented--block>button{flex:1 1;min-width:0}.ui-segmented>button{background-color:#fff;border:0;color:#0059b2;cursor:pointer;font-size:14px;font-weight:500;min-height:44px;padding:8px 12px;transition:background-color .12s ease;white-space:nowrap}.ui-segmented>button:focus{outline:none}.ui-segmented>button:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.ui-segmented>button+button{border-left:1px solid #0059b2}.ui-segmented>button:hover:not(:disabled){background-color:#e3eef9}.ui-segmented>button[aria-pressed=true]{background-color:#0059b2;color:#fff;font-weight:600}.ui-segmented>button:disabled{cursor:default}.ui-segmented>button:disabled:not([aria-pressed=true]){color:#9ca3af}.ui-chips{display:flex;flex-wrap:wrap;gap:8px}.ui-chip{background-color:#fff;border:1px solid #e5e7eb;border-radius:999px;color:#111827;cursor:pointer;font-size:14px;font-weight:500;min-height:44px;padding:4px 16px;transition:background-color .12s ease,border-color .12s ease}.ui-chip:focus{outline:none}.ui-chip:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.ui-chip:hover:not(:disabled){border-color:#0059b2}.ui-chip[aria-pressed=true]{background-color:#0059b2;border-color:#0059b2;color:#fff;font-weight:600}.ui-chip:disabled{cursor:default}.ui-chip:disabled:not([aria-pressed=true]){color:#9ca3af}.ui-alert{border-radius:8px;font-size:14px;margin:0 0 12px;padding:12px 16px}.ui-alert--error{background-color:#fee2e2;color:#dc2626}.ui-alert--warning{background-color:#fef3c7;color:#9d5604}.ui-alert--success{background-color:#dcfce7;color:#15803d}.ui-alert--info{background-color:#e3eef9;color:#0059b2}.ui-field{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.ui-field__label{color:#6b7280;font-size:14px;font-weight:500}.ui-field__hint{color:#6b7280;font-size:12px}.ui-field__error{color:#dc2626;font-size:14px}.ui-input,.ui-select,.ui-textarea{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#111827;font-size:16px;min-height:44px;padding:12px;transition:border-color .12s ease;width:100%}.ui-input::-webkit-input-placeholder,.ui-select::-webkit-input-placeholder,.ui-textarea::-webkit-input-placeholder{color:#9ca3af}.ui-input::placeholder,.ui-select::placeholder,.ui-textarea::placeholder{color:#9ca3af}.ui-input:hover:not(:disabled),.ui-select:hover:not(:disabled),.ui-textarea:hover:not(:disabled){border-color:#d1d5db}.ui-input:focus,.ui-input:focus-visible,.ui-select:focus,.ui-select:focus-visible,.ui-textarea:focus,.ui-textarea:focus-visible{border-color:#0059b2;box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background-color:#f3f4f6;color:#9ca3af}.ui-input[aria-invalid=true],.ui-select[aria-invalid=true],.ui-textarea[aria-invalid=true]{border-color:#dc2626}.ui-select{padding-bottom:0;padding-top:0}.ui-pill{align-items:center;background-color:#f3f4f6;border-radius:999px;color:#374151;display:inline-flex;font-size:12px;font-weight:700;gap:4px;line-height:1.5;padding:2px 8px;white-space:nowrap}.ui-pill__dot{background-color:currentColor;border-radius:50%;height:8px;width:8px}.ui-pill--success{background-color:#dcfce7;color:#15803d}.ui-pill--warning{background-color:#fef3c7;color:#9d5604}.ui-pill--error{background-color:#fee2e2;color:#dc2626}.ui-pill--info{background-color:#e3eef9;color:#0059b2}.ui-state{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:8px;padding:32px 16px;text-align:center}.ui-state__icon{color:#9ca3af;font-size:40px;line-height:1}.ui-state__title{color:#111827;font-size:18px;font-weight:600;margin:0}.ui-state__body{margin:0;max-width:48ch}.ui-state__action{margin-top:8px}.ui-state--error .ui-state__icon{color:#dc2626}.ui-spinner{-webkit-animation:ui-spin .8s linear infinite;animation:ui-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#0059b2;height:32px;width:32px}@-webkit-keyframes ui-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes ui-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.ui-table{border-collapse:collapse;font-size:14px;width:100%}.ui-table td,.ui-table th{border-bottom:1px solid #e5e7eb;padding:12px;text-align:left;vertical-align:top}.ui-table th{background-color:#f9fafb;color:#6b7280;font-weight:600}@media(max-width:599.98px){.ui-table thead{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ui-table tr{border-bottom:1px solid #e5e7eb;display:block;padding:8px 0}.ui-table td{border:0;display:flex;gap:12px;justify-content:space-between;padding:4px 0}.ui-table td[data-label]:before{color:#6b7280;content:attr(data-label);font-weight:600}}.ui-visually-hidden{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.App{height:100vh}.auth-page{align-items:center;background-color:#f9fafb;display:flex;flex-direction:column;justify-content:flex-start;min-height:100vh;min-height:100dvh;padding:32px 16px}@media(min-width:600px){.auth-page{justify-content:center;padding:40px 24px}}.auth-page__brand{color:#0059b2;font-size:28px;font-weight:700;letter-spacing:-.01em;margin:0 0 24px;text-align:center}.auth-page__card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);max-width:420px;padding:24px 16px;width:100%}@media(min-width:600px){.auth-page__card{padding:32px}}.auth-page__card--wide{max-width:480px}.auth-page__title{font-size:24px;font-weight:700;margin:0 0 4px}.auth-page__subtitle{color:#6b7280;font-size:14px;margin:0 0 24px}.auth-page__form{display:flex;flex-direction:column;margin-top:20px}.auth-page__subtitle+.auth-page__form{margin-top:0}.auth-page__error{background-color:#fee2e2;border-radius:8px;color:#dc2626;font-size:14px;margin:0 0 16px;padding:12px}.auth-page__password{position:relative}.auth-page__password .ui-input{padding-right:48px}.auth-page__toggle{align-items:center;background:transparent;border:0;border-radius:8px;bottom:0;color:#6b7280;cursor:pointer;display:inline-flex;justify-content:center;padding:0;position:absolute;right:0;top:0;width:44px}.auth-page__toggle:focus{outline:none}.auth-page__toggle:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.auth-page__toggle:hover{color:#111827}.auth-page__toggle svg{font-size:20px}.auth-page__checklist{font-size:14px;list-style:none;margin:8px 0 0;padding:0}.auth-page__checklist li{align-items:center;display:flex;gap:8px;padding:2px 0}.auth-page__checklist .icon{font-size:18px}.auth-page__checklist .valid{color:#15803d}.auth-page__checklist .invalid{color:#6b7280}.auth-page__checklist .invalid .icon{color:#dc2626}.auth-page__submit{margin-top:4px}.auth-page__submit .spinner-container{height:20px;width:20px}.auth-page__submit .spinner{border-color:hsla(0,0%,100%,.35);border-width:2px;height:20px;width:20px}.auth-page__links{align-items:center;display:flex;flex-direction:column;gap:4px;margin-top:20px}.auth-page__link{background:transparent;border:0;border-radius:6px;color:#0059b2;cursor:pointer;font:inherit;font-size:14px;font-weight:500;min-height:36px;padding:4px 8px}.auth-page__link:focus{outline:none}.auth-page__link:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.auth-page__link:hover{text-decoration:underline}.auth-page__link--inert{align-items:center;color:#6b7280;cursor:default;display:inline-flex}.auth-page__link--inert:hover{text-decoration:none}.auth-page__footer{color:#6b7280;font-size:14px;margin-top:20px;text-align:center}.spinner-container{align-items:center;display:flex;justify-content:center}.spinner{-webkit-animation:spin .8s linear infinite;animation:spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#0059b2;height:32px;width:32px}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-shell__body{display:flex;flex:1 1;min-height:0}.app-shell__sidebar{display:none}@media(min-width:1024px){.app-shell__sidebar{background-color:#fff;border-right:1px solid #e5e7eb;display:block;flex-shrink:0;height:calc(100vh - 56px);overflow-y:auto;position:-webkit-sticky;position:sticky;top:56px;width:248px}}.app-shell__content{display:flex;flex:1 1;justify-content:center;min-width:0}.app-shell__drawer{width:min(300px,85vw)}.app-shell__drawer-brand{align-items:center;border-bottom:1px solid #e5e7eb;color:#0059b2;display:flex;font-size:20px;font-weight:700;height:56px;padding:0 20px}.AccountDropdown{display:flex}.AccountDropdown__button{align-items:center;background:transparent;border:0;border-radius:999px;color:#374151;display:inline-flex;gap:8px;min-height:44px;padding:4px 8px}.AccountDropdown__button:focus{outline:none}.AccountDropdown__button:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.AccountDropdown__button:hover{background-color:#f3f4f6}.AccountDropdown__icon{color:#6b7280;font-size:32px!important}.AccountDropdown__name{display:none;font-size:14px;font-weight:600;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:600px){.AccountDropdown__name{display:inline}}.notification-bell{align-items:center;border-radius:999px;color:#4b5563;display:inline-flex;height:44px;justify-content:center;position:relative;width:44px}.notification-bell:focus{outline:none}.notification-bell:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.notification-bell:hover{background-color:#f3f4f6;color:#111827;text-decoration:none}.notification-bell-count{background-color:#dc2626;border:2px solid #fff;border-radius:999px;color:#fff;font-size:11px;font-weight:700;line-height:14px;min-width:18px;padding:0 4px;position:absolute;right:4px;text-align:center;top:6px}.TopNav{align-items:center;background-color:#fff;border-bottom:1px solid #e5e7eb;display:flex;gap:8px;height:56px;padding:0 8px;position:-webkit-sticky;position:sticky;top:0;z-index:100}@media(min-width:1024px){.TopNav{padding:0 16px 0 24px}}.TopNav__menu{align-items:center;background:transparent;border:0;border-radius:8px;color:#374151;display:inline-flex;height:44px;justify-content:center;width:44px}.TopNav__menu:focus{outline:none}.TopNav__menu:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.TopNav__menu:hover{background-color:#f3f4f6}@media(min-width:1024px){.TopNav__menu{display:none}}.TopNav__actions{align-items:center;display:flex;gap:4px;margin-left:auto}.sungate-logo{color:#0059b2;font-size:20px;font-weight:700;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-nav{padding:12px 8px}.side-nav__list,.side-nav__sublist{list-style:none;margin:0;padding:0}.side-nav__list>li+li{margin-top:2px}.side-nav__sublist{margin:2px 0 4px;padding-left:24px}.side-nav__link{align-items:center;background:transparent;border:0;border-radius:8px;color:#374151;display:flex;font-size:14px;font-weight:500;gap:12px;min-height:44px;padding:8px 12px;text-align:left;text-decoration:none;width:100%}.side-nav__link:focus{outline:none}.side-nav__link:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.side-nav__link:hover{background-color:#f3f4f6;color:#111827;text-decoration:none}.side-nav__link.active{background-color:#e3eef9;color:#0059b2;font-weight:600}.side-nav__link.active .side-nav__icon{color:#0059b2}.side-nav__icon{color:#6b7280;flex-shrink:0}.side-nav__label{flex:1 1}.side-nav__field{align-items:flex-start;flex-direction:column;gap:2px;min-height:0;padding-bottom:8px;padding-top:8px}.side-nav__field-name{overflow-wrap:anywhere}.online-badge{align-items:center;color:#111827;display:inline-flex;font-size:12px;font-weight:700;gap:4px}.online-badge-dot{background-color:#6b7280;border-radius:50%;height:8px;width:8px}.online-badge--online .online-badge-dot{background-color:#15803d}.online-badge--offline .online-badge-dot{background-color:#dc2626}.AddField__housing{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}.AddField__lookup{font-size:14px;margin:4px 0 0;min-height:1.5em}.AddField__note{font-weight:500}.AddField__note:before{background-color:currentColor;border-radius:50%;content:"";display:inline-block;height:8px;margin-right:8px;vertical-align:1px;width:8px}.AddField__note--good{color:#15803d}.AddField__note--caution{color:#9d5604}.AddField__note--bad{color:#dc2626}.AddField__note--checking{color:#6b7280;font-weight:400}.AddField__note--checking:before{display:none}.AddField__result{border:1px solid transparent;border-radius:8px;font-size:14px;margin:16px 0 0;padding:12px}.AddField__result--good{background-color:#dcfce7;color:#15803d}.AddField__result--caution{background-color:#fef3c7;border-color:#d97706;color:#1f2937}.AddField__result--bad{background-color:#fee2e2;color:#dc2626}.AddField__open{margin-top:12px}.history-container .history-filters{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:1fr;margin-bottom:24px}@media(min-width:600px){.history-container .history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.history-container .history-filters{grid-template-columns:repeat(4,minmax(0,1fr)) auto}}.history-container .history-filters .ui-field{margin-bottom:0;min-width:0}.history-container .history-filters .ui-input,.history-container .history-filters .ui-select{height:44px;padding-bottom:0;padding-top:0}.history-container .history-clear{justify-self:start}.history-container .history-list{list-style:none;margin:0;padding:0}.history-container .history-item{display:flex;flex-direction:column;gap:4px;min-width:0}.history-container .history-date{color:#6b7280;font-size:14px;order:2}.history-container .history-actor{color:#111827;font-weight:600}.history-container .history-content{color:#111827;font-size:16px;font-weight:600;order:1;overflow-wrap:anywhere}.history-container .history-children{list-style:none;margin:8px 0 0;order:3;padding:0}.history-container .history-child{align-items:flex-start;border-top:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:8px 0}.history-container .history-child:last-child{padding-bottom:0}.history-container .history-child-desc{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}.history-container .history-child-subject{color:#111827;font-weight:600}.history-container .history-child-result{flex:0 0 auto;text-transform:capitalize}.history-container .history-more{display:flex;margin:16px auto 0}@media(max-width:599.98px){.history-container .history-more{width:100%}}.notifications .notifications-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.notifications .notifications-mark-all:disabled{background-color:transparent}.notifications .notifications-list{list-style:none;margin:0;padding:0}.notifications .notification{background-color:#fff;border:1px solid #e5e7eb;border-left:4px solid #0059b2;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.08);color:#111827;cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:4px;margin-bottom:8px;padding:12px 16px;position:relative;text-align:left;transition:box-shadow .12s ease;width:100%}.notifications .notification:focus{outline:none}.notifications .notification:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.notifications .notification:hover{box-shadow:0 4px 8px rgba(0,0,0,.12)}.notifications .notification--warning{background-color:#fffae9;border-left-color:#d97706}.notifications .notification--unread{padding-left:32px}.notifications .notification--unread:before{background-color:#0059b2;border-radius:50%;content:"";height:8px;left:16px;position:absolute;top:calc(12px + .55em);width:8px}.notifications .notification--unread .notification-title{font-weight:700}.notifications .notification-title{font-size:16px;font-weight:500;overflow-wrap:anywhere}.notifications .notification-body{color:#111827;font-size:14px}.notifications .notification-meta{color:#6b7280;font-size:12px}.notifications .notifications-more{display:flex;margin:16px auto 0}@media(max-width:599.98px){.notifications .notifications-more{width:100%}}.SingleField__name{align-items:center;background:none;border:0;border-radius:6px;color:inherit;cursor:pointer;display:inline-flex;font:inherit;gap:8px;margin:0;max-width:100%;overflow-wrap:anywhere;padding:0;text-align:left}.SingleField__name:focus{outline:none}.SingleField__name:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.SingleField__name:hover{color:#0059b2}.SingleField__name-icon.MuiSvgIcon-root{color:#6b7280;flex-shrink:0;font-size:.8em}.SingleField__name:hover .SingleField__name-icon.MuiSvgIcon-root{color:#0059b2}.SingleField .ui-page-header__description{margin-top:8px}.SingleField__cards{margin-bottom:16px}.SingleField__section+.SingleField__section{margin-top:16px}.SingleField__sensors{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr))}.SingleField__danger{align-items:center;border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;padding-top:16px}.SingleField__hint{color:#6b7280;font-size:12px}.SingleField .PipesBar{margin-bottom:0}.ConfigurePopup{display:flex;flex-direction:column;gap:12px}.ConfigurePopup__hint{color:#6b7280;margin:0}.ConfigurePopup__add{display:flex;gap:8px}.ConfigurePopup__add .ui-input{flex:1 1 auto;min-width:0}.ConfigurePopup__list{border:1px solid #e5e7eb;border-radius:8px;counter-reset:serial;list-style:none;margin:0;padding:0}.ConfigurePopup__list li{align-items:center;counter-increment:serial;display:flex;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;gap:12px;min-height:44px;overflow-wrap:anywhere;padding:0 12px}.ConfigurePopup__list li:before{color:#6b7280;content:counter(serial);flex:0 0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:600;min-width:24px}.ConfigurePopup__list li+li{border-top:1px solid #e5e7eb}.general-button-container{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#111827;cursor:pointer;display:inline-flex;flex-direction:row;font-size:16px;font-weight:600;justify-content:center;line-height:1.2;min-height:44px;padding:12px 16px;transition:background-color .12s ease,border-color .12s ease}.general-button-container:focus{outline:none}.general-button-container:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.general-button-container:hover{background-color:#f3f4f6}.general-button-container:disabled,.general-button-container:disabled:hover{background-color:#e5e7eb;border-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.general-button-text{color:inherit;text-align:center}.popup-save-button{background-color:#0059b2;border-color:#0059b2;color:#fff}.popup-save-button:hover{background-color:#00417f;border-color:#00417f}.popup-cancel-button{background-color:#fff;border-color:#0059b2;color:#0059b2}.popup-cancel-button:hover{background-color:#e3eef9}.popup-container{align-items:flex-end;background-color:rgba(17,24,39,.5);display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}@media(min-width:600px){.popup-container{align-items:center;padding:24px}}.general-popup{background-color:#fff;border-radius:12px 12px 0 0;box-shadow:0 4px 8px rgba(0,0,0,.12);display:flex;flex-direction:column;max-height:92vh;text-align:left;width:100%}@media(min-width:600px){.general-popup{border-radius:12px;max-height:calc(100vh - 48px);max-width:100%;width:520px}}.popup-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;padding:16px 20px}.popup-header h3{font-size:20px;font-weight:600;margin:0}.general-popup-content{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.popup-footer{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:8px;justify-content:flex-end;padding:16px 20px}@media(max-width:599.98px){.popup-footer{align-items:stretch;flex-direction:column-reverse}}.general-popup:focus{outline:none}.PipesBar{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0 0 24px;width:100%}@media(min-width:600px){.PipesBar{gap:16px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.PipesBar .pipe-section-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);color:#111827;cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:8px;padding:12px;text-align:left;transition:border-color .12s ease,box-shadow .12s ease;width:100%}.PipesBar .pipe-section-card:focus{outline:none}.PipesBar .pipe-section-card:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.PipesBar .pipe-section-card:hover{border-color:#d1d5db;box-shadow:0 4px 8px rgba(0,0,0,.12)}.PipesBar .pipe-column-id-label{font-size:14px;font-weight:600}.PipesBar .pipe-column-container{grid-gap:4px;display:grid;gap:4px;grid-template-columns:1fr 1fr}.PipesBar .pipe-gate{align-items:center;border-radius:6px;color:#fff;display:flex;flex-direction:column;justify-content:center;line-height:1.2;min-height:44px;padding:4px}.PipesBar .pipe-gate--open{background-color:#0059b2}.PipesBar .pipe-gate--closed{background-color:#dc2626}.PipesBar .pipe-gate__side{font-size:14px;font-weight:600}.PipesBar .pipe-gate__state{font-size:12px;opacity:.9}.AddZonesPopup{display:flex;flex-direction:column;gap:16px}.AddZonesPopup .ui-field{margin-bottom:0}.AddZonesPopup .selected-pipes-container{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.AddZonesPopup .selected-pipe{align-items:center;background-color:#e3eef9;border-radius:999px;color:#00417f;display:inline-flex;font-size:14px;font-weight:500;gap:4px;padding:2px 2px 2px 12px}.AddZonesPopup .remove-pipe-button{align-items:center;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;display:inline-flex;font-size:18px;height:32px;justify-content:center;line-height:1;width:32px}.AddZonesPopup .remove-pipe-button:focus{outline:none}.AddZonesPopup .remove-pipe-button:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.AddZonesPopup .remove-pipe-button:hover{background-color:rgba(0,89,178,.12)}.AddZonesPopup .success-message{background-color:#dcfce7;border-left:4px solid #15803d;border-radius:8px;color:#15803d;font-size:14px;padding:12px 16px}.nested-dropdown{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:320px;overflow-y:auto;padding:8px}.nested-dropdown .pipe-item+.pipe-item{margin-top:4px}.nested-dropdown .pipe-header{align-items:center;background-color:#f9fafb;border-radius:6px;display:flex;font-weight:600;justify-content:space-between;min-height:44px;padding:0 8px}.nested-dropdown label{align-items:center;cursor:pointer;display:flex;gap:8px}.nested-dropdown input[type=checkbox]{accent-color:#0059b2;height:18px;width:18px}.nested-dropdown .expand-btn{background:transparent;border:0;border-radius:6px;color:#6b7280;cursor:pointer;min-height:44px;min-width:44px}.nested-dropdown .expand-btn:focus{outline:none}.nested-dropdown .expand-btn:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.nested-dropdown .expand-btn:hover{background-color:#f3f4f6}.nested-dropdown .gate-list{display:flex;flex-direction:column;margin:4px 0 0 24px}.nested-dropdown .gate-item{min-height:36px}.toggle-result{background-color:#f3f4f6;border-left:4px solid #9ca3af;border-radius:8px;color:#111827;font-size:14px;margin:0;padding:12px 16px;text-align:left}.toggle-result--inset{margin:0 20px}.toggle-result--pending{background-color:#e3eef9;border-left-color:#0059b2}.toggle-result--busy,.toggle-result--confirm,.toggle-result--idle,.toggle-result--warning{background-color:#fef3c7;border-left-color:#d97706}.toggle-result--error,.toggle-result--network{background-color:#fee2e2;border-left-color:#dc2626}.toggle-result__head{align-items:center;display:flex;font-size:16px;gap:8px;justify-content:space-between}.toggle-result__close{align-items:center;background:none;border:0;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:20px;height:32px;justify-content:center;line-height:1;margin:-4px -8px -4px 0;width:32px}.toggle-result__close:focus{outline:none}.toggle-result__close:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.toggle-result__close:hover{background-color:rgba(0,0,0,.06)}.toggle-result__msg{margin:4px 0 0}.toggle-result__detail{color:#6b7280;margin:4px 0 0}.toggle-result__items{margin:8px 0 0;padding-left:20px}.toggle-result__items li+li{margin-top:2px}.toggle-result__actions{display:flex;flex-wrap:wrap;gap:8px}.toggle-result__actions,.toggle-result__retry{margin-top:12px}@media(min-width:600px){.SinglePipePopup{width:640px}}.SinglePipePopup__header{gap:8px;justify-content:space-between}.SinglePipePopup .pipe-name{font-size:20px;font-weight:600;margin:0;min-width:0;overflow-wrap:anywhere}.SinglePipePopup .rename-form{display:flex;flex-wrap:wrap;gap:8px}.SinglePipePopup .rename-form .rename-input{flex:1 1 200px}.SinglePipePopup .left-right-section-container{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr}@media(min-width:600px){.SinglePipePopup .left-right-section-container{grid-template-columns:1fr 1fr}}.SinglePipePopup .pipe-popup-gate{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:16px}.SinglePipePopup .pipe-popup-gate__head{align-items:center;display:flex;gap:8px;justify-content:space-between}.SinglePipePopup .pipe-popup-gate__title{font-size:18px;font-weight:600;margin:0}.SinglePipePopup .pipe-popup-gate__percent{display:flex;gap:8px}.SinglePipePopup .pipe-popup-gate__percent .percentage-input{flex:1 1 auto;min-width:0}.SinglePipePopup .pipe-popup-gate .ui-field{margin-bottom:0}.SinglePipePopup .percentage-title{color:#6b7280;font-size:14px;margin:0}.SinglePipePopup .toggle-button .spinner{border-color:transparent;border-width:2px;height:20px;width:20px}.field-name-popup{margin-bottom:0}@media(min-width:600px){.AddWaterSensorPopup .general-popup{width:440px}}.AddWaterSensorPopup .add-ws-form{display:flex;flex:1 1 auto;flex-direction:column;margin:0;min-height:0}.AddWaterSensorPopup .ws-housing-label-input{margin-bottom:0}.AddWaterSensorPopup .ui-input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}.AddWaterSensorPopup .add-ws-message{border:1px solid;border-radius:8px;font-size:14px;padding:8px 12px}.AddWaterSensorPopup .add-ws-message.added,.AddWaterSensorPopup .add-ws-message.removed{background-color:#dcfce7;border-color:#15803d;color:#15803d}.AddWaterSensorPopup .add-ws-message.pending{background-color:#fef3c7;border-color:#d97706;color:#764103}.AddWaterSensorPopup .add-ws-message.error{background-color:#fee2e2;border-color:#dc2626;color:#dc2626}.AddWaterSensorPopup .add-ws-pending-actions{display:flex;flex-wrap:wrap;gap:8px}.AddWaterSensorPopup .add-ws-pending-actions .add-ws-message{flex-basis:100%}.popup-header .ws-header-title{font-size:20px;font-weight:600;overflow-wrap:anywhere}.popup-header .ws-header-title .ws-header-subtitle{color:#6b7280;font-weight:400}.ws-inspector{color:#111827;display:flex;flex-direction:column;gap:16px}.ws-inspector .ws-status-strip{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:8px;padding-bottom:12px}.ws-inspector .ws-battery-pill,.ws-inspector .ws-water-badge{align-items:center;background-color:#f3f4f6;border-radius:999px;color:#374151;display:inline-flex;font-size:12px;font-weight:700;line-height:1.5;padding:2px 8px;white-space:nowrap}.ws-inspector .ws-water-badge.wet{background-color:#e3eef9;color:#0059b2}.ws-inspector .ws-water-badge.dry{background-color:#dcfce7;color:#15803d}.ws-inspector .ws-water-badge.unknown{background-color:#f3f4f6;color:#6b7280}.ws-inspector .ws-water-badge.pending,.ws-inspector .ws-water-badge.stale{background-color:#fef3c7;color:#9d5604}.ws-inspector .ws-battery-pill.low,.ws-inspector .ws-water-badge.offline{background-color:#fee2e2;color:#dc2626}.ws-inspector .ws-battery-pill.medium{background-color:#fef3c7;color:#9d5604}.ws-inspector .ws-battery-pill.good{background-color:#dcfce7;color:#15803d}.ws-inspector .ws-reading-age{color:#6b7280;font-size:12px}.ws-inspector .charging-flag{color:#15803d;font-size:12px;font-weight:600}.ws-inspector .ws-save-error{background-color:#fee2e2;border-radius:8px;color:#dc2626;font-size:14px;padding:8px 12px}.ws-inspector .ws-notice{color:#15803d;font-size:14px}.ws-inspector .ws-gone{color:#111827;margin:0}.ws-inspector .ws-pending{background-color:#fef3c7;border:1px solid #d97706;border-radius:8px;padding:12px}.ws-inspector .ws-pending .ws-pending-title{color:#764103;font-size:14px;font-weight:700;margin:0 0 4px}.ws-inspector .ws-pending .ws-pending-text{color:#374151;font-size:14px;margin:0 0 12px}.ws-inspector .ws-pending .ws-pending-actions{display:flex;flex-wrap:wrap;gap:8px}.ws-inspector .ws-rows{display:flex;flex-direction:column}.ws-inspector .ws-row{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:8px 12px;min-height:44px;padding:8px 0}.ws-inspector .ws-row:last-child{border-bottom:0}.ws-inspector .ws-row-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.04em;min-width:96px;text-transform:uppercase}.ws-inspector .ws-row-value{flex:1 1;font-weight:500;min-width:0;overflow-wrap:anywhere}.ws-inspector .ws-unset{color:#9ca3af;font-style:italic;font-weight:400}.ws-inspector .ws-row--editing{flex-wrap:wrap}.ws-inspector .ws-row--editing .ui-input,.ws-inspector .ws-row--editing .ui-select{flex:1 1 160px;min-width:0;width:auto}@media(max-width:599.98px){.ws-inspector .ws-row--editing .ws-row-label{flex-basis:100%}}.ws-inspector .ws-meta-strip{border-top:1px solid #e5e7eb;color:#6b7280;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;padding-top:8px}.ws-section-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);color:#111827;display:flex;flex-direction:column;gap:12px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;min-width:0;padding:16px;text-align:left}.ws-section-card .ws-card-header{border-bottom:1px solid #e5e7eb;padding-bottom:8px}.ws-section-card .ws-column-id-label{font-size:16px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-section-card .ws-column-container{display:flex;flex-wrap:wrap;gap:16px}.ws-section-card .ws-metric{align-items:flex-start;display:flex;flex:1 1 120px;flex-direction:column;gap:4px;min-width:0}.ws-section-card .ws-metric-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ws-section-card .ws-metric-value{font-size:16px;font-weight:600;line-height:1.4}.ws-section-card .ws-metric-value.neutral{color:#111827}.ws-section-card .ws-metric-detail{color:#6b7280;font-size:12px}.ws-section-card .ws-more-info-row{display:flex;justify-content:flex-end;margin:0 -8px -8px 0}.idle-mode .ui-card__title{margin-bottom:12px}.idle-mode p{margin:0 0 8px}.idle-mode-state{color:#111827}.idle-mode-result{font-size:14px}.idle-mode-result--ok{color:#15803d}.idle-mode-result--partial{color:#9d5604}.idle-mode-result--error{color:#dc2626}.idle-mode-confirm{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.idle-mode-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.field-power .ui-card__title{margin-bottom:12px}.field-power p{margin:0 0 8px}.field-power-state{color:#111827}.field-power-detail,.field-power-hint,.field-power-since{color:#6b7280}.field-power-detail{font-size:14px}.field-power .field-power-hint{font-size:12px;margin:12px 0 0}.field-power-problem{color:#dc2626;font-size:14px}.field-power-selector{max-width:420px}.field-power-confirm{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.field-power-confirm-title{font-weight:600}.field-power-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.fc-config .ui-card__title{margin-bottom:12px}.fc-config-intro,.fc-config-progress{color:#6b7280;font-size:14px;margin:0 0 12px}.fc-config-result{font-size:14px;margin:0 0 12px}.fc-config-result p{margin:0 0 8px}.fc-config-result--synced{color:#15803d}.fc-config-result--mismatch{color:#9d5604}.fc-config-result--error{color:#dc2626}.fc-config-diffs{border-collapse:collapse;color:#111827;width:100%}.fc-config-diffs td,.fc-config-diffs th{border-bottom:1px solid #e5e7eb;padding:4px 8px 4px 0;text-align:left}.fc-config-diffs thead th{color:#6b7280;font-weight:600}.fc-config-diffs tbody th{font-weight:400}.fc-config-actions{display:flex;flex-wrap:wrap;gap:8px}.idle-reminder .ui-card__title{margin-bottom:12px}.idle-reminder-value{color:#111827;margin:0 0 12px}.idle-reminder-problem{color:#dc2626;font-size:14px;margin:8px 0 0}.idle-reminder-hint{color:#6b7280;font-size:12px;margin:12px 0 0}.notify-prefs .ui-card__title{margin-bottom:12px}.notify-prefs-intro,.notify-prefs-note{color:#6b7280;font-size:14px;margin:0 0 12px}.notify-prefs-list{list-style:none;margin:0 0 8px;padding:0}.notify-prefs-list li+li{border-top:1px solid #e5e7eb}.notify-prefs-list label{align-items:center;cursor:pointer;display:flex;gap:12px;min-height:44px}.notify-prefs-list input{accent-color:#0059b2;flex-shrink:0;height:18px;margin:0;width:18px}.notify-prefs-list input:disabled,.notify-prefs-list input:disabled+span{cursor:default}.notify-prefs-list input:disabled+span{color:#6b7280}.notify-prefs-error{color:#dc2626;font-size:14px;margin:0 0 8px}.SingleZone .zone-title__loading{display:inline-block;vertical-align:middle}.SingleZone .zone-title__loading .spinner{border-width:2px;height:20px;width:20px}.SingleZone .zone-command-section{margin-bottom:16px}.SingleZone .zone-command-section .toggle-result{margin-top:12px}.SingleZone .toggle-buttons{display:flex;flex-wrap:wrap;gap:8px}.SingleZone .toggle-buttons .toggle-button{flex:1 1 160px}@media(min-width:600px){.SingleZone .toggle-buttons .toggle-button{flex:0 0 auto;min-width:160px}}.SingleZone .ui-btn .spinner{border-color:transparent;border-width:2px;height:20px;width:20px}.SingleZone .vertical-pipes{display:flex;flex-direction:column;gap:12px}.SingleZone .zone-pipe{border-bottom:1px solid #e5e7eb;padding-bottom:12px}.SingleZone .zone-pipe:last-child{border-bottom:0;padding-bottom:0}.SingleZone .pipe-column-id-label{font-size:14px;font-weight:600;margin:0 0 8px}.SingleZone .multi-gate{display:flex;gap:4px}.SingleZone .gate-segment{align-items:center;border-radius:6px;color:#fff;display:flex;flex:1 1;flex-direction:column;justify-content:center;line-height:1.2;min-height:44px;min-width:0;padding:4px;text-align:center}.SingleZone .gate-segment__side{font-size:14px;font-weight:600}.SingleZone .gate-segment__state{font-size:12px;opacity:.9}.SingleZone .gate-segment.open{background-color:#0059b2}.SingleZone .gate-segment.closed{background-color:#dc2626}.SingleZone .gate-segment.unassigned{background-color:#f3f4f6;color:#6b7280}.SingleZone .zone-ws-list{display:flex;flex-wrap:wrap;gap:12px}.SingleZone .zone-water-sensor-section .ui-state{padding:20px 16px}.SingleZone .zone-delete{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:16px}.SingleZone .zone-delete-error{color:#dc2626;margin:8px 0 0}@media(min-width:600px){.ZoneNamePopup{width:440px}}.ZoneNamePopup__form{display:flex;flex-direction:column;min-height:0}.ZoneNamePopup .ui-field{margin-bottom:0}.ZoneNamePopup .ui-field__error{margin:0}.Schedules .schedules-field{max-width:360px}.Schedules .schedules-list{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));list-style:none;margin:0;padding:0}.Schedules .schedule-card{display:flex;flex-direction:column;min-width:0}.Schedules .schedule-card+.schedule-card{margin-top:0}.Schedules .schedule-card p{font-size:14px;margin:0 0 4px}.Schedules .schedule-card .spinner-container{flex:0 0 auto}.Schedules .schedule-card .spinner{border-width:2px;height:20px;width:20px}.Schedules .schedule-card-name{color:#111827;font-size:18px;font-weight:600;margin:0 0 4px;overflow-wrap:anywhere}.Schedules .schedule-card .schedule-card-run{color:#0059b2;font-weight:600}.Schedules .schedule-card .schedule-card-run-error{color:#dc2626}.Schedules .schedule-card .schedule-card-left{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";color:#111827;font-variant-numeric:tabular-nums}.Schedules .schedule-card .schedule-card-next{color:#111827;font-weight:500}.Schedules .schedule-card .schedule-card-note,.Schedules .schedule-card .schedule-card-repeat{color:#6b7280}.Schedules .schedule-card-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.Schedules .schedule-card-entries{border-top:1px solid #e5e7eb;color:#111827;font-size:14px;margin:8px 0 0;padding:8px 0 0 20px}.Schedules .schedule-card-entries li+li{margin-top:2px}.Schedules .schedule-card-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:auto;padding-top:12px}@media(max-width:599.98px){.Schedules .schedules-new,.Schedules .ui-page-header__actions{width:100%}.Schedules .schedules-field{max-width:none}}.run-dialog-backdrop{align-items:flex-end;background-color:rgba(17,24,39,.5);display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}@media(min-width:600px){.run-dialog-backdrop{align-items:center;padding:24px}}.run-dialog-backdrop .run-dialog{background-color:#fff;border-radius:12px 12px 0 0;box-shadow:0 4px 8px rgba(0,0,0,.12);display:flex;flex-direction:column;max-height:92vh;width:100%}@media(min-width:600px){.run-dialog-backdrop .run-dialog{border-radius:12px;max-height:calc(100vh - 48px);max-width:100%;width:480px}}.run-dialog-backdrop .run-dialog-header{border-bottom:1px solid #e5e7eb;padding:16px 20px}.run-dialog-backdrop .run-dialog-header h3{color:#111827;font-size:20px;font-weight:600;margin:0}.run-dialog-backdrop .run-dialog-content{overflow-y:auto;padding:20px}.run-dialog-backdrop .run-dialog-body{color:#6b7280;margin:0 0 12px}.run-dialog-backdrop .run-dialog-body:last-child{margin-bottom:0}.run-dialog-backdrop .run-dialog-buttons{border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding:16px 20px}@media(max-width:599.98px){.run-dialog-backdrop .run-dialog-buttons{flex-direction:column-reverse}}.run-dialog-backdrop .run-extend-presets{margin-bottom:16px}.run-dialog-backdrop .run-extend-custom{margin-bottom:0;max-width:200px}.run-dialog-backdrop .run-extend-error,.run-dialog-backdrop .run-extend-help,.run-dialog-backdrop .run-extend-length,.run-dialog-backdrop .run-extend-note{font-size:14px;margin:8px 0 0}.run-dialog-backdrop .run-extend-length{color:#111827;font-weight:600}.run-dialog-backdrop .run-extend-help,.run-dialog-backdrop .run-extend-note{color:#6b7280}.run-dialog-backdrop .run-extend-error{color:#dc2626}.run-dialog-backdrop .run-extend-scopes{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;margin-top:16px;padding-top:16px}.run-dialog-backdrop .run-extend-scopes .run-extend-help{margin:4px 0 12px}.run-dialog-backdrop .run-extend-scopes .run-extend-help:last-child{margin-bottom:0}.ScheduleEditor .ui-card+.ui-card{margin-top:16px}.ScheduleEditor .ui-card__title{margin-bottom:12px}.ScheduleEditor input[type=checkbox],.ScheduleEditor input[type=radio]{accent-color:#0059b2;flex:0 0 auto;height:20px;margin:0;width:20px}.ScheduleEditor .schedule-input{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;min-width:0}.ScheduleEditor .schedule-input>span{color:#6b7280;font-size:14px;font-weight:500}.ScheduleEditor .schedule-input>.ui-input,.ScheduleEditor .schedule-input>.ui-select{max-width:360px}.ScheduleEditor .schedule-name>.ui-input{max-width:none}.ScheduleEditor .schedule-details .schedule-input:last-child{margin-bottom:0}.ScheduleEditor .schedule-help{color:#6b7280;font-size:14px;margin:0 0 12px}.ScheduleEditor .schedule-duration{display:flex;flex-wrap:wrap;gap:8px 12px}.ScheduleEditor .schedule-duration label{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:4px}.ScheduleEditor .schedule-duration .ui-input{text-align:center;width:64px}.ScheduleEditor .schedule-switch{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:8px;margin-bottom:8px;min-height:44px}.ScheduleEditor .schedule-row{grid-gap:0 16px;display:grid;gap:0 16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));max-width:480px}.ScheduleEditor .schedule-row .schedule-input>.ui-input{max-width:none}.ScheduleEditor .schedule-choice{border:0;display:flex;flex-wrap:wrap;gap:4px 20px;margin:0 0 16px;min-width:0;padding:0}.ScheduleEditor .schedule-choice legend{color:#6b7280;font-size:14px;font-weight:500;margin-bottom:4px;padding:0}.ScheduleEditor .schedule-choice label{align-items:center;cursor:pointer;display:flex;gap:8px;min-height:44px}.ScheduleEditor .schedule-days{margin-bottom:8px}.ScheduleEditor .schedule-days .ui-chip{min-width:52px;padding:4px 12px}@media(max-width:599.98px){.ScheduleEditor .schedule-days{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,minmax(0,1fr))}.ScheduleEditor .schedule-days .ui-chip{min-width:0;padding:4px 0}}.ScheduleEditor .schedule-input+datalist+.schedule-help{margin-top:-8px}.ScheduleEditor .schedule-steps-title{font-size:18px;font-weight:600;margin:24px 0 4px}.ScheduleEditor .schedule-steps{list-style:none;margin:0;padding:0}.ScheduleEditor .schedule-step{margin-bottom:12px}.ScheduleEditor .schedule-step .schedule-help{margin-bottom:0;margin-top:4px}.ScheduleEditor .schedule-step-actions{border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;padding-top:8px}.ScheduleEditor .schedule-step-actions .ui-btn:disabled{background-color:transparent}.ScheduleEditor .schedule-step-remove:not(:disabled){color:#dc2626}.ScheduleEditor .schedule-step-remove:not(:disabled):hover{background-color:#fee2e2}.ScheduleEditor .schedule-add-step{margin-bottom:24px}@media(max-width:599.98px){.ScheduleEditor .schedule-add-step{width:100%}}.ScheduleEditor .schedule-form-actions{display:flex;gap:8px;justify-content:flex-end}.ScheduleEditor .schedule-form-actions .spinner-container{min-width:40px}.ScheduleEditor .schedule-form-actions .spinner{border-width:2px;height:20px;width:20px}@media(max-width:599.98px){.ScheduleEditor .schedule-form-actions{background-color:#fff;border-top:1px solid #e5e7eb;bottom:0;box-shadow:0 -2px 6px rgba(0,0,0,.06);margin:0 -16px -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom, 0px));position:-webkit-sticky;position:sticky;z-index:100}.ScheduleEditor .schedule-form-actions>*{flex:1 1}}.account-details__card{padding-bottom:4px;padding-top:4px}.account-details__row{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;padding:12px 0}.account-details__row+.account-details__row{border-top:1px solid #e5e7eb}.account-details__info{display:flex;flex:1 1 220px;flex-direction:column;gap:4px;min-width:0}.account-details__label{color:#6b7280;font-size:14px;font-weight:500}.account-details__value{margin:0;min-height:24px;overflow-wrap:anywhere}.account-details__actions{display:flex;gap:8px;margin-left:auto}.account-details__icon-btn{min-height:44px;min-width:44px;padding:0}.group-settings__empty{color:#6b7280;margin:0}.group-settings__list{list-style:none;margin:0;padding:0}.group-settings__item{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;padding:12px 0}.group-settings__item+.group-settings__item{border-top:1px solid #e5e7eb}.group-settings__item:first-child{padding-top:0}.group-settings__item:last-child{padding-bottom:0}.group-settings__invite{flex:1 1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;min-width:0;overflow-wrap:anywhere}.group-settings__icon-btn{color:#6b7280;min-width:44px;padding:0}.group-settings__copied{align-items:center;color:#15803d;display:inline-flex;font-size:14px;font-weight:500;gap:4px;min-height:44px}.group-settings__user{display:flex;flex:1 1 200px;flex-direction:column;min-width:0}.group-settings__name{font-weight:600}.group-settings__email{color:#6b7280;font-size:14px;overflow-wrap:anywhere}.group-settings__actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.group-settings__role{min-height:36px;min-width:140px;width:auto}.Hardware .hardware__tabs{background-color:#f3f4f6;border-radius:8px;display:flex;gap:4px;margin-bottom:12px;max-width:560px;padding:4px}.Hardware .hardware__tab{background:transparent;border:0;border-radius:6px;color:#111827;cursor:pointer;flex:1 1;font-size:14px;line-height:1.2;min-height:40px;padding:8px;transition:background-color .12s ease}.Hardware .hardware__tab:focus{outline:none}.Hardware .hardware__tab:focus-visible{box-shadow:0 0 0 3px rgba(0,89,178,.35);outline:none}.Hardware .hardware__tab:hover:not(.hardware__tab--active){background-color:#e5e7eb}.Hardware .hardware__tab--active{background-color:#0059b2;color:#fff;font-weight:600}.Hardware .hardware__controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.Hardware .hardware__search{flex:1 1 260px;max-width:420px}.Hardware .hardware__section+.hardware__section{margin-top:24px}.Hardware .hardware__group{color:#6b7280;font-size:14px;font-weight:600;margin:0 0 8px;text-transform:none}.Hardware .hardware__list{list-style:none;margin:0;padding:0}.Hardware .hardware__card{min-width:0}.Hardware .hardware__card-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.Hardware .hardware__title{color:#111827;font-size:16px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Hardware .hardware__title:hover{color:#0059b2}.Hardware .hardware__reading{color:#6b7280;flex-shrink:0;font-size:14px}.Hardware .hardware__stale{align-items:center;color:#9d5604;display:flex;font-size:12px;font-weight:500;gap:4px;margin:4px 0 0}.Hardware .hardware__stale-dot{background-color:#d97706;border-radius:50%;height:8px;width:8px}.Hardware .hardware__details{border-top:1px solid #e5e7eb;margin:12px 0 0;padding-top:8px}.Hardware .hardware__detail{display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:3px 0}.Hardware .hardware__detail dt{color:#6b7280;flex-shrink:0}.Hardware .hardware__detail dd{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:0;min-width:0;overflow-wrap:anywhere;text-align:right}.Hardware .hardware__unknown{color:#9ca3af;cursor:help}.WaterSensors .water-sensors__card{overflow:hidden;padding:0}.WaterSensors .water-sensors__table-container{overflow-x:auto;width:100%}.WaterSensors .water-sensors__table td,.WaterSensors .water-sensors__table th{vertical-align:middle}.WaterSensors .water-sensors__table td:first-child,.WaterSensors .water-sensors__table th:first-child{padding-left:20px}.WaterSensors .water-sensors__table td:last-child,.WaterSensors .water-sensors__table th:last-child{padding-right:20px}.WaterSensors .water-sensors__table tbody tr{transition:background-color .12s ease}.WaterSensors .water-sensors__table tbody tr:last-child td{border-bottom:0}.WaterSensors .water-sensors__table tbody tr:hover{background-color:#f9fafb}@media(max-width:599.98px){.WaterSensors .water-sensors__table tbody tr{padding:12px 16px}.WaterSensors .water-sensors__table tbody tr:last-child{border-bottom:0}.WaterSensors .water-sensors__table td:first-child,.WaterSensors .water-sensors__table td:last-child,.WaterSensors .water-sensors__table th:first-child,.WaterSensors .water-sensors__table th:last-child{padding-left:0;padding-right:0}.WaterSensors .water-sensors__table td{align-items:center}}.WaterSensors .water-sensors__field{color:#111827;font-weight:600}.WaterSensors .water-sensors__mono{color:#6b7280;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.WaterSensors .water-sensors__mono:before{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.WaterSensors .water-sensors__reading{align-items:center;display:inline-flex;flex-wrap:wrap;gap:4px 8px;justify-content:flex-end}@media(min-width:600px){.WaterSensors .water-sensors__reading{justify-content:flex-start}}.WaterSensors .water-sensors__age{color:#6b7280;font-size:12px;white-space:nowrap}