Changelog
Fix player venue fee override: setting to $0 no longer falls back to event venue fee
Split kiosk sign-up into two steps: name entry then bracket selection
Dismiss iPad keyboard on Enter in kiosk name input
Fix player venue fee: allow setting individual player's venue fee to zero
Hide kiosk sidebar by default with show/hide toggle for brackets and players
Auto-focus name input when kiosk sign-up form is shown
Add 10-second polling fallback to event manager for kiosk player updates
Fix venue fee editing: allow setting fee to $0 or clearing it
Add save button to custom payout calculator — saves custom split to bracket payouts section in place of presets
Redesign event manager: extract components, add Manage/Settle tabs, replace inline editors with drawer panels
Lock seeding drag-and-drop to vertical axis, auto-close modal on save, log seeding updates in activity log
Add payment reconciliation section with cash drawer tracking and per-method breakdown
Add inline Cash/Card/Venmo buttons to Collect Payment modal
Add bracket seeding with drag-and-drop reordering modal
Seed order is respected when pushing participants to Challonge
Add all-events list to admin page with full bracket slugs
Replace create-event page with instant blank event creation
Log activity when creating a new event
Add kiosk code option to create-event page
Trim player name when deleting from admin
Use event name and game name as Challonge bracket title
Add custom payout calculator modal with percent/dollar toggle
Adjust payout structure options
Add event-scoped activity log with drawer UI
Restrict admin route to owners only
Restrict user management page to owners only and hide nav link for non-owners
Add user management page for org assignments
Auto-check paid status when fee amount is set to 0
Add copy event action and actions dropdown menu
Add dark/light mode toggle with localStorage persistence
Add async game name and player name autocomplete to create-event and bracket forms
Add async player name autocomplete from org-wide history
Protect admin page behind authenticated session
Add live bracket/player sidebar to kiosk with realtime updates
Show logged-in user email in top nav
Turn collected stat card green at 100% collection
Add delete confirmation step and UI polish
Add kiosk code copy-to-clipboard and fix nav alignment
Add collect payment modal for quick payment processing
Rename signup routes to /kiosk and add Kiosk nav link
Switch to universal kiosk access code instead of event-specific URL
Add in-person kiosk signup page with access code gating
Add realtime broadcast to auto-refresh organizer page on kiosk signups
Add per-bracket push to Challonge and trim all text inputs on save
Add mark all paid button to player edit and add forms
Add pot bonus input to payouts section for per-bracket prize pool adjustment
Add consistent dark surface layering, Enter-to-save, Challonge delete option, and bracket links
Add payouts section with per-bracket payout structure calculator
Redesign event detail page with card-based sections and cleaner layout
Add event stats dashboard section with player/entry/fee tracking
Add venue fee to events and venue fee tracking per player
Show slug prefix next to bracket slug input in create/edit forms
Initial release: event creation, bracket management, player enrollment, Challonge API integration, multi-tenant org support