No dark sections and no drop shadows. Text is always Ink on a light colour, so every pairing passes WCAG AA.
Sunshine#FFD84DPrimary actions, age badges, the hero
Sky#4CC3FFPretend play, 3D, calm panels
Mint#3DDC97Success, progress, puzzles
Bubblegum#FF8AC8Cuddles, gift moments, stickers
Grape#8E7CFFScience & tinkering, focus rings
Tangerine#FF9A3COn the move
Tomato#FF5A4EAccents only, never text
AaInk#2A2250Text and outlines only
Cream#FFFBF2Page background
PatternDurationEasingNotes
Hover bounce160mscubic-bezier(.34,1.56,.64,1)Buttons, chips, thumbnails. Overshoot gives the squish.
Toy wobble / spin550–900msease-out, plays onceEach toy has its own move: the rocket lifts, the top spins, the bear squishes. Decorative, never blocks a click.
Add to basket≈750ms burst, drawer at 260msspring 420 / 38Sticker burst from the button, then the drawer slides in. You can keep tapping while it plays.
Drawer / sheet≈320msspring, no bounce-backRight-hand drawer on desktop, bottom sheet on phones.
Page transition260mscubic-bezier(.2,.8,.2,1)Fade and 14px rise on route change. Skipped on first load so the page paints straight away.
Gift finder steps≈300msspring 520 / 38Slide in the direction of travel; single-choice steps advance 220ms after the tap.
Scroll herotied to scrolllinear mappingFloating toys drift and the stage tilts as you scroll. No pinning, no scroll-jacking.