@a5c-ai/babysitter-breakpoints 0.1.3 → 0.1.4

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.
package/web/styles.css ADDED
@@ -0,0 +1,431 @@
1
+ :root {
2
+ --bg: #f5f0e9;
3
+ --bg-alt: #fff7ee;
4
+ --ink: #1e1a14;
5
+ --accent: #c06014;
6
+ --accent-soft: #ffd5b5;
7
+ --line: #e3d5c4;
8
+ --shadow: rgba(30, 26, 20, 0.08);
9
+ --mono: "Space Grotesk", system-ui, sans-serif;
10
+ --display: "Fraunces", Georgia, serif;
11
+ }
12
+
13
+ * {
14
+ box-sizing: border-box;
15
+ }
16
+
17
+ body {
18
+ margin: 0;
19
+ font-family: var(--mono);
20
+ color: var(--ink);
21
+ background: radial-gradient(circle at top, #fff9f2 0%, var(--bg) 65%);
22
+ }
23
+
24
+ .page {
25
+ max-width: 1200px;
26
+ margin: 0 auto;
27
+ padding: 32px 24px 64px;
28
+ }
29
+
30
+ .hero {
31
+ display: flex;
32
+ flex-wrap: wrap;
33
+ gap: 24px;
34
+ justify-content: space-between;
35
+ background: var(--bg-alt);
36
+ border: 1px solid var(--line);
37
+ border-radius: 24px;
38
+ padding: 28px;
39
+ box-shadow: 0 18px 40px var(--shadow);
40
+ }
41
+
42
+ .eyebrow {
43
+ text-transform: uppercase;
44
+ letter-spacing: 0.22em;
45
+ font-size: 12px;
46
+ color: var(--accent);
47
+ font-weight: 600;
48
+ }
49
+
50
+ h1 {
51
+ font-family: var(--display);
52
+ font-size: clamp(28px, 4vw, 44px);
53
+ margin: 8px 0;
54
+ }
55
+
56
+ .subtitle {
57
+ font-size: 16px;
58
+ max-width: 520px;
59
+ }
60
+
61
+ .token-panel {
62
+ min-width: 240px;
63
+ display: grid;
64
+ gap: 8px;
65
+ background: white;
66
+ padding: 16px;
67
+ border-radius: 16px;
68
+ border: 1px solid var(--line);
69
+ }
70
+
71
+ .token-panel input {
72
+ padding: 8px 10px;
73
+ border: 1px solid var(--line);
74
+ border-radius: 8px;
75
+ font-family: var(--mono);
76
+ }
77
+
78
+ .controls {
79
+ display: grid;
80
+ grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
81
+ gap: 16px;
82
+ margin: 24px 0;
83
+ align-items: end;
84
+ }
85
+
86
+ .field label {
87
+ font-size: 12px;
88
+ text-transform: uppercase;
89
+ letter-spacing: 0.12em;
90
+ color: #6d5847;
91
+ margin-bottom: 6px;
92
+ display: block;
93
+ }
94
+
95
+ .field input,
96
+ .field select {
97
+ width: 100%;
98
+ padding: 8px 10px;
99
+ border-radius: 10px;
100
+ border: 1px solid var(--line);
101
+ font-family: var(--mono);
102
+ }
103
+
104
+ button {
105
+ padding: 10px 14px;
106
+ border: none;
107
+ border-radius: 10px;
108
+ background: var(--accent);
109
+ color: #fff;
110
+ font-weight: 600;
111
+ cursor: pointer;
112
+ transition: transform 0.15s ease, box-shadow 0.15s ease;
113
+ }
114
+
115
+ button:hover {
116
+ transform: translateY(-1px);
117
+ box-shadow: 0 8px 16px rgba(192, 96, 20, 0.3);
118
+ }
119
+
120
+ .stats {
121
+ display: grid;
122
+ grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
123
+ gap: 16px;
124
+ margin-bottom: 24px;
125
+ }
126
+
127
+ .stat-card {
128
+ background: white;
129
+ border: 1px solid var(--line);
130
+ border-radius: 16px;
131
+ padding: 16px;
132
+ box-shadow: 0 10px 24px var(--shadow);
133
+ }
134
+
135
+ .stat-label {
136
+ text-transform: uppercase;
137
+ letter-spacing: 0.2em;
138
+ font-size: 11px;
139
+ color: #6d5847;
140
+ }
141
+
142
+ .stat-value {
143
+ font-size: 24px;
144
+ font-weight: 600;
145
+ }
146
+
147
+ .layout {
148
+ display: grid;
149
+ grid-template-columns: 1fr 1.3fr;
150
+ gap: 24px;
151
+ }
152
+
153
+ .list,
154
+ .detail {
155
+ background: white;
156
+ border-radius: 20px;
157
+ padding: 20px;
158
+ border: 1px solid var(--line);
159
+ min-height: 420px;
160
+ }
161
+
162
+ .section-title {
163
+ font-weight: 600;
164
+ margin-bottom: 12px;
165
+ }
166
+
167
+ #breakpoint-list {
168
+ list-style: none;
169
+ padding: 0;
170
+ margin: 0;
171
+ display: grid;
172
+ gap: 12px;
173
+ }
174
+
175
+ .breakpoint-card {
176
+ border: 1px solid var(--line);
177
+ border-radius: 14px;
178
+ padding: 12px;
179
+ display: grid;
180
+ gap: 6px;
181
+ cursor: pointer;
182
+ background: #fffdfb;
183
+ }
184
+
185
+ .breakpoint-card:hover {
186
+ border-color: var(--accent);
187
+ }
188
+
189
+ .status-pill {
190
+ display: inline-block;
191
+ padding: 4px 10px;
192
+ border-radius: 999px;
193
+ background: var(--accent-soft);
194
+ color: var(--accent);
195
+ font-size: 12px;
196
+ font-weight: 600;
197
+ }
198
+
199
+ .status-pill.waiting {
200
+ background: #ffe7a3;
201
+ color: #8f5b00;
202
+ }
203
+
204
+ .status-pill.released {
205
+ background: #d8f5cc;
206
+ color: #2f6b1f;
207
+ }
208
+
209
+ .status-pill.expired {
210
+ background: #f2d1d1;
211
+ color: #8c2c2c;
212
+ }
213
+
214
+ .status-pill.cancelled {
215
+ background: #d3d3d3;
216
+ color: #444;
217
+ }
218
+
219
+ .detail-header {
220
+ display: flex;
221
+ justify-content: space-between;
222
+ align-items: baseline;
223
+ gap: 12px;
224
+ }
225
+
226
+ .detail-meta {
227
+ font-size: 13px;
228
+ color: #6d5847;
229
+ margin-bottom: 12px;
230
+ }
231
+
232
+ pre {
233
+ background: #16120d;
234
+ color: #f9d9c0;
235
+ padding: 14px;
236
+ border-radius: 12px;
237
+ overflow-x: auto;
238
+ font-size: 12px;
239
+ }
240
+
241
+ .detail-header h2 {
242
+ margin: 0;
243
+ }
244
+
245
+ .detail-meta {
246
+ margin-top: 6px;
247
+ }
248
+
249
+ .detail-meta span {
250
+ margin-right: 12px;
251
+ }
252
+
253
+ .disabled {
254
+ opacity: 0.5;
255
+ pointer-events: none;
256
+ }
257
+
258
+ .feedback {
259
+ margin-top: 16px;
260
+ display: grid;
261
+ gap: 10px;
262
+ }
263
+
264
+ #feedback-list {
265
+ list-style: none;
266
+ padding: 0;
267
+ margin: 0;
268
+ display: grid;
269
+ gap: 8px;
270
+ }
271
+
272
+ .feedback-item {
273
+ padding: 10px;
274
+ border-radius: 10px;
275
+ border: 1px solid var(--line);
276
+ }
277
+
278
+ .feedback-actions {
279
+ display: flex;
280
+ flex-wrap: wrap;
281
+ gap: 8px;
282
+ align-items: center;
283
+ }
284
+
285
+ .feedback-actions input {
286
+ flex: 1;
287
+ padding: 8px 10px;
288
+ border-radius: 8px;
289
+ border: 1px solid var(--line);
290
+ }
291
+
292
+ .hidden {
293
+ display: none;
294
+ }
295
+
296
+ .hint {
297
+ font-size: 12px;
298
+ color: #6d5847;
299
+ }
300
+
301
+ #context-list {
302
+ list-style: none;
303
+ padding: 0;
304
+ margin: 0;
305
+ display: grid;
306
+ gap: 8px;
307
+ }
308
+
309
+ .context {
310
+ margin-top: 20px;
311
+ }
312
+
313
+ .context-layout {
314
+ display: grid;
315
+ grid-template-columns: minmax(160px, 220px) 1fr;
316
+ gap: 12px;
317
+ margin-top: 8px;
318
+ }
319
+
320
+ .context-item {
321
+ border: 1px solid var(--line);
322
+ border-radius: 10px;
323
+ padding: 8px;
324
+ font-size: 13px;
325
+ cursor: pointer;
326
+ background: #fff7ee;
327
+ }
328
+
329
+ .context-item.active {
330
+ border-color: var(--accent);
331
+ background: #ffe7d1;
332
+ }
333
+
334
+ .context-viewer {
335
+ border: 1px solid var(--line);
336
+ border-radius: 12px;
337
+ padding: 12px;
338
+ background: #fffdfb;
339
+ min-height: 180px;
340
+ }
341
+
342
+ .context-render {
343
+ font-size: 14px;
344
+ line-height: 1.6;
345
+ }
346
+
347
+ .context-render h1,
348
+ .context-render h2,
349
+ .context-render h3 {
350
+ font-family: var(--display);
351
+ }
352
+
353
+ .context-render code {
354
+ background: #2a211b;
355
+ color: #f9d9c0;
356
+ padding: 0 4px;
357
+ border-radius: 4px;
358
+ }
359
+
360
+ .context-render pre {
361
+ background: #16120d;
362
+ color: #f9d9c0;
363
+ }
364
+
365
+ .extensions {
366
+ margin-top: 24px;
367
+ background: white;
368
+ border-radius: 20px;
369
+ padding: 20px;
370
+ border: 1px solid var(--line);
371
+ }
372
+
373
+ .extension-card {
374
+ border: 1px solid var(--line);
375
+ border-radius: 14px;
376
+ padding: 14px;
377
+ margin-bottom: 12px;
378
+ }
379
+
380
+ .extension-header {
381
+ display: flex;
382
+ justify-content: space-between;
383
+ align-items: baseline;
384
+ gap: 12px;
385
+ }
386
+
387
+ .extension-fields {
388
+ display: grid;
389
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
390
+ gap: 12px;
391
+ margin-top: 10px;
392
+ }
393
+
394
+ .extension-fields input {
395
+ width: 100%;
396
+ padding: 8px 10px;
397
+ border-radius: 8px;
398
+ border: 1px solid var(--line);
399
+ font-family: var(--mono);
400
+ }
401
+
402
+ .extension-fields label {
403
+ font-size: 12px;
404
+ text-transform: uppercase;
405
+ letter-spacing: 0.12em;
406
+ color: #6d5847;
407
+ margin-bottom: 6px;
408
+ display: block;
409
+ }
410
+
411
+ .extension-help {
412
+ margin-top: 6px;
413
+ font-size: 12px;
414
+ color: #6d5847;
415
+ }
416
+
417
+ .extension-actions {
418
+ margin-top: 12px;
419
+ display: flex;
420
+ gap: 8px;
421
+ }
422
+
423
+ @media (max-width: 900px) {
424
+ .layout {
425
+ grid-template-columns: 1fr;
426
+ }
427
+
428
+ .context-layout {
429
+ grid-template-columns: 1fr;
430
+ }
431
+ }