.wf-demo-container{width:100%;max-width:100%;margin:0 auto}.wf-demo-frame{background:#0f1117;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px #ffffff0f,0 20px 50px -12px #00000080;position:relative}.wf-demo-empty{background:#0f1117;border-radius:16px;padding:60px 40px;text-align:center;color:#64748b;border:1px solid rgba(255,255,255,.06)}.wf-demo-header{display:flex;align-items:center;padding:12px 16px;background:#161921;border-bottom:1px solid rgba(255,255,255,.06)}.wf-header-dots{display:flex;gap:8px}.wf-dot{width:12px;height:12px;border-radius:50%}.wf-dot-red{background:#ff5f57}.wf-dot-yellow{background:#febc2e}.wf-dot-green{background:#28c840}.wf-header-title{flex:1;text-align:center;font-size:13px;font-weight:500;color:#94a3b8;letter-spacing:.01em}.wf-header-spacer{width:52px}.wf-demo-canvas{position:relative;height:450px;background:#0f1117;overflow:hidden}.wf-canvas-inner{width:100%;height:100%;position:relative;transform-origin:0 0}.wf-connections-svg{position:absolute;top:0;left:0;width:4000px;height:4000px;pointer-events:none;z-index:1}.wf-connection{fill:none;stroke:#ffffff1f;stroke-width:2;transition:stroke .3s ease,stroke-width .3s ease}.wf-connection.active{stroke:#3b82f6;stroke-width:2.5}.wf-connection.complete{stroke:#22c55e;stroke-width:2}.wf-node{position:absolute;width:200px;background:#1a1d27;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;z-index:10;transition:all .3s ease;box-shadow:0 4px 12px #0003}.wf-node-idle{opacity:.7}.wf-node-active{opacity:1;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6,0 0 20px #3b82f64d,0 8px 24px #0000004d;transform:scale(1.02)}.wf-node-complete{opacity:1;border-color:#22c55e}.wf-node-badge{padding:6px 12px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.06);font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.wf-node-active .wf-node-badge{background:rgba(59,130,246,.1);color:#60a5fa}.wf-node-complete .wf-node-badge{background:rgba(34,197,94,.1);color:#4ade80}.wf-node-content{display:flex;align-items:center;justify-content:space-between;padding:12px;min-height:44px}.wf-node-name{font-size:14px;font-weight:500;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.wf-node-spinner{width:18px;height:18px;border:2px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:wf-spin .8s linear infinite;flex-shrink:0;margin-left:10px}@keyframes wf-spin{to{transform:rotate(360deg)}}.wf-node-check{width:18px;height:18px;color:#22c55e;flex-shrink:0;margin-left:10px}.wf-node-description{position:absolute;bottom:-32px;left:50%;transform:translate(-50%);background:rgba(59,130,246,.95);color:#fff;font-size:12px;font-weight:500;padding:6px 12px;border-radius:6px;white-space:nowrap;z-index:20;animation:wf-fadeIn .2s ease;box-shadow:0 4px 12px #3b82f64d}.wf-node-description:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid rgba(59,130,246,.95)}@keyframes wf-fadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.wf-controls{position:absolute;bottom:16px;right:16px;display:flex;gap:8px;z-index:30}.wf-control-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#94a3b8;cursor:pointer;transition:all .2s ease}.wf-control-btn:hover{background:rgba(255,255,255,.12);color:#f1f5f9}.wf-control-btn svg{width:16px;height:16px}.wf-start-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(15,17,23,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:40}.wf-start-btn{display:flex;align-items:center;gap:12px;padding:16px 32px;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 0 0 1px #ffffff1a,0 8px 24px #3b82f666}.wf-start-btn:hover{transform:scale(1.05);box-shadow:0 0 0 1px #ffffff26,0 12px 32px #3b82f680}.wf-start-icon{width:24px;height:24px}.wf-status-bar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 20px;background:rgba(26,29,39,.95);border:1px solid rgba(255,255,255,.1);border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:40;box-shadow:0 8px 24px #0000004d}.wf-status-spinner{width:16px;height:16px;border:2px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:wf-spin .8s linear infinite}.wf-status-text{font-size:14px;font-weight:500;color:#e2e8f0}.wf-success-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(15,17,23,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;animation:wf-fadeIn .3s ease}.wf-success-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 48px;background:rgba(26,29,39,.9);border:1px solid rgba(34,197,94,.3);border-radius:16px;box-shadow:0 0 40px #22c55e26,0 20px 50px #0006}.wf-success-icon{width:48px;height:48px;color:#22c55e}.wf-success-title{font-size:20px;font-weight:600;color:#f1f5f9;text-align:center}.wf-success-subtitle{font-size:14px;color:#94a3b8;margin-top:-8px;text-align:center}.wf-reset-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#94a3b8;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.wf-reset-btn:hover{background:rgba(255,255,255,.05);border-color:#fff3;color:#f1f5f9}.wf-reset-btn svg{width:16px;height:16px}@media (max-width: 768px){.wf-demo-canvas{height:350px}.wf-node{width:160px}.wf-node-name{font-size:12px}.wf-node-badge{font-size:10px;padding:5px 10px}.wf-start-btn{padding:12px 24px;font-size:14px}.wf-success-content{padding:24px 32px}.wf-success-text{font-size:16px}}@media (max-width: 480px){.wf-demo-frame{border-radius:12px}.wf-demo-canvas{height:300px}.wf-node{width:140px}.wf-header-title{font-size:12px}.wf-controls{bottom:8px;right:8px}.wf-control-btn{width:32px;height:32px}}
