iFraldas Design SystemLegacy format

iFraldas Design System mockup preview
Click to expand

Diretrizes de design dos projetos da iFraldas.com.br

Typography

h1Nunito · clamp(1.75rem, 5vw, 3rem) · Bold

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

h2Nunito · clamp(1.5rem, 4vw, 2.25rem) · Bold

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

h3Nunito · clamp(1.25rem, 3.5vw, 1.875rem) · Bold

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

h4Nunito · clamp(1rem, 2.5vw, 1.5rem) · Bold

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

h5Nunito · clamp(1rem, 2vw, 1.25rem) · Bold

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

h6Nunito · 1rem · Bold

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

basePoppins · 1rem · Regular

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

smPoppins · 0.875rem · Regular

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

xsPoppins · 0.75rem · Regular

Every letter tells a story worth reading, and every typeface gives that story a new voice waiting to be heard.

Diretrizes de design dos projetos da iFraldas.com.br

Components

Buttons

Inputs

Elevation & Depth

sm
md
lg
xl
Design Tokens

### Cores

#### Iris Blue (Primary)

• iris-50: #e6f8f9

• iris-100: #ccf0f2

• iris-200: #b3e9eb

• iris-300: #99e2e4

• iris-400: #80dbdd

• iris-600: #019296

• iris-700: #016d71

• iris-800: #01474a

• iris-900: #002425

• iris-default: #01b6bc

#### Blue Marguerite (Accent)

• marguerite-50: #f0eef9

• marguerite-100: #e2e1f6

• marguerite-200: #d4d1f0

• marguerite-300: #c6c3ea

• marguerite-400: #b8b5e8

• marguerite-600: #5953a8

• marguerite-700: #3f3d7e

• marguerite-800: #2c2a54

• marguerite-900: #161428

• marguerite-default: #6f69d2

#### Slate (Neutral Text/Borders)

• slate-50: #ebebee

• slate-100: #d7d7dd

• slate-200: #c3c3ca

• slate-300: #afafba

• slate-400: #9a9ba9

• slate-600: #2b2d42

• slate-700: #201f31

• slate-800: #161621

• slate-900: #0b0b10

• slate-default: #363853

#### Neutral (Backgrounds)

• neutral-50: #fafbfc

• neutral-100: #f7f8f9

• neutral-200: #eff1f3

• neutral-300: #eff1f3

• neutral-400: #ebedf0

• neutral-600: #adadb4

• neutral-700: #828387

• neutral-800: #565859

• neutral-900: #2b2b2d

• neutral-black: #000000

• neutral-white: #ffffff

• neutral-default: #d8dbe1

#### Error

• error-50: #ffe9f0

• error-100: #ffd7de

• error-200: #ffc4cf

• error-300: #ffb0bd

• error-400: #ff9dac

• error-600: #cc2e48

• error-700: #992237

• error-800: #661726

• error-900: #330b13

• error-default: #ff395b

#### Salmon Pink (Secondary)

• salmon-50: #ffe8f6

• salmon-100: #ffe8f6

• salmon-200: #ffddee

• salmon-300: #ffd1e6

• salmon-400: #ffc6dd

• salmon-600: #cc7081

• salmon-700: #995561

• salmon-800: #663a40

• salmon-900: #331d20

• salmon-default: #ff8da1

#### Yellow (Warnings)

• yellow-50: #fffbf0

• yellow-100: #fff6e1

• yellow-200: #fff0ca

• yellow-300: #ffeab3

• yellow-400: #ffe49c

• yellow-500: #efb100

• yellow-600: #b88600

• yellow-700: #805c00

• yellow-800: #483700

• yellow-900: #241b00

### Tipografia

#### Font Families

• Poppins: Body text, labels, UI elements

• Nunito: Headings, titles

• Menlo: Code, technical content

#### Headings (com responsividade fluida - clamp)

• h1: clamp(1.75rem, 5vw, 3rem) | Nunito Bold | Line-height: 1.1

• h2: clamp(1.5rem, 4vw, 2.25rem) | Nunito Bold | Line-height: 1.1

• h3: clamp(1.25rem, 3.5vw, 1.875rem) | Nunito Bold | Line-height: 1.1

• h4: clamp(1rem, 2.5vw, 1.5rem) | Nunito Bold | Line-height: 1.1

• h5: clamp(1rem, 2vw, 1.25rem) | Nunito Bold | Line-height: 1.1

• h6: 1rem | Nunito Bold | Line-height: 1.1

#### Body Text

• base: 1rem | Poppins Regular | Line-height: 1.5

• sm: 0.875rem | Poppins Regular | Line-height: 1.5

• xs: 0.75rem | Poppins Regular | Line-height: 1.5

