.mobile-wf-graph { display: flex; flex-direction: column; gap: var(--space-sm); padding: var(--space-sm); overflow-y: auto; } .mobile-wf-node-group { display: flex; flex-direction: column; gap: var(--space-xs); } .mobile-wf-node-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-xs); padding-left: calc(var(--mobile-wf-depth, 0) * var(--space-md)); } .mobile-wf-node-actions { display: inline-flex; align-items: stretch; gap: var(--space-xs); } .mobile-wf-node-actions--connect { justify-content: flex-end; padding-left: calc((var(--mobile-wf-depth, 0) * var(--space-md)) + var(--space-xs)); } .mobile-wf-node-main { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--space-sm); min-width: 0; min-height: var(--wf-editor-touch-target); padding: var(--space-sm); border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--bg-secondary); color: var(--text); text-align: left; cursor: pointer; transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast); } .mobile-wf-node-main:hover { background: var(--bg-tertiary); } .mobile-wf-node-main:focus-visible { outline: none; box-shadow: var(--focus-ring-strong); } .mobile-wf-node-main:active { transform: scale(0.97); } .mobile-wf-node-row--selected .mobile-wf-node-main { border-color: var(--accent, var(--ws-info)); box-shadow: var(--focus-ring); } .mobile-wf-node-kind { min-width: 4.5rem; max-width: 6rem; padding: calc(var(--space-xs) / 2) var(--space-xs); border: 1px solid var(--border); border-radius: var(--radius-sm); color: var(--text-muted); font-size: 0.7rem; text-align: center; overflow-wrap: anywhere; } .mobile-wf-node-text { display: flex; flex-direction: column; min-width: 0; gap: calc(var(--space-xs) / 2); } .mobile-wf-node-title, .mobile-wf-node-summary, .mobile-wf-edge-target { min-width: 0; overflow-wrap: anywhere; } .mobile-wf-node-title { color: var(--text); font-size: 0.9rem; font-weight: 600; } .mobile-wf-node-summary { color: var(--text-muted); font-size: 0.78rem; } /* FNXC:WorkflowSimpleEditor 2026-06-17-03:02: Simple-editor step order is editable on touch and compact desktop surfaces, so move controls use the same minimum touch target and focus/active treatment as existing outline buttons without creating hidden shells for read-only or structural rows. */ .mobile-wf-node-expand, .mobile-wf-node-move, .mobile-wf-connect-button { display: inline-flex; align-items: center; justify-content: center; min-height: var(--wf-editor-touch-target); border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--bg-secondary); color: var(--text); cursor: pointer; transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast); } .mobile-wf-node-expand, .mobile-wf-node-move { width: var(--wf-editor-touch-target); } .mobile-wf-node-move:disabled { cursor: not-allowed; opacity: var(--opacity-disabled, 0.5); transform: none; } .mobile-wf-connect-button { gap: var(--space-xs); padding: var(--space-xs) var(--space-sm); } .mobile-wf-node-expand:hover, .mobile-wf-node-move:not(:disabled):hover, .mobile-wf-connect-button:hover { background: var(--bg-tertiary); } .mobile-wf-node-expand:focus-visible, .mobile-wf-node-move:focus-visible, .mobile-wf-connect-button:focus-visible, .mobile-wf-connect-select:focus-visible { outline: none; box-shadow: var(--focus-ring-strong); } .mobile-wf-node-expand:active, .mobile-wf-node-move:not(:disabled):active, .mobile-wf-connect-button:active { transform: scale(0.97); } .mobile-wf-connect-picker { display: grid; gap: var(--space-xs); padding-left: calc((var(--mobile-wf-depth, 0) * var(--space-md)) + var(--space-xs)); } .mobile-wf-connect-label { color: var(--text-muted); font-size: 0.875rem; } .mobile-wf-connect-select { width: 100%; } @media (max-width: 768px) { .mobile-wf-node-row { grid-template-columns: minmax(0, 1fr); } .mobile-wf-node-actions { justify-content: flex-end; } .mobile-wf-connect-button { flex: 1; } } .mobile-wf-node-meta { display: flex; flex-wrap: wrap; gap: var(--space-xs); padding-left: calc((var(--mobile-wf-depth, 0) * var(--space-md)) + var(--space-xs)); } .mobile-wf-column-chip, .mobile-wf-edge-chip { display: inline-flex; align-items: center; gap: var(--space-xs); min-height: 34px; max-width: 100%; padding: var(--space-xs) var(--space-sm); border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--bg); color: var(--text-muted); font-size: 0.75rem; } .mobile-wf-edge-chip { color: var(--text); cursor: pointer; transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast); } .mobile-wf-edge-chip:hover { background: var(--bg-secondary); } .mobile-wf-edge-chip:focus-visible { outline: none; box-shadow: var(--focus-ring-strong); } .mobile-wf-edge-chip:active { transform: scale(0.97); } .mobile-wf-edge-chip--selected { border-color: var(--accent, var(--ws-info)); } .mobile-wf-edge-target { color: var(--text-muted); } .mobile-wf-node-children { display: flex; flex-direction: column; gap: var(--space-sm); } .mobile-wf-graph-empty { padding: var(--space-lg); color: var(--text-muted); text-align: center; }