.select-menu[data-v-e3784537]{position:relative;width:100%;margin-top:7px;font:inherit;letter-spacing:0;text-transform:none}.select-menu-trigger[data-v-e3784537]{display:flex;width:100%;min-height:43px;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px 10px 12px;border:1px solid #d2e2d9;border-radius:7px;outline:none;background:linear-gradient(180deg,#fff,#f7fbf8);color:#365b4d;box-shadow:0 2px 5px #1d423908;text-align:left;transition:border-color .16s,box-shadow .16s,transform .16s}.select-menu-trigger[data-v-e3784537]:hover{border-color:#9dc8b4;box-shadow:0 4px 12px #1d423914}.select-menu-trigger[data-v-e3784537]:focus-visible,.open .select-menu-trigger[data-v-e3784537]{border-color:#5a9c84;box-shadow:0 0 0 3px #5a9c8429,0 5px 12px #1d423914}.select-menu-label[data-v-e3784537]{overflow:hidden;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.select-menu-trigger svg[data-v-e3784537]{flex:0 0 auto;color:#628979;transition:transform .16s}.open .select-menu-trigger svg[data-v-e3784537]{transform:rotate(180deg)}.select-menu-options[data-v-e3784537]{position:absolute;z-index:40;top:calc(100% + 5px);right:0;left:0;max-height:245px;overflow:auto;padding:5px;border:1px solid #cddfd5;border-radius:8px;background:#fff;box-shadow:0 16px 30px #193a3129}.select-menu-option[data-v-e3784537]{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:0;border-radius:5px;background:transparent;color:#4e7163;text-align:left}.select-menu-option[data-v-e3784537]:hover,.select-menu-option[data-v-e3784537]:focus-visible{outline:none;background:#edf7f1;color:#27624e}.select-menu-option[aria-selected=true][data-v-e3784537]{background:#e1f2e8;color:#25634e}.select-menu-option span[data-v-e3784537]{min-width:0}.select-menu-option b[data-v-e3784537],.select-menu-option small[data-v-e3784537]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-menu-option b[data-v-e3784537]{font-size:11px;font-weight:650}.select-menu-option small[data-v-e3784537]{margin-top:3px;color:#77968a;font-size:9px}.select-menu-option svg[data-v-e3784537]{flex:0 0 auto}.disabled[data-v-e3784537]{opacity:.62}.summary-source[data-v-7ae3aee8]{display:flex;align-items:end;justify-content:space-between;gap:12px}.summary-source span[data-v-7ae3aee8],.summary-source b[data-v-7ae3aee8],.summary-source small[data-v-7ae3aee8]{display:block;min-width:0}.summary-source b[data-v-7ae3aee8]{overflow:hidden;color:#456d5e;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.summary-source span small[data-v-7ae3aee8]{margin-top:2px;color:#82968e;font-size:9px;text-transform:capitalize}.summary-source>strong[data-v-7ae3aee8]{color:#345f4e;font:600 21px/1 Georgia,serif;white-space:nowrap}.summary-source>strong small[data-v-7ae3aee8]{display:inline;color:#79928a;font:9px SFMono-Regular,Consolas,monospace}.summary-data-table[data-v-7ae3aee8]{margin-top:7px}.summary-data-table summary[data-v-7ae3aee8]{cursor:pointer;color:#58786c;font-size:10px;font-weight:700}.summary-data-table>div[data-v-7ae3aee8]{max-width:100%;margin-top:7px;overflow:auto}.summary-data-table table[data-v-7ae3aee8]{width:100%;border-collapse:collapse;font-size:10px;text-align:right;white-space:nowrap}.summary-data-table th[data-v-7ae3aee8],.summary-data-table td[data-v-7ae3aee8]{padding:5px;border-bottom:1px solid #e7efeb}.summary-data-table th[data-v-7ae3aee8]:first-child{text-align:left}.summary-history-note[data-v-7ae3aee8]{margin-top:8px!important;color:#879b92!important;font-size:9px!important}.sensor-suite[data-v-271fd4a8]{display:flex;min-height:100%;flex-direction:column;gap:10px}.sensor-suite header[data-v-271fd4a8]{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.sensor-suite header b[data-v-271fd4a8],.sensor-suite header small[data-v-271fd4a8]{display:block}.sensor-suite header b[data-v-271fd4a8]{color:#355f50;font-size:12px}.sensor-suite header small[data-v-271fd4a8]{margin-top:2px;color:#8aa097;font-size:10px}.suite-live[data-v-271fd4a8]{border-radius:999px;padding:4px 7px;color:#7a6640;background:#f4eedc;font-size:10px;font-style:normal;text-transform:capitalize}.suite-live.online[data-v-271fd4a8]{color:#34755c;background:#e3f3eb}.suite-live.offline[data-v-271fd4a8]{color:#9c5546;background:#f9e8e4}.suite-body[data-v-271fd4a8]{min-height:0}.suite-body.has-tank[data-v-271fd4a8]{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px}.suite-metrics[data-v-271fd4a8]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0}.suite-metrics div[data-v-271fd4a8]{min-width:0;padding:8px;border-left:3px solid #b7d9ca;background:#f5faf7}.suite-metrics dt[data-v-271fd4a8]{overflow:hidden;color:#748b81;font-size:10px;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.suite-metrics dd[data-v-271fd4a8]{margin:4px 0 0;color:#315d4d;font:600 15px/1.1 Georgia,serif}.suite-metrics dd small[data-v-271fd4a8]{color:#83988f;font:10px/1 ui-monospace,monospace}.tank[data-v-271fd4a8]{position:relative;display:grid;min-height:82px;overflow:hidden;place-items:center;border:2px solid #7cb5c8;border-radius:5px 5px 10px 10px;background:#edf8fb}.tank span[data-v-271fd4a8]{position:absolute;right:0;bottom:0;left:0;background:linear-gradient(#8bd2e8,#4ea7c5)}.tank b[data-v-271fd4a8]{position:relative;color:#174f63;font-size:11px;text-shadow:0 1px #fff}.suite-chart[data-v-271fd4a8]{min-height:128px;flex:1 1 128px}.suite-data-table summary[data-v-271fd4a8]{cursor:pointer;color:#58786c;font-size:10px;font-weight:700}.suite-data-table>div[data-v-271fd4a8]{max-width:100%;margin-top:7px;overflow:auto}.suite-data-table table[data-v-271fd4a8]{width:100%;border-collapse:collapse;font-size:10px;text-align:right;white-space:nowrap}.suite-data-table th[data-v-271fd4a8],.suite-data-table td[data-v-271fd4a8]{padding:5px;border-bottom:1px solid #e7efeb}.suite-data-table th[data-v-271fd4a8]:first-child{text-align:left}.suite-note[data-v-271fd4a8]{color:#879b92;font-size:10px}.suite-note.warning[data-v-271fd4a8]{color:#8b692a}@media(max-width:560px){.suite-metrics[data-v-271fd4a8]{grid-template-columns:repeat(2,minmax(0,1fr))}}.valve-widget[data-v-984086ef]{display:flex;min-height:100%;flex-direction:column;justify-content:center}.valve-active_valves p[data-v-984086ef]{margin:0;color:#71887e;font-size:11px}.valve-active_valves>strong[data-v-984086ef]{margin:7px 0 2px;color:#315e4d;font:600 36px/1 Georgia,serif}.valve-active_valves>span[data-v-984086ef]{color:#456f60;font-size:12px;font-weight:700}.valve-active_valves>small[data-v-984086ef]{margin-top:8px;color:#879b92;font-size:10px}.valve-status-list[data-v-984086ef],.valve-timeline[data-v-984086ef]{display:grid;gap:0;margin:0;padding:0;list-style:none}.valve-status-list li[data-v-984086ef],.valve-timeline li[data-v-984086ef]{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 0;border-bottom:1px solid #e8efeb}.valve-status-list li[data-v-984086ef]:last-child,.valve-timeline li[data-v-984086ef]:last-child{border-bottom:0}.valve-status-list i[data-v-984086ef],.valve-timeline i[data-v-984086ef]{width:9px;height:9px;border:2px solid #a7b6af;border-radius:50%;background:#fff}.valve-status-list i.open[data-v-984086ef],.valve-timeline i.open[data-v-984086ef]{border-color:#3c8b69;background:#5ab083}.valve-status-list i.closed[data-v-984086ef],.valve-timeline i.closed[data-v-984086ef]{border-color:#71857c;background:#dfe7e3}.valve-status-list span[data-v-984086ef],.valve-timeline span[data-v-984086ef]{min-width:0}.valve-status-list b[data-v-984086ef],.valve-status-list small[data-v-984086ef],.valve-timeline b[data-v-984086ef],.valve-timeline small[data-v-984086ef]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.valve-status-list b[data-v-984086ef],.valve-timeline b[data-v-984086ef]{color:#41695a;font-size:11px;text-transform:capitalize}.valve-status-list small[data-v-984086ef],.valve-timeline small[data-v-984086ef]{margin-top:2px;color:#8b9d96;font-size:10px}.valve-status-list strong[data-v-984086ef]{color:#58786c;font-size:10px;text-transform:capitalize}.valve-timeline time[data-v-984086ef]{color:#869991;font-size:10px;white-space:nowrap}.lifecycle[data-v-5deaefaa]{border:1px solid var(--line,#dfe7e2);border-radius:16px;padding:18px;background:var(--surface,#fff)}header[data-v-5deaefaa]{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}h3[data-v-5deaefaa]{font:600 .86rem/1.35 ui-monospace,SFMono-Regular,monospace;overflow-wrap:anywhere;margin:3px 0 0}.eyebrow[data-v-5deaefaa]{margin:0;color:#557064;font-size:.72rem;letter-spacing:.09em}.badges[data-v-5deaefaa]{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.command-status[data-v-5deaefaa],.simulated[data-v-5deaefaa]{border-radius:999px;background:#edf5f0;color:#276244;padding:5px 10px;font-size:.76rem;font-weight:700;text-transform:capitalize}.simulated[data-v-5deaefaa]{background:#fff3d9;color:#765000}ol[data-v-5deaefaa]{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 10px}li[data-v-5deaefaa]{display:grid;grid-template-columns:25px 1fr;gap:8px;position:relative;min-width:0}li[data-v-5deaefaa]:not(:last-child):after{content:"";position:absolute;left:12px;top:26px;width:1px;height:calc(100% + 6px);background:#dce6e0}.marker[data-v-5deaefaa]{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e5ebe7;color:#839189}.complete .marker[data-v-5deaefaa]{background:#2f7653;color:#fff}.current .marker[data-v-5deaefaa]{background:#fff4d8;color:#9a6a00;box-shadow:inset 0 0 0 2px #e2b94f}.stopped[data-v-5deaefaa]{opacity:.45}li b[data-v-5deaefaa]{display:block;font-size:.83rem}li small[data-v-5deaefaa]{display:block;color:#687971;font-size:.72rem;line-height:1.4;margin-top:3px}li p[data-v-5deaefaa]{font-size:.74rem;margin:5px 0 0;color:#46564e}.terminal[data-v-5deaefaa]{display:flex;gap:9px;margin-top:17px;padding:11px 13px;border-radius:10px;background:#fff2ef;color:#8b3428}.terminal small[data-v-5deaefaa]{display:block;margin-top:2px}.diagnostics[data-v-5deaefaa]{margin-top:16px}.diagnostics summary[data-v-5deaefaa]{cursor:pointer;color:#5b6c63;font-size:.78rem;font-weight:650}.diagnostics pre[data-v-5deaefaa]{max-height:300px;overflow:auto;white-space:pre-wrap;font-size:.72rem;background:#f5f7f5;padding:12px;border-radius:10px}@media(max-width:800px){ol[data-v-5deaefaa]{grid-template-columns:1fr 1fr}}@media(max-width:520px){ol[data-v-5deaefaa]{grid-template-columns:1fr}li[data-v-5deaefaa]:not(:last-child):after{height:calc(100% + 7px)}}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#243732;background:#f3f6f2;font-synthesis:none;--ink: #203530;--muted: #78908a;--line: #e3ebe5;--paper: #fff;--forest: #183a34;--forest-light: #2f6256;--mint: #6eaf9b;--gold: #c6a560;--coral: #c97c6a;--shadow: 0 12px 30px rgba(29, 66, 57, .055)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f3f6f2}button,input,select{font:inherit}button,a{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}.mono,.eyebrow,.nav-kicker,small{letter-spacing:.025em}.eyebrow{margin:0 0 8px;color:#7e9890;font-size:10px;font-weight:700;letter-spacing:.16em}.eyebrow.light{color:#99c6b6}.muted{color:#8aa099;font-size:12px}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:10px}.auth-page{display:grid;grid-template-columns:minmax(420px,47%) 1fr;min-height:100vh;background:#f8faf7}.auth-visual{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:42px 8%;color:#eaf5ee;background:#183a34;isolation:isolate}.visual-noise{position:absolute;inset:0;opacity:.45;z-index:-1;background:radial-gradient(circle at 16% 20%,#4f8a741f 0 2px,transparent 3px) 0 0 / 30px 30px,linear-gradient(140deg,transparent 40%,#2c66581f 40%,transparent 70%)}.auth-brand,.brand{display:flex;align-items:center;gap:11px;color:#f3faf5}.auth-brand b,.brand b{display:block;letter-spacing:.19em;font-size:13px}.auth-brand small,.brand small{display:block;margin-top:3px;color:#91b8a8;font-family:SFMono-Regular,Consolas,monospace;font-size:8px;letter-spacing:.15em}.brand-orbit{display:grid;width:31px;height:31px;place-items:center;border:1px solid #88c0aa;border-radius:50%;color:#bce1cf;font:19px Georgia,serif}.visual-copy{position:relative;z-index:1;max-width:500px;margin:auto 0 28px}.visual-copy h1{margin:0;font:500 clamp(38px,4.6vw,66px)/1.06 Georgia,serif;letter-spacing:-.045em}.visual-copy h1 em{color:#a9d4bd;font-style:italic}.visual-copy>p:last-child{max-width:390px;margin:22px 0 0;color:#a8c4b8;font-size:14px;line-height:1.7}.visual-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;max-width:590px}.visual-stat{display:flex;gap:9px;align-items:flex-start;padding-top:15px;border-top:1px solid #63927d4c;color:#9fd0bb}.visual-stat b,.visual-stat small{display:block}.visual-stat b{color:#e2f1e7;font-size:11px}.visual-stat small{margin-top:5px;color:#86aa9c;font-size:9px;line-height:1.4}.visual-footer{position:relative;z-index:1;display:flex;gap:7px;align-items:center;margin:34px 0 0;color:#85aa9c;font:10px SFMono-Regular,Consolas,monospace}.plant-illustration{position:absolute;inset:auto -10% -7% 0;height:40%;z-index:-1;opacity:.9}.sun{position:absolute;right:13%;top:10%;width:100px;height:100px;border:1px solid #cdad6970;border-radius:50%;box-shadow:0 0 0 18px #cdad6914,0 0 0 36px #cdad690c}.hill{position:absolute;right:-10%;bottom:-22%;width:120%;height:72%;border-radius:50% 50% 0 0;transform:rotate(-4deg)}.hill-back{background:#235146}.hill-front{right:-20%;bottom:-34%;background:#1b433a;transform:rotate(6deg)}.plant{position:absolute;bottom:12%;width:80px;height:170px;border-left:2px solid #80b296;transform-origin:bottom}.plant b{position:absolute;bottom:0;left:-4px;width:10px;height:160px;border-radius:12px;background:#78ae8f}.plant i{position:absolute;display:block;width:44px;height:20px;border-radius:80% 0;background:#67a485;transform-origin:bottom right}.plant i:first-child{left:-41px;top:55px;transform:rotate(20deg)}.plant i:nth-child(2){left:3px;top:90px;transform:scaleX(-1) rotate(20deg)}.plant-one{left:17%;transform:rotate(-10deg) scale(.82)}.plant-two{left:43%;transform:rotate(5deg)}.plant-three{left:69%;transform:rotate(13deg) scale(.65)}.auth-form-panel{display:grid;place-items:center;padding:42px 8%}.auth-card{width:min(100%,440px);padding:20px 0}.auth-card h2{margin:0;color:#233a34;font:500 31px/1.16 Georgia,serif;letter-spacing:-.035em}.auth-intro{max-width:400px;margin:11px 0 26px;color:#7e948d;font-size:13px;line-height:1.6}.auth-card form{display:grid;gap:15px}.auth-card label,.modal label{display:block;color:#6c867e;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.auth-card input,.modal input,.modal select{width:100%;min-height:43px;margin-top:7px;border:1px solid #dce7df;border-radius:5px;outline:none;background:#fff;color:#294139;font-size:13px;letter-spacing:0;padding:11px 12px;text-transform:none;transition:border-color .2s,box-shadow .2s}.auth-card input:focus,.modal input:focus,.modal select:focus,.search-field input:focus{border-color:#70ad99;box-shadow:0 0 0 3px #70ad991c}.field-icon{position:relative;display:flex;align-items:center}.field-icon>svg{position:absolute;left:12px;color:#91aaa1;pointer-events:none}.field-icon input{padding-left:38px}.field-action{position:absolute;right:7px;display:grid;place-items:center;width:30px;height:30px;border:0;background:transparent;color:#8aa098}.viewer-note{margin:18px 0;padding:13px 14px;border-left:2px solid #72ad98;background:#edf6f0}.viewer-note span{color:#548c78;font:9px SFMono-Regular,Consolas,monospace;letter-spacing:.15em}.viewer-note p{margin:6px 0 0;color:#6f8980;font-size:11px;line-height:1.5}.form-error{margin:12px 0;padding:10px 12px;border:1px solid #f0cfc6;border-radius:5px;background:#fff2ef;color:#b45c4c;font-size:11px;line-height:1.4}.auth-notice{margin:12px 0}.auth-notice .quiet-button,.form-error .quiet-button{margin-left:auto;color:inherit}.auth-submit{width:100%;justify-content:space-between;margin-top:6px}.auth-switch{margin:24px 0 0;color:#8ba099;font-size:12px;text-align:center}.auth-switch a{color:#4d927e;font-weight:700}.mobile-brand{display:none;align-items:center;gap:9px;margin-bottom:25px;color:#244139}.mobile-brand b{letter-spacing:.15em;font-size:12px}.app-shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;display:flex;width:248px;height:100vh;flex-shrink:0;flex-direction:column;padding:28px 17px 20px;background:var(--forest);color:#d9ece2}.brand-row{display:flex;align-items:center;padding:0 11px 33px}.brand{gap:10px}.brand:hover{opacity:.88}.mobile-close,.mobile-menu{display:none}.facility-switcher{display:flex;align-items:center;gap:10px;padding:12px 11px;border:1px solid #507267;border-radius:6px;color:#b1ccc0}.facility-switcher>span:nth-child(2){flex:1}.facility-switcher small,.facility-switcher b{display:block}.facility-switcher small{color:#89aa9e;font:8px SFMono-Regular,Consolas,monospace;letter-spacing:.15em}.facility-switcher b{margin-top:4px;color:#f0f8f2;font-size:11px;font-weight:600}.status-dot{display:inline-block;width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#7bc49d;box-shadow:0 0 0 4px #7bc49d1c}.side-nav{display:flex;flex-direction:column;gap:4px;margin-top:30px}.nav-kicker{margin:0 12px 9px;color:#7fa69a;font:9px SFMono-Regular,Consolas,monospace;letter-spacing:.16em}.side-nav a{display:flex;align-items:center;gap:13px;padding:11px 12px;border-radius:5px;color:#9fbbb0;font-size:13px;transition:background .2s,color .2s}.side-nav a:hover{background:#31584e;color:#eff8f2}.side-nav a.active{background:#315e52;color:#f5fcf7;box-shadow:inset 2px 0 #a1d2bd}.sidebar-foot{margin-top:auto}.gateway-health{display:flex;align-items:center;gap:10px;padding:17px 8px;border-top:1px solid #3e6257;border-bottom:1px solid #3e6257;color:#79a293}.gateway-health>span:nth-child(2){flex:1}.gateway-health b,.gateway-health small,.sidebar-user b,.sidebar-user small{display:block}.gateway-health b,.sidebar-user b{color:#d8ebe1;font-size:11px}.gateway-health small,.sidebar-user small{margin-top:4px;color:#81a397;font-size:9px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:19px 8px 0}.sidebar-user>span:nth-child(2){flex:1;min-width:0}.sidebar-user b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user button{display:grid;place-items:center;border:0;background:transparent;color:#7d9e93}.sidebar-signout-error{display:grid;gap:7px;margin:13px 8px 0;padding:9px;border:1px solid #865a50;border-radius:5px;color:#f0c5bd;font-size:10px;line-height:1.35}.sidebar-signout-error button{width:fit-content;padding:0;border:0;background:transparent;color:#b9decf;font-size:10px;text-decoration:underline}.avatar,.top-avatar{display:grid;width:31px;height:31px;flex:0 0 auto;place-items:center;border-radius:50%;background:#d1ad68;color:#fff;font:10px SFMono-Regular,Consolas,monospace}.main-area{width:min(100%,1500px);min-width:0;margin:0 auto;padding:44px 54px 55px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:33px}.topbar h1{margin:0;color:#223933;font:500 34px/1.12 Georgia,serif;letter-spacing:-.045em}.spark{margin-left:7px;color:var(--gold);font:20px sans-serif;vertical-align:top}.page-subtitle{margin:9px 0 0;color:#7e958d;font-size:13px}.topbar-actions{display:flex;align-items:center;gap:18px;padding-top:10px}.facility-chip,.top-user{display:flex;align-items:center;gap:8px;color:#78928a;font:10px SFMono-Regular,Consolas,monospace}.top-user{color:#55766b;font-family:inherit;font-size:12px}.view-stack{display:flex;flex-direction:column;gap:18px}.panel{border:1px solid var(--line);border-radius:8px;background:var(--paper);box-shadow:var(--shadow)}.panel-heading,.page-actions,.section-heading{display:flex;align-items:flex-start;justify-content:space-between}.content-grid{display:grid;gap:18px}.content-grid.two-thirds{grid-template-columns:1.65fr 1fr}.panel{padding:23px}.panel-heading{margin-bottom:20px}.panel-heading h2,.section-heading h2{margin:0;color:#263d36;font:500 20px/1.15 Georgia,serif;letter-spacing:-.02em}.text-link{color:#568f7d;font-size:11px}.text-link span{margin-left:5px;font-size:16px}.secure-label,.role-lock{display:inline-flex;align-items:center;gap:5px;color:#78978d;font:9px SFMono-Regular,Consolas,monospace}.compact-table{min-width:0}.table-row{display:grid;grid-template-columns:minmax(180px,1.6fr) .8fr 1fr 1fr .8fr;gap:12px;align-items:center;min-width:0}.table-head{padding:0 0 10px;color:#99aaa4;font:9px SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.09em}.fleet-row{padding:12px 0;border-top:1px solid #edf1ed}.fleet-row:hover{background:#fbfdfb}.fleet-row>span{min-width:0}.device-cell{display:flex;align-items:center;gap:10px;min-width:0}.device-cell>span{min-width:0}.device-cell b,.device-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-cell b{color:#334841;font-size:11px}.device-cell small{margin-top:4px;color:#91a39d;font-size:9px}.device-icon{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:50%}.device-icon.teros{color:#559b8a;background:#e6f3ef}.device-icon.lysimeter{color:#ad853e;background:#fbf0d7}.device-icon.irrigation_controller{color:#8877a7;background:#efedfb}.device-icon.gateway{color:#4e8e91;background:#e5f2f2}.reading{color:#3f6457}.status-badge{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px 8px;border-radius:12px;color:#559072;background:#e8f5ec;font:9px SFMono-Regular,Consolas,monospace;text-transform:capitalize;white-space:nowrap}.status-badge i{width:5px;height:5px;border-radius:50%;background:currentColor}.status-badge.offline,.status-badge.failed,.status-badge.error{color:#bc6b5c;background:#fbedeb}.status-badge.queued,.status-badge.sent,.status-badge.pending{color:#ae843c;background:#fcf2db}.status-badge.unknown,.status-badge.cancelled{color:#8c9c96;background:#eef2ef}.inline-empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:95px;color:#91a29c;font-size:11px}.lower-grid{align-items:stretch}.chart-panel{min-height:285px}.chart-key{display:inline-flex;align-items:center;gap:5px;color:#719186;font:9px SFMono-Regular,Consolas,monospace}.chart-key i{width:6px;height:6px;border-radius:50%;background:#66a995}.chart-key em{margin-left:7px;color:#a0aea8;font-style:normal}.chart-box{display:flex;height:176px;margin-top:8px}.chart-y{display:flex;flex-direction:column;justify-content:space-between;padding:0 10px 0 0;color:#a0aea8;font:9px SFMono-Regular,Consolas,monospace}.chart-area{position:relative;flex:1;min-width:0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 43px,#edf2ee 44px)}.chart-area svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.zone-bars{display:flex;flex-direction:column;gap:14px;margin:25px 2px 8px}.zone-bar{display:grid;grid-template-columns:1fr 2fr 52px;gap:12px;align-items:center;color:#759088;font-size:10px}.zone-bar div{height:6px;overflow:hidden;border-radius:5px;background:#edf2ee}.zone-bar i{display:block;height:100%;border-radius:inherit;background:#70b09c}.zone-bar b{color:#477d6b;font:10px SFMono-Regular,Consolas,monospace;text-align:right}.quick-panel{display:flex;flex-direction:column}.quick-copy{max-width:270px;margin:4px 0 24px;color:#82978f;font-size:12px;line-height:1.65}.primary-button,.secondary-button,.quiet-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:5px;font-size:11px}.primary-button{min-height:40px;padding:0 14px;border:0;background:#2d6255;color:#fff}.primary-button:hover{background:#245348}.primary-button>span:last-child{margin-left:auto;font-size:16px}.secondary-button{min-height:34px;padding:0 12px;border:1px solid #dce7df;background:#fff;color:#608478}.quiet-button{padding:0;border:0;background:transparent;color:#4d907d;text-decoration:underline}.safety-row,.permission-note{display:flex;gap:10px;align-items:flex-start;margin-top:auto;padding-top:17px;border-top:1px solid #edf1ed}.safety-row>span:first-child{display:grid;width:20px;height:20px;flex:0 0 auto;place-items:center;border-radius:50%;color:#559a78;background:#e6f4eb;font-size:11px}.safety-row b,.safety-row small,.permission-note b,.permission-note small{display:block}.safety-row b,.permission-note b{color:#526960;font-size:10px}.safety-row small,.permission-note small{margin-top:4px;color:#9aa9a2;font:9px/1.4 SFMono-Regular,Consolas,monospace}.permission-note{margin-top:0;padding:13px;border:1px solid #e4e9e4;border-radius:5px;background:#fafcf9;color:#7e998f}.permission-note small{line-height:1.5}.helper-text{margin-top:9px;color:#a17837;font-size:10px}.notice{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid #edd8a7;border-radius:5px;background:#fff8e8;color:#78602b;font-size:11px}.notice span{flex:1}.error-notice{border-color:#f0d1ca;background:#fff4f1;color:#aa6254}.error-notice .quiet-button{color:inherit}.toolbar,.page-actions{align-items:center;gap:16px}.search-field{display:flex;width:min(100%,380px);align-items:center;gap:9px;padding:0 12px;border:1px solid #dfe8e1;border-radius:5px;background:#fff;color:#93a69e}.search-field input{width:100%;min-height:40px;border:0;outline:none;background:transparent;color:#2d473d;font-size:12px}.filter-group{display:flex;align-items:center;gap:8px;margin-left:auto;color:#7f998f}.filter-group select{min-height:36px;padding:0 9px;border:1px solid #dfe8e1;border-radius:4px;outline:none;background:#fff;color:#708a81;font-size:10px}.table-panel{padding-bottom:12px}.responsive-table{overflow-x:auto}.device-table-row{grid-template-columns:minmax(190px,1.35fr) .8fr minmax(150px,1.2fr) 1fr 1fr .8fr;min-width:820px;padding:14px 0;border-top:1px solid #edf1ed}.type-label{color:#739188;font:9px SFMono-Regular,Consolas,monospace}.location-cell{display:flex;align-items:center;gap:5px;min-width:0;overflow:hidden;color:#81978f;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.location-cell svg{flex:0 0 auto;color:#a3b2ac}.gateway-grid,.controller-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gateway-card,.controller-card{min-width:0}.gateway-card-top,.controller-top{display:flex;align-items:center;justify-content:space-between}.gateway-icon,.controller-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:9px;color:#4e8e91;background:#e6f2f1}.controller-icon{color:#559c89;background:#e5f3ee}.gateway-name{margin-top:18px}.gateway-name h2{margin:0;color:#2d453d;font:500 21px Georgia,serif}.gateway-name span{display:block;margin-top:6px;color:#93a69f}.gateway-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0;padding:14px 0;border-top:1px solid #edf1ed;border-bottom:1px solid #edf1ed}.gateway-stats span{display:grid;grid-template-columns:16px 1fr;align-items:center;color:#84a095}.gateway-stats b{color:#46665a;font:12px SFMono-Regular,Consolas,monospace}.gateway-stats small{grid-column:2;margin-top:4px;color:#9caaa5;font-size:8px;line-height:1.3}.assigned-devices{min-height:57px}.assigned-devices .eyebrow{margin-bottom:8px;font-size:8px}.assigned-list{display:flex;flex-wrap:wrap;gap:5px}.assigned-pill,.assigned-more{max-width:100%;overflow:hidden;padding:5px 7px;border:1px solid #e0ebe4;border-radius:3px;color:#739187;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.assigned-more{color:#a6854d;background:#fcf5e6}.controller-card h3{margin:17px 0 4px;color:#2f473f;font-size:14px;font-weight:600}.controller-id{color:#99aaa4}.controller-card>p{margin:15px 0 19px;color:#82978e;font-size:11px}.limit-row{display:flex;justify-content:space-between;gap:8px;margin-bottom:17px;padding:11px 0;border-top:1px solid #edf1ed;color:#92a39d;font-size:9px}.limit-row b{display:block;margin-top:4px;color:#507565;font:10px SFMono-Regular,Consolas,monospace}.section-block{display:flex;flex-direction:column;gap:15px}.section-heading{align-items:center}.irrigation-summary{display:flex;gap:18px;color:#82968f;font-size:11px}.irrigation-summary b{margin-right:3px;color:#456d5e;font:13px SFMono-Regular,Consolas,monospace}.history-panel{padding:8px 22px}.history-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #edf1ed}.history-row:last-child{border-bottom:0}.history-icon{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:50%}.history-icon.acknowledged{color:#559474;background:#e7f4eb}.history-icon.failed,.history-icon.cancelled{color:#be6b5d;background:#fcecea}.history-icon.queued,.history-icon.sent{color:#ae843e;background:#fbf0d8}.history-main{min-width:0;flex:1}.history-main b,.history-main small,.history-metrics b,.history-metrics small{display:block}.history-main b{overflow:hidden;color:#395149;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.history-main small{margin-top:4px;color:#95a49e;font-size:9px}.history-metrics{min-width:60px;text-align:right}.history-metrics b{color:#4c7061;font:10px SFMono-Regular,Consolas,monospace}.history-metrics small{margin-top:4px;color:#97a7a1;font:9px SFMono-Regular,Consolas,monospace}.safety-banner{display:flex;align-items:flex-start;gap:12px;padding:15px 17px;border:1px solid #d8e8df;border-radius:6px;background:#edf7f0;color:#59957a}.safety-banner>span{flex:1}.safety-banner b,.safety-banner small{display:block}.safety-banner b{color:#41735f;font-size:11px}.safety-banner small{max-width:760px;margin-top:4px;color:#7f9b8f;font-size:10px;line-height:1.5}.gateway-stats{grid-template-columns:repeat(2,1fr)}.state-block{display:flex;min-height:145px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;border:1px dashed #d6e2da;border-radius:6px;color:#87a097;text-align:center}.panel>.state-block{min-height:154px;border:0}.state-block b{color:#5a776b;font-size:12px}.state-block p{max-width:330px;margin:0;color:#9aa9a3;font-size:10px;line-height:1.5}.state-block.error{border-color:#efd1c9;color:#b96d5c;background:#fffaf9}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:start center;overflow-y:auto;padding:18px;background:#163b3488}.modal{position:relative;width:min(100%,420px);margin:auto 0;padding:29px;border:1px solid #e2ebe5;border-radius:9px;background:#fff;box-shadow:0 20px 55px #102c2580}.modal h2{margin:0;color:#274139;font:500 26px Georgia,serif}.modal-subtitle{margin:9px 0 20px;color:#81978f;font-size:11px;line-height:1.5}.modal-close{position:absolute;top:15px;right:15px;display:grid;place-items:center;border:0;background:transparent;color:#8ba29a}.modal label{margin-top:14px}.modal select{appearance:auto}.input-with-unit{display:flex;align-items:center;margin-top:7px;border:1px solid #dce7df;border-radius:5px}.input-with-unit:focus-within{border-color:#70ad99;box-shadow:0 0 0 3px #70ad991c}.input-with-unit input{margin:0;border:0;box-shadow:none}.input-with-unit span{padding-right:11px;color:#9aa9a3;font:9px SFMono-Regular,Consolas,monospace;white-space:nowrap}.volume-preview{display:flex;align-items:center;gap:8px;margin-top:17px;padding:10px 11px;border-radius:5px;color:#6f9384;background:#edf7f0;font-size:10px}.volume-preview b{margin-left:auto;color:#42745f;font:11px SFMono-Regular,Consolas,monospace}.modal .full{width:100%;margin-top:15px;text-align:left}.button-arrow{margin-left:auto;font-size:16px}.modal-note{display:block;margin-top:11px;color:#99a8a2;font:9px/1.5 SFMono-Regular,Consolas,monospace}.button-spinner{width:13px;height:13px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.sidebar-scrim{display:none}@media(max-width:1180px){.main-area{padding:34px 30px 45px}.content-grid.two-thirds{grid-template-columns:1fr}.gateway-grid,.controller-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.auth-page{display:block}.auth-visual{min-height:330px;padding:25px 24px}.visual-copy{margin:45px 0 0}.visual-copy h1{font-size:37px}.visual-copy>p:last-child{margin-top:12px;font-size:12px}.visual-grid{display:none}.visual-footer{margin-top:auto}.plant-illustration{height:36%}.auth-form-panel{padding:25px 24px 40px}.mobile-brand{display:flex}.auth-card{padding:0}.auth-card h2{font-size:27px}.sidebar{position:fixed;z-index:15;left:-270px;transition:left .25s ease}.sidebar.open{left:0;box-shadow:15px 0 40px #0b211b55}.sidebar-scrim{position:fixed;inset:0;z-index:14;display:block;background:#173c3480}.mobile-close,.mobile-menu{display:grid;place-items:center;border:0;background:transparent;color:inherit}.mobile-close{margin-left:auto;color:#b1cbbf}.main-area{padding:24px 16px 35px}.topbar{gap:11px;margin-bottom:25px}.mobile-menu{width:33px;height:33px;flex:0 0 auto;color:#53786c}.topbar h1{font-size:27px}.page-subtitle{max-width:460px;font-size:11px}.topbar-actions{display:none}.panel{padding:17px}.panel-heading h2,.section-heading h2{font-size:18px}.table-row{grid-template-columns:minmax(150px,1.6fr) .9fr 1fr}.table-head span:nth-child(4),.table-head span:nth-child(5),.fleet-row>span:nth-child(4),.fleet-row>span:nth-child(5){display:none}.fleet-row{padding:10px 0}.fleet-row .status-badge{justify-self:end}.gateway-grid,.controller-grid{grid-template-columns:1fr}.toolbar,.page-actions{align-items:stretch;flex-direction:column}.search-field{width:100%}.filter-group{width:100%;margin-left:0}.filter-group select{flex:1}.irrigation-summary{flex-wrap:wrap;gap:8px 14px}.section-heading{gap:10px;align-items:flex-start;flex-direction:column}.history-panel{padding:3px 14px}.history-row{gap:8px}.history-metrics{display:none}.history-row .status-badge{margin-left:auto}.chart-key em{display:none}.zone-bar{grid-template-columns:1fr 1.4fr 42px;gap:7px;font-size:9px}.modal{padding:24px 20px}}.dashboard-refresh-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border:1px solid #dce8e0;border-radius:7px;background:#f9fcf9}.dashboard-refresh-bar>div{display:flex;align-items:center;gap:10px;min-width:0}.dashboard-refresh-bar b,.dashboard-refresh-bar small{display:block}.dashboard-refresh-bar b{color:#456b5d;font-size:11px}.dashboard-refresh-bar small{margin-top:4px;color:#8fa099;font:9px/1.4 SFMono-Regular,Consolas,monospace}.status-dot.stale{background:#c48068;box-shadow:0 0 0 4px #c480681c}.dashboard-widget-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dashboard-widget-stack{display:grid;gap:12px}.future-empty-card h3,.irrigation-method-card h3{margin:14px 0 0;color:#2d473e;font:500 17px Georgia,serif}.dashboard-domain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.future-label{display:inline-flex;padding:5px 8px;border-radius:12px;color:#8b9d96;background:#eef2ef;font:8px SFMono-Regular,Consolas,monospace;white-space:nowrap}.future-empty-card{display:flex;align-items:flex-start;gap:14px;min-height:210px}.future-empty-card>div{min-width:0;flex:1}.future-empty-card h3{margin-top:3px}.future-empty-card p{margin:9px 0 0;color:#82978f;font-size:11px;line-height:1.6}.future-empty-card .status-badge{flex:0 0 auto}.controller-state-list{display:grid}.controller-state-row{display:grid;grid-template-columns:30px minmax(120px,1fr) auto minmax(130px,.8fr);gap:10px;align-items:center;padding:11px 0;border-top:1px solid #edf1ed}.controller-state-row:first-child{border-top:0}.controller-state-row>span:nth-child(2),.controller-command{min-width:0}.controller-state-row b,.controller-state-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.controller-state-row b{color:#45675b;font-size:10px}.controller-state-row small{margin-top:4px;color:#95a59f;font:8px SFMono-Regular,Consolas,monospace}.controller-command{text-align:right}.alert-summary-card svg{color:#bd7b68}.irrigation-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.irrigation-method-card{display:flex;min-width:0;flex-direction:column;box-shadow:none}.irrigation-method-card>p{min-height:52px;margin:9px 0 15px;color:#7d938b;font-size:10px;line-height:1.55}.method-readonly-note{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border:1px solid #e8dfc9;border-radius:6px;color:#8c7442;background:#fffaf0;font-size:10px;line-height:1.55}.method-readonly-note svg{flex:0 0 auto}.method-readonly-note b{color:#735f36}.manual-controls-section{scroll-margin-top:20px}@media(max-width:1180px){.dashboard-widget-grid,.irrigation-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.dashboard-refresh-bar{align-items:stretch;flex-direction:column}.dashboard-refresh-bar .secondary-button{width:100%}.dashboard-widget-grid,.dashboard-domain-grid,.irrigation-method-grid{grid-template-columns:1fr}.controller-state-row{grid-template-columns:30px 1fr auto}.controller-command{grid-column:2 / -1;text-align:left}.future-empty-card{min-height:auto;flex-wrap:wrap}.future-empty-card .status-badge{margin-left:50px}}@media(max-width:390px){.topbar h1{font-size:24px}}.toolbar-actions{display:flex;align-items:center;gap:9px}.device-toolbar{display:flex}.device-toolbar-actions{display:flex;align-items:center;gap:10px;min-width:0;margin-left:auto}.device-filter-group{min-width:0;margin-left:0}.device-filter-shell{position:relative;display:flex;min-width:0;align-items:center;border:1px solid #dbe7df;border-radius:6px;background:linear-gradient(180deg,#fff,#f8fbf8);box-shadow:0 3px 10px #1d42390b,inset 0 1px #fffc;color:#78948a;transition:border-color .2s,box-shadow .2s,background .2s,color .2s}.device-filter-shell:hover{border-color:#bdd3c6;background:#fff;color:#4f7b6c;box-shadow:0 5px 14px #1d423912}.device-filter-shell:focus-within{border-color:#70ad99;background:#fff;color:#3e7966;box-shadow:0 0 0 3px #70ad991c,0 5px 14px #1d423912}.device-filter-group .device-filter-shell select{width:100%;min-width:0;min-height:38px;padding:0 31px 0 11px;border:0;border-radius:inherit;outline:none;appearance:none;background:transparent;color:#526f65;font-size:10px;font-weight:600;cursor:pointer}.device-filter-shell>svg{position:absolute;right:9px;flex:0 0 auto;pointer-events:none}.device-toolbar-actions>.primary-button{flex:0 0 auto;white-space:nowrap}.success-notice{border-color:#d4e8da;background:#eff9f1;color:#4f866a}.success-notice .quiet-button{display:grid;margin-left:auto;color:inherit;text-decoration:none}.device-table-head,.device-table-row{grid-template-columns:minmax(165px,1.2fr) minmax(88px,.68fr) minmax(105px,.78fr) minmax(140px,1fr) minmax(70px,.52fr) minmax(74px,.54fr) minmax(185px,1.25fr) minmax(170px,max-content);min-width:1100px}.device-table-row>*{min-width:0}.manual-valve-cell{display:flex;align-items:center}.manual-valve-unavailable{color:#a3b1ac;font:10px SFMono-Regular,Consolas,monospace}.manual-valve-switch{display:inline-flex;width:100%;min-width:0;min-height:42px;align-items:center;gap:9px;padding:5px 7px;border:1px solid #dfe9e3;border-radius:7px;background:#fbfdfb;color:#527266;text-align:left;transition:border-color .18s,background .18s,box-shadow .18s}.manual-valve-switch:hover:not(:disabled){border-color:#adcebe;background:#f6fbf7;box-shadow:0 3px 10px #26554412}.manual-valve-switch:focus-visible{outline:2px solid #70ad99;outline-offset:2px}.manual-valve-switch:disabled{cursor:not-allowed;opacity:.62}.manual-valve-track{position:relative;display:inline-flex;width:34px;height:19px;flex:0 0 auto;align-items:center;padding:2px;border:1px solid #cfdcd5;border-radius:12px;background:#e8efeb;color:#75948a;transition:border-color .18s,background .18s}.manual-valve-track i{width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #29453a40;transition:transform .18s}.manual-valve-track svg{margin:auto;animation:spin .9s linear infinite}.manual-valve-switch.on .manual-valve-track{border-color:#79ad97;background:#73aa91}.manual-valve-switch.on .manual-valve-track i{transform:translate(15px)}.manual-valve-switch.pending .manual-valve-track{border-color:#d9b773;background:#edcf8c}.manual-valve-copy{min-width:0}.manual-valve-copy b,.manual-valve-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manual-valve-copy b{color:#41675a;font-size:9px}.manual-valve-copy small{margin-top:3px;color:#8a9e96;font:7.5px SFMono-Regular,Consolas,monospace}.table-link{width:100%;padding:0;border:0;background:transparent;text-align:left}.table-link:hover b,.resource-title-button:hover h2,.resource-title-button:hover h3{color:#4d907d}.table-link:focus-visible,.resource-title-button:focus-visible,.icon-button:focus-visible,.modal-close:focus-visible{outline:2px solid #70ad99;outline-offset:3px}.row-actions{display:flex;align-items:center;gap:4px}.device-row-actions{justify-content:flex-end;white-space:nowrap}.icon-button{display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid #dfebe2;border-radius:5px;background:#fff;color:#678b7c}.icon-button:hover{border-color:#b8d4c5;color:#3d725f;background:#f6fbf7}.danger-icon{color:#bd7566}.danger-icon:hover{border-color:#efcfc8;color:#a75b4c;background:#fff7f5}.compact-action-button{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid #dfebe2;border-radius:5px;background:#fff;color:#567d70;font-size:9px}.compact-action-button:hover{border-color:#b8d4c5;background:#f6fbf7;color:#315f50}.compact-action-button.danger-action{border-color:#efdcd7;color:#ad6557}.compact-action-button.danger-action:hover{border-color:#e9c5bd;background:#fff7f5;color:#984d41}.modal-wide{width:min(100%,720px)}.modal-extra-wide{width:min(100%,900px)}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.modal-form-grid label,.full-field{min-width:0}.full-field{display:block;margin-top:15px}.modal textarea{width:100%;margin-top:7px;padding:11px 12px;border:1px solid #dce7df;border-radius:5px;outline:none;color:#294139;font:13px/1.5 SFMono-Regular,Consolas,monospace;resize:vertical}.modal textarea:focus{border-color:#70ad99;box-shadow:0 0 0 3px #70ad991c}.field-help{display:block;margin-top:7px;color:#95a7a0;font:9px/1.45 SFMono-Regular,Consolas,monospace;letter-spacing:.02em;text-transform:none}.prominent-help{padding-top:15px;border-top:1px solid #edf1ed}.checkbox-field{display:flex!important;align-items:center;gap:9px;min-height:43px;margin-top:27px!important;color:#668077!important;letter-spacing:.05em!important}.checkbox-field input{width:16px!important;min-height:16px!important;margin:0!important;accent-color:#3f806c}.checkbox-field span{font-size:10px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px;padding-top:17px;border-top:1px solid #edf1ed}.danger-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:0;border-radius:5px;background:#b76658;color:#fff;font-size:11px}.danger-button:hover{background:#a9574b}.confirm-copy{margin:0;color:#6f877e;font-size:12px;line-height:1.6}.resource-title-button{display:flex;width:100%;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:18px;padding:0;border:0;background:transparent;color:#7d988d;text-align:left}.resource-title-button>span{min-width:0}.resource-title-button svg{flex:0 0 auto;margin-top:5px}.resource-title-button .gateway-name{margin-top:0}.gateway-meta{display:flex;flex-wrap:wrap;gap:9px 15px;margin-top:12px;color:#8aa099;font-size:10px}.gateway-meta span{display:inline-flex;align-items:center;gap:5px}.resource-card-actions{display:flex;align-items:center;gap:7px;margin-top:17px;padding-top:14px;border-top:1px solid #edf1ed}.resource-card-actions .secondary-button{min-height:31px}.resource-card-actions .icon-button:first-of-type{margin-left:auto}.controller-flags{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 14px}.controller-flags span{padding:4px 7px;border:1px solid #e4eae5;border-radius:12px;color:#9aa8a2;font:8px SFMono-Regular,Consolas,monospace}.controller-flags span.active{border-color:#d4e8da;color:#4f8b70;background:#f0f9f1}.controller-card .resource-title-button h3{margin:0 0 4px;color:#2f473f;font-size:14px;font-weight:600}.controller-card .resource-title-button .controller-id{display:block}.limit-callout{display:flex;align-items:center;gap:9px;margin:12px 0 1px;padding:10px 11px;border:1px solid #d9e9df;border-radius:5px;color:#568b74;background:#f2faf4}.limit-callout span,.limit-callout b,.limit-callout small{display:block}.limit-callout b{color:#477966;font-size:10px}.limit-callout small{margin-top:3px;color:#7d9c8e;font:9px SFMono-Regular,Consolas,monospace}.history-cancel{flex:0 0 auto;margin-left:5px;text-decoration:none}.detail-hero{display:flex;align-items:center;gap:11px;padding-bottom:17px;border-bottom:1px solid #edf1ed}.detail-hero>span:nth-child(2){min-width:0;flex:1}.detail-hero b,.detail-hero small{display:block}.detail-hero b{color:#2f493f;font-size:13px}.detail-hero small{margin-top:4px;color:#92a59d}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:17px}.detail-grid>div,.detail-reading-grid>div{min-width:0;padding:10px;border:1px solid #edf1ed;border-radius:5px;background:#fbfdfb}.detail-grid small,.detail-grid b,.detail-reading-grid small,.detail-reading-grid b{display:block}.detail-grid small,.detail-reading-grid small{color:#93a69f;font:9px SFMono-Regular,Consolas,monospace;text-transform:capitalize}.detail-grid b,.detail-reading-grid b{margin-top:5px;overflow:hidden;color:#4b7061;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.detail-section{margin-top:21px}.detail-section .eyebrow{margin-bottom:9px}.detail-reading-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mini-list{border-top:1px solid #edf1ed}.mini-list-row{display:flex;align-items:center;gap:10px;min-width:0;padding:9px 0;border-bottom:1px solid #edf1ed;color:#627b70;font-size:10px}.mini-list-row>span:first-child{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-list-row .status-badge{flex:0 0 auto}.assignment-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.assignment-list{display:flex;flex-direction:column;gap:7px}.assignment-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:9px 10px;border:1px solid #e8eee9;border-radius:5px;background:#fbfdfb}.assignment-row>span{min-width:0}.assignment-row b,.assignment-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-row b{color:#4a6b5e;font-size:10px}.assignment-row small{margin-top:4px;color:#99aaa3;font:8px SFMono-Regular,Consolas,monospace}.assignment-row .secondary-button{min-height:28px;flex:0 0 auto;padding:0 8px;font-size:9px}.detail-assignment-list{border-top:1px solid #edf1ed}@media(max-width:760px){.toolbar-actions{width:100%}.toolbar-actions>*{flex:1}.device-toolbar-actions{width:100%;gap:8px;margin-left:0}.device-filter-group{flex:1 1 auto;width:auto;gap:6px}.device-filter-shell{flex:1 1 0}.device-filter-group .device-filter-shell select{padding-right:26px;padding-left:8px}.device-filter-shell>svg{right:7px}.device-table-head,.device-table-row{grid-template-columns:minmax(190px,1.35fr) .8fr minmax(150px,1.2fr) 1fr 1fr .8fr minmax(106px,.8fr)}.row-actions{justify-content:flex-start}.modal-form-grid,.assignment-columns{grid-template-columns:1fr}.detail-grid,.detail-reading-grid{grid-template-columns:repeat(2,1fr)}.assignment-columns>div+div{margin-top:17px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.resource-card-actions{flex-wrap:wrap}.resource-card-actions .secondary-button{flex:1}.history-cancel{display:none}}@media(max-width:390px){.device-toolbar-actions{gap:6px}.device-filter-group{gap:4px}.device-filter-icon{display:none}.device-filter-group .device-filter-shell select{padding-right:22px;padding-left:7px;font-size:9px}.device-filter-shell>svg{right:5px;width:12px}.device-toolbar-actions>.primary-button{padding:0 10px}}.dashboard-customize-bar h2{display:flex;align-items:center;gap:8px;margin:2px 0;color:#365b4d;font-size:18px}.dashboard-customize-bar small{color:#81978e;font:9px SFMono-Regular,Consolas,monospace}.dashboard-canvas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.dashboard-widget{min-width:0;transition:transform .18s ease,box-shadow .18s ease}.dashboard-widget.size-wide{grid-column:span 2}.dashboard-widget.editing{border-style:dashed}.widget-header{display:flex;align-items:center;min-height:22px;gap:6px}.widget-header .eyebrow{margin:0}.widget-actions{display:flex;margin-left:auto}.widget-actions .quiet-button{min-width:25px;padding:3px}.widget-grip{color:#8ca198;cursor:grab}.dashboard-widget h2{margin:8px 0 12px;color:#335548;font-size:14px}.widget-unavailable{display:grid;gap:5px;min-height:78px;align-content:center;padding:11px;border:1px dashed #d8e4dc;border-radius:6px;color:#83978e;font-size:10px}.widget-unavailable b{color:#617f72}.widget-unavailable small{line-height:1.45}.telemetry-primary,.widget-number{display:block;color:#345f4e;font:600 30px/1 Georgia,serif;letter-spacing:-.03em}.telemetry-primary small{color:#779188;font:11px SFMono-Regular,Consolas,monospace;letter-spacing:0}.telemetry-delta{display:inline-block;margin-top:7px;color:#668b7c;font:9px SFMono-Regular,Consolas,monospace}.sparkline{display:block;width:100%;height:44px;margin:10px 0 4px;overflow:visible}.sparkline polyline{stroke:#5b9a83;stroke-width:2;vector-effect:non-scaling-stroke}.sparkline-area{fill:#77ae9d24}.telemetry-range{display:flex;justify-content:space-between;color:#90a29b;font:8px SFMono-Regular,Consolas,monospace}.telemetry-gauge{height:8px;margin:10px 0;overflow:hidden;border-radius:99px;background:#e7efea}.telemetry-gauge span{display:block;height:100%;border-radius:inherit;background:#4f957d}.telemetry-categories{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.telemetry-chip{padding:4px 7px;border:1px solid #d9e8df;border-radius:99px;color:#55776a;background:#f5faf7;font:9px SFMono-Regular,Consolas,monospace}.telemetry-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:11px}.telemetry-secondary span{display:grid;gap:3px;padding:7px;border:1px solid #ebf0ec;border-radius:5px;color:#83988f;font-size:8px;text-transform:capitalize}.telemetry-secondary b{overflow:hidden;color:#4e7465;font:9px SFMono-Regular,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.widget-reading-options{display:grid;gap:6px;margin:15px 0 0;padding:10px;border:1px solid #e3ece6;border-radius:5px}.widget-reading-options legend{padding:0 4px;color:#6f897d;font-size:9px}.widget-reading-options .check-label{display:flex;align-items:center;gap:7px;margin:0;color:#587568;font:10px SFMono-Regular,Consolas,monospace;letter-spacing:0;text-transform:none}.widget-board{display:grid;gap:7px}.widget-board>span{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid #edf1ed;color:#527265;font-size:10px}.widget-board small{color:#91a49d}.gateway-widget{display:grid;gap:5px;padding:10px;border-radius:5px;background:#f4f9f6;color:#486d5e}.gateway-widget small{color:#829b90;text-transform:capitalize}.widget-drawer{position:fixed;z-index:30;top:0;right:0;bottom:0;display:grid;width:min(360px,92vw);align-content:start;gap:10px;padding:22px;border-left:1px solid #dbe7df;background:#fff;box-shadow:-12px 0 35px #173c3422}.widget-drawer>div{display:flex;justify-content:space-between}.widget-drawer input{min-height:36px}.widget-drawer>button{display:grid;gap:3px;padding:12px;border:1px solid #e1ebe4;border-radius:6px;background:#fbfdfb;text-align:left}.widget-drawer small{color:#8da198;font-size:9px}.device-type-picker{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:13px 0 2px;padding:0;border:0}.device-type-picker legend{margin-bottom:3px;color:#6f8980;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.device-type-card{position:relative;display:grid;grid-template-columns:22px 1fr 18px;gap:8px;align-items:center;min-height:68px;padding:10px;border:1px solid #dfeae3;border-radius:6px;cursor:pointer}.device-type-card input{position:absolute;opacity:0}.device-type-card b,.device-type-card small{display:block}.device-type-card b{color:#446b5d;font-size:10px}.device-type-card small{margin-top:4px;color:#8da198;font-size:8px;line-height:1.3}.device-type-card .type-check{visibility:hidden}.device-type-card.selected{border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor}.device-type-card.selected .type-check{visibility:visible}.device-type-card.forest{color:#458069;background:#f5fbf7}.device-type-card.mint{color:#4d8c84;background:#f4fbfa}.device-type-card.gold{color:#a8843b;background:#fffcf4}.device-type-card.violet{color:#79689f;background:#faf8ff}.device-type-card.coral{color:#ae725f;background:#fff8f5}.immutable-type-chip{display:inline-flex;margin-top:7px;padding:7px 9px;border-radius:12px;color:#547b6b;background:#eef5f0;font-size:10px}.reading-chip-list{display:flex;flex-wrap:wrap;gap:4px}.reading-chip-list .reading{max-width:120px;overflow:hidden;padding:4px 5px;border-radius:10px;background:#f0f6f2;color:#5c7e71;font-size:8px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.timeline-list{border-top:1px solid #edf1ed}.timeline-row{padding:10px 0;border-bottom:1px solid #edf1ed}.timeline-row summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;color:#59766a;font-size:10px}.timeline-row summary span{min-width:0}.timeline-row summary b,.timeline-row summary small{display:block}.timeline-row summary small{margin-top:3px;color:#92a49e;font:8px SFMono-Regular,Consolas,monospace}.timeline-row .detail-reading-grid,.payload-details{margin-top:10px}.payload-details summary{color:#5c8374;cursor:pointer;font-size:9px}.payload-details pre,.program-json{max-height:250px;margin:8px 0 0;overflow:auto;padding:10px;border-radius:5px;background:#f6f9f7;color:#546f64;font:9px/1.5 SFMono-Regular,Consolas,monospace;white-space:pre-wrap}.event-envelope{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;color:#839a90;font:8px SFMono-Regular,Consolas,monospace}@media(prefers-reduced-motion:reduce){.dashboard-widget{transition:none}.spin{animation:none!important}}@media(max-width:1180px){.dashboard-canvas{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.dashboard-canvas{grid-template-columns:1fr}.dashboard-widget.size-wide{grid-column:auto}.device-type-picker{grid-template-columns:1fr}}.device-filter-select{flex:1 1 0;min-width:120px;margin:0}.device-filter-select .select-menu{margin-top:0}.device-filter-select .select-menu-trigger{min-height:38px;padding-block:7px;font-size:10px}.device-filter-select .select-menu-options{min-width:190px}.detail-page-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.back-button{display:inline-flex;align-items:center;gap:7px;padding:7px 0;border:0;background:transparent;color:#50816f;font-size:11px;font-weight:700}.back-button:hover{color:#285e4c}.back-button:focus-visible{outline:2px solid #70ad99;outline-offset:4px}.frame-hero{display:flex;align-items:center;gap:14px;padding:20px 22px;border-color:#d8e8df;background:radial-gradient(circle at 90% 0,#aee3c92b,transparent 36%),linear-gradient(135deg,#fff,#f3faf6)}.gateway-frame-hero{background:radial-gradient(circle at 90% 0,#bdb5f32b,transparent 36%),linear-gradient(135deg,#fff,#f8f7ff)}.frame-hero-icon{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:14px}.frame-hero .device-icon{background:#e3f4ed;color:#328569}.frame-hero .gateway-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#eeebff;color:#7266a9}.frame-hero>div{min-width:0;flex:1}.frame-hero h2{margin:0;color:#2d4a3e;font:600 22px/1.1 Georgia,serif}.frame-hero p:last-child{margin:5px 0 0;color:#78948a}.detail-grid-rich{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.detail-grid-rich>div{min-height:74px;padding:13px;background:linear-gradient(145deg,#fff,#f7fbf8)}.detail-grid-rich b{display:flex;align-items:center;gap:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-data-panel{padding:20px}.detail-data-panel .json-viewer{margin-top:17px}.frame-stream{display:grid;gap:14px}.frame-stream-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.frame-stream-head>div{min-width:0}.frame-stream-head h2{margin:0;color:#2d4a3e;font:600 19px/1.2 Georgia,serif}.frame-stream-head p:last-child{margin:7px 0 0;color:#78938a;font-size:11px;line-height:1.5}.frame-stream-head .select-menu{width:min(100%,228px);flex:0 0 228px}.json-viewer{min-width:0;border:1px solid #dce9e1;border-radius:7px;background:#f8fbf9}.json-viewer summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;color:#477364;cursor:pointer;font-size:10px;font-weight:700}.json-viewer summary span{display:inline-flex;align-items:center;gap:6px}.json-viewer summary small{color:#8aa097;font:8px SFMono-Regular,Consolas,monospace}.json-viewer pre{max-height:320px;margin:0;overflow:auto;padding:10px;border-top:1px solid #e1ece5;color:#395f52;background:#fbfdfc;font:10px/1.55 SFMono-Regular,Consolas,monospace;white-space:pre-wrap;word-break:break-word}.compact-frame-hero{padding-block:15px}.frame-resource-summary{padding:0 20px}.resource-info-rows{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.resource-info-rows.gateway-info-rows{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-info-rows>div{min-width:0;padding:15px 16px;border-bottom:1px solid #edf1ed}.resource-info-rows>div:not(:nth-child(4n+1)){border-left:1px solid #edf1ed}.gateway-info-rows>div:not(:nth-child(4n+1)){border-left:0}.gateway-info-rows>div:not(:nth-child(3n+1)){border-left:1px solid #edf1ed}.resource-info-rows dt{color:#91a49d;font:8px SFMono-Regular,Consolas,monospace;letter-spacing:.09em;text-transform:uppercase}.resource-info-rows dd{display:flex;min-width:0;align-items:center;gap:5px;overflow:hidden;margin:6px 0 0;color:#42675a;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.resource-info-rows dd svg{flex:0 0 auto;color:#8ba097}.latest-reading-row{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:center;padding:15px 16px}.latest-reading-row>div:first-child>span{color:#8aa099;font-size:9px}.latest-reading-row .eyebrow{margin-bottom:4px}.latest-reading-row .detail-reading-grid{grid-template-columns:repeat(4,minmax(110px,1fr))}.latest-reading-row .inline-empty{min-height:42px}.frame-log-panel{overflow:hidden;padding:0}.frame-table{width:100%;min-width:920px;border-collapse:collapse;table-layout:fixed}.frame-table th{padding:12px 14px;border-bottom:1px solid #e1e9e3;color:#8fa29a;background:#f8faf8;font:8px SFMono-Regular,Consolas,monospace;letter-spacing:.09em;text-align:left;text-transform:uppercase}.frame-table td{height:62px;padding:9px 14px;border-bottom:1px solid #edf1ed;color:#567267;font-size:10px;vertical-align:middle}.frame-table tbody tr:hover{background:#fbfdfb}.frame-table th:first-child{width:155px}.frame-table th:nth-child(2){width:185px}.frame-table th:nth-child(3){width:28%}.frame-table th:nth-child(4){width:105px}.frame-table th:nth-child(5){width:170px}.frame-table th:last-child{width:70px}.frame-table td>small,.frame-type+small,.frame-source+small{display:block;max-width:100%;overflow:hidden;margin-top:4px;color:#98a8a2;font:8px SFMono-Regular,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.frame-time{color:#3e6557;font:10px SFMono-Regular,Consolas,monospace;white-space:nowrap}.frame-type{display:flex;align-items:center;gap:7px;color:#426c5d;font-size:10px;font-weight:750}.frame-type svg{flex:0 0 auto;color:#62a18b}.frame-source{display:block;overflow:hidden;color:#47695d;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.frame-id{display:block;overflow:hidden;color:#738b82;text-overflow:ellipsis;white-space:nowrap}.frame-detail-column{text-align:right!important}.frame-detail-button{margin-left:auto;color:#557f70;background:#f8fbf9}.frame-reading-list{display:flex;min-width:0;align-items:center;gap:5px;overflow:hidden}.frame-reading-list>span{display:grid;min-width:68px;max-width:105px;gap:2px;padding:5px 7px;border-radius:5px;color:#46705f;background:#eef6f1}.frame-reading-list small{overflow:hidden;color:#80988e;font-size:7px;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.frame-reading-list b{overflow:hidden;font:9px SFMono-Regular,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.frame-reading-list em{flex:0 0 auto;color:#799187;font-size:8px;font-style:normal}.frame-cell-empty{color:#9ba9a4;font-size:9px}.frame-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:9px 14px;color:#81958d;background:#fbfcfb;font:9px SFMono-Regular,Consolas,monospace}.frame-pagination nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px}.page-number,.page-arrow{display:inline-grid;min-width:29px;height:29px;place-items:center;padding:0 7px;border:1px solid #dfe9e2;border-radius:5px;color:#668479;background:#fff;font-size:9px}.page-number:hover,.page-arrow:hover:not(:disabled){border-color:#b7d3c4;color:#315f50;background:#f3faf6}.page-number.active{border-color:#3d7764;color:#fff;background:#3d7764}.frame-inspector{display:grid;gap:18px}.frame-inspector-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border:1px solid #e3ebe6;border-radius:7px}.frame-inspector-meta>div{min-width:0;padding:11px 13px;border-bottom:1px solid #edf1ed}.frame-inspector-meta>div:nth-child(2n){border-left:1px solid #edf1ed}.frame-inspector-meta dt{color:#91a49d;font:8px SFMono-Regular,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.frame-inspector-meta dd{min-width:0;overflow:hidden;margin:6px 0 0;color:#44695b;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.frame-inspector-meta dd small{display:block;margin-top:4px;color:#8fa29a}.frame-reading-detail .detail-reading-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.raw-frame-sections{display:grid;gap:10px}.raw-frame-sections .json-viewer pre{max-height:min(52vh,480px)}.dashboard-widget{display:flex;min-height:0;flex-direction:column;overflow:hidden;padding:17px;border-color:#dce9e2}.dashboard-widget:before{content:"";display:block;height:3px;flex:0 0 auto;margin:-17px -17px 13px;background:linear-gradient(90deg,#5ab393,#9fd8bc)}.dashboard-widget.kind-fleet_health:before{background:linear-gradient(90deg,#5779c9,#9a8cdb)}.dashboard-widget.kind-gateway:before,.dashboard-widget.kind-gateway_board:before{background:linear-gradient(90deg,#7464b9,#a89ce1)}.dashboard-widget.kind-water_today:before{background:linear-gradient(90deg,#2e98c5,#75cae8)}.dashboard-widget.kind-command_activity:before{background:linear-gradient(90deg,#d88463,#edbc75)}.dashboard-widget:hover{transform:translateY(-2px);box-shadow:0 14px 28px #1d42391a}.fleet-health-widget{display:flex;align-items:center;gap:15px;min-height:112px}.fleet-health-ring{display:grid;width:96px;height:96px;flex:0 0 auto;place-items:center;border-radius:50%;background:conic-gradient(#4fb187 0 var(--online),#db806d var(--online) var(--offline),#c8a957 var(--offline) 360deg)}.fleet-health-ring>div{display:grid;width:72px;height:72px;place-items:center;align-content:center;border-radius:50%;background:#fff}.fleet-health-ring b{color:#315e4d;font:700 19px/1 Georgia,serif}.fleet-health-ring small{margin-top:3px;color:#80978d;font-size:8px}.fleet-health-summary{min-width:0}.fleet-health-summary>p{margin:0 0 10px;color:#426b5d;font:700 12px/1.2 Georgia,serif;text-transform:capitalize}.fleet-health-summary>div{display:grid;gap:5px}.fleet-health-summary span{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:650}.health-online{color:#398064}.health-offline{color:#ba6c59}.health-unknown{color:#a88a39}.widget-content{min-height:0;flex:1 1 auto}.widget-footer{flex:0 0 auto;margin-top:8px;padding-top:8px;border-top:1px solid #edf2ee}.widget-directory-link{display:flex;justify-content:space-between;color:#43826c;font-size:10px;font-weight:700}.widget-directory-link span{color:#8ba299;font:9px SFMono-Regular,Consolas,monospace}.dashboard-board{gap:6px}.dashboard-board>a{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:9px;align-items:center;min-width:0;padding:8px 10px;border:1px solid #e1ece5;border-radius:7px;background:linear-gradient(135deg,#fff,#f7fbf8);transition:border-color .16s,box-shadow .16s,transform .16s}.dashboard-board>a:hover{border-color:#b5d8c6;box-shadow:0 5px 13px #1d423912;transform:translateY(-1px)}.dashboard-board>a>span:nth-child(2){min-width:0}.dashboard-board b,.dashboard-board small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-board b{color:#416b5c;font-size:10px}.dashboard-board small{margin-top:3px;color:#89a097;font:8px SFMono-Regular,Consolas,monospace;text-transform:capitalize}.board-status{width:8px;height:8px;border-radius:50%;background:#c4ad62;box-shadow:0 0 0 4px #c4ad6220}.board-status.online{background:#57ad88;box-shadow:0 0 0 4px #57ad8820}.board-status.offline{background:#d77c68;box-shadow:0 0 0 4px #d77c6820}.dashboard-board .telemetry-widget{display:none}.water-widget{display:grid;min-height:103px;height:100%;align-content:center;padding:14px;border-radius:9px;color:#206381;background:radial-gradient(circle at 92% 5%,#d7f3fb,transparent 35%),linear-gradient(135deg,#effaff,#e3f4fa)}.water-widget span{color:#4988a2;font-size:9px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.water-widget strong{margin:6px 0;color:#1e6f90;font:700 31px/1 Georgia,serif}.water-widget strong small{color:#5593ab;font-size:11px}.water-widget>small{color:#6098ad;font-size:9px}.iot-summary-widget{display:flex;min-height:100%;flex-direction:column;justify-content:center}.summary-caption{margin:0;color:#80968d;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.summary-caption span{margin-left:4px;color:#a0afa9;font:8px SFMono-Regular,Consolas,monospace;letter-spacing:0;text-transform:none}.summary-value{display:block;margin:7px 0;color:#345f4e;font:600 33px/1 Georgia,serif;letter-spacing:-.035em}.summary-value small{color:#79928a;font:10px SFMono-Regular,Consolas,monospace;letter-spacing:0}.summary-detail{color:#8ea29a;font:9px SFMono-Regular,Consolas,monospace}.summary-list{display:grid;gap:6px}.summary-list-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #edf2ee}.summary-list-row:last-child{border-bottom:0}.summary-list-row i{width:7px;height:7px;border-radius:50%;background:#c4ad62}.summary-list-row i.online{background:#57ad88}.summary-list-row i.offline,.summary-list-row i.error,.summary-list-row i.failed{background:#d77c68}.summary-list-row span{min-width:0}.summary-list-row b,.summary-list-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-list-row b{color:#456d5e;font-size:10px}.summary-list-row small,.iot-summary-widget>small{margin-top:3px;color:#8ca199;font:8px SFMono-Regular,Consolas,monospace}.summary-list-row strong{max-width:105px;overflow:hidden;color:#537a6c;font:9px SFMono-Regular,Consolas,monospace;text-align:right;text-overflow:ellipsis;white-space:nowrap}.summary-chart{height:144px;margin:7px 0 0}.dashboard-starter{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(300px,1.1fr);gap:28px;align-items:center;min-height:280px;overflow:hidden;background:radial-gradient(circle at 85% 15%,#b6ead530,transparent 28%),linear-gradient(135deg,#fff,#f5faf7)}.dashboard-starter h2{max-width:320px;margin:0;color:#2e5143;font:600 28px/1.08 Georgia,serif;letter-spacing:-.03em}.dashboard-starter>div>p:not(.eyebrow){max-width:470px;margin:13px 0 19px;color:#769087;font-size:12px;line-height:1.65}.starter-widget-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.starter-preview-card{display:grid;min-height:116px;align-content:start;gap:7px;padding:14px;border-radius:10px;box-shadow:0 10px 22px #1d423917}.starter-preview-card b{font-size:11px}.starter-preview-card small{font-size:8px;opacity:.75}.starter-preview-card.health{color:#24654f;background:linear-gradient(135deg,#dcf6e9,#f0fbf5)}.starter-preview-card.telemetry{color:#2c6881;background:linear-gradient(135deg,#dff3fa,#f1fbfe)}.starter-preview-card.gateway{color:#5f5594;background:linear-gradient(135deg,#eae7fb,#f7f6ff)}.starter-preview-card.water{color:#266f90;background:linear-gradient(135deg,#dff4fc,#f3fbff)}.starter-preview-card span{width:70%;height:8px;margin-top:5px;border-radius:99px;background:currentColor;opacity:.27}.starter-preview-card svg{width:100%;height:32px;overflow:visible}.starter-preview-card polyline{fill:none;stroke:currentColor;stroke-width:2.5}@media(max-width:760px){.detail-page-actions,.frame-stream-head{align-items:stretch;flex-direction:column}.frame-stream-head .select-menu{width:100%;flex-basis:auto}.detail-grid-rich{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-starter{grid-template-columns:1fr}.fleet-health-widget{justify-content:center}.device-filter-select{min-width:0}.dashboard-widget:before{margin-right:-16px;margin-left:-16px}.dashboard-widget{padding:16px}.resource-info-rows,.resource-info-rows.gateway-info-rows{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-info-rows>div:not(:nth-child(4n+1)),.gateway-info-rows>div:not(:nth-child(3n+1)){border-left:0}.resource-info-rows>div:nth-child(2n),.gateway-info-rows>div:nth-child(2n){border-left:1px solid #edf1ed}.latest-reading-row{grid-template-columns:1fr}.latest-reading-row .detail-reading-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}.frame-pagination{align-items:flex-start;flex-direction:column}.frame-pagination nav{justify-content:flex-start}.frame-inspector-meta{grid-template-columns:1fr}.frame-inspector-meta>div:nth-child(2n){border-left:0}.frame-reading-detail .detail-reading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.dashboard-grid{width:100%;min-width:0}.dashboard-grid-layout,.dashboard-grid .vgl-layout{min-height:160px}.dashboard-grid .vgl-item{min-width:0}.dashboard-grid .dashboard-widget{height:100%;box-sizing:border-box}.dashboard-grid .dashboard-widget.editing{border-style:dashed;border-color:#6aa78d}.dashboard-grid .vgl-item>.vgl-item__resizer,.dashboard-grid .vue-resizable-handle{width:14px;height:14px;right:5px;bottom:5px;border-right:2px solid #4f957d;border-bottom:2px solid #4f957d;border-radius:0 0 3px;opacity:.9}.dashboard-grid .vgl-item:not(.static){touch-action:none}.widget-drag-handle{display:inline-grid;width:27px;height:27px;place-items:center;padding:0;border:1px solid #cde1d6;border-radius:5px;color:#477868;background:#f6fbf8;cursor:grab}.widget-drag-handle:focus-visible{outline:3px solid #80c7a7;outline-offset:2px}.widget-drag-handle:active{cursor:grabbing}.widget-header{gap:7px}.widget-actions{gap:3px}.chart-surface{width:100%;height:74px;margin:8px 0 3px}.telemetry-chart{min-height:60px}.telemetry-no-history{display:block;margin:10px 0;color:#94a69f;font:9px SFMono-Regular,Consolas,monospace}.command-activity-widget>span{border-left:3px solid #e4ae6c;padding-left:8px}.dashboard-grid-projection{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.dashboard-grid-projected-item{min-width:0}.dashboard-grid-narrow .dashboard-widget{min-height:150px}.widget-library-backdrop{align-items:center;justify-content:center;padding:22px}.widget-gallery{width:min(1040px,96vw);max-height:min(820px,94vh);overflow:auto;padding:25px;border:1px solid #d8e8df;border-radius:14px;background:radial-gradient(circle at 92% 0,#dff4eb,transparent 26%),#fff;box-shadow:0 22px 75px #173c3440}.widget-gallery-head{display:flex;justify-content:space-between;gap:18px}.widget-gallery-head h2{margin:3px 0 7px;color:#315647;font:700 25px/1.05 Georgia,serif}.widget-gallery-head p:not(.eyebrow){max-width:530px;margin:0;color:#738c81;font-size:12px;line-height:1.5}.widget-search{display:flex;align-items:center;gap:8px;margin:18px 0 12px;padding:0 10px;border:1px solid #d4e7dc;border-radius:8px;color:#699182;background:#fbfefc}.widget-search input{width:100%;min-height:39px;border:0;outline:0;background:transparent}.widget-categories{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.widget-categories button{padding:6px 10px;border:1px solid #d6e8dd;border-radius:99px;color:#54796a;background:#fff;font-size:10px}.widget-categories button.active{border-color:#459272;color:#fff;background:#459272}.widget-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.widget-gallery-card{display:grid;min-width:0;gap:7px;padding:13px;border:1px solid #dfece5;border-radius:10px;background:#fff}.widget-gallery-card h3{margin:0;color:#3a6253;font-size:14px}.widget-gallery-card>p:not(.eyebrow){min-height:35px;margin:0;color:#779087;font-size:10px;line-height:1.45}.widget-gallery-card>small{color:#779c8d;font:9px SFMono-Regular,Consolas,monospace}.widget-gallery-card>div:last-child{display:flex;justify-content:flex-end;gap:7px;margin-top:2px}.widget-gallery-preview{display:flex;height:58px;align-items:end;gap:5px;padding:9px;overflow:hidden;border-radius:7px;color:#438a6d;background:linear-gradient(135deg,#e0f5e9,#f9fffb)}.widget-gallery-preview span{display:block;width:18%;border-radius:5px 5px 1px 1px;background:currentColor;opacity:.25}.widget-gallery-preview span:nth-child(1){height:35%}.widget-gallery-preview span:nth-child(2){height:70%;opacity:.5}.widget-gallery-preview span:nth-child(3){height:48%}.preview-trend .widget-gallery-preview{align-items:center;background:linear-gradient(135deg,#dff3fa,#f7fcfe);color:#3e94b3}.preview-trend .widget-gallery-preview span{width:44%;height:2px;transform:rotate(-13deg);opacity:.75}.preview-trend .widget-gallery-preview span:nth-child(2){transform:rotate(12deg)}.preview-network .widget-gallery-preview,.preview-signal .widget-gallery-preview{color:#7060b8;background:linear-gradient(135deg,#eae7fb,#faf9ff)}.preview-water .widget-gallery-preview{color:#278bb7;background:linear-gradient(135deg,#def3fb,#f7fdff)}.preview-commands .widget-gallery-preview{color:#ce815e;background:linear-gradient(135deg,#fff0e7,#fffaf5)}.widget-library-empty{padding:22px;color:#789184;text-align:center}.widget-placement-options{display:grid;gap:8px;margin:12px 0;padding:10px;border:1px solid #e0ece5;border-radius:6px}.widget-placement-options legend{color:#587a6d;font-size:10px}.widget-placement-options>small{color:#81988e;font-size:9px}.widget-placement-options>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.widget-placement-options label{display:grid;gap:4px}.widget-template-preview{display:grid;min-height:69px;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;padding:10px;overflow:hidden;border-radius:7px;color:#407c66;background:linear-gradient(135deg,#e0f5e9,#f9fffb)}.widget-template-preview b,.widget-template-preview small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-template-preview b{font-size:10px}.widget-template-preview small{margin-top:3px;color:currentColor;font-size:8px;opacity:.76}.template-ring{display:grid;width:40px;height:40px;place-items:center;border:5px solid #61ad8b;border-right-color:#cfe9dc;border-radius:50%}.template-ring b{font-size:9px}.template-value{margin-top:3px;font:600 19px/1 Georgia,serif}.preview-sensor{grid-template-columns:minmax(0,1fr) 105px;align-items:end;color:#347d98;background:linear-gradient(135deg,#dff3fa,#f7fcfe)}.preview-sensor>small{grid-column:1 / -1}.preview-sensor svg{width:100%;height:34px}.preview-sensor path{fill:none;stroke:currentColor;stroke-width:2.5}.preview-water{color:#277fa4;background:linear-gradient(135deg,#def3fb,#f7fdff)}.template-water-drop{font-size:29px;line-height:1}.preview-gateway{color:#665aa0;background:linear-gradient(135deg,#eae7fb,#faf9ff)}.preview-gateway>small{grid-column:1 / -1}.template-status-dot{width:9px;height:9px;border-radius:50%;background:#57ad88;box-shadow:0 0 0 4px #57ad8822}.preview-gateway-list{color:#665aa0;background:linear-gradient(135deg,#eae7fb,#faf9ff)}.preview-commands{color:#ae694c;background:linear-gradient(135deg,#fff0e7,#fffaf5)}.template-list-row{display:grid;grid-column:1 / -1;grid-template-columns:9px minmax(0,1fr);gap:8px;align-items:center}.template-list-row.muted-row{border-top:1px solid currentColor;padding-top:6px;opacity:.6}.template-list-row>span:not(.template-status-dot){width:9px;height:2px;background:currentColor}.workspace-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px;background:radial-gradient(circle at 92% 18%,#bcead8,transparent 25%),linear-gradient(135deg,#fff,#f4fbf7)}.workspace-hero h2{display:flex;align-items:center;gap:8px;margin:5px 0;color:#315847;font:700 25px/1.1 Georgia,serif}.workspace-hero p:not(.eyebrow){max-width:550px;margin:0;color:#718a80;font-size:12px}.workspace-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.workspace-summary-grid article{display:grid;gap:4px;padding:16px;border:1px solid #dcebe2;border-radius:9px;color:#4a826c;background:#fff}.workspace-summary-grid strong{color:#335f4f;font:700 25px/1 Georgia,serif}.workspace-summary-grid span{color:#789187;font-size:10px}.workspace-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workspace-catalog-grid h2{margin:4px 0 13px;color:#426b5c;font-size:15px}.workspace-catalog-list{display:grid;gap:7px}.workspace-catalog-list>span{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #edf3ef}.workspace-catalog-list i{width:8px;height:8px;border-radius:50%;background:#c2aa5e}.workspace-catalog-list i.online{background:#53ab84}.workspace-catalog-list i.offline{background:#d27865}.workspace-catalog-list b{overflow:hidden;color:#456d5e;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.workspace-catalog-list small{color:#82998f;font-size:9px}.workspace-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.workspace-links>a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px;border:1px solid #dcebe2;border-radius:8px;color:#4c816c;background:#fff}.workspace-links b,.workspace-links small{display:block}.workspace-links b{color:#426b5b;font-size:11px}.workspace-links small{margin-top:3px;color:#849b91;font-size:9px}.workspace-picker{display:grid;gap:14px;padding:18px}.workspace-picker h2{margin:3px 0 0;font-size:15px;color:#426b5c}.workspace-choice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px}.workspace-choice-list button{display:flex;justify-content:space-between;align-items:center;min-width:0;padding:12px;border:1px solid #dcebe2;border-radius:9px;color:#668076;background:#fff;text-align:left}.workspace-choice-list button.active{border-color:#68a98d;color:#39715a;background:#f1faf5;box-shadow:inset 0 0 0 1px #bcdcca}.workspace-choice-list span,.workspace-choice-list b,.workspace-choice-list small{display:block;min-width:0}.workspace-choice-list b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.workspace-choice-list small{margin-top:3px;color:#849b91;font-size:9px}.workspace-access-panel{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(280px,1.3fr);gap:20px;padding:18px}.workspace-access-panel h2{margin:3px 0 7px;color:#426b5c;font-size:15px}.workspace-access-panel p:not(.eyebrow){margin:0;color:#789187;font-size:10px;line-height:1.5}.workspace-member-list{display:grid;gap:7px;max-height:260px;overflow:auto}.workspace-member-list button{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;border:1px solid #e2ece6;border-radius:8px;color:#82958e;background:#fff;text-align:left}.workspace-member-list button.active{color:#3d7b62;background:#f3faf6}.workspace-member-list b,.workspace-member-list small{display:block}.workspace-member-list b{color:#456d5e;font-size:10px}.workspace-member-list small{margin-top:2px;color:#849b91;font-size:8px}.facility-switcher label{min-width:0;flex:1}.facility-switcher .select-menu{margin-top:2px}.facility-switcher .select-menu-trigger{min-height:22px;padding:0;border:0;color:#f0f8f2;background:transparent;box-shadow:none}.facility-switcher .select-menu-label{font-size:11px}.facility-switcher .select-menu-options{min-width:220px}.facility-switcher a{display:grid;color:inherit}@media(max-width:850px){.widget-gallery-grid,.workspace-summary-grid,.workspace-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.widget-library-backdrop{align-items:stretch;padding:8px}.widget-gallery{width:auto;max-height:none;padding:17px}.widget-gallery-grid,.workspace-catalog-grid,.workspace-links,.workspace-access-panel{grid-template-columns:1fr}.workspace-hero{align-items:flex-start;flex-direction:column}.workspace-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.nav-kicker-secondary{margin-top:24px}.status-badge.inactive{color:#8c9c96;background:#eef2ef}.users-toolbar-actions,.users-page-size{display:flex;align-items:center;gap:9px}.users-toolbar-actions{margin-left:auto}.users-filter-group{margin-left:0}.users-filter-select{width:168px;margin:0}.users-filter-select .select-menu{margin-top:0}.users-filter-select .select-menu-trigger{min-height:38px;padding-block:7px;font-size:10px}.users-table-panel{overflow:hidden;padding:0}.users-panel-heading{align-items:center;margin:0;padding:19px 22px;border-bottom:1px solid #e9efea}.users-page-size>.select-menu{width:128px;margin:0}.users-page-size .select-menu-trigger{min-height:34px;padding-block:6px;font-size:9px}.users-table{width:100%;min-width:1040px;border-collapse:collapse;table-layout:fixed}.users-table th,.users-table td{padding:11px 10px;text-align:left;vertical-align:middle}.users-table th:first-child,.users-table td:first-child{padding-left:22px}.users-table th:last-child,.users-table td:last-child{padding-right:22px}.users-col-identity{width:23%}.users-col-role{width:11%}.users-col-account{width:10%}.users-col-sessions{width:15%}.users-col-login{width:14%}.users-col-actions{width:27%}.users-table-head{background:#f8faf8}.users-table-row{height:70px;border-top:1px solid #edf1ed}.users-table-row:hover{background:#fbfdfb}.user-cell{display:flex;min-width:0;align-items:center;gap:9px}.user-cell>i{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:50%;color:#4f8d78;background:#e7f4ed}.user-cell>span{min-width:0}.user-cell b,.user-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-cell b{color:#3d5c50;font-size:11px}.user-cell small{margin-top:4px;color:#91a39d;font-size:9px}.user-session-cell{display:flex;min-width:0;align-items:center;gap:6px;color:#789289}.user-session-cell svg{flex:0 0 auto}.user-session-cell b{overflow:hidden;color:#56766a;font:9px SFMono-Regular,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.user-row-actions{flex-wrap:wrap;justify-content:flex-start}.current-user-note{display:inline-flex;align-items:center;gap:5px;color:#68907f;font:9px SFMono-Regular,Consolas,monospace;white-space:nowrap}.users-pagination{border-top:1px solid #edf1ed}.user-action-callout{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #d9e9df;border-radius:6px;color:#4f9077;background:#f1f9f3}.user-action-callout>span{min-width:0}.user-action-callout b,.user-action-callout small{display:block}.user-action-callout b{overflow:hidden;color:#426c5c;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.user-action-callout small{margin-top:5px;color:#789589;font-size:9px;line-height:1.45}@media(max-width:760px){.users-toolbar-actions{width:100%;margin-left:0}.users-filter-group{width:auto;flex:1}.users-filter-select{width:auto;flex:1;min-width:0}.users-toolbar-actions>.secondary-button{flex:0 0 auto}.users-panel-heading{align-items:flex-start;gap:12px;flex-direction:column}.users-page-size{width:100%;justify-content:space-between}.users-page-size>.select-menu{width:140px}.users-pagination{align-items:flex-start;flex-direction:column}.users-pagination nav{justify-content:flex-start}}.modal-immersive{width:min(1100px,calc(100vw - 32px));max-height:min(920px,calc(100dvh - 32px));overflow:auto;padding:30px;border-radius:16px}.modal-immersive>h2{max-width:760px;margin-top:6px;color:#183a34;font:700 30px/1.12 Georgia,serif;letter-spacing:-.025em;text-wrap:balance}.modal-immersive>.modal-subtitle{max-width:680px;color:#607d73;font-size:14px;line-height:1.55}.irrigation-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:25px}.irrigation-method-card{--method-color: #176b9a;--method-soft: #eaf5fa;display:flex;min-height:330px;min-width:0;flex-direction:column;justify-content:space-between;gap:22px;padding:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--method-color) 28%,white);border-radius:14px;color:var(--method-color);background:linear-gradient(155deg,#fff 36%,var(--method-soft));box-shadow:0 10px 30px #183a3412;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.irrigation-method-card.method-time{--method-color: #176b9a;--method-soft: #e7f5fb}.irrigation-method-card.method-sensor{--method-color: #167052;--method-soft: #e8f7ef}.irrigation-method-card.method-et{--method-color: #986000;--method-soft: #fff4d8}.irrigation-method-card:hover{border-color:var(--method-color);box-shadow:0 18px 40px color-mix(in srgb,var(--method-color) 18%,transparent);transform:translateY(-3px)}.irrigation-method-card:focus-visible{outline:3px solid color-mix(in srgb,var(--method-color) 60%,white);outline-offset:3px}.method-art{position:relative;display:grid;height:112px;place-items:center;overflow:hidden;border-radius:11px;background:color-mix(in srgb,var(--method-color) 10%,white)}.method-art svg{position:relative;z-index:2;padding:15px;border-radius:50%;color:#fff;background:var(--method-color);box-sizing:content-box}.method-art i{position:absolute;right:-8%;bottom:13px;left:-8%;height:2px;border-radius:50%;background:currentColor;opacity:.16;transform:rotate(-4deg)}.method-art i:nth-of-type(2){bottom:26px;transform:rotate(4deg)}.method-art i:nth-of-type(3){bottom:40px;transform:rotate(-2deg)}.irrigation-method-card h3{margin:0;color:#183a34;font:700 21px/1.2 Georgia,serif}.irrigation-method-card p{min-height:auto;margin:9px 0;color:#58746b;font-size:14px;line-height:1.5}.irrigation-method-card small{color:color-mix(in srgb,var(--method-color) 78%,#183a34);font-size:12px;line-height:1.45}.irrigation-method-card strong{display:flex;min-height:44px;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--method-color) 22%,white);font-size:13px}.irrigation-program-card{position:relative;overflow:hidden}.irrigation-program-card:before{content:"";position:absolute;top:0;right:0;left:0;height:3px;background:#176b9a}.irrigation-program-card.method-sensor:before{background:#167052}.irrigation-program-card.method-et:before{background:#b17810}.irrigation-composer{display:grid;gap:18px;margin-top:25px}.composer-section{overflow:visible;padding:22px;border:1px solid #dbe8e1;border-radius:12px;background:#fff;box-shadow:0 5px 18px #183a340a}.composer-section>header{display:flex;gap:13px;align-items:flex-start;margin-bottom:20px}.composer-section>header>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:50%;color:#fff;background:#176b9a;font-size:13px;font-weight:800}.composer-sensor>header>span{background:#167052}.composer-et>header>span{background:#986000}.action-section>header>span{background:#183a34}.composer-section h3{margin:0;color:#183a34;font:700 19px/1.25 Georgia,serif}.composer-section header p{margin:4px 0 0;color:#6b837a;font-size:12px;line-height:1.5}.composer-fields{display:grid;gap:17px}.composer-fields.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.composer-fields.three-column{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:17px}.composer-fields .full-field{grid-column:1 / -1;margin-top:0}.composer-fields label{min-width:0;margin:0;color:#385c50;font-size:13px;font-weight:700;letter-spacing:0;text-transform:none}.composer-fields label>em{margin-left:4px;color:#81988f;font-size:10px;font-style:normal;font-weight:500}.composer-fields input,.composer-fields textarea{min-height:46px;margin-top:8px;border-radius:8px;color:#183a34;background:#fbfdfb;font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.composer-fields textarea{min-height:88px;resize:vertical}.composer-fields input:focus,.composer-fields textarea:focus{border-color:#4c9a7e;box-shadow:0 0 0 3px #4c9a7e29}.composer-fields .select-menu{margin-top:8px}.composer-fields .select-menu-trigger{min-height:46px}.composer-fields .select-menu-label{font-size:13px}.composer-fields .field-help{color:#728c82;font:11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}.field-help.field-warning{color:#815d18}.field-help.field-error{color:#a14638}.field-help button{padding:0;border:0;color:inherit;background:transparent;font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}.weekday-field{min-width:0;padding:0;border:0}.weekday-field legend{margin-bottom:8px;color:#385c50;font-size:13px;font-weight:700}.weekday-field>div{display:grid;grid-template-columns:repeat(7,minmax(48px,1fr));gap:8px}.weekday-field button{min-height:44px;border:1px solid #d8e7df;border-radius:8px;color:#617e73;background:#f9fcfa;font-size:12px;font-weight:700;cursor:pointer}.weekday-field button.selected{border-color:#176b9a;color:#fff;background:#176b9a;box-shadow:0 5px 12px #176b9a2e}.weekday-field button:focus-visible{outline:3px solid rgba(23,107,154,.28);outline-offset:2px}.advanced-settings{padding:0;border:1px solid #dce9e2;border-radius:9px;background:#f8fbf9}.advanced-settings>button{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;padding:0 14px;border:0;color:#3d6859;background:transparent;font-size:13px;font-weight:750;cursor:pointer}.advanced-settings>button span{display:flex;align-items:center;gap:8px}.advanced-settings>button[aria-expanded=true]>svg{transform:rotate(180deg)}.advanced-settings>.composer-fields{padding:0 14px 14px}.et-formula{display:flex;align-items:flex-start;gap:10px;margin:0;padding:13px 15px;border-left:3px solid #b17810;color:#6d561f;background:#fff8e8;font-size:12px;line-height:1.55}.et-formula svg{flex:0 0 auto}.weather-parameter-list{display:grid;gap:10px}.weather-parameter-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(155px,.8fr) minmax(190px,1fr) minmax(210px,1.15fr);gap:12px;align-items:center;padding:12px;border:1px solid #e0e9e4;border-radius:9px;background:#fbfdfb}.weather-parameter-name{display:grid;gap:2px;color:#274b40}.weather-parameter-name b{font-size:13px}.weather-parameter-name small{color:#758d84;font-size:11px}.weather-source-choice{display:flex;min-width:0;gap:4px;margin:0;padding:3px;border:1px solid #d6e3dc;border-radius:8px;background:#fff}.weather-source-choice:focus-within{border-color:#4c9a7e;box-shadow:0 0 0 3px #4c9a7e29}.weather-source-choice label{display:flex;min-height:34px;flex:1;align-items:center;justify-content:center;gap:5px;padding:0 8px;border-radius:6px;color:#526f65;font-size:11px;cursor:pointer}.weather-source-choice label:has(input:checked){color:#fff;background:#356f5b}.weather-source-choice input{width:1px;min-height:1px;margin:0;opacity:0;position:absolute}.weather-parameter-row .select-menu{margin:0}.weather-parameter-row .select-menu-trigger{min-height:40px}.weather-constant{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-column:3 / -1;align-items:center;gap:9px}.weather-constant input{min-height:40px;margin:0}.weather-constant>span:last-child{color:#607d72;font-size:12px;white-space:nowrap}.legacy-et-note{padding:13px 15px;border:1px solid #efd99f;border-radius:9px;color:#6d561f;background:#fff9e9}.legacy-et-note p{margin:3px 0 0;font-size:12px;line-height:1.5}.action-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;border:0}.action-choice>label{position:relative;min-width:0;cursor:pointer}.action-choice input{position:absolute;opacity:0;pointer-events:none}.action-choice label>span{display:grid;min-height:108px;grid-template-columns:24px minmax(0,1fr);gap:5px 10px;align-content:center;padding:16px;border:1px solid #dce7e1;border-radius:10px;color:#6e877e;background:#fbfdfb}.action-choice label>span svg{grid-row:1 / 3;color:#4b8672}.action-choice b,.action-choice small{display:block}.action-choice b{color:#315a4c;font-size:14px}.action-choice small{font-size:11px;line-height:1.45}.action-choice label.selected>span{border-color:#3f8a70;color:#55796b;background:#eef8f2;box-shadow:inset 0 0 0 1px #77b59e}.action-choice input:focus-visible+span{outline:3px solid rgba(63,138,112,.24);outline-offset:2px}.controller-action-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:16px;margin-top:16px;padding:17px;border:1px solid #cfe2d8;border-radius:10px;background:#f4faf6}.controller-readiness{min-width:0;padding:15px;border-radius:9px;background:#fff;box-shadow:0 5px 15px #183a340f}.controller-readiness>div:first-child b,.controller-readiness>div:first-child small{display:block;overflow-wrap:anywhere}.controller-readiness>div:first-child b{color:#244d3f;font-size:14px}.controller-readiness>div:first-child small{margin-top:4px;color:#799087;font-size:10px}.controller-readiness>span{display:inline-flex;margin-top:11px;padding:5px 8px;border-radius:99px;font-size:10px;font-weight:800}.controller-readiness>span.ready{color:#216548;background:#e2f5e9}.controller-readiness>span.not-ready{color:#895c13;background:#fff1ce}.controller-readiness dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0 0}.controller-readiness dt{color:#81978f;font-size:9px}.controller-readiness dd{overflow-wrap:anywhere;margin:3px 0 0;color:#41695a;font-size:11px;font-weight:700}.controller-readiness>p{margin:12px 0 0;padding-top:10px;border-top:1px solid #edf1ee;color:#815d18;font-size:10px;line-height:1.5}.controller-action-panel{grid-template-columns:minmax(0,1fr)}.controller-action-panel.has-controller{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)}.controller-command-fields{grid-template-columns:minmax(220px,1.45fr) repeat(2,minmax(132px,.75fr));align-items:start}.command-field-heading{display:flex;min-height:20px;align-items:baseline;gap:5px;white-space:nowrap}.command-field-heading small{color:#758c83;font-size:10px;font-weight:550}.command-field-heading em{margin-left:auto!important;padding:2px 6px;border-radius:99px;color:#6f887e!important;background:#e7f0eb;font-size:9px!important;line-height:1.4}@media(max-width:1050px){.controller-action-panel.has-controller{grid-template-columns:minmax(0,1fr)}}.registration-role-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 20px;padding:0;border:0}.registration-role-picker legend{grid-column:1 / -1;margin-bottom:1px;color:#294f42;font-size:14px;font-weight:800}.registration-role-picker label{position:relative;min-width:0;cursor:pointer}.registration-role-picker input{position:absolute;opacity:0}.registration-role-picker label>span{display:grid;min-height:108px;grid-template-columns:28px minmax(0,1fr);gap:5px 10px;align-content:center;padding:15px;border:1px solid #dce8e1;border-radius:10px;color:#668278;background:#fbfdfb}.registration-role-picker svg{grid-row:1 / 3;color:#548b77}.registration-role-picker b,.registration-role-picker small{display:block}.registration-role-picker b{color:#315b4c;font-size:13px}.registration-role-picker small{font-size:10px;line-height:1.45}.registration-role-picker label.selected>span{border-color:#438b71;background:#eef8f2;box-shadow:inset 0 0 0 1px #83bda6}.registration-role-picker label.combined-role>span{border-color:#d6d9e8;background:linear-gradient(135deg,#f5fbf8,#f7f6fc)}.registration-role-picker label.combined-role svg{color:#6e6594}.registration-role-picker label.combined-role.selected>span{border-color:#6e6594;background:linear-gradient(135deg,#edf8f2,#f0eef9);box-shadow:inset 0 0 0 1px #aaa3c8}.registration-role-picker input:focus-visible+span{outline:3px solid rgba(67,139,113,.25);outline-offset:2px}.device-registration-fields>label{font-size:12px}.immutable-type-chip{align-items:center;gap:6px;min-height:32px}.controller-registration-section{padding:18px;border:1px solid #cfe1d7;border-radius:11px;background:#f5faf7}.controller-registration-section>header{display:flex;gap:11px;margin-bottom:16px}.controller-registration-section>header>span{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:9px;color:#fff;background:#315f50}.controller-registration-section h3{margin:0;color:#274f41;font:700 18px/1.25 Georgia,serif}.controller-registration-section header p{margin:4px 0 0;color:#728a81;font-size:11px}.controller-registration-section .modal-form-grid{gap:0 15px}.controller-enable-choice{display:flex!important;min-height:62px;align-items:flex-start;gap:11px;margin-top:12px!important;padding:13px;border:1px solid #d6e6dd;border-radius:8px;color:#496f61!important;background:#fff;letter-spacing:0!important;text-transform:none!important}.controller-enable-choice input{width:18px!important;min-height:18px!important;margin:2px 0 0!important;accent-color:#367b62}.controller-enable-choice b,.controller-enable-choice small{display:block}.controller-enable-choice b{font-size:12px}.controller-enable-choice small{margin-top:4px;color:#748d83;font-size:10px;line-height:1.45}@media(max-width:900px){.irrigation-method-grid{grid-template-columns:1fr}.irrigation-method-card{min-height:230px}.controller-action-panel,.composer-fields.three-column{grid-template-columns:1fr}.weather-parameter-row{grid-template-columns:minmax(120px,.7fr) minmax(155px,.8fr) minmax(0,1fr)}.weather-parameter-row>:last-child:not(.weather-constant){grid-column:1 / -1}.weather-constant{grid-column:3}}@media(max-width:700px){.modal-immersive{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:20px 16px;border-radius:12px}.modal-immersive>h2{padding-right:32px;font-size:25px}.composer-section{padding:17px 14px}.composer-fields.two-column,.action-choice,.registration-role-picker{grid-template-columns:1fr}.weekday-field>div{grid-template-columns:repeat(4,minmax(48px,1fr))}.controller-action-panel{padding:13px}.weather-parameter-row{grid-template-columns:1fr;align-items:stretch}.weather-source-choice,.weather-parameter-row>:last-child:not(.weather-constant),.weather-constant{grid-column:1}}@media(max-width:700px){.controller-command-fields{grid-template-columns:minmax(0,1fr)}.command-field-heading{white-space:normal}}@media(prefers-reduced-motion:reduce){.irrigation-method-card,.advanced-settings>button svg{transition:none}.irrigation-method-card:hover{transform:none}}.workspace-hero-actions,.workspace-people-heading,.invite-copy-field,.join-auth-actions{display:flex;align-items:center;gap:12px}.workspace-role-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #bad9c8;border-radius:999px;background:#edf8f1;color:#175c38;font-weight:750}.workspace-people-panel{overflow:hidden;padding:0}.workspace-people-heading{justify-content:space-between;padding:24px 26px;border-bottom:1px solid var(--border)}.workspace-people-heading p{margin:5px 0 0;color:var(--muted)}.workspace-access-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.workspace-access-columns>div{padding:24px 26px}.workspace-access-columns>div+div{border-left:1px solid var(--border);background:#fafcfb}.workspace-access-columns h3{display:flex;align-items:center;gap:8px;margin:0 0 14px}.workspace-access-columns h3 span{padding:3px 7px;border-radius:999px;background:#eef3f0;color:#496159;font:700 12px/1.4 var(--font-mono)}.workspace-member-rows,.workspace-invite-rows{display:grid;gap:9px}.workspace-member-rows article,.workspace-invite-rows article{display:grid;align-items:center;gap:11px;padding:12px;border:1px solid #dce7e1;border-radius:13px;background:#fff}.workspace-member-rows article{grid-template-columns:38px minmax(150px,1fr) minmax(150px,210px) 38px}.workspace-invite-rows article{grid-template-columns:minmax(0,1fr) auto}.workspace-member-rows article>span:nth-child(2),.workspace-invite-rows article>span{display:grid;min-width:0}.workspace-member-rows small,.workspace-invite-rows small{overflow:hidden;color:var(--muted);text-overflow:ellipsis}.workspace-member-avatar{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:#daf2e4;color:#17643d;font-weight:850}.workspace-access-empty{padding:24px;border:1px dashed #cad8d1;border-radius:13px;color:var(--muted);text-align:center}.workspace-access-readonly{display:flex;align-items:flex-start;gap:14px}.workspace-access-readonly h2{margin:0 0 5px}.workspace-access-readonly p{margin:0;color:var(--muted)}.invite-link-result{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px;border:1px solid #a9d7bd;border-radius:15px;background:#f0faf4}.invite-link-result>span,.join-success>span,.join-workspace-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:#d6f2e1;color:#17643d}.invite-link-result p{margin:4px 0 13px;color:var(--muted)}.invite-copy-field input{min-width:0;flex:1;font-family:var(--font-mono);font-size:12px}.join-workspace-card{max-width:560px}.join-success{display:grid;justify-items:start}.join-success h2{margin:14px 0 4px}.join-auth-actions{align-items:stretch;margin-top:20px}.join-auth-actions a{justify-content:center;flex:1;text-decoration:none}.join-workspace-icon{margin-bottom:16px}@media(max-width:900px){.workspace-access-columns{grid-template-columns:1fr}.workspace-access-columns>div+div{border-top:1px solid var(--border);border-left:0}.workspace-member-rows article{grid-template-columns:38px minmax(120px,1fr) minmax(140px,190px) 38px}}@media(max-width:640px){.workspace-hero-actions,.workspace-people-heading,.invite-copy-field,.join-auth-actions{align-items:stretch;flex-direction:column}.workspace-member-rows article{grid-template-columns:38px 1fr 38px}.workspace-member-rows article .select-menu{grid-column:1/-1}.workspace-people-heading,.workspace-access-columns>div{padding:19px}.invite-link-result{grid-template-columns:1fr}.join-auth-actions a{width:100%}}.widget-library-backdrop{align-items:center;justify-content:center;padding:20px;background:#122a239e;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.widget-gallery.widget-drawer{position:relative;inset:auto;display:grid;width:min(1180px,calc(100vw - 40px));height:min(900px,calc(100dvh - 40px));max-height:none;grid-template-rows:auto auto minmax(0,1fr) auto;align-content:stretch;gap:0;overflow:hidden;padding:0;border:1px solid #cbded3;border-radius:16px;background:#f7faf7;box-shadow:0 28px 80px #0c2a2059}.widget-gallery-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px 28px 20px;border-bottom:1px solid #dbe7e0;background:linear-gradient(110deg,#fffffffa,#eef8f1f5),repeating-linear-gradient(90deg,transparent 0 39px,rgba(53,111,87,.08) 40px)}.widget-gallery-kicker{margin:0 0 5px;color:#4e806d;font-size:12px;font-weight:750}.widget-gallery-head h2{margin:0 0 7px;color:#203c32;font:700 30px/1.08 Georgia,serif;letter-spacing:-.03em}.widget-gallery-head p:not(.widget-gallery-kicker){max-width:660px;margin:0;color:#607b70;font-size:13px;line-height:1.55}.widget-gallery-close{width:44px;height:44px;flex:0 0 auto;border:1px solid #d2e1d9;border-radius:50%;color:#43695b;background:#fff}.widget-gallery.widget-drawer>.widget-library-toolbar{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(430px,1.28fr);gap:16px;align-items:center;padding:15px 28px;border-bottom:1px solid #dfe9e3;background:#fff}.widget-library-toolbar .widget-search{display:flex;min-width:0;align-items:center;gap:9px;margin:0;padding:0 13px;border:1px solid #ccddd4;border-radius:8px;color:#52796a;background:#f8fbf9}.widget-library-toolbar .widget-search:focus-within{border-color:#397a63;box-shadow:0 0 0 3px #397a6329}.widget-library-toolbar .widget-search input{min-height:44px;padding:0;color:#29483d;font-size:13px}.widget-library-toolbar .widget-categories{display:flex;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin:0}.widget-library-toolbar .widget-categories button{min-height:44px;padding:0 12px;border:1px solid transparent;border-radius:7px;color:#5d776d;background:transparent;font-size:11px;font-weight:700;transition:border-color .16s ease,background-color .16s ease,color .16s ease}.widget-library-toolbar .widget-categories button:hover{border-color:#d4e3da;background:#f2f7f4}.widget-library-toolbar .widget-categories button.active{border-color:#2f735b;color:#fff;background:#2f735b}.widget-gallery.widget-drawer>.widget-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-content:start;min-height:0;padding:20px 28px 24px;overflow-y:auto;scrollbar-gutter:stable}.widget-gallery-card{display:grid;min-width:0;min-height:290px;grid-template-rows:132px minmax(96px,auto) auto;gap:0;overflow:hidden;padding:0;border:1px solid #d8e5de;border-radius:12px;background:#fff;box-shadow:0 4px 14px #203c320e;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.widget-gallery-card:hover{border-color:#9fc5b3;box-shadow:0 13px 28px #1f4f3d1c;transform:translateY(-2px)}.widget-gallery-card:focus-visible{outline:3px solid rgba(47,115,91,.35);outline-offset:2px}.widget-card-copy{min-width:0;padding:15px 17px 12px}.widget-card-copy .widget-card-source{display:flex;gap:6px;min-height:0;margin:0 0 7px;color:#678277;font-size:10px;font-weight:750}.widget-card-source span{color:#aac0b6}.widget-gallery-card .widget-card-copy h3{margin:0;color:#25473a;font:700 17px/1.25 Georgia,serif}.widget-gallery-card .widget-card-copy>p:last-child{display:-webkit-box;min-height:0;margin:7px 0 0;overflow:hidden;color:#6d837a;font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.widget-gallery-card>footer{display:flex;min-height:62px;align-items:center;justify-content:space-between;gap:9px;padding:10px 12px 10px 17px;border-top:1px solid #e7eee9;background:#fbfcfb}.widget-gallery-card>footer>span{color:#80968d;font:9px SFMono-Regular,Consolas,monospace;white-space:nowrap}.widget-gallery-card>footer>div{display:flex;gap:7px}.widget-gallery-card>footer button{min-height:40px;padding-inline:11px}.widget-gallery-card>footer .primary-button{background:#2f735b}.widget-gallery-card>footer .primary-button:hover{background:#245b47}.widget-library-pagination{display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:18px;padding:10px 28px;border-top:1px solid #d9e5de;background:#fff}.widget-library-pagination p{margin:0;color:#647f74;font-size:12px}.widget-library-pagination nav{display:flex;align-items:center;gap:5px}.widget-library-pagination .page-number,.widget-library-pagination .page-arrow{min-width:40px;height:40px;border-radius:7px;font-size:11px}.widget-library-pagination .page-number.active{border-color:#2f735b;background:#2f735b}.widget-gallery.widget-drawer>.widget-library-empty{display:grid;min-height:320px;place-content:center;justify-items:center;padding:40px;color:#729084;text-align:center}.widget-library-empty b{margin-top:12px;color:#355e4e;font-size:15px}.widget-library-empty p{margin:5px 0 0;font-size:12px}.widget-gallery-card .widget-template-preview{position:relative;display:grid;height:132px;min-height:132px;grid-template-columns:minmax(0,1fr) minmax(105px,.78fr);gap:15px;align-items:center;margin:0;padding:16px 18px;overflow:hidden;border:0;border-bottom:1px solid #dbe7e0;border-radius:0;color:#2f735b;background-color:#edf5ef;background-image:linear-gradient(rgba(59,111,91,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(59,111,91,.07) 1px,transparent 1px);background-size:20px 20px}.widget-template-preview b,.widget-template-preview small,.widget-template-preview span{display:block}.widget-template-preview small{margin:0;color:currentColor;font-size:9px;line-height:1.35;opacity:.72}.widget-template-preview .template-title{align-self:start;color:#31594a;font-size:10px}.template-preview-copy{min-width:0}.template-preview-copy>b{color:#2d5847;font-size:11px}.template-preview-copy>small{margin-top:5px}.template-legend{display:flex;align-items:center;gap:5px;margin-top:12px;color:#668278;font-size:8px;font-style:normal}.template-legend span,.template-table i:not(.warning){width:7px;height:7px;border-radius:50%;background:#3c9b70;box-shadow:0 0 0 3px #3c9b7021}.widget-template-preview .template-ring{display:grid;width:84px;height:84px;place-items:center;border:0;border-radius:50%;background:conic-gradient(#2f735b var(--progress),#cbded3 0);box-shadow:inset 0 0 0 1px #225b4514}.template-ring:after{content:"";position:absolute;width:62px;height:62px;border-radius:50%;background:#fff}.template-ring>span{position:relative;z-index:1;text-align:center}.template-ring b{color:#214b3b;font:700 18px/1 Georgia,serif}.template-ring small{margin-top:3px;font-size:7px}.template-metric>small{color:#507666;font-weight:700}.template-metric>b{margin:5px 0 4px;color:#214b3b;font:700 29px/1 Georgia,serif}.template-metric>span{color:#69867a;font-size:8px}.template-mini-bars{display:flex;height:72px;align-items:end;gap:7px;padding:9px 8px 0;border-bottom:1px solid #95b8a8}.template-mini-bars i{width:14%;min-height:8px;border-radius:3px 3px 0 0;background:#5a9d81;opacity:.42}.template-mini-bars i:last-child{opacity:.9}.preview-trend{align-items:end}.template-trend{width:100%;height:65px;overflow:visible}.template-trend path{fill:none;stroke:#2f7f9d;stroke-width:2.4;vector-effect:non-scaling-stroke}.template-trend .template-area{fill:#2f7f9d21;stroke:none}.preview-gauge{grid-template-columns:1fr!important;justify-items:center;gap:4px!important}.template-gauge{display:grid;width:116px;height:58px;align-items:end;overflow:hidden}.template-gauge:before{content:"";grid-area:1 / 1;width:116px;height:116px;border-radius:50%;background:conic-gradient(from 270deg,#2f7f9d var(--progress),#cddfe0 0 180deg,transparent 0)}.template-gauge:after{content:"";grid-area:1 / 1;align-self:end;justify-self:center;width:88px;height:44px;border-radius:88px 88px 0 0;background:#edf5ef}.template-gauge>span{z-index:1;grid-area:1 / 1;align-self:end;padding-bottom:3px;text-align:center}.template-gauge b{color:#214d5c;font:700 18px/1 Georgia,serif}.template-gauge small{max-width:100px;margin-top:3px;font-size:7px}.preview-gauge>p{margin:0;color:#668278;font-size:8px}.preview-bars,.preview-list,.preview-freshness,.preview-network,.preview-locations,.preview-commands,.preview-alert-list{grid-template-columns:1fr!important;gap:9px!important}.template-comparison,.template-table,.template-timeline,.template-alert-rows{display:grid;gap:7px}.template-comparison>div{display:grid;grid-template-columns:46px 1fr 28px;gap:7px;align-items:center;color:#638074;font-size:8px}.template-comparison i{height:6px;overflow:hidden;border-radius:8px;background:#d2e3dc}.template-comparison em{display:block;height:100%;border-radius:inherit;background:#4c9277}.template-comparison b{color:#315b4c;font-size:8px;text-align:right}.template-table>div{display:grid;grid-template-columns:13px minmax(0,1fr) auto;gap:7px;align-items:center;padding-bottom:5px;border-bottom:1px solid rgba(72,118,99,.14);color:#527567;font-size:8px}.template-table i{display:grid;width:12px;height:12px;place-items:center;border-radius:4px;color:#fff;background:#4b9276;font-size:6px;font-style:normal;box-shadow:none}.template-table i.warning{background:#c58b39}.template-table b{color:#315b4c;font-size:8px}.preview-signal{color:#2f7f82!important;background-color:#ebf5f3!important}.template-signal{width:78px;height:72px;justify-self:center}.template-signal path{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;opacity:.75}.template-signal circle{fill:currentColor}.template-online{width:fit-content;margin-bottom:8px;padding:4px 7px;border-radius:99px;color:#206347;background:#d9eee3;font-size:8px;font-weight:800}.preview-water{color:#2f7f9d!important;background-color:#eaf5f7!important}.template-water{text-align:center}.template-water>span{width:25px;height:32px;margin:0 auto 5px;border-radius:55% 45%;background:#58a5c1;transform:rotate(45deg)}.template-water b{color:#225d74;font:700 20px/1 Georgia,serif}.template-water small{margin-top:4px}.template-water-chart svg{width:100%;height:58px}.template-water-chart path{fill:#2f7f9d3d;stroke:#2f7f9d;stroke-width:2}.template-water-chart small{text-align:right}.preview-commands{color:#9a6720!important;background-color:#faf3e5!important}.template-timeline>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;color:#795f38;font-size:8px}.template-timeline i{width:8px;height:8px;border:2px solid #c58b39;border-radius:50%;background:#fff}.template-timeline b{color:#714d17;font-size:8px}.preview-alert,.preview-alert-list{color:#9f4f43!important;background-color:#faeeeb!important;background-image:linear-gradient(rgba(159,79,67,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(159,79,67,.06) 1px,transparent 1px)!important}.preview-alert{grid-template-columns:auto minmax(0,1fr) 82px!important}.template-alert-mark,.template-alert-head>span{display:grid;width:42px;height:42px;place-items:center;border:2px solid #b96050;border-radius:50%;color:#b96050;background:#fff;font:800 19px/1 Georgia,serif}.preview-alert .template-metric>b{color:#963f34}.template-alert-pulse{display:flex;height:45px;align-items:end;gap:5px}.template-alert-pulse i{width:18px;border-radius:3px 3px 0 0;background:#c8796d}.template-alert-pulse i:first-child{height:35%;opacity:.55}.template-alert-pulse i:nth-child(2){height:78%}.template-alert-pulse i:last-child{height:52%;opacity:.7}.template-alert-head{display:flex;align-items:center;gap:11px}.template-alert-head>span{width:34px;height:34px;font-size:15px}.template-alert-head b{color:#963f34;font:700 20px/1 Georgia,serif}.template-alert-head small{margin-top:3px}.template-alert-rows>div{display:flex;justify-content:space-between;padding-top:6px;border-top:1px solid rgba(159,79,67,.16);color:#825e58;font-size:8px}.template-alert-rows b{color:#9f4f43;font-size:8px}.widget-gallery button:focus-visible{outline:3px solid rgba(47,115,91,.32);outline-offset:2px}.widget-gallery .widget-search input:focus-visible{outline:0}@media(max-width:980px){.widget-gallery.widget-drawer>.widget-library-toolbar{grid-template-columns:1fr}.widget-library-toolbar .widget-categories{justify-content:flex-start}.widget-gallery.widget-drawer>.widget-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.widget-library-backdrop{align-items:stretch;padding:0}.widget-gallery.widget-drawer{width:100vw;height:100dvh;border:0;border-radius:0}.widget-gallery-head{padding:19px 17px 16px}.widget-gallery-head h2{font-size:25px}.widget-gallery-head p:not(.widget-gallery-kicker){font-size:12px}.widget-gallery.widget-drawer>.widget-library-toolbar{gap:10px;padding:12px 16px}.widget-library-toolbar .widget-categories{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.widget-library-toolbar .widget-categories button{flex:0 0 auto}.widget-gallery.widget-drawer>.widget-gallery-grid{grid-template-columns:minmax(0,1fr);padding:14px 16px 18px}.widget-gallery-card{min-height:300px;grid-template-rows:140px minmax(98px,auto) auto}.widget-gallery-card .widget-template-preview{height:140px;min-height:140px}.widget-library-pagination{align-items:flex-start;padding:10px 16px;flex-direction:column;gap:8px}.widget-library-pagination nav{width:100%;overflow-x:auto;padding-bottom:2px}}@media(prefers-reduced-motion:reduce){.widget-gallery-card,.widget-library-toolbar .widget-categories button{transition:none}.widget-gallery-card:hover{transform:none}}.device-icon.sensor_controller{color:#6e6594;background:linear-gradient(135deg,#e4f3ec,#efedfb)}.registration-progress{margin:22px 0 18px;padding:0 2px 18px;border-bottom:1px solid #dfe9e3}.registration-progress ol{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}.registration-progress ol:before{position:absolute;top:18px;right:16.66%;left:16.66%;height:1px;background:#d7e4dc;content:""}.registration-progress li{position:relative;z-index:1;display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;color:#899c95}.registration-progress li>span{display:grid;width:36px;height:36px;place-items:center;border:1px solid #d6e2db;border-radius:50%;background:#fff;font-size:12px;font-weight:800}.registration-progress li div{min-width:0}.registration-progress li b,.registration-progress li small{display:block}.registration-progress li b{color:#60766e;font-size:12px}.registration-progress li small{margin-top:3px;font-size:9px;line-height:1.3}.registration-progress li.active>span{border-color:#2f735b;color:#fff;background:#2f735b;box-shadow:0 0 0 5px #2f735b1a}.registration-progress li.active b{color:#244f40}.registration-progress li.complete>span{border-color:#8ebca8;color:#296c53;background:#e9f6ee}.device-registration-workbench{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:stretch}.device-blueprint{min-width:0;padding:18px;border:1px solid #cadfd3;border-radius:14px;background:#edf7f1}.blueprint-illustration{position:relative;display:grid;height:138px;place-items:center;overflow:hidden;border-radius:10px;color:#34775d;background-color:#dcefe4;background-image:linear-gradient(rgba(54,112,88,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(54,112,88,.07) 1px,transparent 1px);background-size:18px 18px}.blueprint-illustration.role-controller{color:#62568d;background-color:#e8e6f2}.blueprint-illustration.role-combined{color:#4f5f80;background-color:#e2eee9}.blueprint-board{position:relative;z-index:2;display:grid;width:74px;height:74px;place-items:center;border:1px solid currentColor;border-radius:14px;background:#ffffffd1;box-shadow:0 12px 25px #1b49391f}.blueprint-board:before,.blueprint-board:after{position:absolute;top:11px;bottom:11px;width:5px;background:repeating-linear-gradient(to bottom,currentColor 0 3px,transparent 3px 9px);content:"";opacity:.48}.blueprint-board:before{left:-6px}.blueprint-board:after{right:-6px}.blueprint-trace{position:absolute;height:1px;background:currentColor;opacity:.28}.blueprint-trace:after{position:absolute;top:-3px;width:7px;height:7px;border:1px solid currentColor;border-radius:50%;background:#edf7f1;content:""}.trace-one{top:35px;left:0;width:calc(50% - 38px)}.trace-one:after{right:0}.trace-two{right:0;bottom:34px;width:calc(50% - 38px)}.trace-two:after{left:0}.trace-three{bottom:14px;left:50%;width:1px;height:25px}.trace-three:after{bottom:0;left:-3px}.blueprint-heading{margin-top:16px}.blueprint-heading small{color:#6d897d;font-size:11px}.blueprint-heading h3{overflow-wrap:anywhere;margin:4px 0 3px;color:#244d3f;font:700 19px/1.2 Georgia,serif}.blueprint-heading p{margin:0;color:#658075;font-size:12px}.device-blueprint dl{display:grid;gap:0;margin:0}.device-blueprint dl div{padding:9px 0;border-top:1px solid rgba(73,112,94,.14)}.device-blueprint dt{color:#83978e;font-size:10px}.device-blueprint dd{overflow-wrap:anywhere;margin:3px 0 0;color:#3d6354;font-size:11px;font-weight:750}.blueprint-note{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(73,112,94,.14);color:#6e837a;font-size:10px;line-height:1.5}.blueprint-note svg{flex:0 0 auto;color:#39775e}.registration-stage{min-width:0;padding:21px 22px;border:1px solid #dde8e2;border-radius:14px;background:#fff}.registration-stage>header{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid #e8efeb}.registration-stage>header>span{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:#fff;background:#315f50;font-size:13px;font-weight:850}.registration-stage h3{margin:0;color:#234a3c;font:700 20px/1.2 Georgia,serif}.registration-stage header p{max-width:62ch;margin:4px 0 0;color:#72877f;font-size:12px;line-height:1.5}.registration-identity-fields label,.registration-stage .modal-form-grid label{color:#476a5e;font-size:12px;letter-spacing:0;text-transform:none}.registration-identity-fields label>em,.registration-stage .modal-form-grid label>em{color:#8da098;font-size:9px;font-style:normal;font-weight:500}.registration-identity-fields input,.registration-stage .modal-form-grid input:not([type=checkbox]){min-height:44px;font-size:13px}.registration-stage .field-help{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px;letter-spacing:0}.registration-stage .registration-role-picker{grid-template-columns:1fr;gap:10px;margin:0}.registration-stage .registration-role-picker label>span{position:relative;min-height:88px;grid-template-columns:34px minmax(0,1fr) auto;align-content:center;border-radius:11px}.registration-stage .registration-role-picker label{letter-spacing:0;text-transform:none}.registration-stage .registration-role-picker svg{grid-row:1 / 3}.registration-stage .registration-role-picker label i{display:none;grid-row:1 / 3;grid-column:3;align-items:center;gap:5px;color:#2d7057;font-size:9px;font-style:normal;font-weight:800}.registration-stage .registration-role-picker label i svg{grid-row:auto}.registration-stage .registration-role-picker label.selected i{display:flex}.registration-stage .registration-role-picker b{font-size:13px}.registration-stage .registration-role-picker small{max-width:58ch;font-size:11px}.registration-guidance,.combined-data-note{display:flex;align-items:flex-start;gap:10px;margin:14px 0 0;padding:12px 13px;border-left:3px solid #4b876f;color:#57756a;background:#f1f8f4;font-size:11px;line-height:1.5}.registration-guidance svg,.combined-data-note svg{flex:0 0 auto;color:#37785e}.registration-guidance b,.combined-data-note b{color:#315f4e}.registration-stage>.device-type-picker{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.registration-stage>.device-type-picker legend{color:#476a5e;font-size:11px;font-weight:750;letter-spacing:0;text-transform:none}.registration-stage>.controller-registration-section{padding:0;border:0;background:transparent}.registration-stage>.controller-registration-section .modal-form-grid{margin-top:4px}.combined-data-note{margin:0 0 14px}.device-edit-form{display:grid;gap:15px;margin-top:22px}.controller-edit-stage{background:#f7faf8}.registration-back-button{display:inline-flex;min-height:38px;align-items:center;gap:7px;margin-right:auto;padding:0 12px;border:0;color:#547368;background:transparent;font-size:11px;font-weight:750;cursor:pointer}.modal-actions .primary-button{display:inline-flex;align-items:center;gap:7px}@media(max-width:860px){.device-registration-workbench{grid-template-columns:1fr}.device-blueprint{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0 16px}.blueprint-illustration{height:126px;grid-row:1 / 4}.blueprint-heading{margin-top:3px}.device-blueprint dl{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.device-blueprint dl div{padding-right:10px}.blueprint-note{grid-column:1 / -1}}@media(max-width:620px){.registration-progress{margin-top:18px;padding-bottom:14px}.registration-progress ol{gap:6px}.registration-progress ol:before{right:17%;left:17%}.registration-progress li{grid-template-columns:32px minmax(0,1fr);gap:6px}.registration-progress li>span{width:32px;height:32px}.registration-progress li small{display:none}.registration-progress li b{font-size:10px}.device-blueprint{display:grid;grid-template-columns:82px minmax(0,1fr);gap:0 12px;padding:14px}.blueprint-illustration{height:82px;grid-row:1 / 3}.blueprint-board{width:54px;height:54px;border-radius:11px}.blueprint-heading{margin-top:1px}.blueprint-heading h3{font-size:17px}.device-blueprint dl{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.device-blueprint dl div{padding:8px 7px 0 0}.blueprint-note{display:none}.registration-stage{padding:17px 14px}.registration-stage h3{font-size:19px}.registration-stage header p{font-size:13px}.registration-identity-fields label,.registration-stage .modal-form-grid label{font-size:13px}.registration-identity-fields input,.registration-stage .modal-form-grid input:not([type=checkbox]){font-size:16px}.registration-stage .field-help,.registration-stage .registration-role-picker small,.registration-guidance,.combined-data-note{font-size:12px}.registration-stage>.device-type-picker{grid-template-columns:1fr}.registration-stage .registration-role-picker label>span{min-height:104px;grid-template-columns:30px minmax(0,1fr)}.registration-stage .registration-role-picker label i{grid-row:auto;grid-column:2;margin-top:4px}.modal-actions .registration-back-button{order:2;margin-right:0}}.type-label{display:grid;gap:3px;font-family:inherit}.type-label b{color:#4e7063;font-size:10px}.type-label small{color:#7d938a;font-size:9px}.device-type-help{grid-column:1 / -1;max-width:68ch;margin:0 0 4px;color:#71867e;font-size:11px;line-height:1.45}.capability-summary{display:grid;gap:7px;margin:16px 0}.capability-summary>p{margin:0 0 1px;color:#6d897d;font-size:10px;font-weight:750}.capability-summary>span{display:grid;grid-template-columns:18px minmax(0,1fr);min-height:34px;align-items:center;gap:8px;padding:7px 10px;border:1px solid #d0ddd6;border-radius:8px;color:#879a92;background:#ffffff6b}.capability-summary>span>span{min-width:0}.capability-summary b,.capability-summary small{display:block}.capability-summary b{font-size:10px;line-height:1.3}.capability-summary small{margin-top:2px;font-size:9px}.capability-summary>span.enabled{border-color:#acd0bd;color:#2c674f;background:#ffffffe0}@media(max-width:860px){.capability-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin:11px 0}.capability-summary>p{grid-column:1 / -1}.device-blueprint dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.capability-summary{grid-column:2;grid-template-columns:1fr;gap:6px;margin:8px 0 0}.capability-summary>p{display:none}.capability-summary>span{min-height:30px;padding:5px 8px}.capability-summary small{display:none}.device-blueprint dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.latest-reading-cell{flex-wrap:nowrap;align-items:center;min-width:0}.latest-reading-cell .reading{min-width:0;flex:1 1 auto;max-width:none}.reading-more-button{display:inline-flex;min-height:28px;flex:0 0 auto;align-items:center;gap:5px;padding:0 8px;border:1px solid #d7e6dd;border-radius:14px;background:#fff;color:#4f7f6e;font:9px SFMono-Regular,Consolas,monospace;white-space:nowrap}.reading-more-button:hover{border-color:#a9cbbc;background:#f6fbf7;color:#2f6653}.reading-more-button:focus-visible{outline:2px solid #70ad99;outline-offset:2px}.readings-dialog-content{display:grid;gap:14px}.readings-dialog-summary{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #dfeae3;border-radius:7px;background:#f7fbf8}.readings-dialog-summary>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:50%;color:#4e8a74;background:#e4f1e9}.readings-dialog-summary b,.readings-dialog-summary small{display:block}.readings-dialog-summary b{color:#3f6255;font-size:11px}.readings-dialog-summary small{margin-top:4px;color:#849890;font-size:9px}@media(max-width:1500px){.device-table-head{display:none}.responsive-table{overflow-x:visible}.device-table-row{grid-template-columns:minmax(0,1fr) minmax(180px,.8fr) auto;grid-template-areas:"device device status" "role location location" "reading reading reading" "seen control control" "actions actions actions";min-width:0;gap:12px 18px;margin-top:10px;padding:16px;border:1px solid #e4ece6;border-radius:7px;background:#fff}.device-table-row:hover{border-color:#d3e2d8;background:#fbfdfb}.device-table-row .device-cell{grid-area:device}.device-role-cell{grid-area:role}.device-table-row .location-cell{grid-area:location}.latest-reading-cell{grid-area:reading}.device-last-seen{grid-area:seen}.device-status-cell{grid-area:status;justify-self:end}.manual-valve-cell{grid-area:control;justify-self:end;width:min(100%,330px)}.device-row-actions{grid-area:actions;justify-self:end}.device-table-row [data-label]{position:relative;padding-top:14px}.device-table-row [data-label]:before{position:absolute;top:0;left:0;content:attr(data-label);color:#99aaa4;font:8px SFMono-Regular,Consolas,monospace;letter-spacing:.09em;text-transform:uppercase}.latest-reading-cell .reading{flex:0 1 auto;max-width:min(55vw,320px)}}@media(max-width:620px){.device-table-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"device status" "role role" "location location" "reading reading" "seen seen" "control control" "actions actions";gap:12px;padding:14px}.device-row-actions{justify-self:start}.manual-valve-cell{justify-self:stretch;width:100%}.latest-reading-cell .reading{max-width:calc(100vw - 176px)}.readings-dialog-content .detail-reading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
