.blockly-div[data-v-2cd88019]{width:100%;height:100%}.serial-terminal[data-v-8606311f]{color:#d4d4d4;background:#1e1e1e;border-top:1px solid #333;flex-direction:column;height:100%;font-family:Consolas,Courier New,monospace;font-size:13px;display:flex}.terminal-header[data-v-8606311f]{background:#252526;border-bottom:1px solid #333;align-items:center;gap:8px;min-height:30px;padding:4px 12px;display:flex}.terminal-title[data-v-8606311f]{color:#ccc;font-size:12px;font-weight:600}.status-dot[data-v-8606311f]{border-radius:50%;width:8px;height:8px}.status-dot.connected[data-v-8606311f]{background:#4caf50;box-shadow:0 0 4px #4caf50}.status-dot.disconnected[data-v-8606311f]{background:#666}.status-text[data-v-8606311f]{color:#999;font-size:11px}.clear-btn[data-v-8606311f]{color:#aaa;cursor:pointer;background:0 0;border:1px solid #555;border-radius:3px;margin-left:auto;padding:2px 8px;font-size:11px}.clear-btn[data-v-8606311f]:hover{color:#fff;background:#333}.terminal-body[data-v-8606311f]{flex:1;padding:8px 12px;overflow-y:auto}.terminal-line[data-v-8606311f]{white-space:pre-wrap;word-break:break-all;line-height:1.4}.terminal-placeholder[data-v-8606311f]{color:#666;font-style:italic}.terminal-body[data-v-8606311f]::-webkit-scrollbar{width:8px}.terminal-body[data-v-8606311f]::-webkit-scrollbar-track{background:#1e1e1e}.terminal-body[data-v-8606311f]::-webkit-scrollbar-thumb{background:#444;border-radius:4px}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}#app{background:#f5f5f5;flex-direction:column;width:100%;height:100vh;display:flex}.toolbar{color:#fff;background:#2c3e50;flex-shrink:0;align-items:center;gap:8px;height:44px;padding:0 12px;display:flex}.toolbar-left{align-items:center;display:flex}.app-title{letter-spacing:.5px;white-space:nowrap;font-size:16px;font-weight:700}.toolbar-center{flex:1;justify-content:center;align-items:center;gap:4px;display:flex}.toolbar-right{align-items:center;gap:4px;display:flex}.tb-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;padding:5px 12px;font-size:13px;transition:all .2s}.tb-btn:hover{background:#fff3}.tb-btn:disabled{opacity:.4;cursor:not-allowed}.connect-btn.active{background:#27ae60;border-color:#27ae60}.run-btn{background:#27ae60!important;border-color:#27ae60!important}.run-btn:hover:not(:disabled){background:#2ecc71!important}.stop-btn{background:#e74c3c!important;border-color:#e74c3c!important}.stop-btn:hover:not(:disabled){background:#ff5252!important}.dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.dot-on{background:#2ecc71;box-shadow:0 0 4px #2ecc71}.dot-off{background:#999}.main-area{flex-direction:column;flex:1;display:flex;overflow:hidden}.editor-area{flex:1;display:flex;overflow:hidden}.blockly-container{transition:width .3s;overflow:hidden}.code-panel{background:#272822;border-left:2px solid #ddd;flex-direction:column;width:45%;display:flex}.code-panel-header{color:#ccc;background:#1e1e1e;border-bottom:1px solid #333;padding:6px 12px;font-size:12px;font-weight:600}.code-editor-wrapper{flex:1;overflow:hidden}.terminal-area{flex-shrink:0;height:200px}.blocklyToolboxDiv{box-shadow:2px 0 12px #0000000f;background:#fff!important;border-right:1px solid #e8e8e8!important;width:160px!important;padding:12px 0!important;overflow:hidden auto!important}.blocklyToolboxContents{padding:0!important}.blocklyTreeRow{background:0 0!important;border-left:none!important;height:auto!important;margin:0!important;padding:0!important;line-height:normal!important}.toolbox-row{cursor:pointer!important;border-left:none!important;border-radius:10px!important;flex-direction:row!important;align-items:center!important;min-height:auto!important;margin:3px 10px!important;padding:8px 12px!important;transition:all .2s!important;display:flex!important}.toolbox-row:hover{background:#f5f7ff!important}.toolbox-row.blocklyTreeSelected{background:#eef2ff!important}.toolbox-row .blocklyTreeRowContentContainer{flex-direction:row!important;align-items:center!important;gap:10px!important;width:100%!important;display:flex!important}.toolbox-icon{box-shadow:0 2px 6px #00000026;border-radius:10px!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:38px!important;min-width:38px!important;height:38px!important;display:flex!important;position:relative!important}.toolbox-icon:after{font-size:18px;line-height:1}.icon-puppy:after{content:"🐕";font-size:19px}.icon-display:after{content:"👁";font-size:19px}.icon-laser:after{content:"⚡";font-size:18px}.icon-system:after{content:"⚙️";font-size:18px}.icon-statements:after{content:"❗";font-size:16px}.icon-values:after{content:"🔢";font-size:16px}.icon-logic:after{content:"🔀";font-size:16px}.icon-loops:after{content:"🔄";font-size:16px}.icon-variables:after{content:"📦";font-size:16px}.toolbox-label{color:#444!important;letter-spacing:.3px!important;white-space:nowrap!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif!important;font-size:14px!important;font-weight:500!important;line-height:1.2!important}.toolbox-row:hover .toolbox-label{color:#333!important}.toolbox-row.blocklyTreeSelected .toolbox-label{color:#1a73e8!important;font-weight:600!important}.blocklyTreeSeparator{background:#eee!important;border:none!important;height:1px!important;margin:8px 20px!important;padding:0!important}.blocklyFlyoutBackground{fill:#191923e0!important;fill-opacity:1!important}.blocklyFlyout .blocklyFlyoutLabel text{fill:#ffffff8c!important;letter-spacing:1px!important;text-transform:uppercase!important;font-size:13px!important;font-weight:500!important}.blocklyFlyout .flyout-header text{fill:#fff!important;letter-spacing:1.5px!important;text-transform:none!important;font-size:20px!important;font-weight:700!important}.blocklyFlyoutScrollbar .blocklyScrollbarHandle{rx:3;ry:3;fill:#fff3!important}.blocklyTreeIcon:not(.toolbox-icon){display:none!important}.blocklyToolboxDiv::-webkit-scrollbar{width:4px}.blocklyToolboxDiv::-webkit-scrollbar-track{background:0 0}.blocklyToolboxDiv::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}
