DesignMD Maker logo ← Home Report · Claude Opus 4.8
K
Design System

Keyhan Bebek

A gentle, warm, pastel baby-care tracking app built on soft-UI layered cards, playful emoji-style iconography, tinted category surfaces, and an editorial serif/sans pairing.

Soft-UI pastel nursery — warm tinted cards with large radii, feather-soft shadows, serif display over Inter
Source · https://omegabilisim.com.tr/bebek/ Engine · Claude Opus 4.8 Created · Jul 20, 2026 09:17 Cost · $0.5364
Detected Language

Design Style

soft-ui / layered elevation
5 large soft low-opacity shadows
rounded / pill-heavy
many large radii & pills
Palette

Colors

primary
#F0A868
2 on white · 10.51 on black · 28° 82% 67%
secondary
#6F8AD4
3.35 on white · 6.26 on black · 224° 54% 63%
accent
#7FC8A9
1.96 on white · 10.74 on black · 155° 40% 64%
Token Roles 5 tokens
background
#FEFEFE · 20.82:1 vs black
surface
#FFFFFF · 21:1 vs black
text-primary
#2F3A44 · 11.61:1 vs white
text-secondary
#6A7480 · 4.75:1 vs white
border
#ECE4D8 · 16.66:1 vs black
Detected Palette 24 colors by frequency in source CSS
#786E5F
used 6× · 36° 12% 42%
#2A1C0D
used 4× · 31° 53% 11%
#DFE7F8
used 3× · 221° 64% 92%
#6A7480
used 3× · 213° 9% 46%
#DCEFE4
used 3× · 145° 37% 90%
#FFFFFF
used 3× · 0° 0% 100%
#F6C79A
used 3× · 29° 84% 78%
#000000
used 3× · 0° 0% 0%
#FAF3E6
used 2× · 39° 67% 94%
#FBE6C4
used 2× · 37° 87% 88%
#D9943F
used 2× · 33° 67% 55%
#FFF8EE
used 2× · 35° 100% 97%
#F5EBD9
used 2× · 39° 58% 91%
#F0F7FF
used 2× · 212° 100% 97%
#DCEBFA
used 2× · 210° 75% 92%
#F2F6FD
used 2× · 218° 73% 97%
#E0E9F8
used 2× · 218° 63% 93%
#D3ECDF
used 2× · 149° 40% 88%
#4F9C79
used 2× · 153° 33% 46%
#F2F0EC
used 2× · 40° 19% 94%
#8FB4F2
used 2× · 218° 79% 75%
#F4B942
used 2× · 40° 89% 61%
#6FB3E0
used 2× · 204° 65% 66%
#B98A5A
used 2× · 30° 40% 54%
Surface Treatments

Gradients

