@font-face{font-family:halcyon-light;src:url(/assets/Halcyon-Light-k3s7AQZ-.otf) format("openType");font-weight:500;font-style:normal}@font-face{font-family:Cobalt Ridge;src:url(../../src/assets/fonts/Cobalt\ Ridge.otf) format("opentype");font-weight:400;font-style:normal}@font-face{font-family:halcyon-regular;src:url(/assets/Halcyon-regular-BQ9EjFKc.otf) format("openType");font-weight:500;font-style:normal}@font-face{font-family:halcyon-medium;src:url(/assets/Halcyon-medium-CtmMzlR4.otf) format("openType");font-weight:500;font-style:normal}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-Regular.otf) format("opentype");font-weight:400;font-style:normal}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-Bold.otf) format("opentype");font-weight:700;font-style:normal}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-Light.otf) format("opentype");font-weight:300;font-style:normal}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-Black.otf) format("opentype");font-weight:900;font-style:normal}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-RegularIt.otf) format("opentype");font-weight:400;font-style:italic}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-BoldIt.otf) format("opentype");font-weight:700;font-style:italic}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-LightIt.otf) format("opentype");font-weight:300;font-style:italic}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-BlackIt.otf) format("opentype");font-weight:900;font-style:italic}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-UltLight.otf) format("opentype");font-weight:200;font-style:normal}@font-face{font-family:Neogrotesk Ess Alt;src:url(./assets/fonts/NeogroteskEssAlt-UltLightIt.otf) format("opentype");font-weight:200;font-style:italic}#root{text-align:center}body{margin:0}.project_container{padding:2rem}.header{display:flex;justify-content:space-between}.content{position:relative}.comp_image{border:1px solid orange;border-radius:10px;width:100px}.comp_text{font-family:halcyon-medium}.footer{position:fixed;width:95%;contain:layout;display:flex;justify-content:space-between;bottom:0}.footer img,.header img{cursor:pointer}.footer p{font-family:halcyon-medium;font-size:larger}.footer img,.footer p,.header img,.comp_image,.comp_text,.switch{z-index:10}model-viewer{position:fixed;top:19vh;left:0;width:100vw;height:81vh}#modelviewer{transition:background-color .5s linear}.slider_container{display:flex;height:80vh;align-items:center}.swiper_slide p{font-family:halcyon-medium;font-size:larger}.buttonGrp{display:flex;flex-direction:column;gap:1rem;z-index:10}button{border:none;background-color:transparent;z-index:20;cursor:pointer}:fullscreen{background-color:#fff}element.style{width:100vw}html,body{overflow:hidden!important}*::-webkit-scrollbar{display:none}*{scrollbar-width:none}.card-grid-scroll{overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:auto!important}.card-grid-scroll::-webkit-scrollbar{display:block!important;width:8px;background:#eee}.card-grid-scroll::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}@font-face{font-family:Cobalt Ridge;src:url(/assets/Cobalt%20Ridge-CPSFzZfQ.otf) format("opentype");font-weight:400;font-style:normal}.headerMainDiv{background-image:url(/assets/haderImage@2x-2qy_tSOj.png);background-size:100% 100%;background-position:center;background-repeat:no-repeat;height:19vh;width:100%}.playDynamex_logoDiv{display:flex;justify-content:space-around;align-items:center;height:100%;width:30%}.playDynamexLogo{height:10vh}.buttonToolTip{position:absolute;border:1px solid rgb(116,115,115);border-radius:10px;padding:10px}.nightToolTip{position:absolute;border:1px solid rgb(255,255,255);color:#fff;border-radius:10px;padding:10px}.nightButtonTip{display:none;left:-64px;top:-29px}.nightBtnLabel:hover+.nightButtonTip{display:block}.fullScreenTip{display:none;top:-26px;left:-66px}.fullscreen_btn:hover+.fullScreenTip{display:block}.prevBtnTip{display:none;top:-84px}.prevBtnIcon:hover+.prevBtnTip{display:block}.nextBtnTip{display:none;top:-84px}.nextBtnIcon:hover+.nextBtnTip{display:block}._container_191ro_1{position:absolute;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;font-family:halcyon-regular;background:#ffffffb3;z-index:95000}._box_191ro_17{display:flex;flex-direction:column;justify-content:center;width:400px;min-height:150px;padding:1rem 2rem;background:linear-gradient(to right,#f0eded,#fff);border-radius:4rem;border:1px solid white;box-shadow:.5rem .5rem 2rem #d9d5d4}._btngroup_191ro_32{position:relative;display:flex;flex-direction:row;justify-content:space-evenly}._closeBtn_191ro_39{position:relative;width:3.5rem;left:100%;top:-40px;cursor:pointer}._btn_191ro_32{min-width:2rem;padding:.65rem 2rem;border:0px;border-radius:1.8rem;height:40px;color:#fff;background:linear-gradient(to right,#fda84e,#f97d62);cursor:pointer}._btn_191ro_32:hover{box-shadow:0 0 .5rem #aaa9a8}._text_191ro_64{margin-top:-2rem;margin-bottom:1rem;text-align:center;font-family:halcyon-regular}._selectionContainer_191ro_72{position:absolute;width:100vw;height:100vh;font-family:halcyon-regular;background:#ffffffb3;z-index:95000;display:flex;justify-content:center;align-items:center}._selectionbox_191ro_85{width:38vh;height:35vh;padding:1rem;background:linear-gradient(to right,#f0eded,#fff);border-radius:7vh;border:1px solid white;box-shadow:.5rem .5rem 2rem #d9d5d4;position:relative}._selection_SubBox_191ro_95{width:35vh;height:31vh;display:grid;grid-template-columns:100%;grid-template-rows:15% 40% 15% 30%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}._img_191ro_107{width:18vh;margin:-5% 24% 0 24.5%}._closeBtns_191ro_111{position:absolute;top:-5%;right:-6%;width:5vh}._btns_191ro_117{padding:1.5vh 3vh;border:0px;border-radius:1.8rem;color:#fff;background:linear-gradient(to right,#fda84e,#f97d62);cursor:pointer;font-family:halcyon-regular;font-size:1.5vh!important}._container_9uc62_1{display:flex;flex-direction:column;position:relative}._container_9uc62_1 p{flex:1}._workspaceScrollArea_9uc62_14{width:100vw;height:620px;overflow-x:scroll;background:#fff;border-bottom:1px solid #eee}._workspaceScrollArea_9uc62_14::-webkit-scrollbar{width:12px;height:12px}._workspaceScrollArea_9uc62_14::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}._workspaceScrollArea_9uc62_14::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px}._workspaceScrollArea_9uc62_14::-webkit-scrollbar-thumb:hover{background:#a8a8a8}._workboardContainer_9uc62_42{position:relative;top:0;left:0;width:100vw;max-width:100vw;min-width:0;min-height:600px;overflow-x:auto;overflow-y:hidden;height:60vh;padding-top:32px;padding-bottom:0;scrollbar-color:#c1c1c1 #f1f1f1;scrollbar-width:auto}._workboardContainer_9uc62_42::-webkit-scrollbar{height:18px;background:#f1f1f1;border-radius:6px}._workboardContainer_9uc62_42::-webkit-scrollbar-track{background:#f1f1f1;border-radius:6px}._workboardContainer_9uc62_42::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px}._workboardContainer_9uc62_42::-webkit-scrollbar-thumb:hover{background:#a8a8a8}._workboardContainer_9uc62_42::-webkit-scrollbar-corner{background:#f1f1f1}._workboardContainer_9uc62_42:before{content:"";position:fixed;top:100px;left:0;width:100vw;height:60vh;z-index:0;background-image:url(/assets/Grid-ldUHSrwx.png);background-size:100% 100%;background-repeat:repeat;pointer-events:none}._footer_9uc62_98{position:fixed;bottom:0;height:clamp(10px,50rem,15vh);width:100%;padding:1rem 0;display:flex;flex-direction:row;justify-content:center;align-items:center;z-index:50}._footer_9uc62_98 ._sensorAddButton_9uc62_116{scale:.8}._footer_9uc62_98 ._scrollContainer_9uc62_120{width:75vw;height:110px;overflow-x:auto;overflow-y:hidden;padding:.5rem 1rem;border:2px solid white;border-radius:1rem;background-color:#f2f2f2;box-shadow:1px 1px 10px #f2f2f2;-ms-overflow-style:none;scrollbar-width:none}._scrollContainer_9uc62_120::-webkit-scrollbar{display:none}._footer_9uc62_98 ._sensorContainer_9uc62_144{display:flex;gap:1rem;width:75vw;overflow-x:auto;white-space:nowrap}._sensorCard_9uc62_155{position:relative;width:73px;flex:0 0 auto;display:flex;align-items:flex-start;justify-content:flex-start}._sensorAddButton_9uc62_116{position:absolute;top:-8px;left:-12px;width:2.4rem;height:2.4rem;background-color:#fff;border-radius:50%;z-index:5;box-shadow:0 2px 8px #0002;padding:0;border:none;display:flex;align-items:center;justify-content:center}._sensorAddButton_9uc62_116 img,._sensorAddButton_9uc62_116 svg{width:1.8rem;height:1.8rem;display:block;margin:auto}._sensorImg_9uc62_189{position:relative;width:100%;margin-left:.7rem;margin-top:.7rem;z-index:1;object-fit:contain;display:block}._sensorCard_9uc62_155 img,._sensorAddButton_9uc62_116 img{width:100%;object-fit:cover}._sensorCard_9uc62_155 ._sensorImg_9uc62_189{position:absolute;top:8px;width:100%}._sensorAddButton_9uc62_116:hover{scale:1.05}._container_180n0_1{background-color:#ffffffe6;position:fixed;top:0;left:0;height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;z-index:100}._helpScreen_180n0_17{height:100vh;overflow:hidden;position:relative}._helpScreen_180n0_17 img{width:100%;height:100%}._helpScreen_180n0_17 p{position:absolute;background-color:#fff;padding:clamp(5px,.5rem,1rem);max-width:clamp(1rem,20vw,280px);border-radius:10px;font-size:clamp(2.25vh,2.25vh,1rem);font-family:halcyon-regular}._navArrow_180n0_39{width:3rem;height:3rem;cursor:pointer}._navDotContainer_180n0_45{position:absolute;bottom:8%;left:50%;display:flex;flex-direction:row;gap:1rem}._dot_180n0_55,._darkDot_180n0_56{height:.5rem;width:.5rem;background-color:#bbb;border-radius:50%;display:inline-block}._darkDot_180n0_56{background-color:#535252}._closeButton_180n0_68{position:absolute;top:5%;left:87%;width:75px;height:75px;background-image:url(/assets/CrossColorIcon-BFiqex57.png);background-size:contain;z-index:120}._closeButton_180n0_68:hover{scale:1.2}._workspaceRoot_s13b9_1{position:relative;min-height:600px;min-width:100vw;width:max-content;height:100%;overflow:visible;white-space:nowrap}._component_s13b9_12{position:absolute}._sensorImg_s13b9_17{position:relative;width:100px;z-index:10;display:block;margin:0 auto}._connectorImg_s13b9_25{position:absolute;width:150px;z-index:0}._component_s13b9_12 div{position:absolute}._component_s13b9_12 ._box_s13b9_36{width:100px;height:100px;z-index:20}._ledbox_s13b9_42,._graph_s13b9_43,._counter_s13b9_44{display:flex;justify-content:center;align-items:center}._led_s13b9_42,._beeper_s13b9_51,._motor_s13b9_52{border-radius:50%;background-color:red;opacity:75%}._led_s13b9_42{margin-top:45px}._beeper_s13b9_51{margin-top:28px}._motor_s13b9_52{margin-top:0}._graph_s13b9_43>div{height:4.5px;background-color:red}._counter_s13b9_44>div{height:5px;width:8px;background-color:red}._graphbar1_s13b9_82{top:45.5px;width:86px}._graphbar2_s13b9_87{top:53.5px;width:81px}._graphbar3_s13b9_92{top:61.5px;width:75px}._graphbar4_s13b9_97{top:70.6px;width:69px}._graphbar5_s13b9_102{top:78.5px;width:61px}._graphbar6_s13b9_107{top:87.5px;width:54px}._graphbar7_s13b9_112{top:95.5px;width:49px}._graphbar8_s13b9_117{top:103.5px;width:44px}._graphbar9_s13b9_122{top:113px;width:38px}._graphbar10_s13b9_127{top:121px;width:34px}._counterlight1_s13b9_132{top:45px}._counterlight2_s13b9_135{top:55px}._counterlight3_s13b9_138{top:66px}._counterlight4_s13b9_141{top:77px}._counterlight5_s13b9_144{top:87px}._counterlight6_s13b9_147{top:97px}._counterlight7_s13b9_150{top:108px}._counterlight8_s13b9_153{top:118px}._switch_s13b9_159{position:relative;display:inline-block;width:60px;height:34px;scale:.7}._switch_s13b9_159 input{opacity:0;width:0;height:0}._slider_s13b9_179{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}._slider_s13b9_179:before{position:absolute;content:"";height:35px;width:35px;left:0;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+._slider_s13b9_179{background-color:#000}input:focus+._slider_s13b9_179{box-shadow:0 0 1px #000}input:checked+._slider_s13b9_179:before{-webkit-transform:translateX(26px);-ms-transform:translateX(26px);transform:translate(26px)}._slider_s13b9_179._round_s13b9_218{border-radius:34px}._slider_s13b9_179._round_s13b9_218:before{border-radius:50%}._sensorCloseButton_s13b9_227{position:absolute;top:-10px;right:-10px;width:30px;height:30px;background-image:url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='utf-8'?%3e%3c!--%20Generator:%20Adobe%20Illustrator%2024.0.1,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%206.00%20Build%200)%20--%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20viewBox='0%200%2048%2048'%20style='enable-background:new%200%200%2048%2048;'%20xml:space='preserve'%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23C81D00;}%20%3c/style%3e%3cpath%20class='st0'%20d='M30.1,32l2.1-2.1L26.4,24l5.9-5.9L30.2,16l-5.9,5.9l-6.2-6.2L16,17.9l6.2,6.2L16,30.2l2.1,2.1l6.1-6.1L30.1,32z%20M38.1,38.1c-1.9,1.9-4.1,3.4-6.6,4.4c-2.5,1-5,1.5-7.5,1.5c-2.6,0-5.1-0.5-7.5-1.5c-2.5-1-4.7-2.4-6.6-4.4%20c-1.9-1.9-3.4-4.1-4.4-6.6S4,26.5,4,24c0-2.6,0.5-5.1,1.5-7.5c1-2.5,2.4-4.7,4.4-6.6c1.9-1.9,4.1-3.4,6.6-4.4C19,4.5,21.5,4,24,4%20c2.5,0,5,0.5,7.5,1.5c2.5,1,4.7,2.4,6.6,4.4c1.9,1.9,3.4,4.1,4.4,6.6c1,2.5,1.5,5,1.5,7.5s-0.5,5.1-1.4,7.5%20C41.6,34,40.1,36.2,38.1,38.1z%20M36.1,36c3.3-3.3,5-7.3,5-12s-1.7-8.7-5-12c-3.3-3.3-7.3-5-12-5c-4.7,0-8.7,1.7-12,5%20c-3.3,3.3-5,7.3-5,12c0,4.7,1.7,8.7,5,12c3.3,3.3,7.3,5,12,5C28.7,41,32.7,39.3,36.1,36z'/%3e%3c/svg%3e");background-size:contain;border-radius:50%;cursor:pointer;z-index:22}._sensorCloseButton_s13b9_227:hover{scale:1.2}._tact_handle_s13b9_244{height:30px;width:20px;cursor:pointer}._tact_s13b9_244{height:20px;width:20px;border-radius:50%;background-color:#000;cursor:pointer}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__node,.react-flow__node-dynamic,.react-flow__node.selected,.react-flow__node:focus{border:none!important;box-shadow:none!important}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa}#root{height:100%}.led-light{pointer-events:none;position:absolute!important;left:50%!important;top:50%!important;width:32px!important;height:32px!important;border-radius:50%!important;transform:translate(-50%,-50%)!important;z-index:10;opacity:.85;background:radial-gradient(circle at center,#f66,#f44 60%,#f443)!important;animation:led-pulse 1s ease-in-out infinite alternate}@keyframes led-pulse{0%{box-shadow:0 0 8px #f449,0 0 15px #f446;opacity:.6}to{box-shadow:0 0 12px #f44c,0 0 20px #ff444480;opacity:1}}@keyframes beeper-flash{0%,to{opacity:.8;transform:scale(1);filter:brightness(1)}50%{opacity:1;transform:scale(1.05);filter:brightness(1.3)}}.beeper-active{pointer-events:none;position:absolute!important;left:50%!important;top:50%!important;width:32px!important;height:32px!important;border-radius:50%!important;transform:translate(-50%,-50%)!important;z-index:10;opacity:.85;background:radial-gradient(circle at center,#fb6,#f80 60%,#f803)!important;animation:beeper-flash .5s ease-in-out infinite alternate}.react-flow__handle{width:14px!important;height:14px!important;border:3px solid white!important;border-radius:50%!important;transition:all .2s ease;z-index:20}.react-flow__handle:hover{transform:scale(1.3) translate(-50%,-50%);box-shadow:0 0 8px #0000004d}.react-flow__edge:hover{cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAA7AAAAOwBeShxvQAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAATkSURBVFiFxZdrTFNnGMf/58LpjeMKdlJNLCpgy5imlO6w2SFGWlq2ybIhiWZIzLJk+wAj2T7tE25kWUwkmohxYxoibhlzMlKrc9LARNOgsyyFZkjEGbm0gr2IbaHl0nYfljIjm6uFzv+3933e5/x+yXsu7wGeTSTPiAsiNy+3VS6XH38WcEqpUnbk5OT0ACAWJ/8neGpRcdF5mqTZ/v5+LYDw1q1byxke00wnmywSiTJKtCXt0UhUYDKZigGIOI5rcXvcLwRngjuSJcAAmNuwYYOiaHtRG8MwdOelzlKNRlORyqbW+/y+G3f+uPMigPlkCWjz8vKCpYbSrxAF0fZdW41SqTwmy5S9PNA/0Njb23sotpB40lUSyA4Aq/LV+czut3YfiiBCtZxsub537151KBQKmM3mDwcGBrpXmLmYNwCUcxz3UfPXzZNNx5s8KpVquKu7a7aysvJKRkbGmmSBY8nlOO7g2fazU2d+ODPT2NjoMneZAzqd7gSAf93qldoCSqPRnKz/tH4PSZG0fcBO8vn8e6daTx26Zrl2+EmNKyHANxgMbQc+O1BOEARhOmfC3Nyc/eJPF2vtdnvPfzXHBAiO497PkefoREIRb3Rk1GGz2b6YmJi4+6RmlmUlpaWlxvoD9dsi0QiOHD4SdXvcXT2/9Ozx+/2eeOwJAJROp/uxYnfF68FgkKIpGhRNweVy3TWdMzVYrdbvAfABPAdgDsAkgPmNGzfKDa8ZOuvq6mSRSAS1NbXh0GyoxXLV8gGAcDxwACAKCwsbqvZVfaKQKyitVgsAcLvdONp0FFqdNmT91fpAIBLQktUSQSgUmh8dHfX7ff6HDodjs0Ag4BW+UgjzJfPs7du3P7ZarcfiBcdCcxynDy+EF+EAIJFIUL2vGtY+K3//u/vXPtaTtrCwgNZTrUhPT8fQ0ND08PBwSV9f3/WnhQMATdP0mszMzCWFrKwsmM6bYDQanR3tHVcEQoGbpmhe6qpU6Trpuk0pTMrmou1FKZcvX76WKBwAaJB46HK5lhS8Xi94PB5ONJ/osFgsNY+Vidra2kEAikg4EkoUDgDkrVu3bswEZzAyMrI4GQ6H0dTUhEAg4Lx58+bBf+hjxWliHgDMz8/PLkeAvmC6UCcWi5UMwxREI1GQJInAdADrZev9p1tPH/F6vWOPNwmFQrkiV7EGAFwu1/1lCQCY7vy5c4fX7W1U5CqUJEWKPB7PmO0325c2m834yFoqOzv7balUqpHJZNsKCgpE9yfvwzHhuLEcgbjehCzLri7RlrQbDIZXp6amKJIksXPnTgwNDYWq3qlSA/g9UYG4jmR6vf4brU5blrUpi6yuroZarYbRaARfwKcn7k3MjI+PmxMVIONYk55fkK8R8oXQ6/UgCAI8Hg81NTVwjjuhfkldDkCQTAEJk8KkbdmyZUmhrKwM0rXSTSzL5gPITZaAIxAIuAcHB5cUQqEQaIomCIKIAChOlsC03W6/7rznxNjY309kOByG6bwJDodj2OfzOQE8SEQgrkPp1StX3xOJRJkUSakYHgOKouB76EOaOG26u6u7GcCbAE4mIvA0ERQXF39r6bVEGj5vGKuorOhRqVRVAFYDyE42PBbervJdTpZlNbExgMLlXDCee+DRzE5OTg6JxeLnY2MACX8JE80q/PXnsyL5E35Yzk0VTsiMAAAAAElFTkSuQmCC),auto}.react-flow__handle[data-handleid=positive]{background:#dc3545!important;border:3px solid #fff!important}.react-flow__handle[data-handleid=negative]{background:#343a40!important;border:3px solid #fff!important}.power-component{border-color:#28a745!important;border-width:3px!important}.power-component:hover{border-color:#20c997!important;box-shadow:0 0 10px #28a7454d}.tact-component{border-color:#007bff!important;border-width:3px!important;cursor:pointer!important}.tact-component:hover{border-color:#0056b3!important;transform:scale(1.05)!important;box-shadow:0 0 15px #007bff66}.tact-component:active{transform:scale(.95)!important;border-color:#004085!important}.led-component{border-color:#dc3545!important;border-width:3px!important}.led-component:hover{border-color:#c82333!important;box-shadow:0 0 10px #dc35454d}.beeper-component{border-color:#fd7e14!important;border-width:3px!important}.beeper-component:hover{border-color:#e66100!important;box-shadow:0 0 10px #fd7e144d}.react-flow__handle{width:14px!important;height:14px!important;border:3px solid white!important;border-radius:50%!important;transition:all .2s ease}.react-flow__handle:hover{transform:scale(1.3);box-shadow:0 0 8px #0000004d}.react-flow__handle-source{background:#28a745!important}.react-flow__handle-source:hover{background:#20c997!important}.react-flow__handle-target{background:#dc3545!important}.react-flow__handle-target:hover{background:#c82333!important}.react-flow__edge-path{stroke-width:3!important;stroke:#007bff!important}.react-flow__edge:hover .react-flow__edge-path{stroke:#0056b3!important;stroke-width:4!important}.react-flow__connection-line{stroke:#007bff!important;stroke-width:3!important;stroke-dasharray:5,5}.react-flow__background{background-color:#f8f9fa}.react-flow__minimap{background-color:#fff;border:1px solid #dee2e6}.component-dragging{opacity:.8!important;transform:scale(1.1)!important;z-index:1000!important;cursor:grabbing!important}.react-flow__node.selected{box-shadow:0 0 0 3px #007bff80!important}.react-flow__node:focus{outline:none;box-shadow:0 0 0 3px #007bff80!important}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;padding:12px;border-radius:4px;margin:10px 0}.success-message{background:#d4edda;color:#155724;border:1px solid #c3e6cb;padding:12px;border-radius:4px;margin:10px 0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){.circuit-header{padding:12px!important}.circuit-header h1{font-size:20px!important}.sidebar{width:220px!important}.component-item{padding:8px!important;margin:4px 0!important}.component-item img{width:30px!important;height:30px!important}}@media (max-width: 480px){.sidebar{width:200px!important}.circuit-header{flex-direction:column!important;gap:10px!important}.circuit-controls{flex-direction:column!important;align-items:stretch!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus,select:focus,input:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast: high){.react-flow__handle{border-width:4px!important}.component-item{border-width:3px!important}.led-light{box-shadow:0 0 30px red,0 0 60px red!important}}@media print{.sidebar,.circuit-controls,.circuit-type-selector{display:none!important}.react-flow{height:100vh!important;width:100vw!important}.react-flow__node{break-inside:avoid}}
