🧊 Brand & design system

The KIDIGLOO system.

Cool, sturdy exterior; warm, safe interior. One parent system that every Quarlabs brand inherits — trustworthy enough for identity & payments, playful enough for kids. Sub-brands like Whimzi keep the bones and change the skin.

02 — Foundations

Colour

Snow + hearth. Cool ice-blues (Frost) and deep indigo (Night) carry trust and structure; warm amber→coral (Ember/Hearth) carries the cosy glow. Semantic tokens flip automatically in dark mode.

Core palette

Night
#14143a
Frost
#1f8ae3
Sky
#74c0fb
Hearth
#ff7e5f
Ember
#ffb454
Snow
#f4faff

Ramps

Night--color-night-*
50
100
200
300
400
500
600
700
800
900
Frost--color-frost-*
50
100
200
300
400
500
600
700
800
900
Ember--color-ember-*
50
100
200
300
400
500
600
700
800
900
Slate--color-slate-*
50
100
200
300
400
500
600
700
800
900

Semantic tokens

primary
--primary
accent
--accent
success
--success
warning
--warning
danger
--danger
info
--info

Tenant accents

Every brand that joins the hub gets one accent block. Sub-brands override the brand layer with theirs.

Whimzi pink
Whimzi purple
Teal
Sun
Sky

03 — Foundations

Typography

Baloo 2 for display (rounded, warm, sturdy). Plus Jakarta Sans for UI & body (warm but credible, great on billing & admin). JetBrains Mono for code, keys & tokens. Bilingual-ready (English + 繁體中文).

Aa
Baloo 2
Display · 600 / 700 / 800
font-display
Aa
Plus Jakarta Sans
UI / body · 400–800
font-sans
Aa
JetBrains Mono
Code · keys · tokens
font-mono
Display
One cosy home
Heading 1
Membership, simplified
Heading 2
Sign in with KIDIGLOO
Heading 3
Your family’s subscriptions
Body large
Warm inside, sturdy outside — one account for every brand.
Body
Tenant apps ask KIDIGLOO whether a member is entitled to a feature.
Small
We minimise data we collect about children.
Caption / mono
ENTITLEMENTS · API
繁體中文
一個帳戶,暢享每個品牌 ✨ 安全又溫暖的家

04 — Foundations

Spacing

A 4px base grid. Use the scale — never arbitrary values — so every brand lines up on the same rhythm.

space-1
4px
space-2
8px
space-3
12px
space-4
16px
space-6
24px
space-8
32px
space-12
48px
space-16
64px

05 — Foundations

Radius

Rounded but structured — cosy, not bubbly. Pills for actions & chips; soft rectangles for cards & inputs.

rounded-xs
rounded-sm
rounded-md
rounded-lg
rounded-xl
rounded-2xl
rounded-3xl
rounded-full

06 — Foundations

Elevation

Soft, cool, snow-tinted shadows. The warm “hearth” glow is reserved for the single most important action on a screen.

xs
sm
md
lg
xl
hearth

07 — Foundations

Motion

Cosy easing with a slight “snap” when blocks settle. Gentle and purposeful — and fully disabled under prefers-reduced-motion.

🧊
Float
Idle warmth (mark, hero)
🧊
Glow
The hearth, live states
🧊
Sparkle
Delight accents
🧊
Snap-in
Blocks settling in
Cosy easecubic-bezier(.22,1,.36,1)
Snap easecubic-bezier(.34,1.56,.64,1)
Fast150ms
Base / Slow250ms / 400ms

08 — Library

Components

Built once on the tokens, inherited by every brand. Primitives live in /components/ui.

Buttons

Pills. One warm “hearth” CTA per screen.

Badges & status

Entitlements, plan tiers, account states.

Frost planFamilyEntitledTrial ends soonPast dueVerified

Fields

Inputs, labels, helper text.

Alerts

Semantic feedback that flips in dark mode.

Entitlement granted across the household.
!Your Family plan renews in 3 days.
×Payment failed — update your card.

Tenant blocks

Each brand is a coloured block snapping into the hub.

Whimzi
connected tenant
Brand Two
connected tenant
Brand Three
connected tenant

09 — Library

Iconography

Rounded line icons — 1.75 stroke, round caps & joins, 24px grid. Warm, friendly, legible. Matches the dome’s curves.

Home
Key (SSO)
Shield
Family
Billing
Sparkle

10 — Brand

Voice & tone

Warm, plain-spoken, and parent-respecting. Playful in small moments; serious where it counts — money, privacy, and children.

Principles

Cosy, not childish. Friendly to parents first; the delight is in details, not baby-talk.

Clear over clever. Especially around billing, consent, and security. Say exactly what happens.

Safe by default. Lead with what we protect and what we don’t collect.

Bilingual & inclusive. Reads naturally in English and 繁體中文.

Say / Don’t say

One account for every brand your kids love.
Sign up for our SSO IdP solution.
We keep children’s data to a minimum.
We collect data to improve engagement.
Your card was declined — let’s fix it.
Error 402: payment_intent failed.
You’re all set. Welcome home. 🧊
Onboarding complete.

11 — System

Sub-brands inherit, then vary

The whole point of a parent system. Both panels below use the same components and the same spacing, type scale, radius and motion — only the brand/accent tokens differ. Whimzi just adds class="theme-whimzi".

KIDIGLOO coreparent

Welcome home.

Trust-leaning, warm. Frost + Night + Hearth.

Frost planEntitled
Whimzitenant

Today’s wonders ✨

Same bones, playful skin. Pink → purple, sparkly.

Sparkle planEntitled

Inheritance is defined in app/globals.css.theme-whimzi. Real Whimzi also swaps the display face to Nunito.