.pd-h[data-astro-cid-bnx2qak7]{font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:clamp(24px,3vw,36px);line-height:.98;margin-bottom:8px}.pd-p[data-astro-cid-bnx2qak7]{font-size:13px;color:var(--text-muted);line-height:1.65;margin-bottom:8px}.pd-p[data-astro-cid-bnx2qak7]:last-of-type{margin-bottom:0}.pd-exps[data-astro-cid-bnx2qak7]{display:flex;flex-direction:column}.pd-exp[data-astro-cid-bnx2qak7]{display:block;padding:14px 4px;border-bottom:1px solid var(--border-color);text-decoration:none}.pd-exp[data-astro-cid-bnx2qak7]:last-child{border-bottom:none}.pd-status[data-astro-cid-bnx2qak7]{display:block;font-family:var(--font-mono);font-size:9.5px;color:#e8c34a;margin-bottom:4px}.pd-status[data-astro-cid-bnx2qak7][data-live=true]{color:var(--signal)}.pd-title[data-astro-cid-bnx2qak7]{display:block;font-size:15px;font-weight:500;color:var(--text);margin-bottom:4px;transition:color var(--duration-fast)}.pd-exp[data-astro-cid-bnx2qak7]:hover .pd-title[data-astro-cid-bnx2qak7]{color:var(--signal)}.pd-desc[data-astro-cid-bnx2qak7]{display:block;font-size:12.5px;color:var(--text-muted);line-height:1.6;margin-bottom:6px}.pd-tags[data-astro-cid-bnx2qak7]{display:block;font-family:var(--font-mono);font-size:10px;color:var(--text-dim)}.gl-meta[data-astro-cid-bnx2qak7]{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;color:var(--text-dim);margin-bottom:8px;line-height:1.6}.gl-h[data-astro-cid-bnx2qak7]{font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:clamp(20px,2.2vw,28px);line-height:.98;margin-bottom:10px}.gl-h[data-astro-cid-bnx2qak7] .sig[data-astro-cid-bnx2qak7]{color:var(--signal)}.gl-spec[data-astro-cid-bnx2qak7]{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;color:var(--text-dim);margin-top:12px;line-height:1.7}.gl-photoslot[data-astro-cid-bnx2qak7]{aspect-ratio:4 / 3;display:grid;place-content:center;gap:6px;text-align:center;border:1px dashed var(--border-color);border-radius:4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;color:var(--text-dim)}.gl-photoslot[data-astro-cid-bnx2qak7] .gl-photosub[data-astro-cid-bnx2qak7]{font-size:8.5px;color:var(--text-dim);opacity:.7}.gl-help[data-astro-cid-bnx2qak7]{list-style:none;font-family:var(--font-mono);font-size:10.5px;line-height:1.7;color:var(--text-muted)}.gl-help[data-astro-cid-bnx2qak7] li[data-astro-cid-bnx2qak7]{padding-left:14px;position:relative;margin-bottom:7px}.gl-help[data-astro-cid-bnx2qak7] li[data-astro-cid-bnx2qak7]:last-child{margin-bottom:0}.gl-help[data-astro-cid-bnx2qak7] li[data-astro-cid-bnx2qak7]:before{content:"▸";position:absolute;left:0;color:var(--signal)}.gl-help[data-astro-cid-bnx2qak7] b[data-astro-cid-bnx2qak7]{color:var(--text);font-weight:600}.gl-h3[data-astro-cid-bnx2qak7]{font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:16px;margin-bottom:10px}.pd-p[data-astro-cid-bnx2qak7] b[data-astro-cid-bnx2qak7]{color:var(--text);font-weight:600}.gl-tel[data-astro-cid-bnx2qak7]{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;color:var(--text-dim)}.gl-tel[data-astro-cid-bnx2qak7] b[data-astro-cid-bnx2qak7]{color:var(--signal);font-weight:400;text-align:right}.gl-outnext[data-astro-cid-bnx2qak7]{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;color:var(--signal);margin-top:12px;line-height:1.7}.gl-soon[data-astro-cid-bnx2qak7]{display:grid;gap:5px;justify-items:center;padding:10px 4px;border:1px dashed var(--border-color);border-radius:4px;font-family:var(--font-mono);letter-spacing:.12em;text-align:center}.gl-soonline[data-astro-cid-bnx2qak7]{font-size:10.5px;color:var(--text-muted)}.gl-soonsub[data-astro-cid-bnx2qak7]{font-size:8.5px;color:var(--text-dim)}.gl-cursor[data-astro-cid-bnx2qak7]{font-style:normal;color:var(--signal);animation:gl-blink 1.1s steps(1) infinite}@keyframes gl-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.gl-cursor[data-astro-cid-bnx2qak7]{animation:none}}@media(max-width:767px){#gridTelemetry{display:none!important}}.gridlab{--bg: #46433e;--line: #726c63;--line-soft: #5b5650;--ink: #e2ded6;--ink-dim: #a09a90;--ink-faint: #767066}.glctr{display:flex;justify-content:center}.glduo{width:min(360px,100%)}.gridlab .phone{width:min(360px,100%);height:740px;background:var(--bg);border-radius:36px;overflow:hidden;position:relative;display:flex;flex-direction:column;box-shadow:0 30px 70px -20px #000000bf;border:1px solid #2e2b27}.gridlab .bar{display:flex;align-items:center;justify-content:space-between;padding:20px 26px 0}.gridlab .lampname{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}.gridlab .status{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;color:var(--ink-faint);display:flex;align-items:center;gap:6px;text-transform:uppercase}.gridlab .status .led{width:5px;height:5px;border-radius:50%;background:var(--ink);box-shadow:0 0 5px var(--ink)}.gridlab .core{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:13px;padding:0 24px}.gridlab .seg{display:flex;width:100%;max-width:300px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.gridlab .seg button{flex:1;background:transparent;border:none;color:var(--ink-dim);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding:9px 0;cursor:pointer;transition:all .2s}.gridlab .seg button+button{border-left:1px solid var(--line)}.gridlab .seg button.active{background:#ffffff14;color:var(--ink)}.gridlab .modewrap{position:relative;width:100%;max-width:300px}.gridlab .mode-select{width:100%;appearance:none;-webkit-appearance:none;background:transparent;border:1px solid var(--line);border-radius:7px;color:var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:10px 38px 10px 15px;cursor:pointer;text-align:center}.gridlab .mode-select:focus{outline:none;border-color:var(--ink-dim)}.gridlab .modewrap .chev{position:absolute;right:15px;top:50%;transform:translateY(-32%);pointer-events:none;color:var(--ink-dim);font-size:10px}.gridlab .mode-select option{background:#34383a;color:var(--ink)}.gridlab .setpoints{display:flex;width:100%;max-width:300px;gap:8px}.gridlab .setpoints button{flex:1;background:transparent;border:1px solid var(--line-soft);border-radius:7px;color:var(--ink-dim);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;padding:10px 0;cursor:pointer;transition:all .2s}.gridlab .setpoints button:hover{border-color:var(--line);color:var(--ink)}.gridlab .setpoints button.active{background:#ffffff14;color:var(--ink);border-color:var(--line)}.gridlab .setpoints button.custom{border-style:dashed}.gridlab .setpoints button.custom.active{background:#ffffff0d}.gridlab .presetrow{margin-top:-5px}.gridlab .setpoints button.dim{opacity:.38;cursor:default}.gridlab .device-frame{width:100%;max-width:300px;aspect-ratio:1/1;position:relative;border:1px solid var(--line-soft);border-radius:26px;padding:6px}.gridlab .device{width:100%;height:100%;position:relative;border:1px solid var(--line);border-radius:20px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);padding:12px;background:linear-gradient(180deg,#ffffff05,#0000000f)}.gridlab .tick{position:absolute;width:9px;height:9px;border:1px solid var(--line);z-index:2}.gridlab .tick.tl{top:18px;left:18px;border-right:none;border-bottom:none}.gridlab .tick.tr{top:18px;right:18px;border-left:none;border-bottom:none}.gridlab .tick.bl{bottom:18px;left:18px;border-right:none;border-top:none}.gridlab .tick.br{bottom:18px;right:18px;border-left:none;border-top:none}.gridlab .notch{position:absolute;right:-1px;top:calc(50% - 10px);width:6px;height:20px;border:1px solid var(--line-soft);border-right:none;border-radius:3px 0 0 3px;background:var(--bg)}.gridlab .cell{display:flex;align-items:center;justify-content:center}.gridlab .circle{width:82%;aspect-ratio:1/1;border-radius:50%;border:1px solid rgba(255,255,255,.24);cursor:pointer;transition:box-shadow .25s;touch-action:none;user-select:none;-webkit-user-select:none}.gridlab .circle.holding{box-shadow:0 0 0 2px #dcdfe08c,0 0 14px #dcdfe04d}.gridlab .circle.lowering{box-shadow:0 0 0 2px #969c9e8c,0 0 10px #0006 inset}.gridlab .circle.moving{border-color:#fff9;animation:gl-transit .9s ease-in-out infinite}@keyframes gl-transit{50%{border-color:#ffffff3d}}@media(prefers-reduced-motion:reduce){.gridlab .circle.moving{animation:none}}.gridlab .device.readout .circle{cursor:default}.gridlab .holdhint{width:100%;max-width:300px;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);text-align:center}.gridlab .temptrack{background:linear-gradient(90deg,#ff9d54,#ffdcae,#fdf3e3,#dfe7fb)!important;height:4px!important}.gridlab .kval{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-weight:400;width:42px;text-align:right;flex-shrink:0}.gridlab .speed{width:100%;max-width:300px;display:none;align-items:center;gap:12px}.gridlab .speed.show{display:flex}.gridlab .speed .k{font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);width:44px;flex-shrink:0}.gridlab .strack{flex:1;height:3px;background:#00000047;border-radius:2px;position:relative;cursor:pointer}.gridlab .sfill{position:absolute;left:0;top:0;bottom:0;background:var(--ink-dim);border-radius:2px}.gridlab .sknob{position:absolute;top:50%;transform:translate(-50%,-50%);width:13px;height:13px;border-radius:50%;background:var(--ink);border:1px solid var(--bg)}.gridlab .tdet{position:absolute;top:50%;transform:translate(-50%,-50%);width:2px;height:7px;background:#00000059;border-radius:1px;pointer-events:none}.gridlab .limit{width:100%;max-width:300px}.gridlab .limit .lab{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px}.gridlab .limit .lab b{color:var(--ink);font-weight:400}.gridlab .rtrack{height:3px;background:#00000047;border-radius:2px;position:relative;margin:8px 6px}.gridlab .rspan{position:absolute;top:0;bottom:0;background:var(--ink-dim);border-radius:2px}.gridlab .rhandle{position:absolute;top:50%;transform:translate(-50%,-50%);width:15px;height:15px;border-radius:50%;background:var(--ink);border:1px solid var(--bg);cursor:grab;touch-action:none}.gridlab .rhandle:active{cursor:grabbing}.gridlab .foot{padding:0 26px 20px;display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase}.glviewwrap{margin:-12px -14px}.gridlab .viewcard{position:relative;overflow:hidden;background:#0b0c0d;height:clamp(440px,62vh,620px);border-radius:0 0 var(--radius-md) var(--radius-md)}.gridlab .viewcard canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.gridlab .viewcard canvas.grabbing{cursor:grabbing}.gridlab .viewcard .vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,transparent 52%,rgba(0,0,0,.42) 100%)}.gridlab .vtick{position:absolute;width:11px;height:11px;border:1px solid #524d45;z-index:3;pointer-events:none}.gridlab .vtick.tl{top:20px;left:20px;border-right:none;border-bottom:none}.gridlab .vtick.tr{top:20px;right:20px;border-left:none;border-bottom:none}.gridlab .vtick.bl{bottom:20px;left:20px;border-right:none;border-top:none}.gridlab .vtick.br{bottom:20px;right:20px;border-left:none;border-top:none}.gridlab .vhud{position:absolute;left:0;right:0;bottom:16px;display:flex;justify-content:center;pointer-events:none;z-index:3}.gridlab .vhud span{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:#67615a;background:#0b0c0d8c;padding:6px 14px;border-radius:20px;border:1px solid #292623}.gridlab .vtop{position:absolute;top:20px;left:0;right:0;display:flex;justify-content:center;pointer-events:none;z-index:3}.gridlab .vtop span{font-family:var(--font-mono);font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#767066}.gridlab .vctrl{position:absolute;top:48px;right:18px;display:flex;flex-direction:column;gap:7px;z-index:4;align-items:flex-end}.gridlab .vgroup{display:flex;gap:6px}.gridlab .vbtn{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.12em;text-transform:uppercase;color:#8a847a;background:#1412108c;border:1px solid #383430;border-radius:6px;padding:5px 9px;cursor:pointer;transition:all .18s}.gridlab .vbtn:hover{color:#e2ded6;border-color:#524d45}.gridlab .vbtn.on{color:#e2ded6;border-color:#726c63;background:#ffffff12}.gridlab .vnote{font-family:var(--font-mono);font-size:8px;color:#5d574f;letter-spacing:.12em;text-transform:uppercase}.gridlab .glposter{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:#0b0c0d;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;color:#67615a}
