@jjlmoya/utils-cooking 1.8.0 → 1.9.0

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.
@@ -1,369 +0,0 @@
1
- :root {
2
- --sc-primary: hsl(38deg, 92%, 50%);
3
- --sc-primary-light: hsl(38deg, 92%, 90%);
4
- --sc-success: hsl(142deg, 72%, 45%);
5
- --sc-bg-card: hsl(0deg, 0%, 100%);
6
- --sc-bg-app: hsl(210deg, 20%, 98%);
7
- --sc-border: hsl(210deg, 20%, 90%);
8
- --sc-text-main: hsl(210deg, 30%, 20%);
9
- --sc-text-muted: hsl(210deg, 15%, 50%);
10
- --sc-text-disabled: hsl(210deg, 15%, 75%);
11
- --sc-shadow-md: 0 4px 6px -1px rgb(0, 0, 0, 0.1);
12
- --sc-shadow-lg: 0 10px 15px -3px rgb(0, 0, 0, 0.1);
13
- --sc-radius: 1rem;
14
- --sc-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
15
- }
16
-
17
- .theme-dark {
18
- --sc-bg-card: hsl(220deg, 25%, 12%);
19
- --sc-bg-app: hsl(220deg, 30%, 7%);
20
- --sc-border: hsl(220deg, 20%, 20%);
21
- --sc-text-main: hsl(210deg, 20%, 95%);
22
- --sc-text-muted: hsl(210deg, 15%, 70%);
23
- --sc-text-disabled: hsl(210deg, 15%, 50%);
24
- --sc-primary-light: hsl(38deg, 92%, 12%);
25
- }
26
-
27
- .sourdough-calculator {
28
- width: 100%;
29
- max-width: 100%;
30
- padding: 2rem;
31
- background: var(--sc-bg-card);
32
- border: 1px solid var(--sc-border);
33
- border-radius: var(--sc-radius);
34
- box-shadow: var(--sc-shadow-lg);
35
- }
36
-
37
- .sc-header {
38
- width: 100%;
39
- height: 0.5rem;
40
- background: var(--sc-primary);
41
- border-radius: var(--sc-radius) var(--sc-radius) 0 0;
42
- margin: -2rem -2rem 2rem;
43
- }
44
-
45
- .sc-grid {
46
- display: grid;
47
- grid-template-columns: 1fr;
48
- gap: 3rem;
49
- }
50
-
51
- @media (min-width: 1024px) {
52
- .sc-grid {
53
- grid-template-columns: 2fr 3fr;
54
- }
55
-
56
- .sc-grid > * {
57
- min-width: 0;
58
- }
59
- }
60
-
61
- .sc-section {
62
- display: flex;
63
- flex-direction: column;
64
- gap: 2.5rem;
65
- }
66
-
67
- .sc-control-group {
68
- display: flex;
69
- flex-direction: column;
70
- gap: 1rem;
71
- }
72
-
73
- .sc-label {
74
- font-size: 0.875rem;
75
- font-weight: 700;
76
- color: var(--sc-text-muted);
77
- text-transform: uppercase;
78
- letter-spacing: 0.05em;
79
- display: flex;
80
- align-items: center;
81
- gap: 0.5rem;
82
- }
83
-
84
- .sc-input {
85
- width: 100%;
86
- padding: 1rem;
87
- border: 2px solid var(--sc-border);
88
- border-radius: 0.75rem;
89
- background: var(--sc-bg-app);
90
- color: var(--sc-text-main);
91
- font-weight: 600;
92
- font-size: 2rem;
93
- text-align: center;
94
- transition: var(--sc-transition);
95
- }
96
-
97
- .sc-input:focus {
98
- outline: none;
99
- border-color: var(--sc-primary);
100
- box-shadow: 0 0 0 3px hsl(38deg, 92%, 50%, 0.1);
101
- }
102
-
103
- .sc-input::placeholder {
104
- color: var(--sc-text-disabled);
105
- }
106
-
107
- input[type='number']::-webkit-outer-spin-button,
108
- input[type='number']::-webkit-inner-spin-button {
109
- -webkit-appearance: none;
110
- margin: 0;
111
- }
112
-
113
- .sc-ratio-buttons {
114
- display: grid;
115
- grid-template-columns: repeat(3, 1fr);
116
- gap: 0.75rem;
117
- }
118
-
119
- .ratio-btn {
120
- display: flex;
121
- flex-direction: column;
122
- align-items: center;
123
- justify-content: center;
124
- padding: 0.75rem 0.5rem;
125
- border-radius: 0.75rem;
126
- border: 2px solid var(--sc-border);
127
- background: var(--sc-bg-app);
128
- color: var(--sc-text-muted);
129
- font-weight: 600;
130
- cursor: pointer;
131
- transition: var(--sc-transition);
132
- }
133
-
134
- .ratio-btn:hover {
135
- border-color: var(--sc-primary);
136
- color: var(--sc-primary);
137
- }
138
-
139
- .ratio-btn.ratio-active {
140
- background: var(--sc-primary-light);
141
- border-color: var(--sc-primary);
142
- color: var(--sc-primary);
143
- box-shadow: var(--sc-shadow-md);
144
- }
145
-
146
- .ratio-btn.ratio-inactive {
147
- background: var(--sc-bg-app);
148
- border-color: var(--sc-border);
149
- color: var(--sc-text-muted);
150
- }
151
-
152
- .sc-ratio-label {
153
- font-size: 0.625rem;
154
- text-transform: uppercase;
155
- opacity: 0.75;
156
- margin-bottom: 0.25rem;
157
- }
158
-
159
- .sc-ratio-value {
160
- font-size: 1.125rem;
161
- font-weight: 700;
162
- }
163
-
164
- .sc-custom-inputs {
165
- display: none;
166
- gap: 1.5rem;
167
- padding: 1.5rem;
168
- background: var(--sc-bg-app);
169
- border-radius: 0.75rem;
170
- border: 1px solid var(--sc-border);
171
- }
172
-
173
- .sc-custom-inputs.visible {
174
- display: flex;
175
- justify-content: space-around;
176
- align-items: flex-end;
177
- }
178
-
179
- .sc-custom-input-group {
180
- display: flex;
181
- flex-direction: column;
182
- align-items: center;
183
- gap: 0.5rem;
184
- }
185
-
186
- .custom-input {
187
- padding: 0.75rem;
188
- border: 1px solid var(--sc-border);
189
- border-radius: 0.5rem;
190
- background: var(--sc-bg-card);
191
- color: var(--sc-text-main);
192
- width: 80px;
193
- text-align: center;
194
- font-weight: 600;
195
- font-size: 1rem;
196
- transition: var(--sc-transition);
197
- }
198
-
199
- .custom-input:focus {
200
- outline: none;
201
- border-color: var(--sc-primary);
202
- }
203
-
204
- .sc-custom-label {
205
- font-size: 0.625rem;
206
- text-transform: uppercase;
207
- font-weight: 700;
208
- color: var(--sc-text-muted);
209
- margin-bottom: 0.25rem;
210
- display: block;
211
- text-align: center;
212
- }
213
-
214
- .sc-results {
215
- display: flex;
216
- flex-direction: column;
217
- gap: 1rem;
218
- }
219
-
220
- .sc-results-header {
221
- padding: 1rem;
222
- background: var(--sc-bg-app);
223
- border: 1px solid var(--sc-border);
224
- border-radius: 0.75rem;
225
- display: flex;
226
- justify-content: space-between;
227
- align-items: center;
228
- }
229
-
230
- .sc-results-title {
231
- font-size: 0.75rem;
232
- font-weight: 700;
233
- color: var(--sc-text-muted);
234
- text-transform: uppercase;
235
- letter-spacing: 0.05em;
236
- }
237
-
238
- .sc-hydration-badge {
239
- font-size: 0.75rem;
240
- font-weight: 600;
241
- color: var(--sc-primary);
242
- background: var(--sc-primary-light);
243
- padding: 0.25rem 0.75rem;
244
- border-radius: 9999px;
245
- }
246
-
247
- .sc-result-rows {
248
- display: flex;
249
- flex-direction: column;
250
- gap: 0;
251
- border: 1px solid var(--sc-border);
252
- border-radius: 0.75rem;
253
- overflow: hidden;
254
- }
255
-
256
- .sc-result-row {
257
- display: flex;
258
- justify-content: space-between;
259
- align-items: center;
260
- padding: 1rem;
261
- border-bottom: 1px solid var(--sc-border);
262
- transition: var(--sc-transition);
263
- }
264
-
265
- .sc-result-row:last-child {
266
- border-bottom: none;
267
- }
268
-
269
- .sc-result-row:hover {
270
- background: var(--sc-primary-light);
271
- }
272
-
273
- .sc-result-content {
274
- display: flex;
275
- align-items: center;
276
- gap: 1rem;
277
- flex: 1;
278
- }
279
-
280
- .sc-result-icon {
281
- width: 3rem;
282
- height: 3rem;
283
- border-radius: 0.5rem;
284
- display: flex;
285
- align-items: center;
286
- justify-content: center;
287
- font-size: 1.5rem;
288
- }
289
-
290
- .sc-result-icon.starter {
291
- background: hsl(38deg, 92%, 90%);
292
- color: var(--sc-primary);
293
- }
294
-
295
- .theme-dark .sc-result-icon.starter {
296
- background: hsl(38deg, 92%, 15%);
297
- }
298
-
299
- .sc-result-icon.flour {
300
- background: hsl(45deg, 93%, 90%);
301
- color: hsl(45deg, 93%, 50%);
302
- }
303
-
304
- .theme-dark .sc-result-icon.flour {
305
- background: hsl(45deg, 93%, 15%);
306
- }
307
-
308
- .sc-result-icon.water {
309
- background: hsl(196deg, 95%, 90%);
310
- color: hsl(196deg, 95%, 50%);
311
- }
312
-
313
- .theme-dark .sc-result-icon.water {
314
- background: hsl(196deg, 95%, 15%);
315
- }
316
-
317
- .sc-result-name {
318
- font-weight: 700;
319
- color: var(--sc-text-main);
320
- font-size: 1.125rem;
321
- }
322
-
323
- .sc-result-desc {
324
- font-size: 0.875rem;
325
- color: var(--sc-text-muted);
326
- }
327
-
328
- .sc-result-value {
329
- display: flex;
330
- flex-direction: column;
331
- align-items: flex-end;
332
- gap: 0.25rem;
333
- }
334
-
335
- .sc-result-amount {
336
- font-size: 1.875rem;
337
- font-weight: 800;
338
- color: var(--sc-text-main);
339
- line-height: 1;
340
- }
341
-
342
- .sc-result-unit {
343
- font-size: 0.875rem;
344
- color: var(--sc-text-muted);
345
- font-weight: 600;
346
- }
347
-
348
- .sc-total {
349
- display: flex;
350
- justify-content: flex-end;
351
- align-items: center;
352
- gap: 1rem;
353
- padding: 1rem;
354
- margin-top: 1rem;
355
- opacity: 0.75;
356
- }
357
-
358
- .sc-total-label {
359
- font-size: 0.875rem;
360
- font-weight: 600;
361
- color: var(--sc-text-muted);
362
- text-transform: uppercase;
363
- }
364
-
365
- .sc-total-value {
366
- font-size: 1.25rem;
367
- font-weight: 700;
368
- color: var(--sc-text-main);
369
- }