@quanta-intellect/vessel-browser 0.1.19 → 0.1.21

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.
@@ -2747,6 +2747,59 @@
2747
2747
  align-items: flex-end;
2748
2748
  }
2749
2749
 
2750
+ .chat-queue-status {
2751
+ padding: 10px 14px 0;
2752
+ font-size: 11px;
2753
+ color: var(--text-muted);
2754
+ }
2755
+
2756
+ .chat-queue-status-row {
2757
+ display: flex;
2758
+ align-items: center;
2759
+ justify-content: space-between;
2760
+ gap: 8px;
2761
+ }
2762
+
2763
+ .chat-queue-clear,
2764
+ .chat-queue-remove {
2765
+ border: none;
2766
+ background: none;
2767
+ color: var(--text-muted);
2768
+ cursor: pointer;
2769
+ padding: 0;
2770
+ font-size: 11px;
2771
+ }
2772
+
2773
+ .chat-queue-clear:hover,
2774
+ .chat-queue-remove:hover {
2775
+ color: var(--text-primary);
2776
+ }
2777
+
2778
+ .chat-queue-list {
2779
+ display: flex;
2780
+ flex-direction: column;
2781
+ gap: 4px;
2782
+ margin-top: 8px;
2783
+ }
2784
+
2785
+ .chat-queue-item {
2786
+ display: flex;
2787
+ align-items: center;
2788
+ gap: 8px;
2789
+ padding: 6px 8px;
2790
+ border: 1px solid var(--border-subtle);
2791
+ border-radius: var(--radius-sm);
2792
+ background: rgba(255, 255, 255, 0.02);
2793
+ }
2794
+
2795
+ .chat-queue-text {
2796
+ flex: 1;
2797
+ min-width: 0;
2798
+ white-space: nowrap;
2799
+ overflow: hidden;
2800
+ text-overflow: ellipsis;
2801
+ }
2802
+
2750
2803
  .sidebar-input {
2751
2804
  flex: 1;
2752
2805
  background: var(--bg-tertiary);
@@ -2944,12 +2997,790 @@
2944
2997
  .agent-control-button,
2945
2998
  .agent-primary-button,
2946
2999
  .agent-section-toggle,
3000
+ .kit-run-btn,
3001
+ .kit-upsell-btn,
3002
+ .kit-schedule-btn,
2947
3003
  .sidebar-send,
2948
3004
  .sidebar-cancel {
2949
3005
  width: 100%;
2950
3006
  justify-content: center;
2951
3007
  }
2952
3008
  }