### Espaçamento

• 0: 0px

• 0.5: 2px

• 1: 4px

• 2: 8px

• 3: 12px

• 4: 16px (padrão)

• 6: 24px

• 8: 32px

• 12: 48px

### Border Radius

• xsm: 4px

• sm: 8px

• md: 12px

• lg: 16px

• xl: 24px

• full: 9999px (círculo/pill)

### Border Width

• xm: 1px (padrão)

### Sombras

• sm: 0 1px 2px rgba(0, 0, 0, 0.05)

• md: 0 4px 6px rgba(0, 0, 0, 0.1)

• lg: 0 10px 15px rgba(0, 0, 0, 0.15)

• xl: 0 20px 25px rgba(0, 0, 0, 0.2)

### Estados

#### Default

• Cor base sem alterações

• Sem sombra ou shadow-sm

#### Hover

• Cor escurecida (usar tons /600 ou /700)

• shadow-md

• Cursor pointer

• Transição: 200ms ease

#### Focus

• Outline: 2px solid iris

• Outline offset: 2px

• Shadow: shadow-md

• Para acessibilidade

#### Active

• Cor ainda mais escura (/700, /800)

• Shadow: shadow-sm

• Sem transição (feedback imediato)

#### Disabled

• Cor: slate-50 (fundo) + slate-400 (texto)

• Opacity: 0.6

• Cursor: not-allowed

• Sem hover/focus effects

---

Componentes

### Button (UButton)

Variantes:

• 6 tipos × 2 tamanhos × 3 estados = 36 variantes

Tipos:

• Default (sólido iris-blue)

• Outline (borda iris-blue)

• Transparent (sem borda)

• IconSolid (apenas ícone com fundo)

• IconOutline (apenas ícone com borda)

• IconTransparent (apenas ícone)

Tamanhos:

• MD: 16px Poppins Bold | Padding: 16px 12px

• SM: 14px Poppins Bold | Padding: 8px 12px

Estados:

• Default, Hover, Disable

### Input / Text Field

Tamanhos:

• SM: 32px height | 14px font | 8px 12px padding

• MD: 40px height | 16px font | 12px 16px padding

Estados:

• Default: border slate-300 | bg white

• Hover: border slate-400 | shadow-sm

• Focus: border iris | outline iris | shadow-md

• Filled: border slate-300 | bg white | texto escuro

• Disabled: border slate-100 | bg slate-50 | cursor not-allowed

• Error: border error | bg error-50 | helper text error

Propriedades:

• Font: Poppins Regular

• Border Radius: 9999px (full)

• Transition: 200ms ease

### Checkbox

Tamanho: 20×20px

Estados:

• Unchecked default: border slate-300 | bg white

• Unchecked hover: border slate-400 | shadow-sm

• Checked: bg iris | border iris

• Checked hover: bg iris-600 | shadow-sm

• Disabled: opacity 0.6 | cursor not-allowed

• Focus: outline iris | outline-offset 2px

Propriedades:

• Border Radius: 4px (xsm)

• Transition: 200ms ease

• Icon: checkmark white

### Select / Dropdown

Tamanhos:

• SM: 32px height | 14px font

• MD: 40px height | 16px font

Estados:

• Default (closed): border slate-300 | placeholder slate-400

• Hover: border slate-400 | shadow-sm

• Focus: border iris | outline iris | shadow-md

• Open: border iris | menu shadow-lg

• Disabled: cursor not-allowed | opacity 0.6

Menu Options:

• Default: bg white | padding 12px 16px

• Hover: bg iris-50 | border-left 3px iris

• Selected: bg iris-100 | border-left iris

• Disabled: bg slate-50 | cursor not-allowed

Propriedades:

• Font: Poppins Regular

• Border Radius: 9999px (full)

• Menu border-radius: 8px (sm)

### Toggle / Switch

Dimensões:

• Width: 48px | Height: 24px

• Toggle circle: 20px

Estados:

• OFF: bg slate-300 | circle white (left)

• OFF hover: bg slate-400 | shadow-sm

• ON: bg iris | circle white (right)

• ON hover: bg iris-600 | shadow-sm

• Disabled: opacity 0.6 | cursor not-allowed

Propriedades:

• Border Radius: 9999px (full)

• Transition: 200ms ease

• Animation: circle desliza suavemente

### Badge

Tamanhos:

• SM: 20px height | 12px font | 4px 8px padding

• MD: 24px height | 14px font | 6px 12px padding

Variantes (por cor/contexto):

• Primary: bg iris | text white

• Success: bg #22c55e | text white

• Warning: bg yellow-500 | text slate-default

• Error: bg error-default | text white

• Neutral: bg slate-300 | text white

