## ADDED Requirements

### Requirement: Sidebar Shot Column Display Switch
The system SHALL provide a column visibility control in the Sidebar that allows users to toggle which columns are displayed in the Shot data table from any page in the application.

#### Scenario: User toggles column from Sidebar
- **WHEN** user interacts with the column display switch in the Sidebar
- **THEN** the Shot data table column visibility is updated globally across all views

#### Scenario: User views available column options
- **WHEN** user expands the column display control in the Sidebar
- **THEN** the system displays all available Shot table columns with their current visibility state

#### Scenario: Column preferences persist across sessions
- **WHEN** user toggles a column visibility setting
- **THEN** the preference SHALL be saved and restored when the user returns to the application

### Requirement: Global Column Visibility State
The system SHALL maintain a global column visibility state that is accessible from both the Sidebar and the Shot page column visibility control.

#### Scenario: Sidebar control reflects current visibility state
- **WHEN** user opens the Sidebar column control
- **THEN** the checkboxes SHALL reflect the current column visibility state from the global state

#### Scenario: Changes in Sidebar reflect in Shot page
- **WHEN** user toggles a column from the Sidebar
- **THEN** the Shot page column visibility control SHALL show the updated state

### Requirement: Default Column Visibility
The system SHALL provide sensible default column visibility settings that apply when no user preference has been saved.

#### Scenario: New user views Shot table
- **WHEN** a new user (no saved preferences) views the Shot data table
- **THEN** default columns (Thumbnail, Shot Name, Episode, Status) SHALL be visible
- **AND** task type columns SHALL be hidden by default

### Requirement: Column Types Supported
The system SHALL support toggling visibility for the following column types:
- Thumbnail
- Shot Name
- Episode
- Status
- Task type columns (dynamic based on project task types)

#### Scenario: User toggles thumbnail column
- **WHEN** user toggles the Thumbnail column visibility
- **THEN** the thumbnail column SHALL show/hide in the Shot data table

#### Scenario: User toggles task type column
- **WHEN** user toggles a task type column (e.g., "Animation", "Compositing")
- **THEN** that task status column SHALL show/hide in the Shot data table