3009
+
3010
+
3011
+ /* ═══════════════════════════════════════
3012
+ Automation Kits panel
3013
+ ═══════════════════════════════════════ */
3014
+
3015
+ .automation-panel {
3016
+ display: flex;
3017
+ flex-direction: column;
3018
+ gap: 10px;
3019
+ padding: 14px;
3020
+ border: 1px solid var(--border-subtle);
3021
+ background: var(--bg-secondary);
3022
+ border-radius: var(--radius-lg);
3023
+ animation: tab-content-enter var(--duration-normal) var(--ease-out-expo) both;
3024
+ }
3025
+
3026
+ /* ── Header row ── */
3027
+
3028
+ .kit-list-header {
3029
+ display: flex;
3030
+ align-items: center;
3031
+ justify-content: space-between;
3032
+ gap: 8px;
3033
+ }
3034
+
3035
+ .kit-list-header-actions {
3036
+ display: flex;
3037
+ align-items: center;
3038
+ gap: 8px;
3039
+ }
3040
+
3041
+ .kit-beta-tag {
3042
+ font-size: 9px;
3043
+ font-weight: 600;
3044
+ letter-spacing: 0.08em;
3045
+ text-transform: uppercase;
3046
+ color: var(--color-accent, #c4a05a);
3047
+ background: rgba(196, 160, 90, 0.12);
3048
+ border: 1px solid rgba(196, 160, 90, 0.25);
3049
+ border-radius: 4px;
3050
+ padding: 1px 5px;
3051
+ vertical-align: middle;
3052
+ position: relative;
3053
+ top: -1px;
3054
+ }
3055
+
3056
+ .kit-list-count {
3057
+ font-size: 10px;
3058
+ font-weight: 600;
3059
+ text-transform: uppercase;
3060
+ letter-spacing: 0.06em;
3061
+ color: var(--text-muted);
3062
+ }
3063
+
3064
+ .kit-install-btn {
3065
+ height: 22px;
3066
+ padding: 0 8px;
3067
+ border-radius: var(--radius-sm);
3068
+ font-size: 10.5px;
3069
+ font-weight: 600;
3070
+ color: var(--accent-primary);
3071
+ background: rgba(196, 160, 90, 0.08);
3072
+ border: 1px solid rgba(196, 160, 90, 0.2);
3073
+ transition:
3074
+ background var(--duration-fast) var(--ease-in-out),
3075
+ border-color var(--duration-fast) var(--ease-in-out);
3076
+ }
3077
+
3078
+ .kit-install-btn:hover {
3079
+ background: rgba(196, 160, 90, 0.14);
3080
+ border-color: rgba(196, 160, 90, 0.3);
3081
+ }
3082
+
3083
+ .kit-install-error {
3084
+ display: flex;
3085
+ align-items: center;
3086
+ justify-content: space-between;
3087
+ gap: 8px;
3088
+ padding: 7px 10px;
3089
+ border-radius: var(--radius-sm);
3090
+ background: rgba(220, 80, 80, 0.08);
3091
+ border: 1px solid rgba(220, 80, 80, 0.2);
3092
+ font-size: 11px;
3093
+ color: #e07070;
3094
+ line-height: 1.4;
3095
+ }
3096
+
3097
+ .kit-install-error-dismiss {
3098
+ flex-shrink: 0;
3099
+ font-size: 14px;
3100
+ color: #e07070;
3101
+ opacity: 0.7;
3102
+ line-height: 1;
3103
+ padding: 0 2px;
3104
+ transition: opacity var(--duration-fast) var(--ease-in-out);
3105
+ }
3106
+
3107
+ .kit-install-error-dismiss:hover {
3108
+ opacity: 1;
3109
+ }
3110
+
3111
+ /* ── Kit cards ── */
3112
+
3113
+ .kit-list {
3114
+ display: flex;
3115
+ flex-direction: column;
3116
+ gap: 6px;
3117
+ }
3118
+
3119
+ .kit-card {
3120
+ display: flex;
3121
+ align-items: flex-start;
3122
+ gap: 11px;
3123
+ padding: 11px 12px;
3124
+ border-radius: var(--radius-md);
3125
+ background: rgba(0, 0, 0, 0.14);
3126
+ border: 1px solid rgba(255, 255, 255, 0.05);
3127
+ text-align: left;
3128
+ width: 100%;
3129
+ cursor: pointer;
3130
+ transition:
3131
+ background var(--duration-fast) var(--ease-in-out),
3132
+ border-color var(--duration-fast) var(--ease-in-out);
3133
+ }
3134
+
3135
+ .kit-card:hover {
3136
+ background: rgba(255, 255, 255, 0.04);
3137
+ border-color: rgba(196, 160, 90, 0.18);
3138
+ }
3139
+
3140
+ .kit-card:active {
3141
+ background: rgba(196, 160, 90, 0.06);
3142
+ }
3143
+
3144
+ .kit-card-icon {
3145
+ flex-shrink: 0;
3146
+ display: flex;
3147
+ align-items: center;
3148
+ justify-content: center;
3149
+ width: 32px;
3150
+ height: 32px;
3151
+ border-radius: var(--radius-sm);
3152
+ background: rgba(196, 160, 90, 0.08);
3153
+ border: 1px solid rgba(196, 160, 90, 0.14);
3154
+ color: var(--accent-primary);
3155
+ }
3156
+
3157
+ .kit-card-body {
3158
+ flex: 1;
3159
+ min-width: 0;
3160
+ display: flex;
3161
+ flex-direction: column;
3162
+ gap: 2px;
3163
+ }
3164
+
3165
+ .kit-card-name {
3166
+ font-size: 12px;
3167
+ font-weight: 600;
3168
+ color: var(--text-primary);
3169
+ line-height: 1.3;
3170
+ }
3171
+
3172
+ .kit-card-desc {
3173
+ font-size: 11px;
3174
+ color: var(--text-secondary);
3175
+ line-height: 1.5;
3176
+ }
3177
+
3178
+ .kit-card-meta {
3179
+ margin-top: 4px;
3180
+ font-size: 10px;
3181
+ font-weight: 600;
3182
+ text-transform: uppercase;
3183
+ letter-spacing: 0.05em;
3184
+ color: var(--text-muted);
3185
+ }
3186
+
3187
+ .kit-card-caret {
3188
+ flex-shrink: 0;
3189
+ color: var(--text-muted);
3190
+ margin-top: 2px;
3191
+ transition: color var(--duration-fast) var(--ease-in-out);
3192
+ }
3193
+
3194
+ .kit-card:hover .kit-card-caret {
3195
+ color: var(--accent-primary);
3196
+ }
3197
+
3198
+ .kit-remove-btn {
3199
+ flex-shrink: 0;
3200
+ width: 20px;
3201
+ height: 20px;
3202
+ border-radius: var(--radius-sm);
3203
+ font-size: 15px;
3204
+ line-height: 1;
3205
+ color: var(--text-muted);
3206
+ background: transparent;
3207
+ border: 1px solid transparent;
3208
+ display: flex;
3209
+ align-items: center;
3210
+ justify-content: center;
3211
+ transition:
3212
+ background var(--duration-fast) var(--ease-in-out),
3213
+ color var(--duration-fast) var(--ease-in-out),
3214
+ border-color var(--duration-fast) var(--ease-in-out);
3215
+ }
3216
+
3217
+ .kit-remove-btn:hover {
3218
+ background: rgba(220, 80, 80, 0.1);
3219
+ border-color: rgba(220, 80, 80, 0.2);
3220
+ color: #e07070;
3221
+ }
3222
+
3223
+ /* ── Form view ── */
3224
+
3225
+ .kit-form-header {
3226
+ display: flex;
3227
+ align-items: center;
3228
+ gap: 8px;
3229
+ }
3230
+
3231
+ .kit-back-btn {
3232
+ display: inline-flex;
3233
+ align-items: center;
3234
+ gap: 4px;
3235
+ height: 26px;
3236
+ padding: 0 8px;
3237
+ border-radius: var(--radius-sm);
3238
+ font-size: 11px;
3239
+ font-weight: 500;
3240
+ color: var(--text-muted);
3241
+ background: rgba(255, 255, 255, 0.04);
3242
+ border: 1px solid rgba(255, 255, 255, 0.05);
3243
+ flex-shrink: 0;
3244
+ transition:
3245
+ background var(--duration-fast) var(--ease-in-out),
3246
+ color var(--duration-fast) var(--ease-in-out);
3247
+ }
3248
+
3249
+ .kit-back-btn:hover {
3250
+ background: rgba(255, 255, 255, 0.07);
3251
+ color: var(--text-secondary);
3252
+ }
3253
+
3254
+ .kit-form-title {
3255
+ font-size: 12px;
3256
+ font-weight: 600;
3257
+ color: var(--text-primary);
3258
+ display: flex;
3259
+ align-items: center;
3260
+ gap: 6px;
3261
+ min-width: 0;
3262
+ overflow: hidden;
3263
+ text-overflow: ellipsis;
3264
+ white-space: nowrap;
3265
+ }
3266
+
3267
+ .kit-form-desc {
3268
+ font-size: 11px;
3269
+ color: var(--text-secondary);
3270
+ line-height: 1.5;
3271
+ margin: 0;
3272
+ }
3273
+
3274
+ .kit-form-fields {
3275
+ display: flex;
3276
+ flex-direction: column;
3277
+ gap: 10px;
3278
+ }
3279
+
3280
+ .kit-form-field {
3281
+ display: flex;
3282
+ flex-direction: column;
3283
+ gap: 4px;
3284
+ }
3285
+
3286
+ .kit-form-label {
3287
+ font-size: 11px;
3288
+ font-weight: 600;
3289
+ color: var(--text-primary);
3290
+ display: flex;
3291
+ align-items: center;
3292
+ gap: 3px;
3293
+ }
3294
+
3295
+ .kit-form-required {
3296
+ color: var(--accent-primary);
3297
+ font-size: 12px;
3298
+ line-height: 1;
3299
+ }
3300
+
3301
+ .kit-form-input,
3302
+ .kit-form-textarea {
3303
+ width: 100%;
3304
+ background: rgba(0, 0, 0, 0.2);
3305
+ border: 1px solid rgba(255, 255, 255, 0.07);
3306
+ border-radius: var(--radius-sm);
3307
+ color: var(--text-primary);
3308
+ font-size: 12px;
3309
+ font-family: var(--font-ui);
3310
+ padding: 7px 10px;
3311
+ transition:
3312
+ border-color var(--duration-fast) var(--ease-in-out),
3313
+ box-shadow var(--duration-fast) var(--ease-in-out);
3314
+ resize: none;
3315
+ }
3316
+
3317
+ .kit-form-input:focus,
3318
+ .kit-form-textarea:focus {
3319
+ border-color: rgba(196, 160, 90, 0.4);
3320
+ box-shadow: 0 0 0 2px rgba(196, 160, 90, 0.08);
3321
+ outline: none;
3322
+ }
3323
+
3324
+ .kit-form-input::placeholder,
3325
+ .kit-form-textarea::placeholder {
3326
+ color: var(--text-muted);
3327
+ }
3328
+
3329
+ .kit-form-hint {
3330
+ font-size: 10.5px;
3331
+ color: var(--text-muted);
3332
+ line-height: 1.4;
3333
+ margin: 0;
3334
+ }
3335
+
3336
+ .kit-form-estimate {
3337
+ font-size: 10.5px;
3338
+ color: var(--text-muted);
3339
+ margin: 0;
3340
+ }
3341
+
3342
+ .kit-run-btn {
3343
+ width: 100%;
3344
+ justify-content: center;
3345
+ gap: 6px;
3346
+ }
3347
+
3348
+ .kit-run-spinner {
3349
+ width: 10px;
3350
+ height: 10px;
3351
+ border: 1.5px solid rgba(0, 0, 0, 0.2);
3352
+ border-top-color: rgba(0, 0, 0, 0.7);
3353
+ border-radius: 50%;
3354
+ animation: kit-spin 0.6s linear infinite;
3355
+ display: inline-block;
3356
+ }
3357
+
3358
+ @keyframes kit-spin {
3359
+ to { transform: rotate(360deg); }
3360
+ }
3361
+
3362
+ /* ── Premium upsell ── */
3363
+
3364
+ .kit-upsell {
3365
+ display: flex;
3366
+ flex-direction: column;
3367
+ align-items: center;
3368
+ gap: 10px;
3369
+ padding: 20px 14px 16px;
3370
+ text-align: center;
3371
+ }
3372
+
3373
+ .kit-upsell-icon {
3374
+ width: 48px;
3375
+ height: 48px;
3376
+ border-radius: 50%;
3377
+ background: rgba(196, 160, 90, 0.07);
3378
+ border: 1px solid rgba(196, 160, 90, 0.15);
3379
+ display: flex;
3380
+ align-items: center;
3381
+ justify-content: center;
3382
+ color: var(--accent-primary);
3383
+ margin-bottom: 2px;
3384
+ }
3385
+
3386
+ .kit-upsell-title {
3387
+ font-size: 13px;
3388
+ font-weight: 600;
3389
+ color: var(--text-primary);
3390
+ margin: 0;
3391
+ }
3392
+
3393
+ .kit-upsell-body {
3394
+ font-size: 11.5px;
3395
+ color: var(--text-secondary);
3396
+ line-height: 1.55;
3397
+ margin: 0;
3398
+ max-width: 240px;
3399
+ }
3400
+
3401
+ .kit-upsell-btn {
3402
+ margin-top: 4px;
3403
+ }
3404
+
3405
+ /* ── Scheduled jobs list ── */
3406
+
3407
+ .kit-sched-section {
3408
+ display: flex;
3409
+ align-items: center;
3410
+ gap: 6px;
3411
+ padding: 10px 2px 4px;
3412
+ font-size: 10.5px;
3413
+ font-weight: 600;
3414
+ color: var(--text-muted);
3415
+ text-transform: uppercase;
3416
+ letter-spacing: 0.05em;
3417
+ border-top: 1px solid var(--border-subtle);
3418
+ margin-top: 2px;
3419
+ }
3420
+
3421
+ .kit-sched-list {
3422
+ display: flex;
3423
+ flex-direction: column;
3424
+ gap: 4px;
3425
+ }
3426
+
3427
+ .kit-activity-list {
3428
+ display: flex;
3429
+ flex-direction: column;
3430
+ gap: 6px;
3431
+ }
3432
+
3433
+ .kit-activity-card {
3434
+ display: flex;
3435
+ flex-direction: column;
3436
+ gap: 8px;
3437
+ padding: 9px 10px;
3438
+ border-radius: var(--radius-md);
3439
+ background: rgba(255, 255, 255, 0.025);
3440
+ border: 1px solid var(--border-subtle);
3441
+ }
3442
+
3443
+ .kit-activity-running {
3444
+ border-color: rgba(196, 160, 90, 0.26);
3445
+ }
3446
+
3447
+ .kit-activity-failed {
3448
+ border-color: rgba(202, 92, 92, 0.28);
3449
+ }
3450
+
3451
+ .kit-activity-header {
3452
+ display: flex;
3453
+ align-items: flex-start;
3454
+ justify-content: space-between;
3455
+ gap: 8px;
3456
+ }
3457
+
3458
+ .kit-activity-title {
3459
+ display: flex;
3460
+ align-items: flex-start;
3461
+ gap: 8px;
3462
+ min-width: 0;
3463
+ }
3464
+
3465
+ .kit-activity-title-copy {
3466
+ min-width: 0;
3467
+ }
3468
+
3469
+ .kit-activity-time {
3470
+ font-size: 10px;
3471
+ color: var(--text-muted);
3472
+ margin-top: 1px;
3473
+ }
3474
+
3475
+ .kit-activity-badge {
3476
+ flex-shrink: 0;
3477
+ padding: 2px 7px;
3478
+ border-radius: 999px;
3479
+ font-size: 10px;
3480
+ font-weight: 600;
3481
+ color: var(--text-secondary);
3482
+ background: rgba(255, 255, 255, 0.03);
3483
+ border: 1px solid var(--border-subtle);
3484
+ }
3485
+
3486
+ .kit-activity-running .kit-activity-badge {
3487
+ color: var(--accent-primary);
3488
+ border-color: rgba(196, 160, 90, 0.24);
3489
+ background: rgba(196, 160, 90, 0.08);
3490
+ }
3491
+
3492
+ .kit-activity-failed .kit-activity-badge {
3493
+ color: #d98b8b;
3494
+ border-color: rgba(202, 92, 92, 0.28);
3495
+ background: rgba(202, 92, 92, 0.09);
3496
+ }
3497
+
3498
+ .kit-activity-output {
3499
+ white-space: pre-wrap;
3500
+ word-break: break-word;
3501
+ font-size: 11px;
3502
+ line-height: 1.5;
3503
+ color: var(--text-secondary);
3504
+ max-height: 180px;
3505
+ overflow: auto;
3506
+ }
3507
+
3508
+ .kit-activity-placeholder {
3509
+ color: var(--text-muted);
3510
+ font-style: italic;
3511
+ }
3512
+
3513
+ .kit-sched-card {
3514
+ position: relative;
3515
+ display: flex;
3516
+ align-items: center;
3517
+ gap: 8px;
3518
+ padding: 7px 8px;
3519
+ border-radius: var(--radius-md);
3520
+ background: var(--bg-tertiary);
3521
+ border: 1px solid var(--border-subtle);
3522
+ transition: opacity var(--duration-fast) ease;
3523
+ }
3524
+
3525
+ .kit-sched-card.kit-sched-disabled {
3526
+ opacity: 0.5;
3527
+ }
3528
+
3529
+ .kit-sched-icon {
3530
+ flex-shrink: 0;
3531
+ width: 26px;
3532
+ height: 26px;
3533
+ }
3534
+
3535
+ .kit-sched-body {
3536
+ flex: 1;
3537
+ min-width: 0;
3538
+ }
3539
+
3540
+ .kit-sched-name {
3541
+ font-size: 11.5px;
3542
+ font-weight: 500;
3543
+ color: var(--text-primary);
3544
+ white-space: nowrap;
3545
+ overflow: hidden;
3546
+ text-overflow: ellipsis;
3547
+ }
3548
+
3549
+ .kit-sched-meta {
3550
+ font-size: 10.5px;
3551
+ color: var(--text-secondary);
3552
+ margin-top: 1px;
3553
+ }
3554
+
3555
+ .kit-sched-next {
3556
+ font-size: 10px;
3557
+ color: var(--text-muted);
3558
+ margin-top: 1px;
3559
+ }
3560
+
3561
+ .kit-sched-actions {
3562
+ display: flex;
3563
+ align-items: center;
3564
+ gap: 4px;
3565
+ flex-shrink: 0;
3566
+ }
3567
+
3568
+ .kit-sched-toggle {
3569
+ background: none;
3570
+ border: none;
3571
+ cursor: pointer;
3572
+ padding: 3px 5px;
3573
+ font-size: 11px;
3574
+ color: var(--text-muted);
3575
+ border-radius: var(--radius-sm);
3576
+ transition: color var(--duration-fast) ease, background var(--duration-fast) ease;
3577
+
3578
+ &:hover {
3579
+ color: var(--text-primary);
3580
+ background: var(--bg-hover);
3581
+ }
3582
+ }
3583
+
3584
+ /* ── Scheduled job context menu ── */
3585
+
3586
+ .sched-context-menu {
3587
+ position: absolute;
3588
+ top: calc(100% + 2px);
3589
+ left: 0;
3590
+ z-index: 1000;
3591
+ background: var(--bg-surface, #1e1e24);
3592
+ border: 1px solid var(--border-subtle);
3593
+ border-radius: var(--radius-md, 6px);
3594
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
3595
+ padding: 4px;
3596
+ min-width: 152px;
3597
+ display: flex;
3598
+ flex-direction: column;
3599
+ gap: 1px;
3600
+ }
3601
+
3602
+ .sched-ctx-item {
3603
+ background: none;
3604
+ border: none;
3605
+ cursor: pointer;
3606
+ padding: 6px 10px;
3607
+ text-align: left;
3608
+ font-size: 12px;
3609
+ color: var(--text-primary);
3610
+ border-radius: var(--radius-sm, 4px);
3611
+ width: 100%;
3612
+ transition: background var(--duration-fast) ease;
3613
+
3614
+ &:hover {
3615
+ background: var(--bg-hover);
3616
+ }
3617
+ }
3618
+
3619
+ .sched-ctx-danger {
3620
+ color: var(--color-error, #e05252);
3621
+ }
3622
+
3623
+ .sched-ctx-divider {
3624
+ height: 1px;
3625
+ background: var(--border-subtle);
3626
+ margin: 3px 4px;
3627
+ }
3628
+
3629
+ /* ── Edit schedule modal ── */
3630
+
3631
+ .sched-edit-backdrop {
3632
+ position: fixed;
3633
+ inset: 0;
3634
+ z-index: 999;
3635
+ background: rgba(0, 0, 0, 0.4);
3636
+ display: flex;
3637
+ align-items: center;
3638
+ justify-content: center;
3639
+ }
3640
+
3641
+ .sched-edit-panel {
3642
+ background: var(--bg-surface, #1e1e24);
3643
+ border: 1px solid var(--border-subtle);
3644
+ border-radius: var(--radius-md, 8px);
3645
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
3646
+ padding: 16px;
3647
+ width: 280px;
3648
+ display: flex;
3649
+ flex-direction: column;
3650
+ gap: 12px;
3651
+ }
3652
+
3653
+ .sched-edit-header {
3654
+ display: flex;
3655
+ flex-direction: column;
3656
+ gap: 2px;
3657
+ }
3658
+
3659
+ .sched-edit-title {
3660
+ font-size: 12px;
3661
+ font-weight: 600;
3662
+ color: var(--text-primary);
3663
+ text-transform: uppercase;
3664
+ letter-spacing: 0.06em;
3665
+ }
3666
+
3667
+ .sched-edit-job-name {
3668
+ font-size: 11px;
3669
+ color: var(--text-muted);
3670
+ }
3671
+
3672
+ .sched-edit-actions {
3673
+ display: flex;
3674
+ justify-content: flex-end;
3675
+ gap: 8px;
3676
+ margin-top: 4px;
3677
+ }
3678
+
3679
+ .sched-edit-panel .kit-schedule-time {
3680
+ max-width: 100%;
3681
+ }
3682
+
3683
+ .sched-edit-panel .kit-schedule-row {
3684
+ gap: 6px;
3685
+ }
3686
+
3687
+ .sched-edit-panel .kit-schedule-row label {
3688
+ font-size: 11px;
3689
+ color: var(--text-muted);
3690
+ }
3691
+
3692
+ /* ── Schedule form ── */
3693
+
3694
+ .kit-schedule-section {
3695
+ border-top: 1px solid var(--border-subtle);
3696
+ padding-top: 10px;
3697
+ display: flex;
3698
+ flex-direction: column;
3699
+ gap: 8px;
3700
+ }
3701
+
3702
+ .kit-schedule-toggle {
3703
+ display: flex;
3704
+ align-items: center;
3705
+ gap: 6px;
3706
+ font-size: 11.5px;
3707
+ color: var(--text-secondary);
3708
+ cursor: pointer;
3709
+ user-select: none;
3710
+
3711
+ input[type="checkbox"] {
3712
+ accent-color: var(--accent-primary);
3713
+ cursor: pointer;
3714
+ }
3715
+ }
3716
+
3717
+ .kit-schedule-form {
3718
+ display: flex;
3719
+ flex-direction: column;
3720
+ gap: 8px;
3721
+ padding: 10px;
3722
+ background: var(--bg-tertiary);
3723
+ border: 1px solid var(--border-subtle);
3724
+ border-radius: var(--radius-md);
3725
+ }
3726
+
3727
+ .kit-schedule-types {
3728
+ display: flex;
3729
+ gap: 4px;
3730
+ flex-wrap: wrap;
3731
+ }
3732
+
3733
+ .kit-schedule-type-option {
3734
+ display: flex;
3735
+ align-items: center;
3736
+ gap: 4px;
3737
+ font-size: 11px;
3738
+ color: var(--text-secondary);
3739
+ cursor: pointer;
3740
+ padding: 3px 8px;
3741
+ border-radius: var(--radius-sm);
3742
+ border: 1px solid var(--border-subtle);
3743
+ background: var(--bg-secondary);
3744
+ transition: border-color var(--duration-fast) ease, color var(--duration-fast) ease;
3745
+
3746
+ input[type="radio"] {
3747
+ accent-color: var(--accent-primary);
3748
+ cursor: pointer;
3749
+ }
3750
+
3751
+ &:has(input:checked) {
3752
+ border-color: var(--accent-primary);
3753
+ color: var(--text-primary);
3754
+ }
3755
+ }
3756
+
3757
+ .kit-schedule-row {
3758
+ display: flex;
3759
+ flex-direction: column;
3760
+ gap: 4px;
3761
+ }
3762
+
3763
+ .kit-schedule-time {
3764
+ max-width: 120px;
3765
+ }
3766
+
3767
+ .kit-schedule-error {
3768
+ font-size: 11px;
3769
+ color: var(--status-error, #e06c75);
3770
+ margin: 0;
3771
+ }
3772
+
3773
+ .kit-schedule-note {
3774
+ font-size: 10.5px;
3775
+ color: var(--text-muted);
3776
+ margin: 0;
3777
+ }
3778
+
3779
+ .kit-schedule-btn {
3780
+ width: 100%;
3781
+ justify-content: center;
3782
+ }
3783
+ }
2953
3784
  .devtools-panel {
2954
3785
  width: 100%;
2955
3786
  height: 100%;