.ghost-node{-webkit-backdrop-filter:blur(12px);cursor:grab;pointer-events:auto;color:#1a1a2e;background:#ffffffd9;border:2px dashed #7c3aed80;border-radius:16px;width:280px;min-height:150px;padding:16px 20px;font-family:inherit;line-height:1.5;transition:opacity .2s,transform .2s,border-color .2s,box-shadow .2s;position:relative;box-shadow:0 4px 20px #7c3aed1a,0 1px 4px #0000000d}.ghost-node:active{cursor:grabbing}.ghost-node--generating{opacity:.8;border-style:dashed;border-color:#7c3aed99;animation:1.5s ease-in-out infinite ghost-node-pulse}@keyframes ghost-node-pulse{0%,to{box-shadow:0 4px 20px #7c3aed1a,0 0 #7c3aed33}50%{box-shadow:0 4px 20px #7c3aed26,0 0 0 8px #7c3aed00}}.ghost-node--preview{opacity:.7;border-style:dashed;border-color:#7c3aed80}.ghost-node--preview:hover{opacity:.9;border-color:#7c3aedcc}.ghost-node--editing{opacity:1;border:3px solid #7c3aed;box-shadow:0 0 0 4px #7c3aed33,0 8px 32px #7c3aed26}.ghost-node--focused{box-shadow:0 0 0 3px #7c3aed4d,0 8px 32px #7c3aed33}.ghost-node--dragging{cursor:grabbing;opacity:.9;transform:scale(1.02);box-shadow:0 12px 40px #7c3aed33,0 4px 12px #0000001a}.ghost-node__generating{flex-direction:column;gap:12px;display:flex}.ghost-node__generating-header{align-items:center;gap:8px;display:flex}.ghost-node__spinner{color:#7c3aed;animation:1s linear infinite ghost-node-spin}@keyframes ghost-node-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ghost-node__status-text{color:#7c3aed;flex:1;font-weight:500}.ghost-node__cancel-btn{color:#ef4444;cursor:pointer;background:#ef44441a;border:none;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:all .15s;display:flex}.ghost-node__cancel-btn:hover{background:#ef444433}.ghost-node__progress-container{background:#7c3aed1a;border-radius:2px;width:100%;height:4px;overflow:hidden}.ghost-node__progress-bar{background:linear-gradient(90deg,#7c3aed,#a78bfa);border-radius:2px;height:100%;transition:width .3s}.ghost-node__streaming-content{color:#4b5563;max-height:200px;line-height:1.6;overflow-y:auto}.ghost-node__header{align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.ghost-node__indicator{background:#7c3aed;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:6px}.ghost-node__title{color:#1a1a2e;flex:1;margin:0;font-weight:600;line-height:1.4}.ghost-node__content{color:#4b5563;overflow-wrap:break-word;margin:0;line-height:1.6}.ghost-node__action-bar{border-top:1px solid #7c3aed1a;gap:8px;margin-top:16px;padding-top:12px;display:flex}.ghost-node__action-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.ghost-node__action-btn--confirm{color:#fff;background:#7c3aed}.ghost-node__action-btn--confirm:hover{background:#6d28d9}.ghost-node__action-btn--edit{color:#7c3aed;background:#7c3aed1a}.ghost-node__action-btn--edit:hover{background:#7c3aed33}.ghost-node__action-btn--retry{color:#3b82f6;background:#3b82f61a}.ghost-node__action-btn--retry:hover{background:#3b82f633}.ghost-node__action-btn--cancel{color:#ef4444;background:#ef44441a}.ghost-node__action-btn--cancel:hover{background:#ef444433}.ghost-node__edit-title{color:#1a1a2e;background:#fff;border:1px solid #7c3aed4d;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-weight:600;transition:border-color .15s}.ghost-node__edit-title:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.ghost-node__edit-content{color:#4b5563;resize:vertical;background:#fff;border:1px solid #7c3aed4d;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-family:inherit;line-height:1.6;transition:border-color .15s}.ghost-node__edit-content:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.ghost-node__edit-actions{gap:8px;margin-top:12px;display:flex}.ghost-node__position-badge{color:#9ca3af;pointer-events:none;background:#0000000d;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:11px;position:absolute;bottom:4px;right:8px}.staging-bar{z-index:100;-webkit-backdrop-filter:blur(16px);background:#fffffff2;border:1px solid #7c3aed33;border-radius:16px;animation:.3s staging-bar-slide-up;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0000001f,0 2px 8px #7c3aed1a}@keyframes staging-bar-slide-up{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.staging-bar__content{flex-direction:column;gap:12px;min-width:300px;max-width:600px;padding:16px 20px;display:flex}.staging-bar__header{align-items:center;gap:8px;display:flex}.staging-bar__icon{color:#7c3aed}.staging-bar__title{color:#1a1a2e;font-size:15px;font-weight:600}.staging-bar__count{color:#7c3aed;margin-left:4px;font-weight:500}.staging-bar__generating-badge{color:#7c3aed;background:#7c3aed1a;border-radius:12px;align-items:center;gap:4px;margin-left:auto;padding:4px 8px;font-size:12px;display:flex}.staging-bar__generating-badge svg{animation:1s linear infinite ghost-node-spin}.staging-bar__actions{gap:8px;display:flex}.staging-bar__btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.staging-bar__btn--confirm{color:#fff;background:#7c3aed}.staging-bar__btn--confirm:hover{background:#6d28d9}.staging-bar__btn--cancel{color:#ef4444;background:#ef44441a}.staging-bar__btn--cancel:hover{background:#ef444433}.staging-bar__thumbnails{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.staging-bar__thumbnails::-webkit-scrollbar{height:4px}.staging-bar__thumbnails::-webkit-scrollbar-track{background:#0000000d;border-radius:2px}.staging-bar__thumbnails::-webkit-scrollbar-thumb{background:#7c3aed4d;border-radius:2px}.staging-bar__thumbnail{text-align:left;cursor:pointer;background:#7c3aed0d;border:1px solid #7c3aed1a;border-radius:10px;flex-shrink:0;width:120px;height:80px;padding:12px;transition:all .15s;overflow:hidden}.staging-bar__thumbnail:hover{background:#7c3aed1a;border-color:#7c3aed4d}.staging-bar__thumbnail--generating{background:#7c3aed1a;justify-content:center;align-items:center;display:flex}.staging-bar__thumbnail-icon{color:#7c3aed;animation:1s linear infinite ghost-node-spin}.staging-bar__thumbnail-title{color:#1a1a2e;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:12px;font-weight:600;overflow:hidden}.staging-bar__thumbnail-preview{color:#6b7280;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.4;display:-webkit-box;overflow:hidden}
