.ps{--color-navy-900:#0d2436;--color-navy-800:#183a59;--color-slate-600:#526376;--color-slate-500:#6b8299;--color-slate-300:#a9b7c4;--color-mist-100:#e4e9ed;--color-fog-50:#f5f7f8;--color-paper:#fbfcfc;--color-band:#eef1f3;--color-copper-500:#b15a2e;--color-copper-600:#8f4523;--color-line:#183a591f;--font-body:"Plex Sans", "Segoe UI", system-ui, sans-serif;--font-mono:"Plex Mono", "SFMono-Regular", Consolas, monospace;--ps-chrome:12.5rem;--ps-water:color-mix(in srgb, var(--color-navy-800) 45%, var(--color-paper));--ps-brine:color-mix(in srgb, var(--color-navy-800) 75%, var(--color-paper));--ps-brine-deep:color-mix(in srgb, var(--color-navy-800) 90%, var(--color-paper));--ps-salt:color-mix(in srgb, var(--color-navy-800) 20%, var(--color-paper));border-top:1px solid var(--color-line);color:var(--color-navy-900);position:relative}.ps h3,.ps h4,.ps p{margin:0}.ps-bar{border-bottom:1px solid var(--color-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 2rem;padding:.875rem 0;display:flex}.ps-legend{color:var(--color-slate-600);font:500 .75rem/1.2 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.ps-legend li{align-items:center;gap:.5rem;display:flex}.ps-swatch{border-radius:2px;width:1.25rem;height:.375rem}.ps-swatch--water{background:var(--ps-water)}.ps-swatch--brine{background:var(--ps-brine)}.ps-swatch--salt{background:var(--ps-salt);outline:1px solid var(--color-slate-300);outline-offset:-1px}.ps-swatch--active{background:var(--color-copper-500);width:.625rem;height:.625rem}.ps-stage{border-bottom:1px solid var(--color-line);background:0 0;overflow:hidden}.ps-svg{width:100%;height:auto;max-height:var(--ps-fit,calc(100svh - var(--ps-chrome)));display:block}.ps-svg text{font-family:var(--font-mono);font-weight:500}.ps-t-label{fill:var(--color-slate-600);letter-spacing:.12em;paint-order:stroke;stroke:var(--color-paper);stroke-width:4px;stroke-linejoin:round;font-size:13.5px}.ps-t-value{fill:var(--color-navy-800);font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--color-paper);stroke-width:5px;stroke-linejoin:round;font-size:24px}.ps-t-sub{fill:var(--color-slate-600);paint-order:stroke;stroke:var(--color-paper);stroke-width:4px;stroke-linejoin:round;font-size:13px}.ps-t-tag{fill:var(--color-slate-600);letter-spacing:.12em;font-size:12.5px}.ps-t-screen-head{fill:var(--color-fog-50);letter-spacing:.14em;font-size:12.5px}.ps-svg .ps-t-screen{fill:var(--color-navy-900);font-family:var(--font-body);font-size:13.5px;font-weight:400}.ps-svg .ps-t-screen.ps-t-mono{font-family:var(--font-mono);fill:var(--color-slate-600)}.ps-svg .ps-t-screen.is-warn{fill:var(--color-copper-600)}.ps-t-screen-value{fill:var(--color-navy-800);font-variant-numeric:tabular-nums;font-size:20px}.ps-sm-ring{transition:stroke-dasharray .2s linear}.ps-rfid-head{fill:var(--color-paper);stroke:var(--color-navy-800);stroke-width:1.2px;transition:fill .2s,stroke .2s}.ps-rfid-led{fill:var(--color-slate-300)}.ps-rfid-lines{stroke:var(--color-slate-500);stroke-width:1px}.ps-rfid-waves{stroke:var(--color-copper-500);stroke-width:2.2px;opacity:0}.ps-rfid.is-reading .ps-rfid-head{stroke:var(--color-copper-500);stroke-width:2.6px}.ps-rfid.is-reading .ps-rfid-led{fill:var(--color-copper-500);animation:.35s step-end infinite ps-rfid-blink}.ps-rfid.is-reading .ps-rfid-waves{animation:.6s ease-out infinite ps-rfid}.ps-rfid.is-ok .ps-rfid-head{fill:var(--color-copper-500);stroke:var(--color-copper-600)}.ps-rfid.is-ok .ps-rfid-led{fill:var(--color-paper)}.ps-rfid.is-ok .ps-rfid-lines{stroke:var(--color-paper)}.ps-svg .ps-rfid.is-reading .ps-rfid-label,.ps-svg .ps-rfid.is-ok .ps-rfid-label{fill:var(--color-copper-600)}@keyframes ps-rfid{0%{opacity:.15}50%{opacity:1}to{opacity:.15}}@keyframes ps-rfid-blink{50%{fill:var(--color-paper)}}.ps-t-halo{paint-order:stroke;stroke:var(--color-paper);stroke-width:4px;stroke-linejoin:round}.ps-t-tiny{fill:var(--color-slate-600);letter-spacing:.1em;font-size:10.5px}.ps-t-pct{letter-spacing:0}.ps-svg text.is-submerged{fill:var(--color-fog-50);stroke:none}.ps-marker line{stroke:var(--color-slate-500);stroke-width:1px}.ps-marker circle{fill:var(--color-paper);stroke:var(--color-copper-500);stroke-width:1.3px}.ps-marker text{fill:var(--color-copper-600);font-size:12px}.ps-flow{fill:none;stroke-width:3.2px;stroke-dasharray:8 10;opacity:0;transition:opacity .25s}.ps-flow.is-on{opacity:1;animation:.7s linear infinite ps-flow}.ps-flow.is-rev{animation-direction:reverse}.ps-flow--water{stroke:var(--color-slate-500)}.ps-flow--brine{stroke:var(--ps-brine-deep)}.ps-flow--salt{stroke:var(--color-paper)}.ps-flow--hose{stroke-width:2.2px}@keyframes ps-flow{to{stroke-dashoffset:-18px}}.ps-valve path{fill:var(--color-paper);stroke:var(--color-navy-800);stroke-width:1.3px;stroke-linejoin:round;transform-box:fill-box;transform-origin:50%;transition:fill .2s,stroke .2s,transform .3s;transform:rotate(90deg)}.ps-valve.is-open path{fill:var(--color-copper-500);stroke:var(--color-copper-500);transform:none}.ps-pump circle{fill:var(--color-paper);stroke:var(--color-navy-800);stroke-width:1.5px;transition:stroke .2s}.ps-pump .ps-impeller{fill:var(--color-navy-800);transform-box:fill-box;transform-origin:40%}.ps-pump.is-on circle{stroke:var(--color-copper-500)}.ps-pump.is-on .ps-impeller{fill:var(--color-copper-500);animation:.9s linear infinite ps-spin}@keyframes ps-spin{to{transform:rotate(360deg)}}.ps-gate{fill:var(--color-paper);transition:transform .4s,fill .2s}.ps-gate.is-open{fill:var(--color-copper-500);transform:translate(-14px)}.ps-fall{opacity:0}.ps-fall circle{fill:var(--color-slate-300)}.ps-fall.is-on{opacity:1;animation:.35s linear infinite ps-fall}@keyframes ps-fall{to{transform:translateY(21px)}}.ps-shake.is-on{animation:90ms linear infinite alternate ps-shake}@keyframes ps-shake{0%{transform:translate(-.8px,.4px)}to{transform:translate(.8px,-.4px)}}.ps-screw-salt{opacity:0;transition:opacity .3s}.ps-screw.is-on{animation:.45s linear infinite ps-screw}.ps-screw.is-on .ps-screw-salt{opacity:1}@keyframes ps-screw{to{transform:translate(12px)}}.ps-blade{transform-box:fill-box;transform-origin:50%}.ps-blade.is-on{animation:.32s linear infinite alternate ps-blade}@keyframes ps-blade{to{transform:scaleX(.12)}}.ps-vehicle [data-beacon].is-on{animation:.9s step-end infinite ps-beacon}@keyframes ps-beacon{50%{fill:var(--color-paper)}}.ps-tools{gap:.5rem;margin-left:auto;display:flex}.ps-tool{border:1px solid var(--color-slate-300);color:var(--color-navy-800);font:600 .875rem/1 var(--font-body);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.4375rem;padding:.375rem .75rem;transition:border-color .15s,transform .12s;display:inline-flex}.ps-tool svg{width:1.125rem;height:1.125rem}.ps-tool:hover{border-color:var(--color-navy-800)}.ps-tool:active{transform:scale(.97)}.ps-dlg{border:1px solid var(--color-line);background:var(--color-paper);width:min(68rem,100vw - 2rem);max-height:calc(100svh - 2rem);color:var(--color-navy-900);border-radius:8px;margin:auto;padding:0}.ps-dlg[open]{flex-direction:column;display:flex}.ps-dlg.is-panel{z-index:10;max-width:none;max-height:none;margin:0;position:absolute;inset:auto}.ps-dlg.is-panel .ps-dlg-head{padding:.625rem .75rem .625rem 1rem}.ps-dlg.is-panel .ps-dlg-head h3{font-size:1rem}.ps-dlg.is-panel .ps-dlg-body{padding:0 1rem .5em}.ps-dlg::backdrop{background:#0d24368c}.ps-dlg[data-dlg=info]{backdrop-filter:blur(12px)saturate(1.15);background:#fbfcfc9e;border-color:#fbfcfcb3}.ps-dlg[data-dlg=info]::backdrop{background:#0d24361f}.ps-dlg[data-dlg=info] .ps-dlg-head{border-bottom-color:#183a592e}.ps-dlg-head{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.ps-dlg-head h3{color:var(--color-navy-800);font-size:1.125rem;font-weight:600;line-height:1.3}.ps-dlg-close{border:1px solid var(--color-slate-300);width:2.25rem;height:2.25rem;color:var(--color-navy-800);cursor:pointer;background:0 0;border-radius:8px;flex:none;place-items:center;transition:border-color .15s;display:grid}.ps-dlg-close:hover{border-color:var(--color-navy-800)}.ps-dlg-close svg{width:1.125rem;height:1.125rem}.ps-dlg-body{flex:auto;min-height:0;padding:.25em 1.25rem 1em;overflow:hidden}.ps-list{grid-template-columns:repeat(auto-fill,minmax(18em,1fr));gap:0 2em;margin:0;padding:0;list-style:none;display:grid}.ps-row{border-bottom:1px solid var(--color-line);grid-template-columns:2em minmax(0,1fr);align-items:start;gap:.25em .75em;padding:.875em 0;display:grid}.ps-row-idx{color:var(--color-copper-500);font:500 .75em/1.4 var(--font-mono);letter-spacing:.08em;padding-top:.2em}.ps-row .ps-row-title{color:var(--color-navy-800);font-weight:600;line-height:1.35}.ps-row .ps-row-text{color:var(--color-slate-600);margin-top:.25em;font-size:.875em;line-height:1.5}.ps-row .ps-row-state{color:var(--color-slate-500);font:500 .75em/1.4 var(--font-mono);letter-spacing:.04em;margin-top:.4em}.ps-row.is-running .ps-row-state{color:var(--color-copper-600)}.ps-row.is-running .ps-row-state:before{content:"";background:var(--color-copper-500);vertical-align:.05em;width:.6em;height:.6em;margin-right:.5em;display:inline-block}.ps-console{border-bottom:1px solid var(--color-line)}.ps-actions{grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem;padding-top:.75rem;display:grid}.ps-act{border:1px solid var(--color-slate-300);background:var(--color-paper);min-height:3.5rem;color:var(--color-navy-800);font:inherit;text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-content:center;gap:.125rem .5rem;padding:.625rem .875rem;transition:background-color .15s,border-color .15s,color .15s,transform .12s;display:grid}.ps-act:hover{border-color:var(--color-navy-800)}.ps-act:active{transform:scale(.97)}.ps-act-idx{color:var(--color-copper-500);font:500 .75rem/1.4 var(--font-mono);grid-row:span 2;padding-top:.15rem}.ps-act-label{font-weight:600;line-height:1.3}.ps-act-state{color:var(--color-slate-500);font:500 .6875rem/1.4 var(--font-mono);letter-spacing:.06em}.ps-act.is-running{border-color:var(--color-copper-500);background:var(--color-copper-500);color:var(--color-paper)}.ps-act.is-running:hover{border-color:var(--color-copper-600);background:var(--color-copper-600)}.ps-act.is-running .ps-act-idx,.ps-act.is-running .ps-act-state{color:var(--color-paper)}.ps-act[aria-disabled=true]:not(.is-running){border-color:var(--color-line);background:var(--color-fog-50);cursor:not-allowed}.ps-act[aria-disabled=true]:not(.is-running) .ps-act-label{color:var(--color-slate-500)}.ps-act[aria-disabled=true]:not(.is-running):active{transform:none}.ps-console-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 2rem;padding:.75rem 0;display:flex}.ps-status{min-height:1.4em;color:var(--color-slate-600);flex:24rem;font-size:.875rem;line-height:1.4}.ps-status.is-hint{color:var(--color-copper-600)}.ps-console-tools{align-items:center;gap:1.25rem;display:flex}.ps-reset{border:1px solid var(--color-slate-300);color:var(--color-navy-800);font:600 .875rem/1 var(--font-body);cursor:pointer;background:0 0;border-radius:8px;padding:.4375rem .875rem;transition:border-color .15s,transform .12s}.ps-reset:hover{border-color:var(--color-navy-800)}.ps-reset:active{transform:scale(.97)}.ps-subhead{color:var(--color-slate-600);font:500 .75rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin:1.5rem 0 .625rem!important}.ps-parts{grid-template-columns:repeat(auto-fill,minmax(min(100%,13em),1fr));gap:0 2em;margin:0;padding:0;list-style:none;display:grid}.ps-parts li{border-bottom:1px solid var(--color-line);grid-template-columns:1.75em minmax(0,1fr);align-items:baseline;gap:.5em;padding:.4em 0;font-size:.9375em;line-height:1.3;display:grid}.ps-parts li>span:last-child{color:var(--color-navy-800);font-weight:600}.ps-part-n{color:var(--color-copper-500);font:500 .86em/1.75 var(--font-mono)}@media (width>=64.01rem){.ps-frame{width:min(100%, calc(var(--ps-fit,38rem) * 1140 / 732 + 13.25rem));margin-inline:auto}.ps-main{grid-template-columns:minmax(0, calc(var(--ps-fit,38rem) * 1140 / 732)) 12.5rem;align-items:start;gap:0 .75rem;display:grid}.ps-main .ps-stage{border-bottom:0}.ps-main .ps-console{border-bottom:0;padding-top:.5rem}.ps-main .ps-actions{grid-template-columns:minmax(0,1fr);gap:.375rem;padding-top:0}.ps-main .ps-act{min-height:2.5rem;padding:.4375rem .75rem}.ps-main .ps-act-label{font-size:.875rem}.ps-main .ps-console-foot{flex-direction:column;align-items:stretch;gap:.75rem}.ps-main .ps-status{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;flex:none;display:-webkit-box;overflow:hidden}.ps-main .ps-reset{align-self:flex-start}}@media (width<=64rem){.ps-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=40rem){.ps-dlg{width:calc(100vw - 1rem);max-height:calc(100svh - 1rem)}.ps-dlg-head{padding:.5rem .875rem}.ps-dlg-body{padding:0 .75rem .5em}.ps-row{grid-template-columns:minmax(0,1fr);padding:.55em 0}.ps-row-idx{display:none}.ps-row .ps-row-text{line-height:1.4}.ps-row .ps-row-state{margin-top:.25em}.ps-parts li{grid-template-columns:1.4em minmax(0,1fr);gap:.375em;padding:.45em 0;line-height:1.4}.ps-actions{gap:.3125rem;padding-top:.3125rem}.ps-act{grid-template-columns:minmax(0,1fr);min-height:3rem;padding:.375rem .5rem}.ps-act-idx{display:none}.ps-act-label{font-size:.875rem;line-height:1.2}.ps-act-state{display:none}.ps-act{min-height:2.5rem}}@media (prefers-reduced-motion:reduce){.ps *,.ps :before{transition:none!important;animation:none!important}}.ps-view,.ps-smm{display:none}@media (width<=47.99rem){.ps-legend{display:none}.ps-bar{padding:.5rem 0}.ps-dlg[data-dlg]{backdrop-filter:blur(20px)saturate(1.15);background:#fbfcfcb3;border-color:#fbfcfcb3}.ps-dlg[data-dlg]::backdrop{background:#0d24361f}.ps-dlg[data-dlg] .ps-dlg-head{border-bottom-color:#183a592e}.ps-dlg[data-dlg=info]{width:calc(100vw - 2.5rem);max-height:min(72svh,36rem)}.ps-dlg[data-dlg=info] .ps-dlg-body{overscroll-behavior:contain;padding:0 1rem .75rem;font-size:1rem;overflow-y:auto}.ps-dlg[data-dlg=info] .ps-row{padding:.875em 0}.ps-dlg[data-dlg=info] .ps-row:last-child{border-bottom:0}.ps-dlg[data-dlg=info] .ps-row .ps-row-text{color:var(--color-navy-900);margin-top:.375em;font-size:.9375em;line-height:1.55}.ps-dlg[data-dlg=info] .ps-row .ps-row-state{margin-top:.5em;font-size:.8125em}.ps-tools{flex:1}.ps-view{margin-right:auto;display:block;position:relative}.ps-view-menu{z-index:20;border:1px solid var(--color-slate-300);background:var(--color-paper);border-radius:8px;gap:.25rem;min-width:11rem;padding:.375rem;display:grid;position:absolute;top:calc(100% + .375rem);left:0}.ps-view-menu[hidden]{display:none}.ps-view-menu button{color:var(--color-navy-800);font:600 .9375rem/1.2 var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.625rem .75rem;transition:background-color .15s,color .15s}.ps-view-menu button[aria-pressed=true]{background:var(--color-navy-800);color:var(--color-fog-50)}.ps-tool[aria-expanded=true]{border-color:var(--color-navy-800)}.ps-reset{display:none}.ps-stage{overflow:hidden}.ps-svg{touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-width:0}.ps-smm{border-bottom:1px solid var(--color-line);padding:.5rem 0 1.25rem;display:block}.ps-smm .ps-subhead{margin-top:.75rem!important}.ps-smm dl{background:var(--color-line);border:1px solid var(--color-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.ps-smm dl>div{background:var(--color-paper);padding:.625rem .75rem}.ps-smm dt{color:var(--color-slate-600);font:500 .75rem/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.ps-smm dd{color:var(--color-navy-800);font:500 1rem/1.2 var(--font-mono);font-variant-numeric:tabular-nums;flex-direction:column;gap:.125rem;margin:.375rem 0 0;display:flex}.ps-smm dd small{color:var(--color-slate-600);font:400 .75rem/1.3 var(--font-body)}.ps-smm-log{margin:0;padding:0;list-style:none}.ps-smm-log li{border-bottom:1px solid var(--color-line);color:var(--color-navy-800);grid-template-columns:3.25rem minmax(0,1fr);gap:.5rem;padding:.4375rem 0;font-size:.875rem;line-height:1.4;display:grid}.ps-smm-log li span{color:var(--color-slate-600);font:500 .8125rem/1.6 var(--font-mono);font-variant-numeric:tabular-nums}.ps-smm-log li:last-child{border-bottom:0}.ps-smm-log li.is-warn{color:var(--color-copper-600)}}@media (width>=64.01rem) and (height<=50rem){.ps-main .ps-act{min-height:2.25rem;padding-block:.3125rem}.ps-main .ps-status{-webkit-line-clamp:2;line-clamp:2}}html.ps-noscroll,html.ps-noscroll body{overflow:hidden}html.ps-dlg-lock,html.ps-dlg-lock body{overscroll-behavior:none;overflow:hidden}
