Shipping estimate
Calculated from the warehouse closest to your address.
Icons 20px
Icons 16px
Responsive — 16 below 768, 20 above
Payment icons
Store badges
Flags (16)
Styles
Checkbox & radio
Scrollbar
Specimens
Bound action — press a specimen to see what it receives
Sizes and sale
Add or duplicate blocks in the customizer to line up any combination. Every specimen is live: click a chip's X (the loading cycle is real, ~800ms) or tab to it, and click a close control to flash the action bound to it. Only the X is clickable on a chip, and it is the chip's only tab stop, though hover and the focus ring cover the whole chip. Each is wired in one line, on every .design-guide__chip-action and every .design-guide__header-action: setAction(fn) on a chip, run(fn) on a close control. The footer's checkout CTA is wired the same way, on every .design-guide__footer-action: setAction(fn) again, because the CTA is a button and the footer holds no JS of its own.
Drawer header
Every specimen here is capped at 420px, the width of the slide-cart panel a drawer header actually renders in. Full-bleed across this page is a width the component never has, and at it even the long title fits on one line, so nothing clips. Resize the browser to compare 390 with 768 and up; the bar stays 63 and 65.
3 items
3 items
3 items
3 items
Chip
Slide cart footer
Pinned to the real slide-cart panel width the footer renders in: 390px below 768, where the drawer is full-bleed, and 420px from 768 up, the panel's own max-width. Each cell adds its own padding and border around that panel, so at 390 the specimens are wider than this page. They stay in one column, and the whole stack scrolls sideways (drag or swipe it) rather than the panel being squeezed. The total is a finished string the caller passes in: the footer reads nothing from cart and applies no money filter. The progress-tab slot is filled here with a dashed stub, because cart-progress-tab is its own component on its own ticket and is not on develop yet; with the slot empty the footer renders no box at all.
Select
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
No results found
Nothing matches that
Select modal
No results found
No results found
No results found
No results found
Select tab
Date field
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
Date picker
| Su | Mo | Tu | We | Th | Fr | Sa |
|---|---|---|---|---|---|---|
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
Single-line text field, every state on both surfaces. Each sample string below is a snippet parameter — nothing is hardcoded in the component.
Interactive states
Surface light
default
filled
disabled
error
error-filled
success
hint
icon-left
icon-right
icon-both
long-value
button
button-filled
button-disabled
button-error
button-success
button-clear
button-async
Surface dark
default
filled
disabled
error
error-filled
success
hint
icon-left
icon-right
icon-both
long-value
button
button-filled
button-disabled
button-error
button-success
button-clear
button-async
Multi-line text field, every state on both surfaces. Each sample string below is a snippet parameter — nothing is hardcoded in the component.
Interactive states
Surface light
default
filled
overflow
disabled
error
error-filled
success
hint
Surface dark
default
filled
overflow
disabled
error
error-filled
success
hint
Trigger and bubble are one component. The guide binds the log below through onToggle().
Interactive states
Static review
Shipping estimate
Calculated from the warehouse closest to your address.
Shipping estimate
Calculated from the warehouse closest to your address.
Shipping estimate
Calculated from the warehouse closest to your address.
Shipping estimate
Calculated from the warehouse closest to your address.
Shipping estimate
Calculated from the warehouse closest to your address.
Shipping estimate
Calculated from the warehouse closest to your address.
Free returns within 30 days
No title, so the close button is forced off even though it is switched on.
Shipping estimate
Dismissed with Escape or by moving focus away.
Shipping estimate
The close button takes the label authored on this specimen.
Shipping estimate
Calculated from the warehouse closest to your address.
How the delivery estimate is calculated
We take the warehouse closest to your address, add the carrier's own transit window for your postcode, and then add one working day for handling. Weekends and public holidays are excluded. Pre-orders start counting from the release date, not from the day the order is placed, and split shipments are estimated per parcel rather than per order.
Estimate
Closest warehouse.
Shipping estimate
Calculated from the warehouse closest to your address.
Shipping estimate
The accessible name does not start with the visible text, so the visible text is prefixed to it.
Shipping estimate
The authored name already leads with the visible text, so it is used as written and not doubled.
Shipping estimate
A colon follows the visible text, which the boundary list accepts, so the authored name is used as written.
Shipping estimate
Calculated from the warehouse closest to your address.
Final sale
This item cannot be returned or exchanged.
Shipping estimate
Calculated from the warehouse closest to your address.
Interactive
Shipping estimate
Opens on hover and on Tab, closes on Escape.
Shipping estimate
Hover does nothing here - the panel waits for a click.
Shipping estimate
Only shifts along the cross axis when it runs out of room.
First of the pair
Float tooltips are mutually exclusive.
Second of the pair
Float tooltips are mutually exclusive.
Viewport edges
Flush against the left edge
Authored to open to the right with a centred arrow.
Flush against the right edge
Authored to open to the right with a centred arrow.
Scroll me to the top edge
Authored to open upward with the arrow at the start slot.
Start at 10% and earn more with every sale. No cap. Top performers also get weekly Ad Boost on their best videos.
Get fresh collections before they go live, so your content is always ahead of the trend.
We analyze what's already converting and share it with you. Skip the guesswork and start posting.
Pick 1 bestseller (Full-Length Catsuit or Sleek Shorts Catsuit) and claim one of 5 free samples before they're gone.