._toolbar_1lh8o_2{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);height:var(--toolbar-height);padding:0 var(--sp-4);background:var(--color-bg-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;-webkit-user-select:none;user-select:none}._toolbarLogo_1lh8o_15{display:flex;align-items:center;gap:var(--sp-2);margin-right:var(--sp-2)}._toolbarLogoIcon_1lh8o_22{width:28px;height:28px;background:linear-gradient(135deg,var(--color-brand-primary),#2a9d8f);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:#0d0f14;flex-shrink:0}._toolbarLogoName_1lh8o_36{font-size:15px;font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em}._toolbarLogoName_1lh8o_36 span{color:var(--color-brand-primary)}._toolbarDivider_1lh8o_47{width:1px;height:22px;background:var(--color-border);margin:0 var(--sp-1);flex-shrink:0}._toolbarSpacer_1lh8o_55{flex:1}._toolbarFileName_1lh8o_59{font-size:12px;color:var(--color-text-secondary);font-family:var(--font-mono);padding:0 var(--sp-2)}._toolbarBtnRun_1lh8o_66{background:#3ecfb21f;border:1px solid rgba(62,207,178,.4);color:var(--color-brand-primary)}._toolbarBtnRun_1lh8o_66:hover:not(:disabled){background:#3ecfb238;border-color:var(--color-brand-primary)}._toolbarBtnStop_1lh8o_77{background:#e76f6f1a;border:1px solid rgba(231,111,111,.3);color:var(--color-error)}._toolbarBtnStop_1lh8o_77:hover:not(:disabled){background:#e76f6f33}._explorer_149l6_2{display:flex;flex-direction:column;height:100%;overflow:hidden}._explorerBody_149l6_9{flex:1;overflow-y:auto;padding:var(--sp-1) 0}._explorerItem_149l6_15{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);padding:5px var(--sp-3);cursor:pointer;transition:background var(--transition-fast);color:var(--color-text-secondary);font-size:12px;font-family:var(--font-mono)}._explorerItem_149l6_15:hover{background:var(--color-bg-hover)}._explorerItemActive_149l6_32{background:var(--color-brand-glow);color:var(--color-text-primary);border-right:2px solid var(--color-brand-primary)}._explorerItemIcon_149l6_38{font-size:13px;flex-shrink:0;width:14px;text-align:center}._explorerItemName_149l6_45{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._explorerItemDirty_149l6_52{width:6px;height:6px;border-radius:50%;background:var(--color-brand-primary);flex-shrink:0}._explorerEmpty_149l6_60{padding:var(--sp-4) var(--sp-3);font-size:11px;color:var(--color-text-muted);text-align:center;line-height:1.6}._deviceManager_1avnw_2{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3)}._deviceManagerRow_1avnw_9{display:flex;align-items:center;gap:var(--sp-2)}._deviceManagerLabel_1avnw_15{font-size:11px;color:var(--color-text-secondary);width:40px;flex-shrink:0}._deviceManagerHint_1avnw_22{font-size:11px;color:var(--color-text-muted);line-height:1.5;padding:var(--sp-2);background:#3ecfb20d;border:1px solid rgba(62,207,178,.15);border-radius:var(--radius-sm)}._deviceManagerStatusRow_1avnw_32{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--color-bg-raised);border-radius:var(--radius-sm);border:1px solid var(--color-border)}._deviceManagerError_1avnw_42{font-size:11px;color:var(--color-error);padding:var(--sp-2) var(--sp-3);background:#e76f6f14;border:1px solid rgba(231,111,111,.2);border-radius:var(--radius-sm);line-height:1.5}._monitor_10t94_2{display:flex;flex-direction:column;height:100%;overflow:hidden}._monitorToolbar_10t94_9{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--color-border);background:var(--color-bg-raised);flex-shrink:0}._monitorToolbarLeft_10t94_20{display:flex;align-items:center;gap:var(--sp-2);flex:1}._monitorToolbarRight_10t94_27{display:flex;align-items:center;gap:var(--sp-2)}._monitorTitle_10t94_33{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em}._monitorBody_10t94_41{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-2) var(--sp-3);font-family:var(--font-mono);font-size:12px;line-height:1.6}._monitorEntry_10t94_51{display:flex;flex-direction:row;gap:var(--sp-3);padding:1px 0}._monitorTs_10t94_58{color:var(--color-text-muted);flex-shrink:0;font-size:10px;padding-top:2px;width:70px}._monitorText_10t94_66{word-break:break-all}._monitorTextStdout_10t94_70{color:var(--color-text-primary)}._monitorTextStderr_10t94_74{color:var(--color-error)}._monitorTextSystem_10t94_78{color:var(--color-brand-primary);font-style:italic}._monitorEmpty_10t94_83{padding:var(--sp-6);text-align:center;color:var(--color-text-muted);font-size:12px}._monitorInputRow_10t94_90{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--color-border);background:var(--color-bg-raised);flex-shrink:0}._monitorInput_10t94_90{flex:1;background:var(--color-bg-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-mono);font-size:12px;padding:var(--sp-1) var(--sp-2);outline:none}._monitorInput_10t94_90:focus{border-color:var(--color-brand-primary)}._firmware_10dkh_2{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3);overflow-y:auto;height:100%}._firmwareNotice_10dkh_11{font-size:11px;color:var(--color-warning);padding:var(--sp-2) var(--sp-3);background:#f4a26114;border:1px solid rgba(244,162,97,.2);border-radius:var(--radius-sm);line-height:1.5}._firmwareSectionTitle_10dkh_21{font-size:11px;font-weight:600;color:var(--color-text-muted);letter-spacing:.07em;text-transform:uppercase}._firmwareReleaseList_10dkh_29{display:flex;flex-direction:column;gap:var(--sp-2)}._firmwareRelease_10dkh_29{display:flex;flex-direction:row;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}._firmwareRelease_10dkh_29:hover{border-color:var(--color-brand-primary)}._firmwareReleaseInfo_10dkh_51{flex:1}._firmwareReleaseName_10dkh_55{font-size:12px;font-weight:600;color:var(--color-text-primary)}._firmwareReleaseDate_10dkh_61{font-size:10px;color:var(--color-text-muted);margin-top:2px}._firmwareProgress_10dkh_67{margin-top:var(--sp-2)}._firmwareProgressBar_10dkh_71{height:4px;background:var(--color-bg-hover);border-radius:2px;overflow:hidden}._firmwareProgressFill_10dkh_78{height:100%;background:linear-gradient(90deg,var(--color-brand-primary),#2a9d8f);border-radius:2px;transition:width .3s ease}._firmwareProgressText_10dkh_85{font-size:10px;color:var(--color-text-muted);margin-top:4px}._statusBar_13nrx_2{display:flex;flex-direction:row;align-items:center;gap:var(--sp-3);height:var(--statusbar-height);padding:0 var(--sp-4);background:#0a0c10;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted);flex-shrink:0;-webkit-user-select:none;user-select:none}._statusBarItem_13nrx_17{display:flex;align-items:center;gap:var(--sp-1)}._statusBarSep_13nrx_23{color:var(--color-border)}._statusBarConnected_13nrx_27{color:var(--color-success)}._statusBarError_13nrx_31{color:var(--color-error)}._statusBarRight_13nrx_35{margin-left:auto;display:flex;align-items:center;gap:var(--sp-3)}._panel_1uav6_2{display:flex;flex-direction:column;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border);min-height:0;flex:1 1 45%;overflow:hidden}._toolbar_1uav6_12{display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-3);height:28px;background:var(--color-bg-raised);border-bottom:1px solid var(--color-border);flex-shrink:0}._title_1uav6_23{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}._badge_1uav6_31{font-size:10px;font-weight:600;color:var(--color-brand-primary);background:rgba(var(--color-brand-primary-rgb, 99, 179, 237),.12);border-radius:4px;padding:1px 6px}._body_1uav6_40{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:#0d0d0d;overflow:hidden;position:relative}._canvas_1uav6_51{max-width:100%;max-height:100%;object-fit:contain;display:block;image-rendering:pixelated}._placeholder_1uav6_59{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--color-text-muted);font-size:11px;opacity:.5;text-align:center;padding:12px}._placeholderIcon_1uav6_71{font-size:28px;line-height:1;margin-bottom:4px}._resInfo_1uav6_77{font-size:9px;color:var(--color-text-muted);font-family:var(--font-mono);opacity:.7}._panel_d17lw_2{display:flex;flex-direction:column;background:var(--color-bg-surface);min-height:0;flex:1 1 55%;overflow:hidden}._toolbar_d17lw_11{display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-3);height:28px;background:var(--color-bg-raised);border-bottom:1px solid var(--color-border);flex-shrink:0}._title_d17lw_22{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}._label_d17lw_30{font-size:9px;font-weight:600;color:var(--color-text-muted);opacity:.7;font-family:var(--font-mono)}._body_d17lw_38{flex:1;min-height:0;overflow-y:auto;padding:4px 6px;display:flex;flex-direction:column;gap:2px}._channel_d17lw_49{display:flex;flex-direction:column;gap:2px}._channelLabel_d17lw_55{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:0 2px}._svgWrap_d17lw_63{width:100%;height:36px;flex-shrink:0;background:#00000040;border-radius:3px;overflow:hidden}._statsRow_d17lw_72{display:flex;flex-wrap:wrap;gap:2px 8px;padding:0 2px 3px}._stat_d17lw_72{font-size:9px;font-family:var(--font-mono);color:var(--color-text-muted);white-space:nowrap}._statKey_d17lw_86{opacity:.6}._statVal_d17lw_90{color:var(--color-text-secondary)}._divider_d17lw_94{height:1px;background:var(--color-border);margin:2px 0;flex-shrink:0}._placeholder_d17lw_101{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:11px;opacity:.4;text-align:center}._app_1klwh_2{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden;background:var(--color-bg-base)}._appBody_1klwh_11{display:flex;flex:1;min-height:0;overflow:hidden}._sidebar_1klwh_20{width:var(--sidebar-width);flex-shrink:0;display:flex;flex-direction:column;background:var(--color-bg-surface);border-right:1px solid var(--color-border);overflow:hidden;min-height:0}._sidebarNav_1klwh_31{display:flex;flex-direction:row;background:var(--color-bg-base);border-bottom:1px solid var(--color-border);flex-shrink:0}._sidebarNavItem_1klwh_39{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--sp-2) 0;font-size:10px;font-weight:600;color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast);-webkit-user-select:none;user-select:none}._sidebarNavItemActive_1klwh_56{color:var(--color-brand-primary);border-bottom-color:var(--color-brand-primary)}._sidebarNavItem_1klwh_39:not(._sidebarNavItemActive_1klwh_56):hover{color:var(--color-text-secondary)}._sidebarPanel_1klwh_65{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}._main_1klwh_74{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;min-height:0}._editorArea_1klwh_84{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}._fileTabs_1klwh_94{display:flex;flex-direction:row;align-items:stretch;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border);overflow-x:auto;flex-shrink:0;height:34px}._fileTabs_1klwh_94::-webkit-scrollbar{height:0}._fileTab_1klwh_94{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);height:100%;font-size:12px;font-family:var(--font-mono);color:var(--color-text-muted);cursor:pointer;border-right:1px solid var(--color-border);white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0}._fileTab_1klwh_94:hover{background:var(--color-bg-hover)}._fileTabActive_1klwh_131{color:var(--color-text-primary);background:var(--color-bg-base);border-bottom:2px solid var(--color-brand-primary)}._fileTabClose_1klwh_137{font-size:10px;opacity:.5;padding:2px 3px;border-radius:2px;line-height:1;background:none;border:none;color:inherit;cursor:pointer;flex-shrink:0}._fileTabClose_1klwh_137:hover{opacity:1;background:var(--color-bg-hover)}._fileTabDirty_1klwh_155{width:6px;height:6px;border-radius:50%;background:var(--color-brand-primary);flex-shrink:0}._bottomPanel_1klwh_164{display:flex;flex-direction:column;border-top:1px solid var(--color-border);background:var(--color-bg-panel);flex-shrink:0;min-height:80px;max-height:60vh}._bottomPanelTabs_1klwh_174{display:flex;flex-direction:row;align-items:center;gap:0;padding:0 var(--sp-3);background:var(--color-bg-raised);border-bottom:1px solid var(--color-border);flex-shrink:0;height:32px}._bottomPanelTab_1klwh_174{padding:0 var(--sp-3);height:100%;display:flex;align-items:center;font-size:11px;font-weight:600;color:var(--color-text-muted);letter-spacing:.04em;cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}._bottomPanelTabActive_1klwh_203{color:var(--color-brand-primary);border-bottom-color:var(--color-brand-primary)}._bottomPanelTab_1klwh_174:not(._bottomPanelTabActive_1klwh_203):hover{color:var(--color-text-secondary)}._bottomPanelContent_1klwh_212{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}._rightPanel_1klwh_221{display:flex;flex-direction:column;flex-shrink:0;background:var(--color-bg-surface);border-left:1px solid var(--color-border);min-width:160px;max-width:520px;overflow:hidden;min-height:0}:root{--color-brand-primary: #3ecfb2;--color-brand-secondary: #2a9d8f;--color-brand-glow: rgba(62, 207, 178, .18);--color-bg-base: #0d0f14;--color-bg-surface: #13161d;--color-bg-panel: #181c24;--color-bg-raised: #1e232e;--color-bg-hover: #252b38;--color-border: #252b38;--color-border-focus: #3ecfb2;--color-text-primary: #e8eaf0;--color-text-secondary: #8891a8;--color-text-muted: #4e5668;--color-text-accent: #3ecfb2;--color-success: #3ecfb2;--color-warning: #f4a261;--color-error: #e76f6f;--color-info: #74b9e8;--color-syntax-keyword: #c792ea;--color-syntax-string: #c3e88d;--color-syntax-comment: #546e7a;--color-syntax-number: #f78c6c;--color-syntax-function: #82aaff;--font-ui: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sidebar-width: 220px;--toolbar-height: 44px;--statusbar-height: 24px;--panel-min-height: 160px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--shadow-panel: 0 4px 24px rgba(0,0,0,.4);--transition-fast: .12s ease;--transition-std: .22s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font-ui);background:var(--color-bg-base);color:var(--color-text-primary);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-bg-hover);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-center{display:flex;align-items:center;justify-content:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.resizer{background:var(--color-border);cursor:row-resize;height:3px;transition:background var(--transition-fast);flex-shrink:0}.resizer:hover{background:var(--color-brand-primary)}.resizer--vertical{width:3px;height:auto;cursor:col-resize}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:12px;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--primary{background:var(--color-brand-primary);color:#0d0f14;border-color:var(--color-brand-primary)}.btn--primary:hover:not(:disabled){background:#4de3c4;border-color:#4de3c4}.btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.btn--ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn--danger{background:transparent;color:var(--color-error);border-color:var(--color-error)}.btn--danger:hover:not(:disabled){background:#e76f6f1f}.btn--icon{padding:var(--sp-1);aspect-ratio:1}.input,.select{background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-ui);font-size:12px;padding:var(--sp-1) var(--sp-2);outline:none;transition:border-color var(--transition-fast);width:100%}.input:focus,.select:focus{border-color:var(--color-brand-primary)}.select{cursor:pointer}.select option{background:var(--color-bg-panel)}.badge{display:inline-flex;align-items:center;gap:var(--sp-1);padding:1px var(--sp-2);border-radius:100px;font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.badge--connected{background:#3ecfb226;color:var(--color-success)}.badge--disconnected{background:#4e566840;color:var(--color-text-muted)}.badge--warning{background:#f4a26126;color:var(--color-warning)}.badge--error{background:#e76f6f26;color:var(--color-error)}.panel{background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-md)}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--color-border);background:var(--color-bg-raised);border-radius:var(--radius-md) var(--radius-md) 0 0;font-size:11px;font-weight:600;color:var(--color-text-secondary);letter-spacing:.06em;text-transform:uppercase;flex-shrink:0}.dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot--connected{background:var(--color-success);box-shadow:0 0 6px var(--color-success)}.dot--disconnected{background:var(--color-text-muted)}.dot--busy{background:var(--color-warning)}.dot--error{background:var(--color-error)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--color-bg-raised);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:11px;padding:var(--sp-1) var(--sp-2);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:100}[data-tooltip]:hover:after{opacity:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(6px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade{animation:fadeIn var(--transition-std) ease}.animate-slide{animation:slideUp var(--transition-std) ease}.animate-pulse{animation:pulse 1.5s infinite}
