Date Picker Component

Interactive calendar dropdown for date selection. Built following DESIGN.md form specifications.

DESIGN.md Specifications

Following the form input patterns from DESIGN.md:

Default Date Picker

calendar_today
April 2026
Su
Mo
Tu
We
Th
Fr
Sa
Select a start date for your project
<div class="elv-date-picker">
  <input
    type="text"
    class="elv-date-picker__input"
    placeholder="MM/DD/YYYY"
    readonly
    aria-label="Start date"
  >
  <span class="material-symbols-outlined elv-date-picker__icon">calendar_today</span>
  <div class="elv-date-picker__calendar">
    <!-- Calendar UI -->
  </div>
</div>

Focus State

calendar_today
2px purple border on focus

Error State

calendar_today
error Deadline is required

Disabled State

calendar_today
Date cannot be changed

Large Size

calendar_today
48px height for mobile-friendly touch targets

Date Range Picker

calendar_today
to
calendar_today
April 2026
Su
Mo
Tu
We
Th
Fr
Sa
Select a date range for the report
<div class="elv-date-picker elv-date-picker--range">
  <div class="elv-date-picker__range-inputs">
    <div class="elv-date-picker">
      <input class="elv-date-picker__input" placeholder="Start date" readonly>
      <span class="material-symbols-outlined elv-date-picker__icon">calendar_today</span>
    </div>
    <span class="elv-date-picker__range-separator">to</span>
    <div class="elv-date-picker">
      <input class="elv-date-picker__input" placeholder="End date" readonly>
      <span class="material-symbols-outlined elv-date-picker__icon">calendar_today</span>
    </div>
  </div>
</div>

Calendar States

Click the input to see interactive calendar:

calendar_today
Su
Mo
Tu
We
Th
Fr
Sa
States: today (purple border), selected (purple bg), hover (gray bg), disabled (light gray text)

Keyboard Navigation

Implementation Notes