diff --git a/frontend/src/components/ui/date-picker.tsx b/frontend/src/components/ui/date-picker.tsx index 871449b..33dce13 100644 --- a/frontend/src/components/ui/date-picker.tsx +++ b/frontend/src/components/ui/date-picker.tsx @@ -464,7 +464,7 @@ const DatePicker = React.forwardRef( disabled={disabled} onMouseDown={(e) => e.preventDefault()} onClick={togglePopup} - className="absolute right-2.5 top-1/2 -translate-y-1/2 rounded p-0.5 bg-background hover:bg-accent/10 transition-colors disabled:opacity-50 z-[1]" + className="absolute right-2.5 top-1/2 -translate-y-1/2 rounded p-0.5 hover:bg-accent/10 transition-colors disabled:opacity-50" tabIndex={-1} aria-label="Open calendar" > diff --git a/frontend/src/index.css b/frontend/src/index.css index 37c9e98..622024b 100644 --- a/frontend/src/index.css +++ b/frontend/src/index.css @@ -205,7 +205,14 @@ input[type="datetime-local"]::-webkit-calendar-picker-indicator { .datepicker-wrapper input::-webkit-calendar-picker-indicator { display: none; } -/* Firefox: opaque background on the custom icon covers the native one (see date-picker.tsx) */ +/* Firefox: -moz-appearance: textfield strips all native chrome including the calendar icon. + This is safe because the DatePicker component provides its own custom popup. */ +@-moz-document url-prefix() { + .datepicker-wrapper input[type="date"], + .datepicker-wrapper input[type="datetime-local"] { + -moz-appearance: textfield; + } +} /* ── Form validation — red outline only after submit attempt ── */ form[data-submitted] input:invalid,