# Sheet

> Vaul, configured. The mobile primary overlay.

Source: https://lopifi.com/components/sheet
Part of: Lopifi — US GAAP books on autopilot, reviewed by a CPA (https://lopifi.com)

---

- **Family:** System & states — ---
- **Status:** Implemented
- **Spec:** https://lopifi.com/docs/catalog/08-system-states

## Install

```bash
npx shadcn@latest add @lopifi/theme
npx shadcn@latest add @lopifi/sheet
```

## Specification

Vaul, configured. **The primary overlay on phone** — a sheet enters from the thumb zone; a centered dialog puts its actions in the middle of the screen.

320ms `--ease-drawer` enter, 225ms exit, 1:1 finger tracking, `spring.gesture` release, velocity-aware dismissal, boundary damping, pointer capture, multi-touch protection. Snap points for partial heights. `overscroll-behavior: contain`. Footer padded to `max(24px, env(safe-area-inset-bottom))`.

## Rules this component obeys

Money is minor units, never floats. `null` is not `0` and neither is redacted. Negatives render in accounting parentheses with the parenthesis column reserved on both sides. Debit and credit are two columns. Per-currency decimal places. Polarity is explicit — up is not always good. Every figure states its period, entity, currency, basis and as-of.
