*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}html,body{overscroll-behavior:none}button,[role=button]{touch-action:manipulation}body{font-family:var(--font-body,-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);font-size:var(--font-size-adjust,100%);letter-spacing:var(--letter-spacing,normal);color:#1e1a2e;-webkit-font-smoothing:antialiased;background:#f6f4fa}button{cursor:pointer;font-family:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #7028e0}input,textarea{font-family:inherit}@keyframes piece-pop{0%{transform:scale(1)}40%{transform:scale(1.06)}to{transform:scale(1)}}svg g.piece-new{animation:.15s ease-out piece-pop}@keyframes popover-slide-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes mobile-drawer-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes bond-draw{0%{stroke-dashoffset:var(--path-length)}to{stroke-dashoffset:0}}svg path.bond-new{stroke-dasharray:var(--path-length);animation:.2s ease-out forwards bond-draw}@keyframes bond-label-fade{0%{opacity:0}to{opacity:1}}svg .bond-label-new{animation:.1s ease-out .15s forwards bond-label-fade}svg .bond-removing{opacity:0;transition:opacity .15s ease-in}@keyframes marker-pulse{0%,to{opacity:1}50%{opacity:.5}}.marker-deletable:hover circle{fill:#d32f2f!important}.marker-deletable:hover .marker-x{opacity:1!important}@keyframes bond-mode-pulse{0%,to{stroke-opacity:1}50%{stroke-opacity:.5}}@keyframes scroll-hint{0%,to{transform:translate(0)}50%{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){svg g.piece-new{animation:none}svg path.bond-new{stroke-dasharray:none;stroke-dashoffset:0;animation:none}svg .bond-label-new{opacity:1;animation:none}svg .bond-removing{transition:none}@keyframes marker-pulse{0%,to{opacity:1}}@keyframes bond-mode-pulse{0%,to{stroke-opacity:1}}@keyframes popover-slide-down{0%,to{opacity:1;transform:none}}@keyframes mobile-drawer-up{0%,to{transform:none}}@keyframes scroll-hint{0%,to{transform:none}}}@media (width<=500px) and (orientation:portrait){button{min-width:48px!important;min-height:48px!important}[data-testid=toolbar]{min-height:64px;height:auto!important}[data-testid=toolbar]>div:first-child{flex-wrap:wrap!important;gap:4px!important;overflow:visible!important}}@media (width>=501px) and (width<=1024px){[data-testid=toolbar] button{min-width:48px!important;min-height:48px!important}}@media print{[data-testid=toolbar],[data-testid=status-bar],[data-testid=action-bar]{display:none!important}body,#root,#root>div{height:auto!important;overflow:visible!important}svg{width:100%!important;height:auto!important}}:is(:fullscreen [data-testid=toolbar],:fullscreen [data-testid=status-bar],:fullscreen [data-testid=action-bar]){display:none!important}:fullscreen [data-testid=canvas-svg]{height:100vh!important}:-webkit-any(:-webkit-full-screen [data-testid=toolbar],:-webkit-full-screen [data-testid=status-bar],:-webkit-full-screen [data-testid=action-bar]){display:none!important}:is(:fullscreen [data-testid=toolbar],:fullscreen [data-testid=status-bar],:fullscreen [data-testid=action-bar]){display:none!important}:-webkit-full-screen [data-testid=canvas-svg]{height:100vh!important}@media (width<=600px){.tool-label{display:none!important}}@media (width<=480px){[data-testid=toolbar]{gap:4px!important;min-height:52px!important;padding:4px 6px!important}[data-testid=toolbar] button{min-width:40px!important;min-height:40px!important;padding:4px!important;font-size:10px!important}[data-testid=action-bar]{flex-wrap:wrap!important;gap:4px!important;padding:4px 8px!important}[data-testid=action-bar] button{min-width:44px!important;min-height:44px!important;padding:4px 8px!important;font-size:11px!important}[data-testid=logo-text]{display:none!important}}
