refactored field vs. viewport size