@font-face{font-family:Hammersmith One;src:url(/fonts/HammersmithOne-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Variable.ttf)format("truetype");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Open Sans;src:url(/fonts/OpenSans-Variable.ttf)format("truetype");font-style:normal;font-weight:300 800;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-navy:#082b66;--brand-blue:#0879bd;--brand-cyan:#08b9e9;--brand-purple:#6f2a8c;--ink:#162238;--ink-soft:#667085;--surface:#fff;--surface-raised:#fff;--surface-soft:#f4f7fb;--surface-tint:#eaf7fc;--line:#dce4ef;--line-strong:#c6d2e1;--success:#16866f;--success-soft:#e3f5ef;--danger:#c93d57;--danger-soft:#fdecef;--warning:#ad6c0b;--warning-soft:#fff2d7;--shadow-sm:0 2px 8px #082b660f;--shadow-lg:0 14px 36px #082b6624;--radius-sm:8px;--radius:12px;--radius-lg:16px;--page-width:1240px;--device-action-width:calc(62px * 1.05)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#edf4ff;--ink-soft:#a8b7ca;--surface:#0b1423;--surface-raised:#111e31;--surface-soft:#0e1a2b;--surface-tint:#102a3b;--line:#263a52;--line-strong:#38506d;--success-soft:#12382f;--danger-soft:#401d28;--warning-soft:#3d2d12;--shadow-sm:0 4px 18px #00000038;--shadow-lg:0 22px 60px #00000059}*{box-sizing:border-box}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 85% 5%, #08b9e917, transparent 22rem), var(--surface-soft);min-width:320px;color:var(--ink);margin:0;font-family:Open Sans,Arial,sans-serif;line-height:1.4}:root[data-theme=dark] body{background-color:#0000;background-image:radial-gradient(circle at 6% 1%,#70d3f25c,#0000 38rem),radial-gradient(circle at 38% 0,#9aa7b62b,#0000 54rem),radial-gradient(circle at 24% 7%,#0879bd33,#0000 56rem),radial-gradient(circle at 94% 12%,#6f2a8c24,#0000 64rem),linear-gradient(145deg,#0e1a2b 0%,#0b1423 48%,#10192b 100%);background-position:0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box}button,input,select{font:inherit}button,select,input[type=checkbox],input[type=range]{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-cyan) 70%, white);outline-offset:3px}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.48}[hidden]{display:none!important}.section-band{width:min(calc(100% - 24px), var(--page-width));margin-inline:auto}.app-header{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:70px;display:grid}.brand{width:min(170px,26vw);min-width:112px;display:inline-flex}.brand img{width:100%;height:auto;display:block}.title-lockup{text-align:center}.eyebrow{color:var(--brand-blue);letter-spacing:.14em;text-transform:uppercase;margin:0 0 2px;font-family:Hammersmith One,sans-serif;font-size:.62rem;font-weight:400}.title-lockup h1{letter-spacing:.02em;margin:0;font:400 clamp(1.1rem,2vw,1.55rem) Hammersmith One,sans-serif}.app-version{color:var(--ink-soft);letter-spacing:.04em;margin-top:2px;font-size:.68rem;font-weight:600;display:block}.header-actions{justify-content:flex-end;gap:6px;display:flex}.icon-action{border:1px solid var(--line);background:var(--surface-raised);width:40px;min-width:40px;height:40px;color:var(--ink);box-shadow:var(--shadow-sm);border-radius:10px;place-items:center;padding:0;display:inline-grid}.icon-action svg{fill:none;width:20px;height:20px;stroke:var(--brand-blue);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px}.compatibility-banner{border:1px solid color-mix(in srgb, var(--danger) 45%, var(--line));border-radius:var(--radius);background:var(--danger-soft);color:var(--ink);margin-bottom:10px;padding:10px 14px}.compatibility-banner strong{color:var(--danger);display:block}.panel,.status-section,.configuration-hub,.output-switches-section,.terminal-section{border:1px solid var(--line);background:var(--surface-raised);box-shadow:var(--shadow-sm)}.control-deck{grid-template-columns:minmax(250px,.75fr) minmax(430px,1.6fr);gap:10px;display:grid}.control-deck .communication-panel{order:1}.control-deck .mode-panel{order:2}.device-dashboard{grid-template-columns:minmax(280px,.72fr) minmax(520px,1.55fr);gap:10px;margin-top:10px;display:grid}.device-dashboard .status-section,.device-dashboard .settings-column,.device-dashboard .configuration-hub{width:auto;min-width:0;margin:0}.settings-column{flex-direction:column;height:100%;min-height:0;display:flex}.settings-column .output-switches-section{flex:auto}.mobile-dashboard-tabs{display:none}.panel{border-radius:var(--radius-lg);min-width:0;padding:15px}.section-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.section-title h2,.status-box-title h3,.setting-card h3{margin:0;line-height:1.2}.section-title h2{font-size:1rem}.section-title>span:not(.status-badge){color:var(--ink-soft);font-size:.7rem}.status-badge{border-radius:999px;align-items:center;min-height:24px;padding:3px 8px;font-size:.65rem;font-weight:700;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-right:6px}.status-badge.is-offline{background:var(--surface-soft);color:var(--ink-soft)}.status-badge.is-waiting{color:var(--warning);background:#fff2d7}.status-badge.is-online{background:var(--success-soft);color:var(--success)}.mode-actions,.connection-actions,.settings-file-actions,.setting-actions,.segmented-actions{gap:6px;display:flex}.mode-actions{flex-wrap:wrap;margin:15px 0 12px}.mode-guidance{color:var(--ink-soft);gap:12px;margin:16px 0 0;padding-left:20px;font-size:.76rem;line-height:1.55;display:grid}.mode-guidance strong{color:var(--ink)}.mode-guidance+.mode-actions{margin-top:20px}.mode-actions .button{flex:110px}.connection-actions .button{flex:1 1 0;min-width:0}.settings-file-actions{margin:-4px 0 12px}.configuration-title .settings-file-actions{margin:0 0 0 auto}.configuration-title{flex-wrap:wrap}.settings-file-action{align-items:center;gap:4px;display:flex}.settings-file-action .button{flex:auto}.button{border:1px solid #0000;border-radius:9px;min-height:38px;padding:7px 12px;font-size:.78rem;font-weight:700;transition:transform .15s,background .15s,border .15s}.button:not(:disabled):hover{transform:translateY(-1px)}.button-primary{background:linear-gradient(120deg, var(--brand-navy), var(--brand-blue));color:#fff}.button-secondary{border-color:var(--line-strong);background:var(--surface-raised);color:var(--ink)}.button-quiet{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}.button-success{background:var(--success-soft);color:var(--success)}.button-danger{background:var(--danger-soft);color:var(--danger)}.toggle-row{cursor:pointer;align-items:center;gap:9px;margin-bottom:12px;display:flex}.toggle-row input{opacity:0;position:absolute}.toggle-track{background:var(--line-strong);border-radius:999px;width:42px;height:24px;transition:background .15s;position:relative}.toggle-track span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:4px;left:4px;box-shadow:0 2px 6px #0003}.toggle-row input:checked+.toggle-track{background:var(--brand-blue)}.toggle-row input:checked+.toggle-track span{transform:translate(18px)}.toggle-row small,.toggle-row strong{display:block}.toggle-row small,.field-label{color:var(--ink-soft);font-size:.74rem}.range-row{align-items:center;gap:10px;display:flex}.range-row input{min-width:0;accent-color:var(--brand-blue);flex:1}.range-row output{background:var(--surface-soft);text-align:center;border-radius:9px;min-width:50px;padding:6px 8px;font-size:.78rem;font-weight:700}.status-live-controls{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(140px,1fr);align-items:end;gap:14px;margin-bottom:12px;padding-bottom:12px;display:grid}.status-live-controls .toggle-row{margin:0 0 7px}.refresh-control .field-label{margin-bottom:3px;display:block}.connection-dot{border:3px solid var(--surface-raised);width:12px;height:12px;box-shadow:0 0 0 1px var(--line-strong);background:#9aa7b6;border-radius:50%}.connection-dot.is-connected{background:var(--success);box-shadow:0 0 0 1px var(--success), 0 0 16px #16866f8c}.connection-status{color:var(--ink-soft);align-items:center;gap:7px;font-size:.72rem;font-weight:700;display:inline-flex}.communication-grid{grid-template-columns:1fr;gap:8px;margin:13px 0;display:grid}.communication-grid label,.setting-card label{color:var(--ink-soft);font-size:.73rem;font-weight:600}.communication-grid select,.communication-grid input,.setting-card input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:38px;color:var(--ink);border-radius:10px;margin-top:3px;padding:6px 9px}#connect-button{flex:1}.product-panel{flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.product-panel:after{content:"";background:radial-gradient(circle,#08b9e92e,#0000 65%);border-radius:50%;height:80%;position:absolute;inset:auto -35% -60% 20%}.product-panel img{object-fit:contain;mix-blend-mode:multiply;border-radius:16px;width:100%;height:180px;margin-block:12px}:root[data-theme=dark] .product-panel img{mix-blend-mode:normal}.sample-label{z-index:1;color:var(--warning);text-transform:uppercase;background:#fff2d7;border-radius:7px;align-self:flex-start;padding:4px 8px;font-size:.66rem;font-weight:700}.product-panel>div{z-index:1;flex-direction:column;display:flex}.product-panel>div span{color:var(--ink-soft);font-size:.78rem}.status-section,.configuration-hub,.output-switches-section,.terminal-section{border-radius:var(--radius-lg);margin-top:10px;padding:clamp(15px,2vw,22px)}.wide-title{margin-bottom:15px}.section-heading-actions{align-items:center;gap:6px;display:flex}.bulk-actions{grid-template-columns:repeat(2, var(--device-action-width));align-items:center;gap:6px;display:grid}.section-heading-actions>span{color:var(--ink-soft);font-size:.7rem}.bulk-actions .button{width:var(--device-action-width);min-width:var(--device-action-width);padding-left:5px;padding-right:5px}.configuration-tabs{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;max-width:none;padding:4px;display:grid}.configuration-tabs.has-two-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.configuration-tab{min-height:38px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:8px;flex:1;padding:7px 11px;font-weight:700}.configuration-tab.is-active{border-color:var(--line);background:var(--surface-raised);box-shadow:var(--shadow-sm);color:var(--brand-blue)}.configuration-tab-panel{padding-top:16px}.tab-panel-heading{justify-content:flex-end;margin-bottom:10px;display:flex}.value-title,.setting-card h3,.status-box-title h3{align-items:center;gap:5px;font-family:Hammersmith One,sans-serif;font-weight:400;display:inline-flex}.raw-status-value{color:var(--ink-soft);white-space:nowrap;font-size:.68rem;font-weight:700}.value-hint{border:1px solid var(--line-strong);background:var(--surface-soft);width:17px;height:17px;color:var(--brand-blue);border-radius:50%;flex:0 0 17px;place-items:center;padding:0;font-family:Inter,Arial,sans-serif;font-size:.6rem;font-style:normal;font-weight:800;line-height:1;display:inline-grid}.value-hint-popover{z-index:250;border:1px solid var(--line-strong);background:var(--surface-raised);max-height:min(360px,100vh - 24px);box-shadow:var(--shadow-lg);color:var(--ink);cursor:text;-webkit-user-select:text;user-select:text;border-radius:9px;padding:9px 11px;font-size:.75rem;line-height:1.35;position:fixed;overflow-y:auto}.energy-scroll{padding:10px 4px 12px;overflow-x:auto}.energy-flow{background:linear-gradient(135deg, var(--surface-soft), var(--surface-tint));filter:grayscale();opacity:.58;border-radius:22px;grid-template-columns:120px minmax(100px,1fr) 130px minmax(110px,1fr) 220px;align-items:center;min-width:720px;min-height:210px;padding:24px 34px;transition:filter .35s,opacity .35s;display:grid}.energy-flow.is-active{filter:grayscale(0);opacity:1}.energy-node{color:var(--brand-blue);text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.energy-node svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;width:72px;height:72px;overflow:visible}.energy-node.controller{color:var(--brand-purple)}.energy-node.lamp{color:#e69b16}.energy-node strong{color:var(--ink);font-size:.8rem}.energy-line{background:var(--line-strong);height:3px;margin-inline:10px;position:relative}.energy-line i{background:var(--brand-cyan);opacity:0;border-radius:50%;width:11px;height:11px;position:absolute;top:-4px;left:0}.energy-flow.is-active .energy-line{background:linear-gradient(90deg, var(--brand-blue), var(--brand-cyan))}.energy-flow.is-active .energy-line i{opacity:1;animation:2.2s linear infinite flow-dot}.energy-line i:nth-child(2){animation-delay:-.72s!important}.energy-line i:nth-child(3){animation-delay:-1.44s!important}.energy-branch{flex-direction:column;gap:94px;display:flex}.energy-targets{justify-content:space-between;gap:26px;display:flex}@keyframes flow-dot{0%{left:0;transform:translate(-50%)}to{left:100%;transform:translate(-50%)}}.status-metrics{border-top:1px solid var(--line)}.metric-card{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:48px;padding:8px 2px;display:grid}.metric-card span{color:var(--ink-soft);font-size:.78rem}.metric-card strong{text-align:right;font-size:.95rem}.metric-reading{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.firmware-unsupported-warning{color:#e5a400;background:0 0;border:0;flex:0 0 18px;place-items:center;width:18px;height:18px;padding:0;line-height:1;display:inline-grid}.firmware-unsupported-warning[hidden]{display:none}.firmware-unsupported-warning svg{fill:currentColor;width:18px;height:18px}.firmware-unsupported-warning .warning-mark{fill:#3a2a00}.firmware-unsupported-warning:focus-visible{outline-offset:2px;border-radius:3px;outline:2px solid #e5a400a6}code{color:var(--brand-blue);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem}.status-details{display:block}.status-snapshot-actions{justify-content:flex-end;margin-top:12px;display:flex}.status-box,.switch-card{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:10px 2px}.status-box-title,.setting-heading{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.status-box-title h3{font-size:.82rem}.chip-grid{margin-top:6px;display:block}.status-chip{border-top:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:5px 0;display:grid}.status-chip.no-indicator{grid-template-columns:minmax(0,1fr) auto}.status-chip i{background:#9aa7b6;border-radius:50%;width:8px;height:8px}.status-chip span{color:var(--ink-soft);font-size:.66rem}.status-chip strong{font-size:.7rem}.status-chip.is-active{background:0 0}.status-chip.is-active i{background:var(--danger)}.status-chip.is-clear{background:0 0}.status-chip.is-clear i{background:var(--success)}.setting-grid{border-top:1px solid var(--line);display:block}.setting-card{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(190px,1.1fr) minmax(130px,.5fr) minmax(150px,.75fr) auto;align-items:center;gap:10px;min-height:58px;padding:8px 2px;display:grid}.setting-card h3{margin-bottom:4px;font-size:.8rem}.setting-card label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.setting-card label span{float:none}.setting-card input{margin:0}.setting-card input.is-device-value{border-color:var(--success);background:var(--success-soft);color:var(--success);font-weight:700}#app.is-automatic-mode .setting-input:disabled{opacity:1}.setting-card>small{color:var(--ink-soft);margin:0;font-size:.65rem}.setting-actions{margin-top:0}.setting-actions .button{width:var(--device-action-width);min-width:var(--device-action-width);flex:0 0 var(--device-action-width)}.controls-layout{display:block}.switch-groups{border-top:1px solid var(--line);margin-top:8px}.switch-groups>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:50px;padding:7px 0;display:flex}.switch-groups>div>span{font-size:.83rem;font-weight:600}.segmented-actions{align-items:center;gap:4px}.last-output-command{border:1px solid var(--line);background:var(--surface-soft);color:var(--ink-soft);white-space:nowrap;border-radius:8px;padding:5px 8px;font-size:.68rem;font-weight:700}.last-output-command.is-on{border-color:color-mix(in srgb, var(--success) 45%, var(--line));color:var(--success)}.last-output-command.is-off{border-color:color-mix(in srgb, var(--danger) 45%, var(--line));color:var(--danger)}.segmented-actions .button{width:var(--device-action-width);min-width:var(--device-action-width);flex:0 0 var(--device-action-width)}.theme-menu{position:relative}.theme-options{z-index:30;border:1px solid var(--line-strong);background:var(--surface-raised);min-width:150px;box-shadow:var(--shadow-lg);border-radius:10px;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.theme-options button{width:100%;min-height:38px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.theme-options button[aria-checked=true]{background:var(--surface-tint);color:var(--brand-blue);font-weight:700}.theme-options button[aria-checked=true]:after{content:"✓";margin-left:12px}.theme-options button:hover,.theme-options button:focus-visible{background:var(--surface-soft);outline:2px solid color-mix(in srgb, var(--brand-blue) 30%, transparent);outline-offset:-2px}.section-heading-actions [data-read-telemetry]{width:var(--device-action-width);min-width:var(--device-action-width);padding-left:5px;padding-right:5px}.terminal-section{color:#e8f0fb;background:#091321}.terminal-section .eyebrow,.terminal-section code{color:#57d6f5}.terminal-section .section-title>span{color:#9db0c7}.terminal-section .button-quiet{color:#dfeafa;background:#122238;border-color:#31445c}.terminal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.terminal-actions .button{min-width:82px}.terminal-save-menu{position:relative}.terminal-save-options{z-index:20;background:#122238;border:1px solid #31445c;border-radius:10px;min-width:190px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 24px #00000059}.terminal-save-options[hidden]{display:none}.terminal-save-options button{color:#dfeafa;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;padding:9px 10px;display:flex}.terminal-save-options button:hover,.terminal-save-options button:focus-visible{background:#213650;outline:none}.terminal-save-options span{color:#9db0c7;margin-left:14px}.terminal-legend{color:#9db0c7;gap:18px;margin-bottom:7px;font-size:.7rem;display:flex}.terminal-legend span{align-items:center;gap:6px;display:inline-flex}.terminal-legend i{border-radius:50%;width:7px;height:7px}.terminal-scroll-hint{display:none}.tx-dot{background:#57d6f5}.rx-dot{background:#ab8ee8}.sys-dot{background:#f0b45a}.terminal-output{scrollbar-color:#70849c #122238;scrollbar-gutter:stable;scrollbar-width:auto;background:#060d17;border:1px solid #243a53;border-radius:14px;height:210px;font:.75rem/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.terminal-output::-webkit-scrollbar{width:10px;height:10px}.terminal-output::-webkit-scrollbar-track{background:#122238}.terminal-output::-webkit-scrollbar-thumb{background:#70849c;border:2px solid #122238;border-radius:999px}.terminal-empty{color:#70849c;place-items:center;min-height:100%;display:grid}.terminal-row{box-sizing:border-box;content-visibility:auto;contain-intrinsic-block-size:auto 30px;border-bottom:1px solid #122238;grid-template-columns:122px 36px max-content max-content;gap:10px;width:max-content;min-width:100%;padding:5px 9px;display:grid}.terminal-row time,.terminal-row small{color:#70849c}.terminal-row time{white-space:nowrap}.terminal-row strong{color:#57d6f5}.terminal-row.is-rx strong{color:#ab8ee8}.terminal-row.is-sys strong{color:#f0b45a}.terminal-row code{white-space:nowrap;overflow-wrap:normal}.terminal-row small{white-space:nowrap}.contact-section{border-radius:var(--radius-lg);color:#fff;background:#4d4d4d;margin-top:10px;margin-bottom:10px;padding:28px clamp(16px,3vw,36px);font-family:Open Sans,Arial,sans-serif}.footer-content{width:min(100%, var(--page-width));grid-template-columns:minmax(220px,1fr) minmax(280px,1fr);gap:18px clamp(40px,8vw,120px);margin-inline:auto;display:grid}.footer-company{flex-direction:column;grid-row:1/3;gap:18px;display:flex}.footer-company>strong{font-family:Hammersmith One,sans-serif;font-size:1.3rem;font-weight:400}.footer-address{color:#fff;flex-direction:column;gap:14px;font-size:.88rem;font-style:normal;line-height:1.65;display:flex}.contact-section a{color:#fff}.footer-address-zh{grid-column:2}.footer-address-zh strong{font-size:1.18rem}.social-links{align-items:center;gap:20px;display:flex}.social-links a{place-items:center;width:30px;height:30px;transition:opacity .15s;display:grid}.social-links a:hover{opacity:.68}.social-links svg{fill:currentColor;stroke:currentColor;stroke-width:1.8px;width:30px;height:30px}.social-links svg path,.social-icon-fill{stroke:none}.social-links .social-icon-outline{fill:none}.social-links .social-icon-fill{fill:currentColor}.footer-trademark,.footer-copyright,.footer-legal-links{color:#fff;margin:0;font-size:.82rem;line-height:1.5}.footer-trademark{max-width:430px;margin-top:16px}.footer-legal-links{flex-wrap:wrap;gap:8px;margin-top:-10px;display:flex}.footer-link-break{flex-basis:100%;height:0}.footer-copyright{color:#fffc;text-align:center;grid-column:1/-1;font-family:Inter,Arial,sans-serif}.toast-region{z-index:200;right:max(10px, env(safe-area-inset-right));bottom:max(10px, env(safe-area-inset-bottom));gap:5px;width:min(340px,100vw - 20px);display:grid;position:fixed;left:auto}.toast-list{overscroll-behavior:contain;scrollbar-color:var(--line-strong) transparent;scrollbar-gutter:stable;scrollbar-width:thin;grid-auto-rows:max-content;align-content:start;gap:4px;max-height:min(236px,100dvh - 65px);padding-right:3px;display:grid;overflow:hidden auto}.toast-list::-webkit-scrollbar{width:7px}.toast-list::-webkit-scrollbar-track{background:0 0}.toast-list::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.clear-toasts-button{z-index:1;border:1px solid var(--line-strong);background:var(--surface-raised);min-height:30px;color:var(--ink);box-shadow:var(--shadow-sm);border-radius:7px;justify-self:end;margin-bottom:5px;padding:4px 10px;font-size:.72rem;font-weight:700;position:sticky;top:0}.clear-toasts-button:hover,.clear-toasts-button:focus-visible{border-color:var(--brand-blue);outline:2px solid color-mix(in srgb, var(--brand-blue) 30%, transparent);outline-offset:1px}.toast{box-sizing:border-box;border:1px solid var(--line-strong);border-left:3px solid var(--brand-blue);background:var(--surface-raised);width:100%;min-width:0;height:max-content;min-height:44px;box-shadow:var(--shadow-sm);overflow-wrap:anywhere;opacity:0;border-radius:8px;align-self:start;padding:7px 9px;font-size:.66rem;line-height:1.3;transition:transform .22s,opacity .22s;transform:translateY(8px)}.toast>div{gap:2px;display:grid}.toast>div>strong,.toast>div>span{display:block}.toast.is-visible{opacity:1;transform:translateY(0)}.toast.is-success{border-left-color:var(--success)}.toast.is-error{border:1px solid var(--danger);background:var(--danger-soft);width:100%;max-width:100%;box-shadow:var(--shadow-sm);border-left-width:3px;grid-template-columns:minmax(0,1fr) auto;justify-self:end;align-items:center;gap:6px;padding:7px 9px;font-size:.66rem;display:grid}.toast.is-error>div{align-self:center;display:block}.toast.is-error>div>strong{color:var(--danger);text-transform:uppercase;margin-right:4px;font-size:.66rem;display:inline}.toast.is-error>div>span{display:inline}.setting-card input.is-device-error::placeholder{color:var(--danger);opacity:1;font-weight:700}.toast.is-error>div>.toast-occurrence-count{color:var(--ink-muted);margin-top:3px;font-weight:700;display:block}.toast-dismiss{border:1px solid color-mix(in srgb, var(--danger) 55%, var(--line));background:var(--surface-raised);min-width:64px;min-height:30px;color:var(--danger);border-radius:7px;padding:4px 8px;font-size:.66rem;font-weight:800;line-height:1}.toast-dismiss:hover,.toast-dismiss:focus-visible{border-color:var(--danger);outline:2px solid color-mix(in srgb, var(--danger) 35%, transparent);outline-offset:1px}.busy-overlay{z-index:300;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#040c1885;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.busy-card{border:1px solid var(--line-strong);background:var(--surface-raised);min-width:min(340px,100%);box-shadow:var(--shadow-lg);border-radius:16px;align-items:center;gap:14px;padding:20px;display:flex}.spinner{border:3px solid var(--line);border-top-color:var(--brand-blue);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1024px){.control-deck{grid-template-columns:minmax(230px,.8fr) minmax(400px,1.4fr)}.fault-grid{grid-template-columns:repeat(3,1fr)}.device-dashboard{grid-template-columns:1fr}.settings-column{height:auto;display:block}.settings-column .output-switches-section{flex:none}}@media (width<=760px){html{font-size:90%}.section-band{width:min(calc(100% - 20px), var(--page-width))}.app-header{grid-template-rows:auto auto;grid-template-columns:1fr auto;row-gap:8px;min-height:0;padding-block:8px}.brand{grid-area:1/1;width:min(130px,32vw);min-width:80px}.title-lockup{grid-area:2/1/auto/-1;display:block}.title-lockup h1{white-space:nowrap;font-size:clamp(1rem,5vw,1.2rem)}.icon-action{width:40px;min-width:40px}.header-actions{grid-area:1/2}.control-deck,.status-details,.controls-layout,.status-metrics{grid-template-columns:1fr}.metric-card{min-height:48px}.chip-grid,.fault-grid{grid-template-columns:repeat(2,1fr)}.flasher-grid{grid-template-columns:1fr}.setting-card{grid-template-columns:minmax(90px,1fr) minmax(132px,1.15fr)}.setting-heading{grid-area:1/1/auto/-1}.setting-card input{grid-area:2/1;min-width:0}.setting-card>small{grid-area:3/1/auto/-1}.setting-actions{grid-area:2/2;width:100%}.setting-actions .button,.segmented-actions .button,.bulk-actions .button{flex:1 1 0;width:auto;min-width:0}.bulk-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,150px)}.section-heading-actions [data-read-telemetry]{width:auto;min-width:0}.terminal-row{grid-template-columns:122px 36px max-content max-content;width:max-content;min-width:680px}.terminal-output{scrollbar-color:#70849c #122238;scrollbar-gutter:stable;scrollbar-width:auto;overflow-x:scroll}.terminal-output::-webkit-scrollbar{height:10px}.terminal-output::-webkit-scrollbar-track{background:#122238}.terminal-output::-webkit-scrollbar-thumb{background:#70849c;border:2px solid #122238;border-radius:999px}.terminal-scroll-hint{color:#9db0c7;text-align:right;margin:-2px 0 7px;font-size:.7rem;display:block}.terminal-row code,.terminal-row small{white-space:nowrap}.contact-section{padding-block:28px}.footer-content{grid-template-columns:1fr;gap:30px}.footer-address-zh,.footer-copyright{grid-column:1}.footer-company{grid-row:auto;gap:18px}.footer-trademark{align-self:auto}}@media (width<=600px){.control-deck{box-shadow:none;background:0 0;border:0;flex-direction:column;gap:10px;padding:0;display:flex;overflow:visible}.control-deck .panel{border:1px solid var(--line);background:var(--surface-raised);box-shadow:var(--shadow-sm);border-radius:14px;padding:11px}.control-deck .communication-panel{order:1}.control-deck .mode-panel{order:2}.mode-actions{gap:4px;margin:9px 0 8px}.mode-actions .button{flex-basis:80px}.toggle-row{margin-bottom:8px}.communication-grid{margin:8px 0}.device-dashboard{border:1px solid var(--line);background:var(--surface-raised);box-shadow:var(--shadow-sm);border-radius:14px;padding:0 10px 10px;display:block;overflow:hidden}.mobile-dashboard-tabs{border-bottom:1px solid var(--line);background:var(--surface-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin:0 -10px;padding:4px;display:grid}.mobile-dashboard-tab{min-height:36px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:8px;padding:6px 9px;font-size:.75rem;font-weight:700}.mobile-dashboard-tab.is-active{border-color:var(--line);background:var(--surface-raised);box-shadow:var(--shadow-sm);color:var(--brand-blue)}.device-dashboard .mobile-panel-hidden{display:none}.device-dashboard .status-section,.device-dashboard .configuration-hub{box-shadow:none;background:0 0;border:0;border-radius:0;padding:9px 0 0}.device-dashboard .output-switches-section{border-radius:11px;margin-top:10px;padding:10px}.device-dashboard .wide-title,.tab-panel-heading{margin-bottom:7px}.metric-card{min-height:36px;padding:4px 1px}.status-box{padding:6px 1px}.status-chip{min-height:28px;padding:3px 0}.configuration-tabs{gap:2px;padding:3px}.configuration-tab{min-height:34px;padding:5px 7px;font-size:.72rem}.configuration-tab-panel{padding-top:8px}.setting-card{grid-template-columns:minmax(90px,1fr) minmax(132px,1.15fr);gap:4px 8px;min-height:0;padding:6px 0}.setting-actions{gap:4px}.setting-actions .button,.segmented-actions .button{padding:5px 7px}.switch-card{padding:7px 0}.switch-groups>div{min-height:42px;padding:5px 0}}@media (width<=460px){.panel,.status-section,.configuration-hub,.output-switches-section,.terminal-section{border-radius:14px;padding:13px}.wide-title{flex-direction:column;align-items:flex-start;margin-bottom:12px}.configuration-title{flex-direction:row;align-items:center}.communication-grid{grid-template-columns:1fr}.configuration-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.tab-panel-heading{align-items:flex-end}.section-heading-actions{justify-content:space-between;width:100%}.bulk-actions{width:auto}.setting-grid{grid-template-columns:1fr}.setting-card{grid-template-columns:minmax(90px,1fr) minmax(132px,1.15fr);gap:4px 8px;padding:6px 0}.switch-groups>div{flex-direction:column;align-items:flex-start}.segmented-actions{width:100%}.terminal-output{height:190px}.terminal-actions{width:100%}.terminal-actions .button,.terminal-save-menu{flex:1 1 0}.terminal-save-menu .button{width:100%}}@media (pointer:coarse){.button,.icon-action,.mobile-dashboard-tab,.configuration-tab,.communication-grid select,.setting-card input{min-height:44px}.toast-dismiss{min-width:84px;min-height:44px}.toast{min-height:58px}.toast-list{max-height:min(306px,100dvh - 65px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
