@xetwa/design-system 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/.github/workflows/publish.yml +30 -0
  2. package/.storybook/main.ts +17 -0
  3. package/.storybook/preview.tsx +65 -0
  4. package/eslint.config.js +22 -0
  5. package/index.html +13 -0
  6. package/package.json +55 -0
  7. package/public/favicon.svg +1 -0
  8. package/public/icons.svg +24 -0
  9. package/src/App.css +184 -0
  10. package/src/App.tsx +122 -0
  11. package/src/BordasSombras.mdx +343 -0
  12. package/src/Colors.mdx +393 -0
  13. package/src/GrelhaLayout.mdx +375 -0
  14. package/src/Icons.mdx +42 -0
  15. package/src/MovimentoBreakpoints.mdx +379 -0
  16. package/src/Spacing.mdx +231 -0
  17. package/src/Typography.mdx +321 -0
  18. package/src/assets/Mascots/vava/estaticos/vava-acenar.svg +3 -0
  19. package/src/assets/Mascots/vava/estaticos/vava-acertou.svg +3 -0
  20. package/src/assets/Mascots/vava/estaticos/vava-celebrar.svg +3 -0
  21. package/src/assets/Mascots/vava/estaticos/vava-com-autocolantes.svg +3 -0
  22. package/src/assets/Mascots/vava/estaticos/vava-dormir.svg +3 -0
  23. package/src/assets/Mascots/vava/estaticos/vava-errou.svg +3 -0
  24. package/src/assets/Mascots/vava/estaticos/vava-feliz.svg +3 -0
  25. package/src/assets/Mascots/vava/estaticos/vava-neutra.svg +3 -0
  26. package/src/assets/Mascots/vava/estaticos/vava-original.svg +3 -0
  27. package/src/assets/Mascots/vava/estaticos/vava-pensar.svg +3 -0
  28. package/src/assets/Mascots/vava/estaticos/vava-surpresa.svg +3 -0
  29. package/src/assets/Mascots/yaya/avatar/yaya-avatar-falar.svg +7 -0
  30. package/src/assets/Mascots/yaya/avatar/yaya-avatar-feliz.svg +7 -0
  31. package/src/assets/Mascots/yaya/avatar/yaya-avatar-transparente.svg +6 -0
  32. package/src/assets/Mascots/yaya/estaticos/yaya-acertou.svg +13 -0
  33. package/src/assets/Mascots/yaya/estaticos/yaya-celebrar.svg +13 -0
  34. package/src/assets/Mascots/yaya/estaticos/yaya-dormir.svg +13 -0
  35. package/src/assets/Mascots/yaya/estaticos/yaya-errou.svg +13 -0
  36. package/src/assets/Mascots/yaya/estaticos/yaya-falar.svg +13 -0
  37. package/src/assets/Mascots/yaya/estaticos/yaya-feliz.svg +13 -0
  38. package/src/assets/Mascots/yaya/estaticos/yaya-neutra.svg +13 -0
  39. package/src/assets/Mascots/yaya/estaticos/yaya-pensar.svg +13 -0
  40. package/src/assets/Mascots/yaya/estaticos/yaya-surpresa.svg +13 -0
  41. package/src/assets/hero.png +0 -0
  42. package/src/assets/react.svg +1 -0
  43. package/src/assets/vite.svg +1 -0
  44. package/src/components/Buttons/BackButton/BackButton.stories.tsx +86 -0
  45. package/src/components/Buttons/BackButton/BackButton.tsx +107 -0
  46. package/src/components/Buttons/FabButton/FabButton.stories.tsx +74 -0
  47. package/src/components/Buttons/FabButton/FabButton.tsx +161 -0
  48. package/src/components/Buttons/IconButton/IconButton.stories.tsx +99 -0
  49. package/src/components/Buttons/IconButton/IconButton.tsx +189 -0
  50. package/src/components/Buttons/JourneyButton/JourneyButton.stories.tsx +80 -0
  51. package/src/components/Buttons/JourneyButton/JourneyButton.tsx +194 -0
  52. package/src/components/Buttons/MainButton/MainButton.stories.tsx +144 -0
  53. package/src/components/Buttons/MainButton/MainButton.tsx +258 -0
  54. package/src/components/Buttons/WordChip/WordChip.stories.tsx +84 -0
  55. package/src/components/Buttons/WordChip/WordChip.tsx +157 -0
  56. package/src/components/Buttons/WordChip/index.ts +1 -0
  57. package/src/components/Cards/AnswerOptionCard/AnswerOptionCard.stories.tsx +181 -0
  58. package/src/components/Cards/AnswerOptionCard/AnswerOptionCard.tsx +201 -0
  59. package/src/components/Cards/BaseCard/BaseCard.stories.tsx +148 -0
  60. package/src/components/Cards/BaseCard/BaseCard.tsx +181 -0
  61. package/src/components/Cards/BoardingPassCard/BoardingPassCard.stories.tsx +205 -0
  62. package/src/components/Cards/BoardingPassCard/BoardingPassCard.tsx +384 -0
  63. package/src/components/Cards/BoardingPassCard/FlightIcon.tsx +21 -0
  64. package/src/components/Cards/BoardingPassCard/FlightIcon.web.tsx +18 -0
  65. package/src/components/Cards/CountryCard/CountryCard.stories.tsx +97 -0
  66. package/src/components/Cards/CountryCard/CountryCard.tsx +185 -0
  67. package/src/components/Cards/LevelProgressCard/LevelProgressCard.stories.tsx +61 -0
  68. package/src/components/Cards/LevelProgressCard/LevelProgressCard.tsx +143 -0
  69. package/src/components/Cards/ModuleCard/ModuleCard.stories.tsx +108 -0
  70. package/src/components/Cards/ModuleCard/ModuleCard.tsx +304 -0
  71. package/src/components/Cards/ModuleCompletionCard/ModuleCompletionCard.stories.tsx +53 -0
  72. package/src/components/Cards/ModuleCompletionCard/ModuleCompletionCard.tsx +167 -0
  73. package/src/components/Cards/Passport/PassportCover.tsx +114 -0
  74. package/src/components/Cards/Passport/PassportIDPage.tsx +217 -0
  75. package/src/components/Cards/Passport/PassportStampPage.tsx +253 -0
  76. package/src/components/Cards/Passport/PassportViewer.stories.tsx +95 -0
  77. package/src/components/Cards/Passport/PassportViewer.tsx +328 -0
  78. package/src/components/Cards/PlanCard/PlanCard.stories.tsx +159 -0
  79. package/src/components/Cards/PlanCard/PlanCard.tsx +317 -0
  80. package/src/components/Cards/PricingCard/PricingCard.stories.tsx +83 -0
  81. package/src/components/Cards/PricingCard/PricingCard.tsx +144 -0
  82. package/src/components/Cards/SelectionCard/SelectionCard.stories.tsx +77 -0
  83. package/src/components/Cards/SelectionCard/SelectionCard.tsx +111 -0
  84. package/src/components/Cards/TeacherCard/TeacherCard.stories.tsx +126 -0
  85. package/src/components/Cards/TeacherCard/TeacherCard.tsx +236 -0
  86. package/src/components/Charts/WeeklyProgressChart/WeeklyProgressChart.stories.tsx +89 -0
  87. package/src/components/Charts/WeeklyProgressChart/WeeklyProgressChart.tsx +179 -0
  88. package/src/components/Charts/WeeklyProgressChart/index.ts +1 -0
  89. package/src/components/DataDisplay/Avatar/Avatar.stories.tsx +85 -0
  90. package/src/components/DataDisplay/Avatar/Avatar.tsx +118 -0
  91. package/src/components/DataDisplay/Avatar/index.ts +1 -0
  92. package/src/components/DataDisplay/Badge/Badge.stories.tsx +62 -0
  93. package/src/components/DataDisplay/Badge/Badge.tsx +146 -0
  94. package/src/components/DataDisplay/Flag/Flag.stories.tsx +98 -0
  95. package/src/components/DataDisplay/Flag/Flag.tsx +347 -0
  96. package/src/components/DataDisplay/Flag/Flag.web.tsx +334 -0
  97. package/src/components/DataDisplay/InstructionBubble/InstructionBubble.stories.tsx +80 -0
  98. package/src/components/DataDisplay/InstructionBubble/InstructionBubble.tsx +86 -0
  99. package/src/components/DataDisplay/LevelBadge/LevelBadge.stories.tsx +99 -0
  100. package/src/components/DataDisplay/LevelBadge/LevelBadge.tsx +118 -0
  101. package/src/components/DataDisplay/ProgressBar/ProgressBar.stories.tsx +95 -0
  102. package/src/components/DataDisplay/ProgressBar/ProgressBar.tsx +117 -0
  103. package/src/components/DataDisplay/StatBadge/StatBadge.stories.tsx +82 -0
  104. package/src/components/DataDisplay/StatBadge/StatBadge.tsx +135 -0
  105. package/src/components/DataDisplay/StatBadge/index.ts +1 -0
  106. package/src/components/DataDisplay/Tag/Tag.stories.tsx +63 -0
  107. package/src/components/DataDisplay/Tag/Tag.tsx +148 -0
  108. package/src/components/Feedback/FeedbackBottomSheet/FeedbackBottomSheet.stories.tsx +74 -0
  109. package/src/components/Feedback/FeedbackBottomSheet/FeedbackBottomSheet.tsx +200 -0
  110. package/src/components/Forms/Checkbox/Checkbox.stories.tsx +60 -0
  111. package/src/components/Forms/Checkbox/Checkbox.tsx +127 -0
  112. package/src/components/Forms/Checkbox/index.ts +1 -0
  113. package/src/components/Forms/DaySelector/DaySelector.stories.tsx +62 -0
  114. package/src/components/Forms/DaySelector/DaySelector.tsx +133 -0
  115. package/src/components/Forms/Radio/Radio.stories.tsx +61 -0
  116. package/src/components/Forms/Radio/Radio.tsx +141 -0
  117. package/src/components/Forms/Radio/index.ts +1 -0
  118. package/src/components/Forms/SegmentedToggle/SegmentedToggle.stories.tsx +67 -0
  119. package/src/components/Forms/SegmentedToggle/SegmentedToggle.tsx +150 -0
  120. package/src/components/Forms/SegmentedToggle/index.ts +1 -0
  121. package/src/components/Forms/Select/Select.stories.tsx +59 -0
  122. package/src/components/Forms/Select/Select.tsx +255 -0
  123. package/src/components/Forms/Select/index.ts +1 -0
  124. package/src/components/Forms/Switch/Switch.stories.tsx +57 -0
  125. package/src/components/Forms/Switch/Switch.tsx +120 -0
  126. package/src/components/Forms/Switch/index.ts +1 -0
  127. package/src/components/Forms/TimeSlot/TimeSlot.stories.tsx +62 -0
  128. package/src/components/Forms/TimeSlot/TimeSlot.tsx +116 -0
  129. package/src/components/Headers/CountryHeader/CountryHeader.stories.tsx +114 -0
  130. package/src/components/Headers/CountryHeader/CountryHeader.tsx +147 -0
  131. package/src/components/Headers/ProfileHeader/ProfileHeader.stories.tsx +141 -0
  132. package/src/components/Headers/ProfileHeader/ProfileHeader.tsx +233 -0
  133. package/src/components/Inputs/FillInTheBlank/FillInTheBlank.stories.tsx +333 -0
  134. package/src/components/Inputs/FillInTheBlank/FillInTheBlank.tsx +287 -0
  135. package/src/components/Inputs/FillInTheBlank/index.ts +1 -0
  136. package/src/components/Inputs/TextInput/TextInput.stories.tsx +103 -0
  137. package/src/components/Inputs/TextInput/TextInput.tsx +187 -0
  138. package/src/components/Mascots/Vava/Vava.stories.tsx +114 -0
  139. package/src/components/Mascots/Vava/Vava.tsx +276 -0
  140. package/src/components/Mascots/Yaya/Yaya.stories.tsx +98 -0
  141. package/src/components/Mascots/Yaya/Yaya.tsx +233 -0
  142. package/src/components/Navigation/BottomTabBar/BottomTabBar.stories.tsx +68 -0
  143. package/src/components/Navigation/BottomTabBar/BottomTabBar.tsx +85 -0
  144. package/src/components/Navigation/BottomTabBar/BottomTabBarItem.tsx +68 -0
  145. package/src/components/Navigation/BottomTabBar/index.ts +2 -0
  146. package/src/components/Navigation/PaginationDots/PaginationDots.stories.tsx +62 -0
  147. package/src/components/Navigation/PaginationDots/PaginationDots.tsx +81 -0
  148. package/src/components/Navigation/PaginationDots/index.ts +1 -0
  149. package/src/components/Navigation/ProgressMap/ProgressMap.stories.tsx +116 -0
  150. package/src/components/Navigation/ProgressMap/ProgressMap.tsx +827 -0
  151. package/src/components/Navigation/WorldProgressMap/WorldProgressMap.stories.tsx +169 -0
  152. package/src/components/Navigation/WorldProgressMap/WorldProgressMap.tsx +790 -0
  153. package/src/components/Typography/Typography.stories.tsx +127 -0
  154. package/src/components/Typography/Typography.tsx +53 -0
  155. package/src/hooks/useResponsive.ts +41 -0
  156. package/src/hooks/useTheme.ts +32 -0
  157. package/src/index.css +355 -0
  158. package/src/index.ts +28 -0
  159. package/src/main.tsx +10 -0
  160. package/src/mocks/codegenNativeComponent.ts +5 -0
  161. package/src/styles/countryThemes.ts +79 -0
  162. package/src/styles/theme.ts +297 -0
  163. package/src/utils/iconMap.ts +23 -0
  164. package/tsconfig.app.json +25 -0
  165. package/tsconfig.json +7 -0
  166. package/tsconfig.node.json +24 -0
  167. package/vite.config.ts +51 -0
  168. package/vitest.shims.d.ts +1 -0