linear-gradient(to top, #5a72c0, #8fa3e0)
linear-gradient(to top, #6fb3e0, #a7d2f0)
linear-gradient(to top, #b98a5a, #d4a97c)
Type System

Typography

display
Fraunces
2.5rem · 700 · LH 1.05 · LS -0.01em
Keyhan Bebek
heading
Fraunces
1.85rem · 700 · LH 1.1 · LS 0
Keyhan Bebek
eyebrow
Inter
0.82rem · 700 · LH 1.4 · LS 0.06em
Typography is the discipline of rendering language visible. Spacing, weight, and rhythm carry meaning long before words are read.
body
Inter
1.05rem · 400 · LH 1.45 · LS 0
Typography is the discipline of rendering language visible. Spacing, weight, and rhythm carry meaning long before words are read.
Detected Font Stacks
'Inter''Fraunces'var(--serif)var(--sans)inherit
Structure

Layout

Container
Section padding: 24px 4px 14px · card padding: 22px 20px 20px
Grid
12-column reference grid · gap 16px
Spacing Scale
base
8px
gap
16px
card-padding
22px 20px 20px
section-padding
24px 4px 14px
detected
2px
detected
3px
detected
4px
detected
5px
detected
6px
detected
8px
detected
10px
detected
11px
detected
12px
detected
14px
Depth

Elevation & Depth

level 1
0 6px 18px rgba(120,110,95,.06)
level 2
0 4px 14px rgba(193,150,90,.25)
level 3
0 4px 12px rgba(120,110,95,.08)
level 4
0 8px 22px rgba(120,110,95,.08)
level 5
0 8px 22px rgba(120,110,95,.06)
level 6
0 8px 24px rgba(0,0,0,.25)
Geometry

Shapes

card
26px
control
18px
pill
999px
r4
50%
r5
3px
r6
12px
r7
14px
Tokens in Context

Components

card
styleWhite or category-tinted surface, 26px radius, 1px matching-tint border, feather shadow 0 8px 22px rgba(120,110,95,.08); category variants swap bg + border + label color.
button
stylePrimary = solid warm amber (#f0a868) with dark-brown text (#2a1c0d), 18px radius, 56px min tap height, 600 weight; :active scale(.98).
Animation

Motion

Keyframes 2 found
@keyframes fade
from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; }
@keyframes slideup
from { transform: translateY(100%); } to { transform: none; }
Applied Animations
fade .25s easefade .15s easefade .2s easeslideup .28s cubic-bezier(.2,.8,.2,1)none !important
Easing Curves
cubic-bezier(.2,.8,.2,1)
Transitions
transform .08s easeheight .4s easebackground .2stransform .2sfilter .15s easenone !important
Proof

Live Preview

Complete Reference

Full design.md Specification

Keyhan Bebek — Design Specification

1. Overview

FieldValue
SiteKeyhan Bebek (omegabilisim.com.tr/bebek)
Analyzed2024
Design languageSoft-UI pastel nursery, category-tinted cards
Overall moodWarm, gentle, calm, friendly, domestic
Framework hintsVanilla JS PWA (no framework libs); CSS custom properties; mobile-first, max-width 560px

2. Design Style & Language

Soft-UI / Layered Elevation (primary style)

Signature: Cards use large corner radii (--r-lg: 26px), 1px borders that match the card's own tint (never a hard neutral grey), and large, low-opacity, warm-tinted ambient shadows — 0 8px 22px rgba(120,110,95,.08) and 0 6px 18px rgba(120,110,95,.06). The shadow color is a warm brown-grey (rgba 120,110,95) rather than pure black, keeping everything soft.

Where applied: big status cards, quick-action tiles, recent-activity panel, stat cards.

Rules for new pages:

  • Every elevated surface uses radius ≥ 18px and a warm low-opacity shadow — never sharp black drop shadows.
  • Borders are always a lighter tint of the surface's own hue (feed card → #f6ecd6, sleep card → #e3ebf3), giving a "frosted candy" edge.
  • Keep contrast gentle: pastel fills, mid-grey text, no pure black backgrounds.

Category-tinted colour coding

Signature: Each functional domain has a dedicated pastel palette: Feed = amber, Sleep = blue, Diaper = mint, Note = lilac, Medicine = coral. Each has a "solid" token and a "-soft" background token.

Where applied: big cards, action tiles, timeline icon circles, timeline time-pills, chart bars.

Rules:

  • Assign one hue per concept; surface = the -soft tint, icon circle = a slightly deeper tint, label + time-pill text = the deepest saturated variant.
  • Never mix two category hues in one card except in explicit multi/summary layouts.
  • Time/status pills echo the card's hue (feed pill #fbedd6/#c98a3b).

Pill-heavy rounded UI

Signature: border-radius: 999px on chips, avatars, icon circles, time pills, toasts, progress bars.

Rules: favour full-round pills for status/meta chips; use 50% circles for all icon containers.

3. Design Principles

  • Warmth over sterility — warm off-white background (#fefefe) and warm-brown shadow tint make even white cards feel cozy.
  • Colour = meaning — hue communicates the activity type consistently everywhere.
  • Serif for the human moment — Fraunces serif for names, values and hero numbers; Inter for labels and body.
  • Soft depth, no harsh lines — layered feather shadows, tinted borders, generous radius.
  • Playful, tactile icons — 3D-style emoji/illustrated icons sit in tinted round wells.
  • Calm density — generous whitespace, one clear action group at a time.

4. Color System

Brand / Category (solid + soft)

TokenHexRGBHSLUsage
--feed#f0a868240,168,10430,80%,67%Primary action, feed hue
--feed-soft#fdf3e3253,243,22737,76%,94%Feed card bg tint
--sleep#6f8ad4111,138,212224,54%,63%Sleep hue, secondary/links
--sleep-soft#eef2fb238,242,251222,68%,96%Sleep card bg
--diaper#7fc8a9127,200,169145,39%,64%Diaper/mint hue
--diaper-soft#eef7f1238,247,241140,38%,95%Diaper card bg
--note#c79fe0199,159,224277,48%,75%Note/lilac hue
--note-soft#f6eefb246,238,251277,60%,96%Note bg
--medicine#e88a8a232,138,1380,68%,73%Medicine/coral hue
--medicine-soft#fef7f1254,247,24128,72%,97%Medicine bg

Neutrals ramp

TokenHexUsage
--bg-0 / --bg-1#fefefePage background
--card#ffffffCard surface
--card-2#f3eee7Ghost button / toast bg
--line#ece4d8Warm border/divider
--text#2f3a44Primary text
--dim#8a93a0Secondary/muted text
(meta)#6a7480Card sub-text
(eyebrow)#5b6675Section title text
--primary#2a1c0dDark-brown text on amber buttons

Semantic

TokenHexUsage
--danger#e07a7aDestructive text/border
insight-ok#7fc8a9Positive accent bar
insight-warn#e2a13cWarning accent bar

Deepest label variants

PurposeHex
feed label#d9943f
feed time-text#c98a3b
diaper label/text#4f9c79
sleep time-text#6b62b0
medicine text#c25c5c
note text#9568bb

Dark mode: not implemented.

5. Gradients

NameCSSUsage
Gate washlinear-gradient(170deg, var(--bg-0) 0%, var(--bg-1) 100%)Login overlay bg
Bar feedlinear-gradient(to top, var(--feed), #f6c79a)Feed chart bars
Bar nightlinear-gradient(to top, #5a72c0, #8fa3e0)Night chart segment
Bar peelinear-gradient(to top, #6fb3e0, #a7d2f0)Diaper pee bars
Bar pooplinear-gradient(to top, #b98a5a, #d4a97c)Diaper poop bars
Bar sleeplinear-gradient(to top, var(--sleep), #a6b8e8)Sleep bars

6. Typography

RoleStackSourceWeights
Display / values'Fraunces', Georgia, serifGoogle Fonts500,600,700
UI / body'Inter', system-ui, sans-serifGoogle Fonts400,500,600,700

Type scale:

TokenSizeLHWeightTrackingUsage
brand-name2.5rem1.05700 (serif)-0.01emBaby name
hero-value2rem1.1600 (serif)0Stat numbers
bigcard-main1.85rem1.1700 (serif)0Card headline value
brand-hello1.15rem5000"Merhaba,"
body/button1.05rem1.45400/6000Body, buttons, list titles
meta0.95rem4000Card sub
eyebrow/section0.82rem1.47000.06emUPPERCASE labels
bar-lbl0.72rem4000Chart labels

7. Spacing & Sizing

Base unit 8px. Common tokens: 4, 6, 8, 10, 12, 14, 16, 18, 22, 24, 32, 40px. Card gap 16px, action grid gap 12px. Tap target --tap: 56px.

8. Layout & Grid

  • Mobile-first single column; content container max-width: 560px; margin: 0 auto.
  • .screens has 22px horizontal padding, top corners rounded 26px.
  • Big cards: 2-col grid 1fr 1fr, gap 16px.
  • Quick actions: repeat(4, 1fr), gap 12px.
  • No formal media breakpoints; stack at ~768px for demo purposes.

9. Borders & Radius

TokenValue
--r-lg26px (cards, panels)
--r-md18px (buttons, inputs)
--r-sm14px (small controls)
pill999px (chips, avatars, time-pills)
circle50% (icon wells)

Borders: 1px, tinted to surface hue or --line #ece4d8.

10. Shadows & Elevation

TokenValueUse
shadow-card0 8px 22px rgba(120,110,95,.08)Big cards
shadow-card-soft0 6px 18px rgba(120,110,95,.06)Stat/chart cards
shadow-panel0 8px 22px rgba(120,110,95,.06)Recent panel
shadow-avatar0 4px 14px rgba(193,150,90,.25)Brand avatar
shadow-chip0 4px 12px rgba(120,110,95,.08)Caregiver chip
shadow-tab0 -4px 20px rgba(120,110,95,.06)Bottom tab bar
shadow-overlay0 8px 24px rgba(0,0,0,.25–.4)Toast/tooltip

Strategy: single large soft warm-tinted ambient shadow per surface; only overlays use black shadows.

11. Effects

No backdrop-filter / glassmorphism present. Effects are limited to soft shadows, tinted fills, and grayscale/opacity icon filters on inactive tabs (filter: grayscale(1) opacity(.55)).

11b. Animated Background

None. Background is a flat warm white (#fefefe).

12. Animation & Motion

Durations: 0.15s (tooltip), 0.2s (toast/backdrop), 0.25s (screen fade), 0.28s (sheet), 0.4s (bar height/width). Easing: ease default, cubic-bezier(.2,.8,.2,1) for the bottom sheet.

Keyframes:

@keyframes fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes slideup { from { transform: translateY(100%); } to { transform: none; } }
  • Screen entrance: .screen { animation: fade .25s ease; }
  • Bottom sheet: slideup .28s cubic-bezier(.2,.8,.2,1).
  • Charts animate height/width .4s ease.
  • Hover/press: buttons/actions transform: scale(.96–.98) on :active (transform .08s ease).
  • Reduced motion: @media (prefers-reduced-motion: reduce) disables all animation/transition.

12b. Required JavaScript

Mostly CSS-driven. JS is used for class-toggle state changes (is-medicine, is-multi, is-asleep, sheet-open) and could drive a light entrance stagger. The companion animations.js implements optional [data-reveal] fade-up reveals matching the fade keyframe. Not required for the static first viewport.

13. Components

Button — Primary

PropValue
bg#f0a868
color#2a1c0d
radius18pxmin-height56pxweight600:activescale(.98)

Button — Ghost

bg #f3eee7, border 1px #ece4d8, color #2f3a44, radius 18px.

Card (bigcard)

Radius 26px, padding 22px 20px 20px, 1px tinted border, shadow-card. Icon well 58px circle. Label = eyebrow (uppercase, 0.82rem, 700, category color). Main value = Fraunces 1.85rem 700. Divider = rgba(120,120,120,.14) 1px. Meta row 0.82rem #6a7480.

Quick Action tile

min-height 116px, radius 26px, tinted bg+border, centered 52px icon + 0.98rem 600 label. :active scale(.96).

Timeline row

grid auto 1fr auto; 50px circle icon well (tinted per category); title 1.05rem 700 with soft-weight (500, #6a7480) suffix; time-pill 999px radius, tinted bg + category text color, 700.

Badge / Pill (time-pill)

padding 6px 12px, radius 999px, category bg + category text, 700, tabular numerals.

Caregiver chip

white pill, 1px #ece4d8, radius 999px, padding 11px 16px, avatar 26px circle, shadow-chip.

Input

height 56px, bg #fefefe, 1px #ece4d8, radius 18px, 1.05rem, padding 0 14px.

14. Iconography

Illustrated/3D emoji-style PNG icons (bottle, diaper, medicine, note, moon) sitting inside tinted circular wells (50% radius): 58px in big cards, 56px in actions, 50px in timeline, 44px in stat cards. Icon image 40/52/36/32px respectively. For recreation, use rich colored inline SVG or emoji; never grey placeholders. Inactive tab icons are grayscale(1) opacity(.55).

15. Imagery & Media

Rounded profile avatar photo (62px circle, warm shadow). Category icons are the primary imagery — soft 3D illustration aesthetic. No large photography.

16. Accessibility

CheckStatus
Text contrast (body #2f3a44 on white)Pass
Amber button dark text (#2a1c0d on #f0a868)Pass
Focus ring 3px solid var(--note)Present
Tap targets ≥ 44–56pxPass
Reduced-motion honoredYes
Colour-only meaningIcons + labels back up colour coding

17. Design Tokens (copy-paste)

:root{
  --bg-0:#fefefe; --bg-1:#fefefe; --card:#fff; --card-2:#f3eee7; --line:#ece4d8;
  --text:#2f3a44; --dim:#8a93a0; --meta:#6a7480;
  --feed:#f0a868; --feed-soft:#fdf3e3;
  --sleep:#6f8ad4; --sleep-soft:#eef2fb;
  --diaper:#7fc8a9; --diaper-soft:#eef7f1;
  --note:#c79fe0; --note-soft:#f6eefb;
  --medicine:#e88a8a; --medicine-soft:#fef7f1;
  --danger:#e07a7a;
  --r-lg:26px; --r-md:18px; --r-sm:14px; --tap:56px;
  --serif:"Fraunces",Georgia,serif; --sans:"Inter",system-ui,sans-serif;
  --shadow-card:0 8px 22px rgba(120,110,95,.08);
  --shadow-soft:0 6px 18px rgba(120,110,95,.06);
}

18. Guardrails

  • Never use pure black shadows on cards — always warm rgba(120,110,95,...).
  • Never give cards a hard grey border; match the border to the card's own tint.
  • Don't swap the serif (Fraunces) for a sans on names/values — the serif carries the warmth.
  • Keep one hue per category; don't recolor a feed element blue.
  • Don't use flat 1px-outline-only cards — depth comes from soft shadow + radius.
  • Amber buttons use dark-brown (#2a1c0d) text, never white.