agent-office-cli 0.0.1 → 0.1.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,988 +0,0 @@
1
- /* === AgentOffice Office & Terminal — Warm Atelier === */
2
-
3
- :root {
4
- --bg: #f4ebe0;
5
- --surface: #fffbf5;
6
- --border: #d6c9b6;
7
- --border-strong: #2f2b26;
8
- --text: #2f2b26;
9
- --muted: #8a7e6e;
10
- --accent: #b95c33;
11
- --accent-hover: #a34e28;
12
- --accent-glow: rgba(185, 92, 51, 0.15);
13
- --shadow: 0 1px 3px rgba(47,43,38,0.06), 0 8px 24px rgba(47,43,38,0.08);
14
- --shadow-sm: 0 1px 2px rgba(47,43,38,0.05), 0 4px 12px rgba(47,43,38,0.06);
15
- --shadow-hover: 0 2px 6px rgba(47,43,38,0.08), 0 12px 32px rgba(47,43,38,0.10);
16
- --radius: 14px;
17
- --radius-lg: 20px;
18
- --radius-sm: 10px;
19
- --font-body: 'DM Sans', system-ui, sans-serif;
20
- --font-display: 'DM Serif Display', Georgia, serif;
21
- --font-mono: 'SFMono-Regular', 'Menlo', 'Consolas', monospace;
22
- /* Zone colors — desaturated */
23
- --working: #e0d8f0;
24
- --waiting: #f5dcc0;
25
- --attention: #f0c4c0;
26
- --idle: #e8e0d0;
27
- }
28
-
29
- *, *::before, *::after { box-sizing: border-box; }
30
-
31
- body {
32
- margin: 0;
33
- background: var(--bg);
34
- background-image:
35
- radial-gradient(ellipse 120% 80% at 20% 0%, rgba(185,92,51,0.06) 0%, transparent 60%),
36
- radial-gradient(ellipse 80% 100% at 90% 100%, rgba(185,92,51,0.04) 0%, transparent 50%);
37
- color: var(--text);
38
- font-family: var(--font-body);
39
- -webkit-font-smoothing: antialiased;
40
- }
41
-
42
- button, input, textarea, select {
43
- font: inherit;
44
- }
45
-
46
- #app {
47
- min-height: 100vh;
48
- }
49
-
50
- /* ==========================================
51
- Office Page
52
- ========================================== */
53
-
54
- .page-shell {
55
- max-width: 1320px;
56
- margin: 0 auto;
57
- padding: 28px 32px 48px;
58
- }
59
-
60
- /* --- Topbar --- */
61
-
62
- .topbar {
63
- display: flex;
64
- justify-content: space-between;
65
- align-items: center;
66
- gap: 16px;
67
- margin-bottom: 28px;
68
- flex-wrap: wrap;
69
- }
70
-
71
- .topbar-main {
72
- display: flex;
73
- align-items: center;
74
- gap: 12px;
75
- }
76
-
77
- .topbar-brand {
78
- display: flex;
79
- align-items: center;
80
- gap: 12px;
81
- }
82
-
83
- .brand-mark {
84
- width: 36px;
85
- height: 36px;
86
- background: var(--accent);
87
- border-radius: 10px;
88
- display: grid;
89
- place-items: center;
90
- flex-shrink: 0;
91
- }
92
-
93
- .brand-mark svg {
94
- width: 20px;
95
- height: 20px;
96
- fill: #fff;
97
- }
98
-
99
- .topbar-text .eyebrow {
100
- margin: 0 0 2px;
101
- color: var(--muted);
102
- font-size: 11px;
103
- font-weight: 600;
104
- text-transform: uppercase;
105
- letter-spacing: 0.14em;
106
- }
107
-
108
- .topbar-text h1 {
109
- margin: 0;
110
- font-family: var(--font-display);
111
- font-size: 22px;
112
- font-weight: 400;
113
- letter-spacing: -0.01em;
114
- }
115
-
116
- .topbar-pills {
117
- display: flex;
118
- align-items: center;
119
- gap: 8px;
120
- flex-wrap: wrap;
121
- }
122
-
123
- .menu-button {
124
- display: inline-flex;
125
- align-items: center;
126
- gap: 10px;
127
- padding: 8px 12px;
128
- border: 1px solid var(--border);
129
- border-radius: 999px;
130
- background: rgba(255, 251, 245, 0.92);
131
- color: var(--text);
132
- cursor: pointer;
133
- box-shadow: var(--shadow-sm);
134
- }
135
-
136
- .menu-button-lines {
137
- width: 14px;
138
- height: 10px;
139
- display: inline-block;
140
- background-image: linear-gradient(var(--text), var(--text)), linear-gradient(var(--text), var(--text)), linear-gradient(var(--text), var(--text));
141
- background-repeat: no-repeat;
142
- background-size: 14px 1.5px;
143
- background-position: 0 0, 0 4px, 0 8px;
144
- }
145
-
146
- .menu-button-label {
147
- font-size: 12px;
148
- font-weight: 600;
149
- }
150
-
151
- .nav-drawer {
152
- position: fixed;
153
- inset: 0;
154
- z-index: 40;
155
- pointer-events: none;
156
- }
157
-
158
- .nav-drawer.is-open {
159
- pointer-events: auto;
160
- }
161
-
162
- .nav-drawer-backdrop {
163
- position: absolute;
164
- inset: 0;
165
- border: 0;
166
- background: rgba(47, 43, 38, 0.24);
167
- opacity: 0;
168
- transition: opacity 0.2s ease;
169
- }
170
-
171
- .nav-drawer.is-open .nav-drawer-backdrop {
172
- opacity: 1;
173
- }
174
-
175
- .nav-drawer-panel {
176
- position: absolute;
177
- top: 0;
178
- left: 0;
179
- height: 100%;
180
- width: min(320px, calc(100vw - 24px));
181
- padding: 22px 18px;
182
- background: rgba(255, 251, 245, 0.98);
183
- border-right: 1px solid var(--border);
184
- box-shadow: 24px 0 48px rgba(47,43,38,0.12);
185
- transform: translateX(-102%);
186
- transition: transform 0.22s ease;
187
- }
188
-
189
- .nav-drawer.is-open .nav-drawer-panel {
190
- transform: translateX(0);
191
- }
192
-
193
- .nav-drawer-head {
194
- display: flex;
195
- justify-content: space-between;
196
- align-items: flex-start;
197
- gap: 12px;
198
- margin-bottom: 20px;
199
- }
200
-
201
- .nav-drawer-head strong {
202
- display: block;
203
- font-family: var(--font-display);
204
- font-size: 22px;
205
- font-weight: 400;
206
- }
207
-
208
- .nav-close-button {
209
- width: 36px;
210
- height: 36px;
211
- border: 1px solid var(--border);
212
- border-radius: 999px;
213
- background: var(--surface);
214
- color: var(--text);
215
- cursor: pointer;
216
- font-size: 22px;
217
- line-height: 1;
218
- }
219
-
220
- .nav-drawer-links {
221
- display: grid;
222
- gap: 10px;
223
- }
224
-
225
- .nav-link {
226
- display: block;
227
- padding: 14px 14px 13px;
228
- border: 1px solid var(--border);
229
- border-radius: 16px;
230
- background: rgba(255,255,255,0.65);
231
- color: inherit;
232
- text-decoration: none;
233
- }
234
-
235
- .nav-link.is-active {
236
- border-color: rgba(185,92,51,0.38);
237
- background: rgba(185,92,51,0.08);
238
- box-shadow: inset 0 0 0 1px rgba(185,92,51,0.08);
239
- }
240
-
241
- .nav-link-title {
242
- display: block;
243
- font-family: var(--font-display);
244
- font-size: 18px;
245
- margin-bottom: 4px;
246
- }
247
-
248
- .nav-link-copy {
249
- display: block;
250
- color: var(--muted);
251
- font-size: 12px;
252
- line-height: 1.5;
253
- }
254
-
255
- .pill {
256
- display: inline-flex;
257
- align-items: center;
258
- gap: 5px;
259
- padding: 5px 12px;
260
- border: 1px solid var(--border);
261
- border-radius: 999px;
262
- background: var(--surface);
263
- font-size: 12px;
264
- font-weight: 500;
265
- color: var(--muted);
266
- }
267
-
268
- .status-pill {
269
- display: inline-flex;
270
- align-items: center;
271
- gap: 5px;
272
- padding: 5px 12px;
273
- border: 1px solid var(--border);
274
- border-radius: 999px;
275
- background: var(--surface);
276
- font-size: 12px;
277
- font-weight: 500;
278
- color: var(--muted);
279
- transition: background 0.2s, border-color 0.2s;
280
- }
281
-
282
- .status-dot {
283
- width: 6px;
284
- height: 6px;
285
- border-radius: 50%;
286
- background: #78b07a;
287
- flex-shrink: 0;
288
- }
289
-
290
- .status-pill[data-status="reconnecting"] .status-dot,
291
- .status-pill[data-status="connecting"] .status-dot {
292
- background: var(--waiting);
293
- }
294
-
295
- /* --- Layout --- */
296
-
297
- .layout {
298
- display: grid;
299
- grid-template-columns: minmax(0, 1.4fr) minmax(320px, 0.8fr);
300
- gap: 24px;
301
- }
302
-
303
- .panel {
304
- background: var(--surface);
305
- border: 1px solid var(--border);
306
- border-radius: var(--radius-lg);
307
- box-shadow: var(--shadow);
308
- padding: 24px;
309
- }
310
-
311
- /* --- Section Heads --- */
312
-
313
- .section-head {
314
- display: flex;
315
- justify-content: space-between;
316
- gap: 16px;
317
- }
318
-
319
- .section-head h2 {
320
- margin: 0;
321
- font-family: var(--font-display);
322
- font-size: 20px;
323
- font-weight: 400;
324
- letter-spacing: -0.01em;
325
- }
326
-
327
- .section-head p,
328
- .helper-text {
329
- margin: 4px 0 0;
330
- color: var(--muted);
331
- font-size: 13px;
332
- line-height: 1.5;
333
- }
334
-
335
- /* --- Office Grid --- */
336
-
337
- .office-grid {
338
- display: grid;
339
- grid-template-columns: repeat(2, minmax(0, 1fr));
340
- gap: 16px;
341
- margin-top: 20px;
342
- }
343
-
344
- /* --- Zones --- */
345
-
346
- .zone {
347
- min-height: 200px;
348
- border: 1px solid rgba(47, 43, 38, 0.12);
349
- border-radius: 16px;
350
- padding: 16px;
351
- background: var(--zone-color);
352
- box-shadow: inset 0 1px 2px rgba(255,255,255,0.5);
353
- transition: box-shadow 0.2s;
354
- }
355
-
356
- .zone-head {
357
- display: flex;
358
- justify-content: space-between;
359
- gap: 10px;
360
- margin-bottom: 14px;
361
- align-items: flex-start;
362
- }
363
-
364
- .zone-head h3 {
365
- margin: 0;
366
- font-family: var(--font-display);
367
- font-size: 16px;
368
- font-weight: 400;
369
- }
370
-
371
- .zone-head p {
372
- margin: 2px 0 0;
373
- color: rgba(47, 43, 38, 0.55);
374
- font-size: 12px;
375
- line-height: 1.4;
376
- }
377
-
378
- .zone-count {
379
- display: inline-flex;
380
- align-items: center;
381
- justify-content: center;
382
- min-width: 28px;
383
- height: 28px;
384
- padding: 0 8px;
385
- border: 1px solid rgba(47, 43, 38, 0.18);
386
- border-radius: 999px;
387
- background: rgba(255, 255, 255, 0.7);
388
- font-size: 12px;
389
- font-weight: 600;
390
- flex-shrink: 0;
391
- }
392
-
393
- /* --- Worker List --- */
394
-
395
- .worker-list {
396
- display: flex;
397
- flex-wrap: wrap;
398
- gap: 10px;
399
- }
400
-
401
- /* --- Worker Card --- */
402
-
403
- .worker-card {
404
- width: 148px;
405
- min-height: 110px;
406
- border: 1px solid rgba(47, 43, 38, 0.12);
407
- border-radius: var(--radius);
408
- background: rgba(255, 255, 255, 0.82);
409
- padding: 12px;
410
- cursor: pointer;
411
- text-align: left;
412
- transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
413
- box-shadow: 0 1px 2px rgba(47,43,38,0.04);
414
- }
415
-
416
- .worker-card:hover {
417
- transform: translateY(-2px);
418
- box-shadow: var(--shadow-sm);
419
- border-color: var(--border);
420
- }
421
-
422
- .worker-card:active {
423
- transform: translateY(0);
424
- }
425
-
426
- .worker-icon {
427
- width: 32px;
428
- height: 32px;
429
- border-radius: 8px;
430
- display: grid;
431
- place-items: center;
432
- margin-bottom: 8px;
433
- }
434
-
435
- .worker-icon svg {
436
- width: 18px;
437
- height: 18px;
438
- fill: #fff;
439
- }
440
-
441
- .worker-icon.provider-claude { background: #7ea9d1; }
442
- .worker-icon.provider-codex { background: #d98f72; }
443
- .worker-icon.provider-generic { background: #90b98b; }
444
-
445
- .worker-card h3 {
446
- margin: 0;
447
- font-size: 13px;
448
- font-weight: 600;
449
- line-height: 1.3;
450
- overflow: hidden;
451
- text-overflow: ellipsis;
452
- white-space: nowrap;
453
- }
454
-
455
- .worker-card p {
456
- margin: 3px 0 0;
457
- color: var(--muted);
458
- font-size: 11px;
459
- line-height: 1.3;
460
- }
461
-
462
- /* --- Mobile worker row (compact list layout) --- */
463
-
464
- .worker-row {
465
- display: none;
466
- }
467
-
468
- /* --- Quick Launch --- */
469
-
470
- .quick-launch-actions {
471
- display: grid;
472
- gap: 10px;
473
- margin-top: 16px;
474
- }
475
-
476
- .primary-button {
477
- padding: 11px 18px;
478
- border: none;
479
- border-radius: var(--radius-sm);
480
- background: var(--accent);
481
- color: #fff;
482
- font-weight: 600;
483
- font-size: 14px;
484
- cursor: pointer;
485
- transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
486
- outline: none;
487
- }
488
-
489
- .primary-button:hover:not(:disabled) {
490
- background: var(--accent-hover);
491
- transform: translateY(-1px);
492
- box-shadow: 0 4px 12px rgba(185,92,51,0.25);
493
- }
494
-
495
- .primary-button:active:not(:disabled) {
496
- transform: translateY(0);
497
- box-shadow: none;
498
- }
499
-
500
- .primary-button:disabled {
501
- opacity: 0.55;
502
- cursor: not-allowed;
503
- transform: none;
504
- }
505
-
506
- .ghost-button {
507
- padding: 9px 16px;
508
- border: 1.5px solid var(--border);
509
- border-radius: var(--radius-sm);
510
- background: var(--surface);
511
- color: var(--text);
512
- font-weight: 600;
513
- font-size: 13px;
514
- cursor: pointer;
515
- transition: all 0.2s;
516
- outline: none;
517
- }
518
-
519
- .ghost-button:hover:not(:disabled) {
520
- border-color: var(--border-strong);
521
- background: #fefcf8;
522
- }
523
-
524
- .ghost-button:focus-visible {
525
- box-shadow: 0 0 0 3px var(--accent-glow);
526
- }
527
-
528
- /* --- Legend --- */
529
-
530
- .legend {
531
- display: grid;
532
- gap: 8px;
533
- margin-top: 20px;
534
- padding-top: 18px;
535
- border-top: 1px solid var(--border);
536
- }
537
-
538
- .legend-item {
539
- display: flex;
540
- align-items: flex-start;
541
- gap: 10px;
542
- }
543
-
544
- .legend-color {
545
- width: 14px;
546
- height: 14px;
547
- border: 1px solid rgba(47, 43, 38, 0.15);
548
- border-radius: 4px;
549
- flex-shrink: 0;
550
- margin-top: 2px;
551
- }
552
-
553
- .legend-item strong {
554
- font-size: 13px;
555
- font-weight: 600;
556
- }
557
-
558
- .legend-item .helper-text {
559
- font-size: 12px;
560
- margin: 1px 0 0;
561
- }
562
-
563
- /* --- Empty State --- */
564
-
565
- .empty-state {
566
- display: grid;
567
- place-items: center;
568
- min-height: 80px;
569
- border: 1.5px dashed rgba(47, 43, 38, 0.18);
570
- border-radius: var(--radius);
571
- color: var(--muted);
572
- font-size: 13px;
573
- padding: 12px;
574
- }
575
-
576
- /* ==========================================
577
- Terminal Page
578
- ========================================== */
579
-
580
- .terminal-shell {
581
- display: grid;
582
- grid-template-rows: auto 1fr;
583
- min-height: 100vh;
584
- }
585
-
586
- /* --- Terminal Topbar --- */
587
-
588
- .terminal-topbar {
589
- position: sticky;
590
- top: 0;
591
- display: flex;
592
- justify-content: space-between;
593
- align-items: center;
594
- gap: 16px;
595
- padding: 12px 20px;
596
- border-bottom: 1px solid var(--border);
597
- background: rgba(255, 251, 245, 0.92);
598
- backdrop-filter: blur(16px);
599
- -webkit-backdrop-filter: blur(16px);
600
- z-index: 10;
601
- }
602
-
603
- .terminal-meta {
604
- display: flex;
605
- gap: 12px;
606
- align-items: center;
607
- flex-wrap: wrap;
608
- }
609
-
610
- .terminal-info h2 {
611
- margin: 0;
612
- font-family: var(--font-display);
613
- font-size: 17px;
614
- font-weight: 400;
615
- }
616
-
617
- .terminal-info p {
618
- margin: 1px 0 0;
619
- color: var(--muted);
620
- font-size: 12px;
621
- }
622
-
623
- .terminal-info .eyebrow {
624
- margin: 0 0 1px;
625
- color: var(--muted);
626
- font-size: 10px;
627
- font-weight: 600;
628
- text-transform: uppercase;
629
- letter-spacing: 0.12em;
630
- }
631
-
632
- /* --- Terminal Layout --- */
633
-
634
- .terminal-layout {
635
- display: grid;
636
- grid-template-columns: minmax(0, 1fr) 320px;
637
- min-height: 0;
638
- }
639
-
640
- .terminal-panel {
641
- background: #151311;
642
- min-height: calc(100vh - 60px);
643
- padding: 12px;
644
- }
645
-
646
- .terminal-host {
647
- width: 100%;
648
- height: 100%;
649
- border: 1px solid #3b352e;
650
- border-radius: var(--radius);
651
- overflow: hidden;
652
- }
653
-
654
- /* --- Terminal Sidebar --- */
655
-
656
- .terminal-sidebar {
657
- border-left: 1px solid var(--border);
658
- background: var(--surface);
659
- padding: 20px;
660
- display: grid;
661
- align-content: start;
662
- gap: 20px;
663
- overflow-y: auto;
664
- }
665
-
666
- .terminal-sidebar .eyebrow {
667
- margin: 0 0 8px;
668
- color: var(--muted);
669
- font-size: 10px;
670
- font-weight: 600;
671
- text-transform: uppercase;
672
- letter-spacing: 0.12em;
673
- }
674
-
675
- /* --- Sidebar Toggle (mobile) --- */
676
-
677
- .sidebar-toggle {
678
- display: none;
679
- position: fixed;
680
- bottom: 16px;
681
- right: 16px;
682
- z-index: 20;
683
- width: 48px;
684
- height: 48px;
685
- border: 1px solid var(--border);
686
- border-radius: 50%;
687
- background: var(--surface);
688
- box-shadow: var(--shadow);
689
- cursor: pointer;
690
- font-size: 18px;
691
- line-height: 1;
692
- }
693
-
694
- .sidebar-toggle:active {
695
- transform: scale(0.95);
696
- }
697
-
698
- /* --- Metadata grid --- */
699
-
700
- .meta-grid {
701
- display: grid;
702
- grid-template-columns: auto 1fr;
703
- gap: 6px 12px;
704
- font-size: 13px;
705
- line-height: 1.6;
706
- }
707
-
708
- .meta-grid dt {
709
- color: var(--muted);
710
- font-weight: 500;
711
- white-space: nowrap;
712
- }
713
-
714
- .meta-grid dd {
715
- margin: 0;
716
- word-break: break-word;
717
- }
718
-
719
- .meta-grid code {
720
- font-family: var(--font-mono);
721
- font-size: 12px;
722
- background: rgba(47, 43, 38, 0.05);
723
- padding: 1px 5px;
724
- border-radius: 4px;
725
- }
726
-
727
- /* --- Terminal Warning --- */
728
-
729
- .terminal-warning {
730
- color: var(--accent);
731
- font-size: 13px;
732
- margin: 0;
733
- min-height: 1em;
734
- }
735
-
736
- .terminal-warning:empty {
737
- display: none;
738
- }
739
-
740
- /* --- Log Box --- */
741
-
742
- .log-box {
743
- padding: 14px;
744
- border: 1px solid var(--border);
745
- border-radius: var(--radius);
746
- background: #faf7f2;
747
- max-height: 240px;
748
- overflow: auto;
749
- font-family: var(--font-mono);
750
- font-size: 12px;
751
- line-height: 1.6;
752
- white-space: pre-wrap;
753
- color: var(--text);
754
- }
755
-
756
- .terminal-info code,
757
- .terminal-warning code {
758
- word-break: break-word;
759
- }
760
-
761
- /* ==========================================
762
- Responsive
763
- ========================================== */
764
-
765
- /* Tablet: single column, terminal top-bottom */
766
- @media (max-width: 1080px) {
767
- .layout {
768
- grid-template-columns: 1fr;
769
- }
770
-
771
- /* Terminal: top-bottom flow */
772
- .terminal-layout {
773
- display: flex;
774
- flex-direction: column;
775
- }
776
-
777
- .terminal-panel {
778
- min-height: 50vh;
779
- }
780
-
781
- .terminal-sidebar {
782
- border-left: none;
783
- border-top: 1px solid var(--border);
784
- }
785
- }
786
-
787
- /* Mobile: ultra-compact office + terminal */
788
- @media (max-width: 768px) {
789
- .page-shell {
790
- padding: 14px 12px 24px;
791
- }
792
-
793
- /* --- Office topbar compact --- */
794
- .topbar {
795
- margin-bottom: 14px;
796
- gap: 8px;
797
- }
798
-
799
- .topbar-main {
800
- width: 100%;
801
- justify-content: space-between;
802
- }
803
-
804
- .brand-mark {
805
- width: 28px;
806
- height: 28px;
807
- border-radius: 7px;
808
- }
809
-
810
- .brand-mark svg {
811
- width: 16px;
812
- height: 16px;
813
- }
814
-
815
- .topbar-brand { gap: 8px; }
816
-
817
- .menu-button {
818
- padding: 7px 11px;
819
- gap: 8px;
820
- }
821
-
822
- .menu-button-label { font-size: 11px; }
823
-
824
- .topbar-text .eyebrow { font-size: 9px; }
825
-
826
- .topbar-text h1 { font-size: 17px; }
827
-
828
- /* --- Panels compact --- */
829
- .panel {
830
- padding: 12px;
831
- border-radius: 14px;
832
- }
833
-
834
- .section-head h2 { font-size: 16px; }
835
-
836
- /* Hide section descriptions on mobile */
837
- .section-head .helper-text { display: none; }
838
-
839
- /* --- Zones: stay 2x2 grid, ultra compact --- */
840
- .office-grid {
841
- grid-template-columns: repeat(2, minmax(0, 1fr));
842
- gap: 8px;
843
- margin-top: 10px;
844
- }
845
-
846
- .zone {
847
- min-height: auto;
848
- padding: 10px;
849
- border-radius: 12px;
850
- }
851
-
852
- .zone-head {
853
- margin-bottom: 6px;
854
- gap: 6px;
855
- }
856
-
857
- .zone-head h3 { font-size: 13px; }
858
-
859
- /* Hide zone descriptions on mobile */
860
- .zone-head p { display: none; }
861
-
862
- .zone-count {
863
- min-width: 22px;
864
- height: 22px;
865
- padding: 0 6px;
866
- font-size: 11px;
867
- }
868
-
869
- .empty-state {
870
- min-height: 36px;
871
- font-size: 11px;
872
- padding: 6px;
873
- border-width: 1px;
874
- }
875
-
876
- /* --- Worker cards: inline row --- */
877
- .worker-list {
878
- flex-direction: column;
879
- gap: 4px;
880
- }
881
-
882
- .worker-card {
883
- width: 100%;
884
- min-height: auto;
885
- display: flex;
886
- align-items: center;
887
- gap: 8px;
888
- padding: 6px 8px;
889
- border-radius: 8px;
890
- }
891
-
892
- .worker-card .worker-icon {
893
- margin-bottom: 0;
894
- width: 22px;
895
- height: 22px;
896
- border-radius: 5px;
897
- flex-shrink: 0;
898
- }
899
-
900
- .worker-card .worker-icon svg {
901
- width: 13px;
902
- height: 13px;
903
- }
904
-
905
- .worker-card h3 { font-size: 12px; }
906
-
907
- .worker-card p { display: none; }
908
-
909
- .worker-card-text {
910
- flex: 1;
911
- min-width: 0;
912
- }
913
-
914
- /* --- Quick Launch: full-width vertical stack --- */
915
- .quick-launch-actions { gap: 8px; margin-top: 10px; }
916
-
917
- .primary-button {
918
- padding: 10px 14px;
919
- font-size: 13px;
920
- }
921
-
922
- .quick-launch-actions .helper-text { font-size: 11px; }
923
-
924
- /* --- Legend: hide on mobile (zone colors are self-explanatory) --- */
925
- .legend { display: none; }
926
-
927
- /* --- Terminal mobile: top-bottom --- */
928
- .terminal-topbar {
929
- padding: 8px 12px;
930
- gap: 8px;
931
- }
932
-
933
- .terminal-meta {
934
- width: 100%;
935
- justify-content: space-between;
936
- }
937
-
938
- .terminal-info .eyebrow { display: none; }
939
-
940
- .terminal-info h2 { font-size: 14px; }
941
-
942
- .terminal-info p { font-size: 11px; }
943
-
944
- .ghost-button {
945
- padding: 6px 10px;
946
- font-size: 12px;
947
- }
948
-
949
- .nav-drawer-panel {
950
- width: min(292px, calc(100vw - 20px));
951
- padding: 18px 14px;
952
- }
953
-
954
- .terminal-panel {
955
- min-height: 45vh;
956
- padding: 6px;
957
- }
958
-
959
- .terminal-host {
960
- border-radius: 8px;
961
- }
962
-
963
- /* Sidebar: inline below terminal, compact */
964
- .terminal-sidebar {
965
- padding: 14px 12px;
966
- gap: 14px;
967
- }
968
-
969
- .terminal-sidebar .eyebrow {
970
- margin-bottom: 6px;
971
- font-size: 9px;
972
- }
973
-
974
- .meta-grid {
975
- font-size: 12px;
976
- gap: 3px 10px;
977
- }
978
-
979
- .log-box {
980
- max-height: 160px;
981
- padding: 10px;
982
- font-size: 11px;
983
- }
984
-
985
- /* Hide sidebar toggle + backdrop on mobile (sidebar is inline) */
986
- .sidebar-toggle { display: none !important; }
987
- .sidebar-backdrop { display: none !important; }
988
- }