.alif-studio-canvas{background:radial-gradient(circle at 72% 12%, color-mix(in srgb, var(--alif-color-focus) 9%, transparent), transparent 32%), var(--alif-color-background);outline:0;min-width:0;position:relative}.alif-studio-canvas .react-flow{height:100%}.alif-studio-canvas .react-flow__pane{cursor:grab}.alif-studio-canvas .react-flow__pane:active{cursor:grabbing}.alif-studio-canvas .react-flow__node{border-radius:var(--alif-radius-lg,12px)}.alif-studio-canvas .react-flow__edge-path{stroke:color-mix(in srgb, var(--alif-color-primary) 72%, var(--alif-color-focus));stroke-width:var(--alif-border-focus)}.alif-studio-canvas .react-flow__edge.selected .react-flow__edge-path{filter:drop-shadow(0 0 var(--alif-space-1) var(--alif-color-focus));stroke:var(--alif-color-focus);stroke-width:var(--alif-space-three-quarter)}.alif-studio-canvas .react-flow__controls,.alif-studio-canvas .react-flow__minimap{background:color-mix(in srgb, var(--alif-color-surface) 92%, transparent);border:var(--alif-border-default) solid var(--alif-color-border);border-radius:var(--alif-radius-md,8px);box-shadow:var(--alif-shadow-card);overflow:hidden}.alif-studio-canvas .react-flow__controls-button{border-color:var(--alif-color-border);fill:var(--alif-color-foreground);background:0 0}.alif-studio-canvas-meta{backdrop-filter:blur(var(--alif-space-3));background:color-mix(in srgb, var(--alif-color-surface) 88%, transparent);border:var(--alif-border-default) solid var(--alif-color-border);border-radius:var(--alif-radius-pill,999px);color:var(--alif-color-muted-foreground);font-size:var(--alif-font-size-4xs);align-items:center;gap:var(--alif-space-2);left:var(--alif-space-3);padding:var(--alif-space-one-half) var(--alif-space-2);top:var(--alif-space-3);z-index:6;display:flex;position:absolute}.alif-studio-canvas-meta .is-live{background:var(--alif-color-status-done);box-shadow:0 0 var(--alif-space-2) var(--alif-color-status-done);height:var(--alif-space-one-half);width:var(--alif-space-one-half);border-radius:50%}.alif-studio-canvas-meta kbd{background:var(--alif-color-muted);border:var(--alif-border-default) solid var(--alif-color-border);border-radius:var(--alif-radius-xs);color:var(--alif-color-quiet-foreground);font-family:var(--alif-font-mono);padding:var(--alif-space-half) var(--alif-space-one-quarter)}.alif-studio-node-card{background:linear-gradient(145deg, color-mix(in srgb, var(--node-accent) 6%, var(--alif-color-surface)), var(--alif-color-surface));border:var(--alif-border-default) solid var(--alif-color-border);border-radius:var(--alif-radius-lg,12px);box-shadow:var(--alif-shadow-card);color:var(--alif-color-foreground);min-width:240px;overflow:hidden}.alif-studio-node-card.is-selected{border-color:var(--node-accent);box-shadow:0 0 0 var(--alif-border-focus) color-mix(in srgb, var(--node-accent) 25%, transparent), var(--alif-shadow-card)}.alif-studio-node-card.is-incompatible{border-color:var(--alif-color-status-danger);opacity:var(--alif-opacity-disabled)}.alif-studio-node-card footer button:disabled{cursor:not-allowed;opacity:var(--alif-opacity-disabled)}.alif-studio-node-card__header{border-bottom:var(--alif-border-default) solid var(--alif-color-border-subtle);align-items:center;gap:var(--alif-space-2);padding:var(--alif-space-two-half);grid-template-columns:auto 1fr auto;display:grid}.alif-studio-node-card__icon{background:color-mix(in srgb, var(--node-accent) 16%, var(--alif-color-muted));border:var(--alif-border-default) solid color-mix(in srgb, var(--node-accent) 35%, var(--alif-color-border));border-radius:var(--alif-radius-sm);color:var(--node-accent);justify-content:center;align-items:center;width:30px;height:30px;font-weight:800;display:flex}.alif-studio-node-card__header>div{gap:var(--alif-space-half);min-width:0;display:grid}.alif-studio-node-card__header strong{font-size:var(--alif-font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.alif-studio-node-card__header small,.alif-studio-node-card footer,.alif-studio-node-port-row{color:var(--alif-color-muted-foreground);font-size:var(--alif-font-size-3xs)}.alif-studio-node-card__header button,.alif-studio-node-result button{color:var(--alif-color-muted-foreground);background:0 0;border:0}.alif-studio-node-card__ports{gap:var(--alif-space-3);padding:var(--alif-space-2) 0;grid-template-columns:1fr 1fr;display:grid}.alif-studio-node-card__ports>div{gap:var(--alif-space-one-half);display:grid}.alif-studio-node-port-row{align-items:center;gap:var(--alif-space-one-half);min-width:0;display:flex}.alif-studio-node-port-row.is-output{justify-content:flex-end}.alif-studio-node-port-row span{color:var(--alif-color-foreground);text-overflow:ellipsis;overflow:hidden}.alif-studio-node-port-row i{color:var(--node-accent);font-family:var(--alif-font-mono);font-size:var(--alif-font-size-4xs);font-style:normal}.alif-studio-node-port-row .react-flow__handle{background:var(--alif-color-surface);border:var(--alif-border-focus) solid var(--node-accent);height:var(--alif-space-two-half);width:var(--alif-space-two-half);flex:none}.alif-studio-node-card__properties{background:var(--alif-color-muted);border-block:var(--alif-border-default) solid var(--alif-color-border-subtle);gap:var(--alif-space-1);padding:var(--alif-space-2) var(--alif-space-two-half);display:grid}.alif-studio-node-card__properties>span{gap:var(--alif-space-2);justify-content:space-between;min-width:0;display:flex}.alif-studio-node-card__properties small{color:var(--alif-color-muted-foreground)}.alif-studio-node-card__properties strong{font-size:var(--alif-font-size-3xs);text-overflow:ellipsis;white-space:nowrap;max-width:62%;overflow:hidden}.alif-studio-node-result{align-items:center;gap:var(--alif-space-2);margin:var(--alif-space-2);grid-template-columns:42px 1fr auto;display:grid}.alif-studio-node-result>img,.alif-studio-node-result>span{background:var(--alif-color-muted);border-radius:var(--alif-radius-sm);object-fit:cover;width:42px;height:42px}.alif-studio-node-result>span{justify-content:center;align-items:center;display:flex}.alif-studio-node-result>div:nth-child(2){gap:var(--alif-space-half);min-width:0;display:grid}.alif-studio-node-result strong{font-size:var(--alif-font-size-3xs);text-overflow:ellipsis;overflow:hidden}.alif-studio-node-result small{color:var(--alif-color-muted-foreground);font-size:var(--alif-font-size-4xs)}.alif-studio-node-result__pager{display:flex}.alif-studio-node-card footer{border-top:var(--alif-border-default) solid var(--alif-color-border-subtle);padding:var(--alif-space-2) var(--alif-space-two-half);justify-content:space-between;align-items:center;display:flex}.alif-studio-node-card footer button{background:color-mix(in srgb, var(--node-accent) 14%, var(--alif-color-muted));border:var(--alif-border-default) solid color-mix(in srgb, var(--node-accent) 32%, var(--alif-color-border));border-radius:var(--alif-radius-sm);color:var(--node-accent);font-size:var(--alif-font-size-3xs);padding:var(--alif-space-one-half) var(--alif-space-2);font-weight:700}.alif-studio-node-resizer{color:var(--alif-color-quiet-foreground);height:var(--alif-space-3);width:var(--alif-space-3);background:0 0;border:0;bottom:0;right:0}