Files
Bill Ballou f8bab9ee33 UI improvements: responsive layout, unified panels, credit legend
- Add responsive 2-panel layout (mobile single-col, tablet/desktop grid)
- Unify specialization ranking with credit bars, status badges, and
  expandable allocation breakdowns (remove standalone ResultsDashboard)
- Inline decision tree ceiling data on course buttons with spec counts
- Add Clear All button to reset all course selections
- Add collapsible CreditLegend explaining bars, badges, and limits
- Extract ModeComparison and MutualExclusionWarnings to Notifications
- Add useMediaQuery hook with matchMedia-based breakpoint detection
2026-02-28 21:17:50 -05:00

1.0 KiB

ADDED Requirements

Requirement: Clear all course selections

The course selection panel SHALL provide a "Clear All" button that resets all pinned course selections at once.

Scenario: Clear all with some pinned

  • WHEN at least one course is pinned and the user clicks "Clear All"
  • THEN all pinned courses SHALL be unpinned and every elective set SHALL return to the open state showing all course options

Scenario: Clear all button visibility

  • WHEN no courses are pinned
  • THEN the "Clear All" button SHALL not be visible

Scenario: Clear all button visible

  • WHEN at least one course is pinned
  • THEN the "Clear All" button SHALL be visible in the course selection panel header

Requirement: State persistence after clear all

After clearing all selections, the cleared state SHALL be persisted to localStorage like any other state change.

Scenario: Persistence

  • WHEN the user clicks "Clear All" and reloads the page
  • THEN all sets SHALL remain in the open (unpinned) state