• Outline: border + transparent bg

Propriedades:

• Font: Poppins Bold

• Border Radius: 4px (xsm)

• Display: inline-block

### Alert / Toast

Tipos:

• Alert: fixo na página

• Toast: flutuante (bottom-right, top-right, etc)

Variantes:

• Success: bg #f0fdf4 | border-left #22c55e

• Error: bg error-50 | border-left error-default

• Warning: bg #fffbef | border-left yellow-500

• Info: bg iris-50 | border-left iris

Estrutura:

• Icon (24×24px) | Title (14px Bold) | Close button

• Description: 14px Regular

Propriedades:

• Border Radius: 8px (sm)

• Auto-dismiss: 4-6 segundos (Toast)

• Z-index: 50 (Alert) | 100 (Toast)

### Progress Bar

Tamanhos:

• SM: 4px height

• MD: 8px height

• LG: 12px height

Estrutura:

• Background container: slate-200

• Progress bar: iris (dinâmico 0-100%)

Variantes:

• Default: bg container slate-200 | progress iris

• Success: progress #22c55e

• Warning: progress yellow-500

• Error: bg error-100 | progress error-default

Propriedades:

• Border Radius: 9999px (full)

• Transition: 300ms ease

• Label: 12px Poppins Regular

### Spinner / Loading

Tamanhos:

• SM: 24×24px

• MD: 40×40px

• LG: 56×56px

Estilos:

• Circular rotating spinner

• Border background: slate-200

• Progress arc: iris

Variantes:

• Primary: iris

• White: white

• Secondary: salmon

• Success: #22c55e

Propriedades:

• Border Radius: 50% (círculo)

• Animation: 1.4s linear infinite

• Direction: clockwise

### Card - How It Works

Dimensões:

• Width: responsivo (grid auto-fit, min 280px)

• Padding: 16px

• Border Radius: 16px (lg)

• Border: 1px solid iris-100

• Shadow: shadow-md

Estrutura:

• Card Header: Imagem (48×86px) + Título (h3)

• Card Body: Descrição (text-base)

• Card CTA: UButton transparent (opcional)

Propriedades:

• Background: white

• Gap entre sections: 16px

• Layout: responsivo com CSS Grid

```css

grid-template-columns: repeat(auto-fit, minmax(280px, 1fr))

gap: 16px

```

### Card - Testimonials

Dimensões:

• Width: responsivo (grid auto-fit, min 280px)

• Padding: 16px

• Border Radius: 16px (lg)

• Border: 1px solid iris-100

• Shadow: shadow-md

Estrutura:

• Card Header: 5 stars + quote icon

• Card Body: Testimonial text (text-base)

• Divider: 1px slate-200

• Profile: Avatar (56×56px) + name (h5) + role (text-xm salmon)

Propriedades:

• Background: white

• Gap: 16px entre sections

• Layout: responsivo (grid auto-fit)

### Accordion / FAQ Items

Dimensões:

• Width: 473px (responsivo 100%)

• Padding: 16px

• Border Radius: 12px (xl)

• Border: 1px solid iris-200

• Shadow: shadow-sm

Estados:

• Closed default: bg white | border iris-200 | height 56px

• Closed hover: bg iris-50 | border iris-300 | shadow-sm

• Open: bg white | border iris-300 | height auto

Estrutura:

• Header: Title (text-base) + Icon chevron

• Body (quando aberto): Content (text-base slate-600)

Animação:

• Icon rotation: 0° → 180°

• Expand: 300ms ease-out

• Slide-down: 200ms ease-out

Propriedades:

• Font: Poppins Regular

• Transition: 300ms ease

• Icon size: 16×16px

---

Grid & Breakpoints

### Tailwind CSS Standard Breakpoints

• sm: 640px

• md: 768px

• lg: 1024px

• xl: 1280px

• 2xl: 1536px

### Mobile-First Approach

• Default styles: mobile (375px)

• Responsive adjustments via Tailwind breakpoints

---

Implementação

Este design system foi desenvolvido para ser implementado com Tailwind CSS v4 seguindo a configuração em tailwind.config.js.

Todos os componentes utilizam os design tokens definidos acima e seguem o padrão de estados (default, hover, focus, active, disabled).

Para componentes responsivos (Cards, etc), utilize a abordagem CSS Grid com repeat(auto-fit, minmax(...)) para garantir fluidez em todos os tamanhos de tela.

Download .md

License MIT
Uploaded 6 months ago
Version v1
File size 10.1 KB
Downloads 200
Copies 26

Use with MCP

Using designmd mcp, download the design system https://designmd.ai/nogueirajf/ifraldas-design-system and implement it in my code

Don't have the MCP? Install it here