huddle60 0.0.0-stage → 0.1.1

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/ui/styles.css ADDED
@@ -0,0 +1,873 @@
1
+ :root {
2
+ --bg: #0b0e14;
3
+ --panel: #11151d;
4
+ --panel-2: #161b25;
5
+ --line: #232a36;
6
+ --text: #d6deeb;
7
+ --muted: #7d8799;
8
+ --accent: #5eead4;
9
+ --accent-2: #7aa2f7;
10
+ --warn: #f6c177;
11
+ --danger: #f7768e;
12
+ --ok: #9ece6a;
13
+ --mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;
14
+ --sans: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, sans-serif;
15
+ --radius: 6px;
16
+ --fs-sm: 12px;
17
+ --fs-md: 13px;
18
+ --fs-lg: 14px;
19
+ color-scheme: dark;
20
+ }
21
+
22
+ * {
23
+ box-sizing: border-box;
24
+ }
25
+
26
+ [hidden] {
27
+ display: none !important;
28
+ }
29
+
30
+ html,
31
+ body {
32
+ margin: 0;
33
+ height: 100%;
34
+ }
35
+
36
+ body {
37
+ background:
38
+ radial-gradient(circle at 1px 1px, #1a2030 1px, transparent 0) 0 0 / 22px 22px,
39
+ var(--bg);
40
+ color: var(--text);
41
+ font: var(--fs-lg) / 1.5 var(--sans);
42
+ display: grid;
43
+ grid-template-columns: 1fr 320px;
44
+ grid-template-rows: auto 1fr;
45
+ grid-template-areas:
46
+ "top top"
47
+ "main log";
48
+ }
49
+
50
+ a {
51
+ color: var(--accent-2);
52
+ text-decoration: none;
53
+ }
54
+ a:hover {
55
+ text-decoration: underline;
56
+ }
57
+
58
+ .muted {
59
+ color: var(--muted);
60
+ }
61
+ .small {
62
+ font-size: var(--fs-sm);
63
+ }
64
+
65
+ /* ---- top bar ---- */
66
+ .topbar {
67
+ grid-area: top;
68
+ display: flex;
69
+ align-items: center;
70
+ gap: 24px;
71
+ padding: 10px 20px;
72
+ border-bottom: 1px solid var(--line);
73
+ background: rgba(11, 14, 20, 0.85);
74
+ backdrop-filter: blur(6px);
75
+ position: sticky;
76
+ top: 0;
77
+ z-index: 5;
78
+ }
79
+ .brand {
80
+ font: 600 var(--fs-lg) var(--mono);
81
+ display: flex;
82
+ align-items: baseline;
83
+ gap: 6px;
84
+ }
85
+ .prompt {
86
+ color: var(--accent);
87
+ }
88
+ .cursor {
89
+ color: var(--accent);
90
+ animation: blink 1.1s steps(1) infinite;
91
+ }
92
+ @keyframes blink {
93
+ 50% {
94
+ opacity: 0;
95
+ }
96
+ }
97
+ .repo {
98
+ margin-left: 12px;
99
+ font-weight: 400;
100
+ color: var(--muted);
101
+ }
102
+ .tabs {
103
+ display: flex;
104
+ gap: 4px;
105
+ }
106
+ .tab {
107
+ font: var(--fs-md) var(--mono);
108
+ color: var(--muted);
109
+ background: none;
110
+ border: 1px solid transparent;
111
+ border-radius: var(--radius);
112
+ padding: 5px 12px;
113
+ cursor: pointer;
114
+ }
115
+ .tab:hover {
116
+ color: var(--text);
117
+ }
118
+ .tab.active {
119
+ color: var(--accent);
120
+ border-color: var(--line);
121
+ background: var(--panel);
122
+ }
123
+ .who {
124
+ margin-left: auto;
125
+ display: flex;
126
+ align-items: center;
127
+ gap: 8px;
128
+ font: var(--fs-md) var(--mono);
129
+ }
130
+ .dot {
131
+ width: 8px;
132
+ height: 8px;
133
+ border-radius: 50%;
134
+ background: var(--muted);
135
+ }
136
+ .dot.on {
137
+ background: var(--ok);
138
+ box-shadow: 0 0 8px var(--ok);
139
+ }
140
+
141
+ /* ---- generic ---- */
142
+ main {
143
+ grid-area: main;
144
+ padding: 20px;
145
+ min-width: 0;
146
+ overflow: auto;
147
+ }
148
+ .btn {
149
+ font: var(--fs-md) var(--mono);
150
+ color: var(--text);
151
+ background: var(--panel-2);
152
+ border: 1px solid var(--line);
153
+ border-radius: var(--radius);
154
+ padding: 5px 10px;
155
+ cursor: pointer;
156
+ white-space: nowrap;
157
+ }
158
+ .btn:hover:not(:disabled) {
159
+ border-color: var(--accent-2);
160
+ }
161
+ .btn:disabled {
162
+ opacity: 0.4;
163
+ cursor: not-allowed;
164
+ }
165
+ .btn.primary {
166
+ background: var(--accent);
167
+ border-color: var(--accent);
168
+ color: #062a26;
169
+ font-weight: 600;
170
+ }
171
+ .btn.primary:hover:not(:disabled) {
172
+ filter: brightness(1.1);
173
+ }
174
+ .btn.ghost {
175
+ background: none;
176
+ }
177
+ .btn.tiny {
178
+ padding: 1px 6px;
179
+ font-size: var(--fs-sm);
180
+ }
181
+ .btn.busy::after {
182
+ content: " …";
183
+ }
184
+ input,
185
+ textarea,
186
+ select {
187
+ font: var(--fs-md) var(--mono);
188
+ color: var(--text);
189
+ background: var(--bg);
190
+ border: 1px solid var(--line);
191
+ border-radius: var(--radius);
192
+ padding: 7px 9px;
193
+ width: 100%;
194
+ }
195
+ select {
196
+ width: auto;
197
+ padding: 4px 6px;
198
+ }
199
+ input:focus,
200
+ textarea:focus,
201
+ select:focus,
202
+ .btn:focus-visible,
203
+ .tab:focus-visible,
204
+ .chip:focus-visible {
205
+ outline: 1px solid var(--accent);
206
+ outline-offset: 1px;
207
+ }
208
+ textarea {
209
+ resize: vertical;
210
+ font-family: var(--sans);
211
+ font-size: var(--fs-lg);
212
+ }
213
+ label {
214
+ display: block;
215
+ font: var(--fs-sm) var(--mono);
216
+ color: var(--muted);
217
+ margin: 12px 0 4px;
218
+ }
219
+ .row {
220
+ display: flex;
221
+ align-items: center;
222
+ gap: 8px;
223
+ margin-top: 12px;
224
+ flex-wrap: wrap;
225
+ }
226
+ .row.end {
227
+ justify-content: flex-end;
228
+ }
229
+ .card {
230
+ background: var(--panel);
231
+ border: 1px solid var(--line);
232
+ border-radius: var(--radius);
233
+ padding: 16px 18px;
234
+ }
235
+ h2 {
236
+ font: 600 var(--fs-md) var(--mono);
237
+ margin: 0 0 8px;
238
+ }
239
+ h3 {
240
+ font: var(--fs-sm) var(--mono);
241
+ color: var(--muted);
242
+ margin: 12px 0 4px;
243
+ }
244
+ .empty {
245
+ color: var(--muted);
246
+ font: var(--fs-md) var(--mono);
247
+ text-align: center;
248
+ padding: 40px 0;
249
+ }
250
+
251
+ /* ---- items ---- */
252
+ .toolbar {
253
+ display: flex;
254
+ align-items: center;
255
+ gap: 12px;
256
+ margin-bottom: 12px;
257
+ flex-wrap: wrap;
258
+ }
259
+ .filters {
260
+ display: flex;
261
+ gap: 6px;
262
+ flex-wrap: wrap;
263
+ }
264
+ .chip {
265
+ font: var(--fs-md) var(--mono);
266
+ color: var(--muted);
267
+ background: none;
268
+ border: 1px solid var(--line);
269
+ border-radius: 999px;
270
+ padding: 3px 10px;
271
+ cursor: pointer;
272
+ }
273
+ .chip.active {
274
+ color: var(--bg);
275
+ background: var(--accent-2);
276
+ border-color: var(--accent-2);
277
+ }
278
+ .chip .count {
279
+ margin-left: 4px;
280
+ opacity: 0.7;
281
+ }
282
+ .search {
283
+ max-width: 260px;
284
+ }
285
+ .table-wrap {
286
+ background: var(--panel);
287
+ border: 1px solid var(--line);
288
+ border-radius: var(--radius);
289
+ overflow: auto;
290
+ }
291
+ table.items {
292
+ width: 100%;
293
+ border-collapse: collapse;
294
+ }
295
+ .items th {
296
+ font: var(--fs-sm) var(--mono);
297
+ color: var(--muted);
298
+ text-align: left;
299
+ letter-spacing: 0;
300
+ padding: 8px 12px;
301
+ border-bottom: 1px solid var(--line);
302
+ background: var(--panel-2);
303
+ }
304
+ .items td {
305
+ padding: 8px 12px;
306
+ border-bottom: 1px solid var(--line);
307
+ vertical-align: middle;
308
+ }
309
+ .items tr:last-child td {
310
+ border-bottom: none;
311
+ }
312
+ .items tr:hover td {
313
+ background: rgba(122, 162, 247, 0.04);
314
+ }
315
+ .items tr.context-row td {
316
+ background: var(--panel-2);
317
+ }
318
+ .items tr.context-row .title-cell a,
319
+ .items tr.context-row .badge {
320
+ color: var(--muted);
321
+ }
322
+ .num {
323
+ width: 56px;
324
+ font: var(--fs-md) var(--mono);
325
+ color: var(--muted);
326
+ }
327
+ .actions-col {
328
+ width: 1%;
329
+ }
330
+ .items th.actions-col {
331
+ text-align: right;
332
+ }
333
+ .actions {
334
+ display: flex;
335
+ gap: 6px;
336
+ justify-content: flex-end;
337
+ }
338
+ .title-cell a {
339
+ color: var(--text);
340
+ }
341
+ .title-cell {
342
+ width: 40%;
343
+ min-width: 220px;
344
+ }
345
+ .title-cell .err {
346
+ display: block;
347
+ color: var(--danger);
348
+ font: var(--fs-sm) var(--mono);
349
+ }
350
+ .item-tree-title {
351
+ display: flex;
352
+ align-items: center;
353
+ }
354
+ .item-tree-title a {
355
+ min-width: 0;
356
+ overflow-wrap: anywhere;
357
+ }
358
+ .tree-indent {
359
+ flex: 0 0 18px;
360
+ align-self: stretch;
361
+ border-left: 1px solid var(--line);
362
+ }
363
+ .tree-toggle,
364
+ .tree-spacer {
365
+ flex: 0 0 24px;
366
+ width: 24px;
367
+ height: 28px;
368
+ }
369
+ .tree-toggle {
370
+ display: grid;
371
+ place-items: center;
372
+ padding: 0;
373
+ background: none;
374
+ border: 0;
375
+ color: var(--muted);
376
+ cursor: pointer;
377
+ }
378
+ .tree-toggle:hover,
379
+ .tree-toggle:focus-visible {
380
+ color: var(--accent);
381
+ outline: 1px solid var(--accent);
382
+ }
383
+ .tree-toggle:disabled {
384
+ cursor: default;
385
+ }
386
+ .tree-chevron {
387
+ width: 6px;
388
+ height: 6px;
389
+ border-right: 1px solid currentColor;
390
+ border-bottom: 1px solid currentColor;
391
+ transform: rotate(-45deg);
392
+ }
393
+ .tree-toggle[aria-expanded="true"] .tree-chevron {
394
+ transform: rotate(45deg);
395
+ }
396
+ .badge {
397
+ font: var(--fs-sm) var(--mono);
398
+ padding: 1px 6px;
399
+ border-radius: 4px;
400
+ border: 1px solid;
401
+ }
402
+ .badge.epic {
403
+ color: #bb9af7;
404
+ }
405
+ .badge.story {
406
+ color: var(--accent-2);
407
+ }
408
+ .badge.task {
409
+ color: var(--accent);
410
+ }
411
+ .pill {
412
+ font: var(--fs-sm) var(--mono);
413
+ padding: 2px 8px;
414
+ border-radius: 999px;
415
+ white-space: nowrap;
416
+ }
417
+ .pill.awaiting-approval {
418
+ background: rgba(246, 193, 119, 0.12);
419
+ color: var(--warn);
420
+ }
421
+ .pill.awaiting-ready {
422
+ background: rgba(122, 162, 247, 0.12);
423
+ color: var(--accent-2);
424
+ }
425
+ .pill.in-progress {
426
+ background: rgba(158, 206, 106, 0.12);
427
+ color: var(--ok);
428
+ }
429
+ .meta {
430
+ font: var(--fs-sm) var(--mono);
431
+ color: var(--muted);
432
+ }
433
+ .meta div {
434
+ white-space: nowrap;
435
+ }
436
+ #roles {
437
+ display: flex;
438
+ gap: 4px;
439
+ }
440
+ .meta .changed {
441
+ color: var(--warn);
442
+ }
443
+
444
+ /* ---- plan ---- */
445
+ .plan-grid {
446
+ display: grid;
447
+ grid-template-columns: minmax(320px, 420px) 1fr;
448
+ gap: 16px;
449
+ align-items: start;
450
+ }
451
+ .summary {
452
+ margin: 0 0 12px;
453
+ }
454
+ .callout {
455
+ border-left: 3px solid;
456
+ padding: 8px 12px;
457
+ margin: 12px 0;
458
+ background: var(--panel-2);
459
+ border-radius: 0 var(--radius) var(--radius) 0;
460
+ }
461
+ .callout ul {
462
+ margin: 6px 0 0;
463
+ padding-left: 18px;
464
+ }
465
+ .callout.danger {
466
+ border-color: var(--danger);
467
+ }
468
+ .callout.danger strong {
469
+ color: var(--danger);
470
+ }
471
+ .callout.ok {
472
+ border-color: var(--ok);
473
+ }
474
+ .callout.ok strong {
475
+ color: var(--ok);
476
+ }
477
+ .tree {
478
+ font-size: var(--fs-lg);
479
+ }
480
+ .node {
481
+ border-left: 1px dashed var(--line);
482
+ margin-left: 6px;
483
+ padding: 4px 0 4px 14px;
484
+ }
485
+ .node-head {
486
+ display: flex;
487
+ gap: 8px;
488
+ align-items: baseline;
489
+ }
490
+ .node-id {
491
+ font: var(--fs-sm) var(--mono);
492
+ color: var(--muted);
493
+ }
494
+ .node ul {
495
+ margin: 2px 0 0;
496
+ padding-left: 18px;
497
+ color: var(--muted);
498
+ font-size: var(--fs-md);
499
+ }
500
+ .node .risk {
501
+ color: var(--warn);
502
+ }
503
+ details {
504
+ margin-top: 12px;
505
+ }
506
+ summary {
507
+ cursor: pointer;
508
+ font: var(--fs-md) var(--mono);
509
+ color: var(--muted);
510
+ }
511
+ details ul {
512
+ margin: 0;
513
+ padding-left: 18px;
514
+ }
515
+ .refine {
516
+ border-top: 1px solid var(--line);
517
+ margin-top: 16px;
518
+ }
519
+
520
+ /* ---- activity log ---- */
521
+ .log {
522
+ grid-area: log;
523
+ border-left: 1px solid var(--line);
524
+ background: var(--panel);
525
+ display: flex;
526
+ flex-direction: column;
527
+ min-height: 0;
528
+ }
529
+ .log-head {
530
+ display: flex;
531
+ justify-content: space-between;
532
+ align-items: center;
533
+ font: var(--fs-sm) var(--mono);
534
+ text-transform: uppercase;
535
+ color: var(--muted);
536
+ padding: 10px 14px;
537
+ border-bottom: 1px solid var(--line);
538
+ }
539
+ #log {
540
+ list-style: none;
541
+ margin: 0;
542
+ padding: 0;
543
+ overflow: auto;
544
+ flex: 1;
545
+ }
546
+ #log li {
547
+ padding: 10px 14px;
548
+ border-bottom: 1px solid var(--line);
549
+ font: var(--fs-sm) var(--mono);
550
+ }
551
+ #log .time {
552
+ color: var(--muted);
553
+ margin-right: 6px;
554
+ }
555
+ #log code {
556
+ display: block;
557
+ margin-top: 4px;
558
+ color: var(--accent);
559
+ word-break: break-all;
560
+ }
561
+ #log pre {
562
+ margin: 6px 0 0;
563
+ white-space: pre-wrap;
564
+ font: var(--fs-sm) / 1.45 var(--mono);
565
+ color: var(--text);
566
+ max-height: 180px;
567
+ overflow: auto;
568
+ }
569
+ #log .pending::before {
570
+ content: "◌ ";
571
+ color: var(--warn);
572
+ }
573
+ #log .ok::before {
574
+ content: "✓ ";
575
+ color: var(--ok);
576
+ }
577
+ #log .fail::before {
578
+ content: "✗ ";
579
+ color: var(--danger);
580
+ }
581
+
582
+ /* ---- dialog ---- */
583
+ dialog {
584
+ background: var(--panel);
585
+ color: var(--text);
586
+ border: 1px solid var(--line);
587
+ border-radius: var(--radius);
588
+ width: min(760px, 92vw);
589
+ padding: 0;
590
+ }
591
+ dialog::backdrop {
592
+ background: rgba(0, 0, 0, 0.6);
593
+ }
594
+ .dialog-inner {
595
+ padding: 18px;
596
+ }
597
+ #dialog-body pre {
598
+ background: var(--bg);
599
+ border: 1px solid var(--line);
600
+ border-radius: var(--radius);
601
+ padding: 12px;
602
+ max-height: 60vh;
603
+ overflow: auto;
604
+ white-space: pre-wrap;
605
+ font: var(--fs-sm) / 1.5 var(--mono);
606
+ }
607
+ .build {
608
+ display: flex;
609
+ gap: 10px;
610
+ align-items: center;
611
+ padding: 6px 0;
612
+ font: var(--fs-md) var(--mono);
613
+ }
614
+ .build input {
615
+ width: auto;
616
+ }
617
+
618
+ .fatal {
619
+ position: fixed;
620
+ inset: 0;
621
+ display: grid;
622
+ place-items: center;
623
+ background: var(--bg);
624
+ font: var(--fs-lg) var(--mono);
625
+ color: var(--danger);
626
+ padding: 40px;
627
+ text-align: center;
628
+ white-space: pre-line;
629
+ z-index: 10;
630
+ }
631
+
632
+ @media (max-width: 1000px) {
633
+ body {
634
+ grid-template-columns: minmax(0, 1fr);
635
+ grid-template-areas:
636
+ "top"
637
+ "main"
638
+ "log";
639
+ }
640
+ .plan-grid {
641
+ grid-template-columns: minmax(0, 1fr);
642
+ }
643
+ .log {
644
+ max-height: 260px;
645
+ border-left: none;
646
+ border-top: 1px solid var(--line);
647
+ }
648
+ }
649
+
650
+ @media (max-width: 640px) {
651
+ :root {
652
+ /* 16px on form controls stops iOS from zooming on focus. */
653
+ --fs-sm: 13px;
654
+ --fs-md: 16px;
655
+ --fs-lg: 16px;
656
+ }
657
+ body {
658
+ display: block;
659
+ height: auto;
660
+ min-height: 100dvh;
661
+ }
662
+ .topbar {
663
+ position: static;
664
+ display: grid;
665
+ grid-template-columns: minmax(0, 1fr);
666
+ gap: 12px;
667
+ padding: 14px 12px 10px;
668
+ }
669
+ .brand {
670
+ flex-wrap: wrap;
671
+ min-width: 0;
672
+ }
673
+ .repo {
674
+ min-width: 0;
675
+ overflow-wrap: anywhere;
676
+ }
677
+ .who {
678
+ margin-left: 0;
679
+ min-width: 0;
680
+ flex-wrap: wrap;
681
+ }
682
+ #viewer {
683
+ min-width: 0;
684
+ overflow-wrap: anywhere;
685
+ }
686
+ .tabs {
687
+ order: 1;
688
+ }
689
+ .tab {
690
+ flex: 1;
691
+ }
692
+ main {
693
+ padding: 12px;
694
+ overflow: visible;
695
+ }
696
+ .toolbar {
697
+ display: grid;
698
+ grid-template-columns: minmax(0, 1fr) auto;
699
+ gap: 10px;
700
+ }
701
+ .filters {
702
+ grid-column: 1 / -1;
703
+ flex-wrap: nowrap;
704
+ overflow-x: auto;
705
+ padding: 2px 2px 6px;
706
+ scrollbar-width: none;
707
+ }
708
+ .filters::-webkit-scrollbar {
709
+ display: none;
710
+ }
711
+ .chip {
712
+ flex: 0 0 auto;
713
+ }
714
+ .search {
715
+ max-width: none;
716
+ min-width: 0;
717
+ }
718
+ .btn,
719
+ .tab,
720
+ .chip,
721
+ input,
722
+ select {
723
+ min-height: 44px;
724
+ }
725
+ .btn {
726
+ display: inline-flex;
727
+ align-items: center;
728
+ justify-content: center;
729
+ }
730
+ .table-wrap {
731
+ overflow: visible;
732
+ }
733
+ table.items,
734
+ .items tbody {
735
+ display: block;
736
+ }
737
+ .items thead {
738
+ position: absolute;
739
+ width: 1px;
740
+ height: 1px;
741
+ overflow: hidden;
742
+ clip-path: inset(50%);
743
+ }
744
+ .items tr {
745
+ display: grid;
746
+ grid-template-columns: auto minmax(0, 1fr);
747
+ grid-template-areas:
748
+ "number kind"
749
+ "title title"
750
+ "stage stage"
751
+ "meta meta"
752
+ "actions actions";
753
+ gap: 6px 10px;
754
+ padding: 12px;
755
+ border-bottom: 1px solid var(--line);
756
+ }
757
+ .items tr:last-child {
758
+ border-bottom: none;
759
+ }
760
+ .items td {
761
+ min-width: 0;
762
+ width: auto;
763
+ padding: 0;
764
+ border: 0;
765
+ }
766
+ .items td:nth-child(1) {
767
+ grid-area: number;
768
+ }
769
+ .items td:nth-child(2) {
770
+ grid-area: kind;
771
+ }
772
+ .items td:nth-child(3) {
773
+ grid-area: title;
774
+ }
775
+ .items td:nth-child(4) {
776
+ grid-area: stage;
777
+ }
778
+ .items td:nth-child(5) {
779
+ grid-area: meta;
780
+ }
781
+ .items td:nth-child(6) {
782
+ grid-area: actions;
783
+ }
784
+ .items td:empty {
785
+ display: none;
786
+ }
787
+ .items tr.context-row {
788
+ background: var(--panel-2);
789
+ }
790
+ .items tr.context-row td,
791
+ .items tr:hover td {
792
+ background: none;
793
+ }
794
+ .item-tree-title {
795
+ align-items: flex-start;
796
+ }
797
+ .item-tree-title a {
798
+ padding: 10px 0;
799
+ }
800
+ .tree-toggle,
801
+ .tree-spacer {
802
+ flex-basis: 44px;
803
+ width: 44px;
804
+ height: 44px;
805
+ }
806
+ .tree-indent {
807
+ flex-basis: 12px;
808
+ }
809
+ .meta div,
810
+ .pill {
811
+ white-space: normal;
812
+ overflow-wrap: anywhere;
813
+ }
814
+ .actions {
815
+ justify-content: flex-end;
816
+ flex-wrap: wrap;
817
+ padding-top: 4px;
818
+ }
819
+ .actions .meta {
820
+ overflow-wrap: anywhere;
821
+ }
822
+ .card {
823
+ padding: 14px 12px;
824
+ min-width: 0;
825
+ }
826
+ .node-head {
827
+ flex-wrap: wrap;
828
+ gap: 4px 8px;
829
+ }
830
+ .node-head > *,
831
+ .summary,
832
+ .callout,
833
+ #plan-questions,
834
+ .row,
835
+ #log li {
836
+ min-width: 0;
837
+ overflow-wrap: anywhere;
838
+ }
839
+ .node {
840
+ margin-left: 0;
841
+ padding-left: 8px;
842
+ }
843
+ .row > .small {
844
+ flex-basis: 100%;
845
+ }
846
+ .log {
847
+ max-height: 240px;
848
+ }
849
+ dialog {
850
+ width: calc(100% - 24px);
851
+ max-width: none;
852
+ max-height: calc(100dvh - 24px);
853
+ }
854
+ .dialog-inner {
855
+ padding: 14px 12px;
856
+ min-width: 0;
857
+ }
858
+ #dialog-title,
859
+ #dialog-body {
860
+ overflow-wrap: anywhere;
861
+ }
862
+ #dialog-body pre {
863
+ overflow-wrap: anywhere;
864
+ }
865
+ .build {
866
+ flex-wrap: wrap;
867
+ }
868
+ .build input {
869
+ min-height: auto;
870
+ width: 24px;
871
+ height: 24px;
872
+ }
873
+ }