Emerald policy card showing a big refund line, the cancel-by window, and a tapered note below.
Requires shadcn/ui initialized. Run npx shadcn@latest init if you haven't.
import { Travel21 } from "@/components/beste/piece/travel21";
<Travel21
refund="Full refund"
cancelBy="Cancel free before May 10 · 23:59 local"
note="50% refund if cancelled between May 11 and May 20. Non-refundable after."
/>Emerald success card for a confirmed stay with check-in and check-out split and a bold total.
Itemized receipt for a trip with a dashed divider before the bold total and passenger note.
Staff remembered our names by day two. The rooftop at sunset alone is worth the trip — would book again in a heartbeat.
Stayed 4 nightsTraveler review card with avatar initials, star rating, a clipped body paragraph, and a trip-type footer.
Multi-leg journey card with stacked segment rows and an amber layover strip between them.
Flight result with airline, price, two airport codes, and a dotted route arc connecting times.
Hotel result row with a square gradient thumbnail, location line, star rating, and per-night price.