.blockdia-editor{--bd-ui-primary: #e5f0ff;--bd-ui-secondary: #e9f1fc;--bd-ui-tertiary: #d9e3f2;--bd-surface: #fff;--bd-problem-surface: #fff;--bd-workspace: #fff;--bd-popover: #fff;--bd-text: #575e75;--bd-text-muted: rgba(87, 94, 117, .72);--bd-border: rgba(0, 0, 0, .15);--bd-block-border: rgba(0, 0, 0, .15);--bd-shadow: rgba(0, 0, 0, .15);--bd-accent: #855cd6;--bd-accent-dark: #714eb6;--bd-data: #ff8c1a;--bd-data-dark: #db6e00;--bd-success: #0fbd8c;--bd-danger: #ff4c4c;width:100%;min-height:680px;color:var(--bd-text);background:var(--bd-ui-primary);color-scheme:light;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none}.blockdia-editor[data-color-scheme=dark]{--bd-ui-primary: #111;--bd-ui-secondary: #1e1e1e;--bd-ui-tertiary: #2e2e2e;--bd-surface: #111;--bd-problem-surface: #1e1e1e;--bd-workspace: #1e1e1e;--bd-popover: #1e1e1e;--bd-text: #eee;--bd-text-muted: rgba(238, 238, 238, .68);--bd-border: rgba(255, 255, 255, .15);--bd-shadow: rgba(0, 0, 0, .5);--bd-accent: #4c97ff;--bd-accent-dark: #3373cc;color-scheme:dark}.blockdia-editor[data-workspace-theme=dark]{--bd-block-border: rgba(255, 255, 255, .15)}.blockdia-editor,.blockdia-editor *{box-sizing:border-box}.blockdia-editor button,.blockdia-editor select,.blockdia-editor input{font:inherit}.blockdia-editor button{cursor:pointer}.blockdia-editor button:disabled{cursor:not-allowed;opacity:.45}.blockdia-layout{--bd-left-column-width: 38%;position:relative;display:grid;grid-template-columns:minmax(380px,var(--bd-left-column-width)) minmax(600px,1fr);width:100%;min-width:980px;min-height:680px;overflow:hidden;border:1px solid var(--bd-border);border-radius:.5rem;background:var(--bd-ui-primary)}.blockdia-left-column{position:relative;min-width:0;padding:.5rem .75rem .75rem;background:var(--bd-ui-primary);border-right:1px solid var(--bd-border)}.blockdia-column-resizer{position:absolute;top:0;bottom:0;left:var(--bd-left-column-width);z-index:70;width:.75rem;padding:0;border:0;outline:none;background:transparent;cursor:col-resize;touch-action:none;transform:translate(-50%)}.blockdia-column-resizer:before{position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--bd-border);content:"";transform:translate(-50%);transition:width .12s ease,background .12s ease}.blockdia-column-resizer span{position:absolute;top:50%;left:50%;width:.3rem;height:2.5rem;border:1px solid var(--bd-border);border-radius:999px;background:var(--bd-ui-secondary);box-shadow:0 1px 3px var(--bd-shadow);transform:translate(-50%,-50%);transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.blockdia-column-resizer:hover:before,.blockdia-column-resizer:focus-visible:before,.blockdia-column-resizer.is-dragging:before{width:3px;background:var(--bd-accent)}.blockdia-column-resizer:hover span,.blockdia-column-resizer:focus-visible span,.blockdia-column-resizer.is-dragging span{border-color:var(--bd-accent-dark);background:var(--bd-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--bd-accent) 24%,transparent)}.blockdia-layout.is-resizing-columns,.blockdia-layout.is-resizing-columns *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.blockdia-controls{display:flex;min-height:2rem;max-width:560px;margin:0 auto .25rem;align-items:center;justify-content:space-between}.blockdia-speed-control{display:grid;min-width:6.5rem;max-width:10rem;margin:0 .55rem;flex:1;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:.4rem;color:var(--bd-text-muted);font-size:.68rem;line-height:1}.blockdia-speed-control strong{color:var(--bd-text);font-size:.68rem;white-space:nowrap}.blockdia-speed-control input[type=range]{width:100%;height:.75rem;margin:.12rem 0 0;grid-column:1 / -1;accent-color:var(--bd-accent);cursor:pointer}.blockdia-speed-control input[type=range]:disabled{cursor:not-allowed}.blockdia-run-reset-button{display:inline-flex;min-width:6.75rem;height:1.85rem;padding:0 .7rem;align-items:center;justify-content:center;gap:.4rem;border:1px solid rgba(0,0,0,.15);border-radius:.35rem;color:#fff;font-size:.75rem;font-weight:700;box-shadow:inset 0 -1px #00000026;transition:filter .12s ease,transform .12s ease}.blockdia-run-reset-button.is-run{background:#0fbd8c}.blockdia-run-reset-button.is-reset{background:#ff4c4c}.blockdia-run-reset-button:hover:not(:disabled){filter:brightness(1.06)}.blockdia-run-reset-button:active:not(:disabled){transform:translateY(1px)}.blockdia-run-reset-icon{width:.8rem;height:.8rem;object-fit:contain}.blockdia-block-count{display:inline-flex;min-height:1.65rem;padding:.18rem .48rem;align-items:center;gap:.4rem;border:1px solid var(--bd-border);border-radius:.35rem;color:var(--bd-text-muted);background:var(--bd-surface);font-size:.7rem}.blockdia-block-count strong{color:var(--bd-text);font-size:.74rem}.blockdia-block-count.is-over{border-color:#ff4c4c8c;background:#ff4c4c1a}.blockdia-block-count.is-over strong{color:var(--bd-danger)}.blockdia-stage-frame{position:relative;max-width:560px;margin:0 auto;overflow:hidden;border:1px solid var(--bd-border);border-radius:.5rem;background:#fff}.blockdia-stage{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;color:#575e75;background:#fff;color-scheme:light}.blockdia-stage canvas{display:block;width:100%;height:100%;background:#fff;touch-action:none}.blockdia-stage-loading{display:grid;place-items:center;color:#575e75}.blockdia-stage-loading canvas{position:absolute;inset:0}.blockdia-stage-loading span{position:relative;z-index:1}.blockdia-monitor-overlay{position:absolute;inset:0;pointer-events:none}.blockdia-drawing-overlay{position:absolute;inset:0;z-index:2;pointer-events:none}.blockdia-drawing-guide{display:block;width:100%;height:100%;overflow:visible}.blockdia-drawing-guide polyline,.blockdia-drawing-guide line{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.blockdia-drawing-target polyline,.blockdia-drawing-target-close{stroke:#575e7599;stroke-width:4}.blockdia-drawing-missing line{stroke:#ffab19;stroke-width:4}.blockdia-drawing-extra line{stroke:#ff4c4c;stroke-width:4}.blockdia-drawing-legend{position:absolute;right:.45rem;bottom:.45rem;display:flex;padding:.28rem .42rem;gap:.55rem;border:1px solid rgba(0,0,0,.18);border-radius:.3rem;color:#575e75;background:#ffffffe6;font-size:.65rem;font-weight:700}.blockdia-drawing-legend span{display:inline-flex;align-items:center;gap:.24rem}.blockdia-drawing-legend i{width:.75rem;height:4px;border-radius:99px}.blockdia-drawing-legend i.is-missing{background:#ffab19}.blockdia-drawing-legend i.is-extra{background:#ff4c4c}.blockdia-monitors{display:flex;position:absolute;top:.45rem;left:.45rem;flex-direction:column;align-items:flex-start;gap:.3rem;pointer-events:auto}.blockdia-monitor{position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.15);border-radius:.25rem;color:#575e75;background:#e5f0ff;font-size:.75rem;transition:box-shadow .2s;-webkit-user-select:none;user-select:none}.blockdia-monitor:hover{cursor:pointer}.blockdia-monitor-default{display:flex;padding:3px;flex-direction:column}.blockdia-monitor-row{display:flex;flex-direction:row}.blockdia-monitor-name{margin:0 5px;color:#575e75;font-weight:700;text-align:center}.blockdia-monitor-value{display:flex;min-width:40px;margin:0 5px;padding:0 2px;align-items:center;justify-content:center;border-radius:.25rem;color:#fff;background:#ff8c1a;text-align:center;white-space:pre-wrap;transform:translateZ(0)}.blockdia-monitor-value.is-large-value{min-width:3rem;min-height:1.4rem;margin:0;padding:.1rem .25rem;font-size:1rem}.blockdia-monitor-slider{width:100%;accent-color:#ff8c1a;transform:translateZ(0)}.blockdia-monitor-menu{position:fixed;z-index:99999;display:flex;min-width:10rem;padding:.25rem 0;flex-direction:column;overflow:hidden;border:1px solid var(--bd-border);border-radius:.5rem;color:var(--bd-text);background:var(--bd-popover);box-shadow:0 .35rem 1rem var(--bd-shadow);pointer-events:auto}.blockdia-monitor-menu button{padding:.5rem .75rem;border:0;color:inherit;background:transparent;text-align:left}.blockdia-monitor-menu button:hover{background:var(--bd-ui-tertiary)}.blockdia-stage-freeze{position:absolute;inset:0;z-index:20;background:#e5f0ff33;cursor:progress}.blockdia-limit-warning,.blockdia-policy-notice{max-width:560px;margin:.5rem auto 0;padding:.55rem .7rem;border:1px solid;border-radius:.35rem;font-size:.75rem;line-height:1.4}.blockdia-limit-warning{border-color:#ff8c1a80;color:var(--bd-text);background:#ff8c1a29}.blockdia-policy-notice{border-color:#ff4c4c80;color:var(--bd-text);background:#ff4c4c1f}.blockdia-problem{max-width:560px;margin:.75rem auto 0;padding:.8rem .9rem;border:1px solid var(--bd-border);border-radius:.5rem;color:var(--bd-text);background:var(--bd-problem-surface)}.blockdia-problem h1{margin:0 0 .35rem;color:var(--bd-text);font-size:1rem;line-height:1.35}.blockdia-problem p{margin:0;color:var(--bd-text-muted);font-size:.8rem;line-height:1.55;white-space:pre-wrap}.blockdia-result{max-width:560px;margin:.5rem auto 0;padding:.65rem .75rem;border:1px solid;border-radius:.35rem;font-size:.75rem}.blockdia-result.is-passed{border-color:#0fbd8c73;color:var(--bd-text);background:#0fbd8c24}.blockdia-result.is-failed{border-color:#ff4c4c73;color:var(--bd-text);background:#ff4c4c1f}.blockdia-result-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.blockdia-result-heading>strong{font-size:.82rem}.blockdia-result-round{flex:none;padding:.16rem .4rem;border-radius:999px;color:var(--bd-text-muted);background:var(--bd-surface);font-size:.68rem}.blockdia-result-details{display:grid;margin:.55rem 0 0;gap:.35rem}.blockdia-result-row{display:grid;grid-template-columns:4.25rem minmax(0,1fr);align-items:start;gap:.5rem}.blockdia-result-row dt{padding-top:.18rem;color:var(--bd-text-muted);font-weight:700}.blockdia-result-row dd{display:flex;min-width:0;margin:0;flex-wrap:wrap;gap:.3rem}.blockdia-result-value{display:inline-flex;min-height:1.4rem;padding:.16rem .4rem;align-items:center;gap:.3rem;border:1px solid var(--bd-border);border-radius:.3rem;background:var(--bd-surface)}.blockdia-result-variable{color:#db6e00;font-weight:700}.blockdia-result-value strong{overflow-wrap:anywhere}.blockdia-result-value strong.is-missing{color:var(--bd-danger);font-weight:700}.blockdia-result-blocks{display:flex;margin-top:.5rem;padding-top:.45rem;justify-content:space-between;border-top:1px solid var(--bd-border);color:var(--bd-text-muted)}.blockdia-result-blocks strong{color:var(--bd-text)}.blockdia-drawing-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:.55rem 0 0;gap:.4rem}.blockdia-drawing-metrics>div{display:flex;padding:.4rem .5rem;justify-content:space-between;gap:.5rem;border:1px solid var(--bd-border);border-radius:.3rem;background:var(--bd-surface)}.blockdia-drawing-metrics dt{color:var(--bd-text-muted);font-weight:700}.blockdia-drawing-metrics dd{margin:0;color:var(--bd-text);font-weight:700}.blockdia-drawing-feedback{margin:.65rem 0 0;color:var(--bd-text-muted);line-height:1.5}.blockdia-workspace-column{position:relative;min-width:0;min-height:680px;background:var(--bd-workspace)}.blockdia-editor[data-workspace-theme=light] .blockdia-workspace-column{background:#fff}.blockdia-editor[data-workspace-theme=dark] .blockdia-workspace-column{background:#1e1e1e}.blockdia-blocks-shell,.blockdia-blocks-host{position:absolute;inset:0}.blockdia-blocks-host>.injectionDiv{position:absolute;inset:0;border:1px solid var(--bd-block-border);border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.blockdia-blocks-host .blocklyMainBackground{stroke:none}.blockdia-blocks-host .blocklyToolboxDiv{height:100%!important;box-sizing:content-box;border-right:1px solid var(--bd-block-border);border-bottom:1px solid var(--bd-block-border);-ms-overflow-style:none}.blockdia-blocks-host .blocklyToolboxDiv::-webkit-scrollbar{display:none}.blockdia-blocks-host .blocklyFlyout{box-sizing:content-box;border-right:1px solid var(--bd-block-border)}.blockdia-freeze-layer{position:absolute;inset:0;z-index:50;background:#ffffff14;cursor:progress}.blockdia-prompt-backdrop{position:absolute;inset:0;z-index:100;display:grid;place-items:center;padding:1rem;background:#0000006b}.blockdia-prompt{width:min(25rem,100%);overflow:hidden;border:1px solid var(--bd-border);border-radius:.5rem;color:var(--bd-text);background:var(--bd-popover);box-shadow:0 .5rem 1.5rem var(--bd-shadow)}.blockdia-prompt h2{margin:0;padding:.7rem .85rem;border-bottom:1px solid var(--bd-border);font-size:.9rem}.blockdia-prompt label{display:grid;padding:.9rem;gap:.5rem;font-size:.78rem}.blockdia-prompt input{width:100%;padding:.55rem .65rem;border:1px solid var(--bd-border);border-radius:.3rem;color:var(--bd-text);background:var(--bd-ui-secondary);outline:none}.blockdia-prompt input:focus{border-color:var(--bd-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--bd-accent) 30%,transparent)}.blockdia-prompt-actions{display:flex;padding:.7rem .85rem;justify-content:flex-end;gap:.5rem;border-top:1px solid var(--bd-border)}.blockdia-prompt-actions button{min-width:4.5rem;padding:.42rem .65rem;border:1px solid var(--bd-border);border-radius:.3rem;color:var(--bd-text);background:var(--bd-ui-tertiary);font-size:.75rem;font-weight:700}.blockdia-prompt-actions button.is-primary{border-color:var(--bd-accent-dark);color:#fff;background:var(--bd-accent)}.blockdia-frozen-badge{position:absolute;top:.75rem;right:.75rem;z-index:51;padding:.35rem .55rem;border:1px solid var(--bd-border);border-radius:.35rem;color:var(--bd-text);background:var(--bd-popover);box-shadow:0 2px 6px var(--bd-shadow);font-size:.72rem}.blockdia-workspace-loading{display:grid;width:100%;height:100%;place-items:center;color:var(--bd-text-muted)}.blockdia-error{display:flex;min-height:260px;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--bd-danger)}.blockdia-editor[data-workspace-theme=dark] .blockdia-blocks-host .blocklySvg{background:#1e1e1e}.blockdia-editor[data-workspace-theme=dark] .blockdia-blocks-host .blocklyZoom>image{filter:invert(1)}@media(max-width:979px){.blockdia-editor{overflow-x:hidden}.blockdia-layout{grid-template-columns:minmax(280px,38%) minmax(0,1fr);min-width:0;min-height:680px}.blockdia-column-resizer{display:none}}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}.blockdia-demo{min-height:100vh;color:#575e75;background:#e5f0ff;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.blockdia-demo,.blockdia-demo *{box-sizing:border-box}.blockdia-demo>.blockdia-editor,.blockdia-demo .blockdia-layout{min-height:calc(100vh - 3rem)}.blockdia-demo-header{height:3rem;display:flex;align-items:center;justify-content:space-between;padding:0 .75rem;color:#fff;background:#855cd6}.blockdia-demo-header>div{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.blockdia-demo-header .blockdia-demo-selectors{gap:.75rem}.blockdia-demo-selectors label{display:flex;align-items:center;gap:.35rem;font-size:.75rem}.blockdia-demo-header select{min-height:2rem;border:1px solid rgba(255,255,255,.35);border-radius:.25rem;padding:.25rem 1.75rem .25rem .5rem;color:#fff;background:#ffffff26}.blockdia-logo-mark{display:grid;width:1.75rem;height:1.75rem;place-items:center;border:2px solid rgba(255,255,255,.9);border-radius:.4rem;color:#fff;background:#ffffff1f;font-weight:800}@media(prefers-color-scheme:dark){.blockdia-demo{color:#eee;background:#111}.blockdia-demo-header{background:#333}}@media(max-width:640px){.blockdia-demo-header{height:auto;min-height:3rem;flex-wrap:wrap;gap:.5rem;padding-block:.4rem}.blockdia-demo-header .blockdia-demo-selectors{flex:1;justify-content:flex-end}.blockdia-demo-selectors label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
