.canvas-grid-background{background-image:radial-gradient(circle,var(--gray-300) 1px,transparent 1px);background-size:20px 20px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.canvas-cursor-blink:after{content:"|";animation:blink 1s step-end infinite}.canvas-snap-guide{position:absolute;background-color:#fa4d3d;pointer-events:none;z-index:100}.canvas-snap-guide--vertical{width:1px;height:100%}.canvas-snap-guide--horizontal{width:100%;height:1px}.canvas-resize-handle{position:absolute;background-color:#3b82f6;border:1px solid #fff;border-radius:2px;z-index:10}.canvas-resize-handle:hover{background-color:#2563eb}.canvas-annotation{position:absolute;background-color:#fffde7;border:1px solid #fbc02d;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);cursor:move;z-index:10;box-sizing:border-box}.canvas-annotation--editing{cursor:text}.canvas-annotation__textarea{width:100%;background:transparent;border:none;outline:none;resize:none;font-size:14px;line-height:1.4;color:#333;font-family:inherit;overflow:hidden;min-height:20px}.canvas-annotation__textarea::placeholder{color:#999;font-style:italic}.canvas-annotation__text{font-size:14px;line-height:1.4;color:#333;white-space:pre-wrap;word-break:break-word}.canvas-annotation--linked{border-color:#10b981}.canvas-link-anchor{position:absolute;width:8px;height:8px;background-color:#10b981;border:2px solid #fff;border-radius:50%;cursor:crosshair;z-index:20;transition:transform .15s ease}.canvas-link-anchor:hover{transform:scale(1.3);background-color:#059669}.canvas-link-anchor--faded{opacity:.4}.canvas-link-anchor--faded:hover{opacity:1}.canvas-link-target-highlight{outline:2px dashed #10b981;outline-offset:2px}.canvas-prompt-container{position:absolute;bottom:64px;left:50%;transform:translateX(-50%);display:flex;justify-content:center;width:400px;pointer-events:none;z-index:1000}.canvas-prompt-container>*{pointer-events:auto}.canvas-prompt-drag-handle{display:flex;justify-content:center;padding:4px 0 0;cursor:grab}.canvas-prompt-drag-handle:active{cursor:grabbing}.canvas-draw-mode,.canvas-draw-mode *{cursor:crosshair!important}.capturing .canvas-link-anchor,.capturing .canvas-resize-handle,.capturing .canvas-snap-guide,.capturing .canvas-upload-button,.capturing .canvas-workspace-hint{display:none!important}.capturing .canvas-annotation,.capturing .canvas-rectangle__text{font-size:12px!important;padding-top:0!important}