@@ -0,0 +1,321 @@
1
+ import { Meta } from '@storybook/addon-docs/blocks';
2
+
3
+ <Meta title="Brand Guidelines/Tipografia" />
4
+
5
+ # Escala Tipográfica
6
+
7
+ Nossa escala tipográfica é estruturada sobre duas famílias de fontes do Google Fonts, selecionadas para equilibrar expressividade e legibilidade:
8
+ - **Fredoka**: Utilizada para títulos e displays. É arredondada, amigável e cheia de personalidade.
9
+ - **Nunito**: Utilizada para o corpo do texto, botões, labels e elementos gerais de UI. É altamente legível, neutra e versátil.
10
+
11
+ ---
12
+
13
+ {/* Fredoka Scale */}
14
+ <div style={{
15
+ backgroundColor: 'var(--bg-surface)',
16
+ border: '1px solid var(--border-color)',
17
+ borderRadius: '16px',
18
+ padding: '1.5rem',
19
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03)',
20
+ marginBottom: '2.5rem',
21
+ marginTop: '1.5rem'
22
+ }}>
23
+ <h3 style={{
24
+ fontFamily: 'var(--font-title)',
25
+ fontSize: '1.25rem',
26
+ fontWeight: '700',
27
+ color: 'var(--text-primary)',
28
+ marginTop: 0,
29
+ marginBottom: '1.25rem',
30
+ }}>Escala Fredoka (Títulos e Displays)</h3>
31
+
32
+ <table style={{
33
+ width: '100%',
34
+ borderCollapse: 'collapse',
35
+ textAlign: 'left'
36
+ }}>
37
+ <thead>
38
+ <tr style={{
39
+ borderBottom: '2px solid var(--border-color)',
40
+ }}>
41
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Token / Uso</th>
42
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Fonte</th>
43
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Peso</th>
44
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Mobile (≥375)</th>
45
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Desktop (≥1024)</th>
46
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Leading</th>
47
+ </tr>
48
+ </thead>
49
+ <tbody>
50
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
51
+ <td style={{ padding: '12px 16px' }}>
52
+ <code style={{ fontSize: '0.85rem', color: '#cf7a30', backgroundColor: '#fef6ee', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-display-1</code>
53
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Hero principal</span>
54
+ </td>
55
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Fredoka</td>
56
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>700</td>
57
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>28px</td>
58
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>42px</td>
59
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.08</td>
60
+ </tr>
61
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
62
+ <td style={{ padding: '12px 16px' }}>
63
+ <code style={{ fontSize: '0.85rem', color: '#cf7a30', backgroundColor: '#fef6ee', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-display-2</code>
64
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Splash / onboarding</span>
65
+ </td>
66
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Fredoka</td>
67
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>700</td>
68
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>24px</td>
69
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>34px</td>
70
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.12</td>
71
+ </tr>
72
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
73
+ <td style={{ padding: '12px 16px' }}>
74
+ <code style={{ fontSize: '0.85rem', color: '#cf7a30', backgroundColor: '#fef6ee', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-h1</code>
75
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Cabeçalho de secção</span>
76
+ </td>
77
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Fredoka</td>
78
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>700</td>
79
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>22px</td>
80
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>28px</td>
81
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.15</td>
82
+ </tr>
83
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
84
+ <td style={{ padding: '12px 16px' }}>
85
+ <code style={{ fontSize: '0.85rem', color: '#cf7a30', backgroundColor: '#fef6ee', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-h2</code>
86
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Cabeçalho de card/módulo</span>
87
+ </td>
88
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Fredoka</td>
89
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>600</td>
90
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>18px</td>
91
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>22px</td>
92
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.2</td>
93
+ </tr>
94
+ <tr>
95
+ <td style={{ padding: '12px 16px' }}>
96
+ <code style={{ fontSize: '0.85rem', color: '#cf7a30', backgroundColor: '#fef6ee', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-h3</code>
97
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Sub-cabeçalho</span>
98
+ </td>
99
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Fredoka</td>
100
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>600</td>
101
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>16px</td>
102
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>19px</td>
103
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.25</td>
104
+ </tr>
105
+ </tbody>
106
+ </table>
107
+ </div>
108
+
109
+ {/* Nunito Scale */}
110
+ <div style={{
111
+ backgroundColor: 'var(--bg-surface)',
112
+ border: '1px solid var(--border-color)',
113
+ borderRadius: '16px',
114
+ padding: '1.5rem',
115
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03)',
116
+ marginBottom: '2.5rem'
117
+ }}>
118
+ <h3 style={{
119
+ fontFamily: 'var(--font-title)',
120
+ fontSize: '1.25rem',
121
+ fontWeight: '700',
122
+ color: 'var(--text-primary)',
123
+ marginTop: 0,
124
+ marginBottom: '1.25rem',
125
+ }}>Escala Nunito (Corpo de Texto e UI)</h3>
126
+
127
+ <table style={{
128
+ width: '100%',
129
+ borderCollapse: 'collapse',
130
+ textAlign: 'left'
131
+ }}>
132
+ <thead>
133
+ <tr style={{
134
+ borderBottom: '2px solid var(--border-color)',
135
+ }}>
136
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Token / Uso</th>
137
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Fonte</th>
138
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Peso</th>
139
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Mobile (≥375)</th>
140
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Desktop (≥1024)</th>
141
+ <th style={{ padding: '10px 16px', fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', textTransform: 'uppercase', letterSpacing: '0.05em' }}>Leading</th>
142
+ </tr>
143
+ </thead>
144
+ <tbody>
145
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
146
+ <td style={{ padding: '12px 16px' }}>
147
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-label</code>
148
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Etiquetas all-caps</span>
149
+ </td>
150
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
151
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>800</td>
152
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>10px</td>
153
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>11px</td>
154
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.0, 0.12em ls</td>
155
+ </tr>
156
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
157
+ <td style={{ padding: '12px 16px' }}>
158
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-body-lg</code>
159
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Corpo principal</span>
160
+ </td>
161
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
162
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>600</td>
163
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>15px</td>
164
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>17px</td>
165
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.55</td>
166
+ </tr>
167
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
168
+ <td style={{ padding: '12px 16px' }}>
169
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-body-md</code>
170
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Corpo secundário</span>
171
+ </td>
172
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
173
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>600</td>
174
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>13.5px</td>
175
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>15px</td>
176
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.5</td>
177
+ </tr>
178
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
179
+ <td style={{ padding: '12px 16px' }}>
180
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-body-sm</code>
181
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Notas, meta</span>
182
+ </td>
183
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
184
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>700</td>
185
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>12px</td>
186
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>13px</td>
187
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.45</td>
188
+ </tr>
189
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
190
+ <td style={{ padding: '12px 16px' }}>
191
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-caption</code>
192
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Captions, labels de ícone</span>
193
+ </td>
194
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
195
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>700</td>
196
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>10px</td>
197
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>11px</td>
198
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.4</td>
199
+ </tr>
200
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
201
+ <td style={{ padding: '12px 16px' }}>
202
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-btn-lg</code>
203
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Botão grande</span>
204
+ </td>
205
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
206
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>800</td>
207
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>16px</td>
208
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>17px</td>
209
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.0, 0.04em ls</td>
210
+ </tr>
211
+ <tr style={{ borderBottom: '1px solid var(--border-color)' }}>
212
+ <td style={{ padding: '12px 16px' }}>
213
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-btn-md</code>
214
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Botão médio</span>
215
+ </td>
216
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
217
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>800</td>
218
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>14px</td>
219
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>15px</td>
220
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.0, 0.04em ls</td>
221
+ </tr>
222
+ <tr>
223
+ <td style={{ padding: '12px 16px' }}>
224
+ <code style={{ fontSize: '0.85rem', color: '#51332d', backgroundColor: '#efe2d6', padding: '4px 8px', borderRadius: '6px', fontWeight: '600' }}>--text-btn-sm</code>
225
+ <span style={{ display: 'block', fontSize: '0.75rem', color: 'var(--text-secondary)', marginTop: '4px' }}>Botão pequeno</span>
226
+ </td>
227
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>Nunito</td>
228
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>800</td>
229
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>12px</td>
230
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>12px</td>
231
+ <td style={{ padding: '12px 16px', fontSize: '0.9rem', color: 'var(--text-primary)' }}>1.0, 0.04em ls</td>
232
+ </tr>
233
+ </tbody>
234
+ </table>
235
+ </div>
236
+
237
+ ---
238
+
239
+ ## Demonstrativo Visual de Escala
240
+
241
+ Exemplos reais e renderização das fontes do design system:
242
+
243
+ <div style={{
244
+ backgroundColor: 'var(--bg-surface)',
245
+ border: '1px solid var(--border-color)',
246
+ borderRadius: '16px',
247
+ padding: '2rem',
248
+ boxShadow: '0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03)',
249
+ display: 'flex',
250
+ flexDirection: 'column',
251
+ gap: '1.25rem',
252
+ color: 'var(--text-primary)'
253
+ }}>
254
+ <div>
255
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>DISPLAY 1</span>
256
+ <h1 className="text-display-1" style={{ margin: 0 }}>Display 1 · Aprende francês</h1>
257
+ </div>
258
+
259
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
260
+
261
+ <div>
262
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>DISPLAY 2</span>
263
+ <h2 className="text-display-2" style={{ margin: 0 }}>Display 2 · Aprende francês</h2>
264
+ </div>
265
+
266
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
267
+
268
+ <div>
269
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>H1</span>
270
+ <h3 className="text-h1" style={{ margin: 0 }}>H1 · Aprende francês</h3>
271
+ </div>
272
+
273
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
274
+
275
+ <div>
276
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>H2</span>
277
+ <h4 className="text-h2" style={{ margin: 0 }}>H2 · Cumprimentos</h4>
278
+ </div>
279
+
280
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
281
+
282
+ <div>
283
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>H3</span>
284
+ <h5 className="text-h3" style={{ margin: 0 }}>H3 · Bom dia</h5>
285
+ </div>
286
+
287
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
288
+
289
+ <div>
290
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>LABEL</span>
291
+ <span className="text-label" style={{ display: 'block' }}>LABEL · MÓDULO 1</span>
292
+ </div>
293
+
294
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
295
+
296
+ <div>
297
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>BODY LG</span>
298
+ <p className="text-body-lg" style={{ margin: 0 }}>Body LG · 5 minutos por dia + aulas a sério com os professores da Xetwa.</p>
299
+ </div>
300
+
301
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
302
+
303
+ <div>
304
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>BODY MD</span>
305
+ <p className="text-body-md" style={{ margin: 0 }}>Body MD · A Vava viaja contigo de Paris a Beirute pelo mundo francófono.</p>
306
+ </div>
307
+
308
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
309
+
310
+ <div>
311
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>BODY SM</span>
312
+ <p className="text-body-sm" style={{ margin: 0 }}>Body SM · 3 de 5 lições concluídas</p>
313
+ </div>
314
+
315
+ <hr style={{ border: 0, borderTop: '1px solid var(--border-color)', margin: 0 }} />
316
+
317
+ <div>
318
+ <span style={{ fontSize: '0.75rem', fontWeight: '700', color: 'var(--text-secondary)', display: 'block', marginBottom: '4px' }}>CAPTION</span>
319
+ <p className="text-caption" style={{ margin: 0 }}>Caption · com professor • abre o Módulo 2</p>
320
+ </div>
321
+ </div>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava acenar">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><path d="M73 95 Q80 86 87 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M113 95 Q120 86 127 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M90 100 Q100 111 110 100 Z" fill="#fbe6cf"></path>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava acertou">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><path d="M73 95 Q80 86 87 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M113 95 Q120 86 127 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M90 100 Q100 112 110 100 Z" fill="#fbe6cf"></path><g transform="translate(150,58)"><circle r="16" fill="#16915a"></circle><path d="M-7 0 l4 5 9 -10" stroke="#fff" stroke-width="3.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></path></g>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava celebrar">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><path d="M73 95 Q80 86 87 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M113 95 Q120 86 127 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M87 99 Q100 116 113 99 Q100 106 87 99 Z" fill="#fff"></path><path d="M89 100 Q100 113 111 100" fill="#fbe6cf"></path>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava com autocolantes">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><g transform="translate(60,148) rotate(-10)"><rect x="-12" y="-9" width="24" height="18" rx="3" fill="#fff"></rect><rect x="-10" y="-7" width="6.5" height="14" fill="#2a4b9b"></rect><rect x="-3.5" y="-7" width="6.5" height="14" fill="#fff"></rect><rect x="3" y="-7" width="6.5" height="14" fill="#d34b3e"></rect></g><g transform="translate(140,150) rotate(9)"><rect x="-12" y="-9" width="24" height="18" rx="3" fill="#fff"></rect><rect x="-10" y="-7" width="6.5" height="14" fill="#16915a"></rect><rect x="-3.5" y="-7" width="6.5" height="14" fill="#fcd116"></rect><rect x="3" y="-7" width="6.5" height="14" fill="#d12e2e"></rect><text x="-0.2" y="2" text-anchor="middle" font-size="8" fill="#16915a">★</text></g><g transform="translate(142,82) rotate(8)"><rect x="-12" y="-9" width="24" height="18" rx="3" fill="#fff"></rect><rect x="-10" y="-7" width="6.5" height="14" fill="#15100d"></rect><rect x="-3.5" y="-7" width="6.5" height="14" fill="#f6c343"></rect><rect x="3" y="-7" width="6.5" height="14" fill="#d34b3e"></rect></g><g transform="translate(58,82) rotate(-8)"><rect x="-11" y="-9" width="22" height="18" rx="3" fill="#fff"></rect><rect x="-9" y="-7" width="5" height="14" fill="#d52b1e"></rect><rect x="-4" y="-7" width="8" height="14" fill="#fff"></rect><rect x="4" y="-7" width="5" height="14" fill="#d52b1e"></rect><path d="M0 -3 l2 3 -2 3 -2 -3 Z" fill="#d52b1e"></path></g><path d="M73 95 Q80 86 87 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M113 95 Q120 86 127 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M90 100 Q100 111 110 100 Z" fill="#fbe6cf"></path>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava dormir">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><path d="M72 93 Q80 99 88 93" stroke="#15100d" stroke-width="3" fill="none" stroke-linecap="round"></path><path d="M112 93 Q120 99 128 93" stroke="#15100d" stroke-width="3" fill="none" stroke-linecap="round"></path><circle cx="100" cy="105" r="3" fill="none" stroke="#fbe6cf" stroke-width="2.5"></circle><text x="138" y="64" font-family="sans-serif" font-weight="700" font-size="15" fill="#9a8478">z</text><text x="150" y="50" font-family="sans-serif" font-weight="700" font-size="20" fill="#9a8478">Z</text>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava errou">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><path d="M70 84 l11 4 M130 84 l-11 4" stroke="#15100d" stroke-width="2.4" stroke-linecap="round"></path><ellipse cx="80" cy="95" rx="7.5" ry="9" fill="#fff"></ellipse><ellipse cx="120" cy="95" rx="7.5" ry="9" fill="#fff"></ellipse><circle cx="81" cy="97" r="4" fill="#15100d"></circle><circle cx="121" cy="97" r="4" fill="#15100d"></circle><path d="M94 107 Q100 102 106 107" stroke="#fbe6cf" stroke-width="3" fill="none" stroke-linecap="round"></path><path d="M134 84 q3.6 5 0 9 q-3.6 -4 0 -9 Z" fill="#7ab8e0"></path><g transform="translate(150,58)"><circle r="16" fill="#cf5b48"></circle><path d="M-6 -6 l12 12 M6 -6 l-12 12" stroke="#fff" stroke-width="3.5" stroke-linecap="round"></path></g>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava feliz">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><path d="M73 95 Q80 86 87 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M113 95 Q120 86 127 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M90 100 Q100 111 110 100 Z" fill="#fbe6cf"></path>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava neutra">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><ellipse cx="80" cy="92" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="120" cy="92" rx="8" ry="10" fill="#fff"></ellipse><circle cx="81" cy="94" r="4.2" fill="#15100d"></circle><circle cx="121" cy="94" r="4.2" fill="#15100d"></circle><circle cx="79" cy="90" r="1.6" fill="#fff"></circle><circle cx="119" cy="90" r="1.6" fill="#fff"></circle><path d="M92 102 Q100 109 108 102" fill="none" stroke="#fbe6cf" stroke-width="3" stroke-linecap="round"></path>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava com autocolantes">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><g transform="translate(60,148) rotate(-10)"><rect x="-12" y="-9" width="24" height="18" rx="3" fill="#fff"></rect><rect x="-10" y="-7" width="6.5" height="14" fill="#2a4b9b"></rect><rect x="-3.5" y="-7" width="6.5" height="14" fill="#fff"></rect><rect x="3" y="-7" width="6.5" height="14" fill="#d34b3e"></rect></g><g transform="translate(140,150) rotate(9)"><rect x="-12" y="-9" width="24" height="18" rx="3" fill="#fff"></rect><rect x="-10" y="-7" width="6.5" height="14" fill="#16915a"></rect><rect x="-3.5" y="-7" width="6.5" height="14" fill="#fcd116"></rect><rect x="3" y="-7" width="6.5" height="14" fill="#d12e2e"></rect><text x="-0.2" y="2" text-anchor="middle" font-size="8" fill="#16915a">★</text></g><g transform="translate(142,82) rotate(8)"><rect x="-12" y="-9" width="24" height="18" rx="3" fill="#fff"></rect><rect x="-10" y="-7" width="6.5" height="14" fill="#15100d"></rect><rect x="-3.5" y="-7" width="6.5" height="14" fill="#f6c343"></rect><rect x="3" y="-7" width="6.5" height="14" fill="#d34b3e"></rect></g><g transform="translate(58,82) rotate(-8)"><rect x="-11" y="-9" width="22" height="18" rx="3" fill="#fff"></rect><rect x="-9" y="-7" width="5" height="14" fill="#d52b1e"></rect><rect x="-4" y="-7" width="8" height="14" fill="#fff"></rect><rect x="4" y="-7" width="5" height="14" fill="#d52b1e"></rect><path d="M0 -3 l2 3 -2 3 -2 -3 Z" fill="#d52b1e"></path></g><path d="M73 95 Q80 86 87 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M113 95 Q120 86 127 95" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M90 100 Q100 111 110 100 Z" fill="#fbe6cf"></path>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava pensar">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><ellipse cx="80" cy="92" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="120" cy="92" rx="8" ry="10" fill="#fff"></ellipse><circle cx="82" cy="88" r="4" fill="#15100d"></circle><circle cx="122" cy="88" r="4" fill="#15100d"></circle><path d="M93 105 L105 103" stroke="#fbe6cf" stroke-width="3" fill="none" stroke-linecap="round"></path><text x="150" y="68" font-family="sans-serif" font-weight="700" font-size="30" fill="#f2974b">?</text>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Vava surpresa">
2
+ <path d="M84 64 q0 -20 16 -20 q16 0 16 20" fill="none" stroke="#3f2620" stroke-width="7" stroke-linecap="round"></path><rect x="84" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="104" y="58" width="12" height="10" rx="2" fill="#cf7a30"></rect><rect x="44" y="64" width="112" height="104" rx="16" fill="#51332d"></rect><rect x="50" y="70" width="100" height="92" rx="12" fill="none" stroke="#6b4a33" stroke-width="2.5"></rect><rect x="44" y="116" width="112" height="15" fill="#f2974b"></rect><rect x="92" y="112" width="16" height="23" rx="3" fill="#cf7a30"></rect><circle cx="66" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="134" cy="106" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="80" cy="92" r="10" fill="#fff"></circle><circle cx="120" cy="92" r="10" fill="#fff"></circle><circle cx="80" cy="93" r="5" fill="#15100d"></circle><circle cx="120" cy="93" r="5" fill="#15100d"></circle><circle cx="78" cy="90" r="2" fill="#fff"></circle><circle cx="118" cy="90" r="2" fill="#fff"></circle><ellipse cx="100" cy="105" rx="6" ry="7" fill="#fbe6cf"></ellipse>
3
+ </svg>
@@ -0,0 +1,7 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="50 32 100 100" width="200" height="200" role="img" aria-label="Yaya avatar a falar">
2
+ <circle cx="100" cy="82" r="58" fill="#fdf3ea"></circle>
3
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
4
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
5
+ <ellipse cx="86" cy="88" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="114" cy="88" rx="8" ry="10" fill="#fff"></ellipse><circle cx="87" cy="90" r="4.3" fill="#15100d"></circle><circle cx="115" cy="90" r="4.3" fill="#15100d"></circle><circle cx="85" cy="86" r="1.6" fill="#fff"></circle><circle cx="113" cy="86" r="1.6" fill="#fff"></circle><ellipse cx="100" cy="106" rx="6.5" ry="6" fill="#f2974b"></ellipse><ellipse cx="100" cy="104" rx="3.5" ry="1.6" fill="#fff" opacity=".5"></ellipse>
6
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
7
+ </svg>
@@ -0,0 +1,7 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="50 32 100 100" width="200" height="200" role="img" aria-label="Yaya avatar feliz">
2
+ <circle cx="100" cy="82" r="58" fill="#fdf3ea"></circle>
3
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
4
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
5
+ <path d="M78 81 l-5 -3 M122 81 l5 -3" stroke="#15100d" stroke-width="2" stroke-linecap="round"></path><ellipse cx="86" cy="88" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="114" cy="88" rx="8" ry="10" fill="#fff"></ellipse><circle cx="87" cy="90" r="4.3" fill="#15100d"></circle><circle cx="115" cy="90" r="4.3" fill="#15100d"></circle><circle cx="85" cy="86" r="1.6" fill="#fff"></circle><circle cx="113" cy="86" r="1.6" fill="#fff"></circle><path d="M91 103 Q100 113 109 103 Z" fill="#f2974b"></path>
6
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
7
+ </svg>
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="50 32 100 100" width="200" height="200" role="img" aria-label="Yaya avatar sem fundo">
2
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
3
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
4
+ <ellipse cx="86" cy="88" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="114" cy="88" rx="8" ry="10" fill="#fff"></ellipse><circle cx="87" cy="90" r="4.3" fill="#15100d"></circle><circle cx="115" cy="90" r="4.3" fill="#15100d"></circle><circle cx="85" cy="86" r="1.6" fill="#fff"></circle><circle cx="113" cy="86" r="1.6" fill="#fff"></circle><ellipse cx="100" cy="106" rx="6.5" ry="6" fill="#f2974b"></ellipse><ellipse cx="100" cy="104" rx="3.5" ry="1.6" fill="#fff" opacity=".5"></ellipse>
5
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
6
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Yaya acertou">
2
+ <path d="M72 170 Q70 124 100 124 Q130 124 128 170 Z" fill="#f2974b"></path>
3
+ <path d="M82 128 L120 150" stroke="#3f2620" stroke-width="3" fill="none"></path>
4
+ <rect x="112" y="148" width="22" height="18" rx="5" fill="#cf7a30"></rect>
5
+ <rect x="118" y="144" width="10" height="6" rx="3" fill="none" stroke="#3f2620" stroke-width="2"></rect>
6
+ <path d="M76 122 Q100 138 124 122 L124 130 Q100 146 76 130 Z" fill="#e0662e"></path>
7
+ <circle cx="88" cy="129" r="1.5" fill="#fbe6cf"></circle><circle cx="100" cy="133" r="1.5" fill="#fbe6cf"></circle><circle cx="112" cy="129" r="1.5" fill="#fbe6cf"></circle>
8
+ <path d="M62 96 q-6 18 4 30 q8 -10 6 -26 Z" fill="#3f2620"></path><path d="M138 96 q6 18 -4 30 q-8 -10 -6 -26 Z" fill="#3f2620"></path>
9
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
10
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
11
+ <path d="M79 90 Q86 82 93 90" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M107 90 Q114 82 121 90" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M91 103 Q100 113 109 103 Z" fill="#f2974b"></path><g transform="translate(150,58)"><circle r="16" fill="#16915a"></circle><path d="M-7 0 l4 5 9 -10" stroke="#fff" stroke-width="3.5" fill="none" stroke-linecap="round" stroke-linejoin="round"></path></g>
12
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
13
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Yaya celebrar">
2
+ <path d="M72 170 Q70 124 100 124 Q130 124 128 170 Z" fill="#f2974b"></path>
3
+ <path d="M82 128 L120 150" stroke="#3f2620" stroke-width="3" fill="none"></path>
4
+ <rect x="112" y="148" width="22" height="18" rx="5" fill="#cf7a30"></rect>
5
+ <rect x="118" y="144" width="10" height="6" rx="3" fill="none" stroke="#3f2620" stroke-width="2"></rect>
6
+ <path d="M76 122 Q100 138 124 122 L124 130 Q100 146 76 130 Z" fill="#e0662e"></path>
7
+ <circle cx="88" cy="129" r="1.5" fill="#fbe6cf"></circle><circle cx="100" cy="133" r="1.5" fill="#fbe6cf"></circle><circle cx="112" cy="129" r="1.5" fill="#fbe6cf"></circle>
8
+ <path d="M62 96 q-6 18 4 30 q8 -10 6 -26 Z" fill="#3f2620"></path><path d="M138 96 q6 18 -4 30 q-8 -10 -6 -26 Z" fill="#3f2620"></path>
9
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
10
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
11
+ <path d="M79 90 Q86 82 93 90" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M107 90 Q114 82 121 90" stroke="#15100d" stroke-width="3.2" fill="none" stroke-linecap="round"></path><path d="M90 102 Q100 117 110 102 Q100 108 90 102 Z" fill="#fff"></path><path d="M92 103 Q100 114 108 103" fill="#f2974b"></path>
12
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
13
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Yaya dormir">
2
+ <path d="M72 170 Q70 124 100 124 Q130 124 128 170 Z" fill="#f2974b"></path>
3
+ <path d="M82 128 L120 150" stroke="#3f2620" stroke-width="3" fill="none"></path>
4
+ <rect x="112" y="148" width="22" height="18" rx="5" fill="#cf7a30"></rect>
5
+ <rect x="118" y="144" width="10" height="6" rx="3" fill="none" stroke="#3f2620" stroke-width="2"></rect>
6
+ <path d="M76 122 Q100 138 124 122 L124 130 Q100 146 76 130 Z" fill="#e0662e"></path>
7
+ <circle cx="88" cy="129" r="1.5" fill="#fbe6cf"></circle><circle cx="100" cy="133" r="1.5" fill="#fbe6cf"></circle><circle cx="112" cy="129" r="1.5" fill="#fbe6cf"></circle>
8
+ <path d="M62 96 q-6 18 4 30 q8 -10 6 -26 Z" fill="#3f2620"></path><path d="M138 96 q6 18 -4 30 q-8 -10 -6 -26 Z" fill="#3f2620"></path>
9
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
10
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
11
+ <path d="M78 89 Q86 95 94 89" stroke="#15100d" stroke-width="3" fill="none" stroke-linecap="round"></path><path d="M106 89 Q114 95 122 89" stroke="#15100d" stroke-width="3" fill="none" stroke-linecap="round"></path><circle cx="100" cy="105" r="3" fill="none" stroke="#cf7a30" stroke-width="2.5"></circle><text x="140" y="60" font-family="sans-serif" font-weight="700" font-size="15" fill="#9a8478">z</text><text x="152" y="46" font-family="sans-serif" font-weight="700" font-size="20" fill="#9a8478">Z</text>
12
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
13
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Yaya errou">
2
+ <path d="M72 170 Q70 124 100 124 Q130 124 128 170 Z" fill="#f2974b"></path>
3
+ <path d="M82 128 L120 150" stroke="#3f2620" stroke-width="3" fill="none"></path>
4
+ <rect x="112" y="148" width="22" height="18" rx="5" fill="#cf7a30"></rect>
5
+ <rect x="118" y="144" width="10" height="6" rx="3" fill="none" stroke="#3f2620" stroke-width="2"></rect>
6
+ <path d="M76 122 Q100 138 124 122 L124 130 Q100 146 76 130 Z" fill="#e0662e"></path>
7
+ <circle cx="88" cy="129" r="1.5" fill="#fbe6cf"></circle><circle cx="100" cy="133" r="1.5" fill="#fbe6cf"></circle><circle cx="112" cy="129" r="1.5" fill="#fbe6cf"></circle>
8
+ <path d="M62 96 q-6 18 4 30 q8 -10 6 -26 Z" fill="#3f2620"></path><path d="M138 96 q6 18 -4 30 q-8 -10 -6 -26 Z" fill="#3f2620"></path>
9
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
10
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
11
+ <path d="M76 82 l11 4 M124 82 l-11 4" stroke="#15100d" stroke-width="2.2" stroke-linecap="round"></path><ellipse cx="86" cy="91" rx="7.5" ry="9" fill="#fff"></ellipse><ellipse cx="114" cy="91" rx="7.5" ry="9" fill="#fff"></ellipse><circle cx="87" cy="93" r="4" fill="#15100d"></circle><circle cx="115" cy="93" r="4" fill="#15100d"></circle><path d="M94 107 Q100 102 106 107" stroke="#cf7a30" stroke-width="3" fill="none" stroke-linecap="round"></path><path d="M133 86 q3.6 5 0 9 q-3.6 -4 0 -9 Z" fill="#7ab8e0"></path><g transform="translate(150,58)"><circle r="16" fill="#cf5b48"></circle><path d="M-6 -6 l12 12 M6 -6 l-12 12" stroke="#fff" stroke-width="3.5" stroke-linecap="round"></path></g>
12
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
13
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Yaya falar">
2
+ <path d="M72 170 Q70 124 100 124 Q130 124 128 170 Z" fill="#f2974b"></path>
3
+ <path d="M82 128 L120 150" stroke="#3f2620" stroke-width="3" fill="none"></path>
4
+ <rect x="112" y="148" width="22" height="18" rx="5" fill="#cf7a30"></rect>
5
+ <rect x="118" y="144" width="10" height="6" rx="3" fill="none" stroke="#3f2620" stroke-width="2"></rect>
6
+ <path d="M76 122 Q100 138 124 122 L124 130 Q100 146 76 130 Z" fill="#e0662e"></path>
7
+ <circle cx="88" cy="129" r="1.5" fill="#fbe6cf"></circle><circle cx="100" cy="133" r="1.5" fill="#fbe6cf"></circle><circle cx="112" cy="129" r="1.5" fill="#fbe6cf"></circle>
8
+ <path d="M62 96 q-6 18 4 30 q8 -10 6 -26 Z" fill="#3f2620"></path><path d="M138 96 q6 18 -4 30 q-8 -10 -6 -26 Z" fill="#3f2620"></path>
9
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
10
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
11
+ <ellipse cx="86" cy="88" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="114" cy="88" rx="8" ry="10" fill="#fff"></ellipse><circle cx="87" cy="90" r="4.3" fill="#15100d"></circle><circle cx="115" cy="90" r="4.3" fill="#15100d"></circle><circle cx="85" cy="86" r="1.6" fill="#fff"></circle><circle cx="113" cy="86" r="1.6" fill="#fff"></circle><ellipse cx="100" cy="106" rx="6.5" ry="6" fill="#f2974b"></ellipse><ellipse cx="100" cy="104" rx="3.5" ry="1.6" fill="#fff" opacity=".5"></ellipse>
12
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
13
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" width="240" height="240" role="img" aria-label="Yaya feliz">
2
+ <path d="M72 170 Q70 124 100 124 Q130 124 128 170 Z" fill="#f2974b"></path>
3
+ <path d="M82 128 L120 150" stroke="#3f2620" stroke-width="3" fill="none"></path>
4
+ <rect x="112" y="148" width="22" height="18" rx="5" fill="#cf7a30"></rect>
5
+ <rect x="118" y="144" width="10" height="6" rx="3" fill="none" stroke="#3f2620" stroke-width="2"></rect>
6
+ <path d="M76 122 Q100 138 124 122 L124 130 Q100 146 76 130 Z" fill="#e0662e"></path>
7
+ <circle cx="88" cy="129" r="1.5" fill="#fbe6cf"></circle><circle cx="100" cy="133" r="1.5" fill="#fbe6cf"></circle><circle cx="112" cy="129" r="1.5" fill="#fbe6cf"></circle>
8
+ <path d="M62 96 q-6 18 4 30 q8 -10 6 -26 Z" fill="#3f2620"></path><path d="M138 96 q6 18 -4 30 q-8 -10 -6 -26 Z" fill="#3f2620"></path>
9
+ <circle cx="100" cy="88" r="40" fill="#51332d"></circle>
10
+ <circle cx="74" cy="101" r="6" fill="#f2974b" opacity=".4"></circle><circle cx="126" cy="101" r="6" fill="#f2974b" opacity=".4"></circle>
11
+ <path d="M78 81 l-5 -3 M122 81 l5 -3" stroke="#15100d" stroke-width="2" stroke-linecap="round"></path><ellipse cx="86" cy="88" rx="8" ry="10" fill="#fff"></ellipse><ellipse cx="114" cy="88" rx="8" ry="10" fill="#fff"></ellipse><circle cx="87" cy="90" r="4.3" fill="#15100d"></circle><circle cx="115" cy="90" r="4.3" fill="#15100d"></circle><circle cx="85" cy="86" r="1.6" fill="#fff"></circle><circle cx="113" cy="86" r="1.6" fill="#fff"></circle><path d="M91 103 Q100 113 109 103 Z" fill="#f2974b"></path>
12
+ <ellipse cx="100" cy="54" rx="33" ry="13" fill="#f2974b"></ellipse><ellipse cx="100" cy="50" rx="30" ry="10" fill="#ff9f57"></ellipse><circle cx="100" cy="42" r="3.6" fill="#f2974b"></circle>
13
+ </svg>