@task-shepherd/agent 1.0.35 → 1.0.36

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/dist/meta.json CHANGED
@@ -862,7 +862,7 @@
862
862
  "format": "esm"
863
863
  },
864
864
  "src/graphql/generated.ts": {
865
- "bytes": 215930,
865
+ "bytes": 248458,
866
866
  "imports": [
867
867
  {
868
868
  "path": "@graphql-typed-document-node/core",
@@ -873,7 +873,7 @@
873
873
  "format": "esm"
874
874
  },
875
875
  "src/graphql/TypedGraphQLClient.ts": {
876
- "bytes": 12534,
876
+ "bytes": 18294,
877
877
  "imports": [
878
878
  {
879
879
  "path": "graphql-request",
@@ -1145,8 +1145,8 @@
1145
1145
  ],
1146
1146
  "format": "esm"
1147
1147
  },
1148
- "src/services/ProjectMappingService.ts": {
1149
- "bytes": 7008,
1148
+ "src/services/ServiceMappingService.ts": {
1149
+ "bytes": 7653,
1150
1150
  "imports": [
1151
1151
  {
1152
1152
  "path": "fs/promises",
@@ -1167,7 +1167,7 @@
1167
1167
  "format": "esm"
1168
1168
  },
1169
1169
  "src/handlers/ProjectReviewHandler.ts": {
1170
- "bytes": 30607,
1170
+ "bytes": 29725,
1171
1171
  "imports": [
1172
1172
  {
1173
1173
  "path": "src/handlers/BaseWorkHandler.ts",
@@ -1200,9 +1200,9 @@
1200
1200
  "original": "../services/WorkspaceMappingService"
1201
1201
  },
1202
1202
  {
1203
- "path": "src/services/ProjectMappingService.ts",
1203
+ "path": "src/services/ServiceMappingService.ts",
1204
1204
  "kind": "import-statement",
1205
- "original": "../services/ProjectMappingService"
1205
+ "original": "../services/ServiceMappingService"
1206
1206
  }
1207
1207
  ],
1208
1208
  "format": "esm"
@@ -2540,8 +2540,13 @@
2540
2540
  "imports": [],
2541
2541
  "format": "esm"
2542
2542
  },
2543
+ "node_modules/@task-shepherd/shared/dist/work-queue/TaskDependencyGraph.js": {
2544
+ "bytes": 10030,
2545
+ "imports": [],
2546
+ "format": "esm"
2547
+ },
2543
2548
  "node_modules/@task-shepherd/shared/dist/work-queue/index.js": {
2544
- "bytes": 204,
2549
+ "bytes": 246,
2545
2550
  "imports": [
2546
2551
  {
2547
2552
  "path": "node_modules/@task-shepherd/shared/dist/work-queue/types.js",
@@ -2552,12 +2557,17 @@
2552
2557
  "path": "node_modules/@task-shepherd/shared/dist/work-queue/validation.js",
2553
2558
  "kind": "import-statement",
2554
2559
  "original": "./validation.js"
2560
+ },
2561
+ {
2562
+ "path": "node_modules/@task-shepherd/shared/dist/work-queue/TaskDependencyGraph.js",
2563
+ "kind": "import-statement",
2564
+ "original": "./TaskDependencyGraph.js"
2555
2565
  }
2556
2566
  ],
2557
2567
  "format": "esm"
2558
2568
  },
2559
2569
  "node_modules/@task-shepherd/shared/dist/index.js": {
2560
- "bytes": 626,
2570
+ "bytes": 687,
2561
2571
  "imports": [
2562
2572
  {
2563
2573
  "path": "node_modules/@task-shepherd/shared/dist/schema/index.js",
@@ -2588,12 +2598,17 @@
2588
2598
  "path": "node_modules/@task-shepherd/shared/dist/workspace/index.js",
2589
2599
  "kind": "import-statement",
2590
2600
  "original": "./workspace/index.js"
2601
+ },
2602
+ {
2603
+ "path": "node_modules/@task-shepherd/shared/dist/work-queue/index.js",
2604
+ "kind": "import-statement",
2605
+ "original": "./work-queue/index.js"
2591
2606
  }
2592
2607
  ],
2593
2608
  "format": "esm"
2594
2609
  },
2595
2610
  "src/handlers/DevelopmentPlanningHandler.ts": {
2596
- "bytes": 89427,
2611
+ "bytes": 88472,
2597
2612
  "imports": [
2598
2613
  {
2599
2614
  "path": "node_modules/@task-shepherd/shared/dist/index.js",
@@ -2631,15 +2646,36 @@
2631
2646
  "original": "../services/WorkspaceMappingService"
2632
2647
  },
2633
2648
  {
2634
- "path": "src/services/ProjectMappingService.ts",
2649
+ "path": "src/services/ServiceMappingService.ts",
2635
2650
  "kind": "import-statement",
2636
- "original": "../services/ProjectMappingService"
2651
+ "original": "../services/ServiceMappingService"
2652
+ }
2653
+ ],
2654
+ "format": "esm"
2655
+ },
2656
+ "src/services/TaskImplementationExecutor.ts": {
2657
+ "bytes": 14137,
2658
+ "imports": [
2659
+ {
2660
+ "path": "src/middleware/logger.ts",
2661
+ "kind": "import-statement",
2662
+ "original": "../middleware/logger"
2663
+ },
2664
+ {
2665
+ "path": "src/services/ClaudeCliExecutor.ts",
2666
+ "kind": "import-statement",
2667
+ "original": "./ClaudeCliExecutor"
2668
+ },
2669
+ {
2670
+ "path": "../graphql/TypedGraphQLClient",
2671
+ "kind": "import-statement",
2672
+ "external": true
2637
2673
  }
2638
2674
  ],
2639
2675
  "format": "esm"
2640
2676
  },
2641
2677
  "src/handlers/StoryImplementationHandler.ts": {
2642
- "bytes": 2797,
2678
+ "bytes": 28990,
2643
2679
  "imports": [
2644
2680
  {
2645
2681
  "path": "src/handlers/BaseWorkHandler.ts",
@@ -2647,20 +2683,45 @@
2647
2683
  "original": "./BaseWorkHandler"
2648
2684
  },
2649
2685
  {
2650
- "path": "@task-shepherd/shared",
2686
+ "path": "node_modules/@task-shepherd/shared/dist/index.js",
2651
2687
  "kind": "import-statement",
2652
- "external": true
2688
+ "original": "@task-shepherd/shared"
2653
2689
  },
2654
2690
  {
2655
2691
  "path": "src/middleware/logger.ts",
2656
2692
  "kind": "import-statement",
2657
2693
  "original": "../middleware/logger"
2694
+ },
2695
+ {
2696
+ "path": "src/services/WorkspaceMappingService.ts",
2697
+ "kind": "import-statement",
2698
+ "original": "../services/WorkspaceMappingService"
2699
+ },
2700
+ {
2701
+ "path": "src/services/ServiceMappingService.ts",
2702
+ "kind": "import-statement",
2703
+ "original": "../services/ServiceMappingService"
2704
+ },
2705
+ {
2706
+ "path": "src/services/TaskImplementationExecutor.ts",
2707
+ "kind": "import-statement",
2708
+ "original": "../services/TaskImplementationExecutor"
2709
+ },
2710
+ {
2711
+ "path": "../graphql/generated",
2712
+ "kind": "import-statement",
2713
+ "external": true
2714
+ },
2715
+ {
2716
+ "path": "src/services/TaskImplementationExecutor.ts",
2717
+ "kind": "import-statement",
2718
+ "original": "../services/TaskImplementationExecutor"
2658
2719
  }
2659
2720
  ],
2660
2721
  "format": "esm"
2661
2722
  },
2662
2723
  "src/handlers/ReviewApplicationHandler.ts": {
2663
- "bytes": 35120,
2724
+ "bytes": 34234,
2664
2725
  "imports": [
2665
2726
  {
2666
2727
  "path": "src/handlers/BaseWorkHandler.ts",
@@ -2693,15 +2754,15 @@
2693
2754
  "original": "../services/WorkspaceMappingService"
2694
2755
  },
2695
2756
  {
2696
- "path": "src/services/ProjectMappingService.ts",
2757
+ "path": "src/services/ServiceMappingService.ts",
2697
2758
  "kind": "import-statement",
2698
- "original": "../services/ProjectMappingService"
2759
+ "original": "../services/ServiceMappingService"
2699
2760
  }
2700
2761
  ],
2701
2762
  "format": "esm"
2702
2763
  },
2703
2764
  "src/handlers/StoryTaskGeneratorHandler.ts": {
2704
- "bytes": 20615,
2765
+ "bytes": 19725,
2705
2766
  "imports": [
2706
2767
  {
2707
2768
  "path": "src/handlers/BaseWorkHandler.ts",
@@ -2734,9 +2795,9 @@
2734
2795
  "original": "../services/WorkspaceMappingService"
2735
2796
  },
2736
2797
  {
2737
- "path": "src/services/ProjectMappingService.ts",
2798
+ "path": "src/services/ServiceMappingService.ts",
2738
2799
  "kind": "import-statement",
2739
- "original": "../services/ProjectMappingService"
2800
+ "original": "../services/ServiceMappingService"
2740
2801
  }
2741
2802
  ],
2742
2803
  "format": "esm"
@@ -3220,44 +3281,44 @@
3220
3281
  ],
3221
3282
  "format": "esm"
3222
3283
  },
3223
- "src/controllers/ProjectMappingController.ts": {
3224
- "bytes": 6683,
3284
+ "src/services/ProjectMappingService.ts": {
3285
+ "bytes": 7008,
3225
3286
  "imports": [
3226
3287
  {
3227
- "path": "express",
3288
+ "path": "fs/promises",
3228
3289
  "kind": "import-statement",
3229
3290
  "external": true
3230
3291
  },
3231
3292
  {
3232
- "path": "src/middleware/logger.ts",
3293
+ "path": "path",
3233
3294
  "kind": "import-statement",
3234
- "original": "../middleware/logger"
3295
+ "external": true
3235
3296
  },
3236
3297
  {
3237
- "path": "src/services/ProjectMappingService.ts",
3298
+ "path": "src/middleware/logger.ts",
3238
3299
  "kind": "import-statement",
3239
- "original": "../services/ProjectMappingService"
3300
+ "original": "../middleware/logger"
3240
3301
  }
3241
3302
  ],
3242
3303
  "format": "esm"
3243
3304
  },
3244
- "src/services/ServiceMappingService.ts": {
3245
- "bytes": 7653,
3305
+ "src/controllers/ProjectMappingController.ts": {
3306
+ "bytes": 6683,
3246
3307
  "imports": [
3247
3308
  {
3248
- "path": "fs/promises",
3309
+ "path": "express",
3249
3310
  "kind": "import-statement",
3250
3311
  "external": true
3251
3312
  },
3252
3313
  {
3253
- "path": "path",
3314
+ "path": "src/middleware/logger.ts",
3254
3315
  "kind": "import-statement",
3255
- "external": true
3316
+ "original": "../middleware/logger"
3256
3317
  },
3257
3318
  {
3258
- "path": "src/middleware/logger.ts",
3319
+ "path": "src/services/ProjectMappingService.ts",
3259
3320
  "kind": "import-statement",
3260
- "original": "../middleware/logger"
3321
+ "original": "../services/ProjectMappingService"
3261
3322
  }
3262
3323
  ],
3263
3324
  "format": "esm"
@@ -4232,10 +4293,10 @@
4232
4293
  "bytesInOutput": 17936
4233
4294
  },
4234
4295
  "src/graphql/TypedGraphQLClient.ts": {
4235
- "bytesInOutput": 5393
4296
+ "bytesInOutput": 7641
4236
4297
  },
4237
4298
  "src/graphql/generated.ts": {
4238
- "bytesInOutput": 23554
4299
+ "bytesInOutput": 34301
4239
4300
  },
4240
4301
  "src/services/WorkItemErrorTracker.ts": {
4241
4302
  "bytesInOutput": 8192
@@ -4250,13 +4311,13 @@
4250
4311
  "bytesInOutput": 1636
4251
4312
  },
4252
4313
  "src/handlers/ProjectReviewHandler.ts": {
4253
- "bytesInOutput": 16951
4314
+ "bytesInOutput": 16590
4254
4315
  },
4255
4316
  "src/services/WorkspaceMappingService.ts": {
4256
4317
  "bytesInOutput": 3574
4257
4318
  },
4258
- "src/services/ProjectMappingService.ts": {
4259
- "bytesInOutput": 3027
4319
+ "src/services/ServiceMappingService.ts": {
4320
+ "bytesInOutput": 3258
4260
4321
  },
4261
4322
  "src/handlers/CodeReviewHandler.ts": {
4262
4323
  "bytesInOutput": 549
@@ -4492,17 +4553,23 @@
4492
4553
  "node_modules/@task-shepherd/shared/dist/work-queue/index.js": {
4493
4554
  "bytesInOutput": 0
4494
4555
  },
4556
+ "node_modules/@task-shepherd/shared/dist/work-queue/TaskDependencyGraph.js": {
4557
+ "bytesInOutput": 2540
4558
+ },
4495
4559
  "src/handlers/DevelopmentPlanningHandler.ts": {
4496
- "bytesInOutput": 41863
4560
+ "bytesInOutput": 41502
4497
4561
  },
4498
4562
  "src/handlers/StoryImplementationHandler.ts": {
4499
- "bytesInOutput": 655
4563
+ "bytesInOutput": 13558
4564
+ },
4565
+ "src/services/TaskImplementationExecutor.ts": {
4566
+ "bytesInOutput": 5720
4500
4567
  },
4501
4568
  "src/handlers/ReviewApplicationHandler.ts": {
4502
- "bytesInOutput": 18265
4569
+ "bytesInOutput": 17894
4503
4570
  },
4504
4571
  "src/handlers/StoryTaskGeneratorHandler.ts": {
4505
- "bytesInOutput": 12368
4572
+ "bytesInOutput": 12007
4506
4573
  },
4507
4574
  "src/handlers/HandlerFactory.ts": {
4508
4575
  "bytesInOutput": 1681
@@ -4552,14 +4619,14 @@
4552
4619
  "src/controllers/ProjectMappingController.ts": {
4553
4620
  "bytesInOutput": 3029
4554
4621
  },
4622
+ "src/services/ProjectMappingService.ts": {
4623
+ "bytesInOutput": 3027
4624
+ },
4555
4625
  "src/controllers/ServiceMappingController.ts": {
4556
4626
  "bytesInOutput": 3719
4557
- },
4558
- "src/services/ServiceMappingService.ts": {
4559
- "bytesInOutput": 3258
4560
4627
  }
4561
4628
  },
4562
- "bytes": 1502906
4629
+ "bytes": 1535610
4563
4630
  },
4564
4631
  "dist/cli/index.js": {
4565
4632
  "imports": [
@@ -5087,16 +5154,16 @@
5087
5154
  "bytesInOutput": 284
5088
5155
  },
5089
5156
  "src/graphql/generated.ts": {
5090
- "bytesInOutput": 23614
5157
+ "bytesInOutput": 34379
5091
5158
  },
5092
5159
  "src/graphql/TypedGraphQLClient.ts": {
5093
- "bytesInOutput": 5425
5160
+ "bytesInOutput": 7673
5094
5161
  },
5095
5162
  "src/types/organization.ts": {
5096
5163
  "bytesInOutput": 495
5097
5164
  },
5098
5165
  "src/services/OrganizationManager.ts": {
5099
- "bytesInOutput": 27120
5166
+ "bytesInOutput": 27106
5100
5167
  },
5101
5168
  "src/config/ConfigLoader.ts": {
5102
5169
  "bytesInOutput": 5697
@@ -5195,7 +5262,7 @@
5195
5262
  "bytesInOutput": 731
5196
5263
  },
5197
5264
  "../../node_modules/node-fetch/lib/index.js": {
5198
- "bytesInOutput": 19163
5265
+ "bytesInOutput": 19157
5199
5266
  },
5200
5267
  "src/services/HttpClient.ts": {
5201
5268
  "bytesInOutput": 4292
@@ -5216,16 +5283,16 @@
5216
5283
  "bytesInOutput": 1668
5217
5284
  },
5218
5285
  "src/services/ClaudeCliExecutor.ts": {
5219
- "bytesInOutput": 4124
5286
+ "bytesInOutput": 4108
5220
5287
  },
5221
5288
  "src/handlers/BaseWorkHandler.ts": {
5222
5289
  "bytesInOutput": 18001
5223
5290
  },
5224
- "src/services/ProjectMappingService.ts": {
5225
- "bytesInOutput": 3058
5291
+ "src/services/ServiceMappingService.ts": {
5292
+ "bytesInOutput": 3289
5226
5293
  },
5227
5294
  "src/handlers/ProjectReviewHandler.ts": {
5228
- "bytesInOutput": 16999
5295
+ "bytesInOutput": 16638
5229
5296
  },
5230
5297
  "src/handlers/CodeReviewHandler.ts": {
5231
5298
  "bytesInOutput": 582
@@ -5267,7 +5334,7 @@
5267
5334
  "bytesInOutput": 49
5268
5335
  },
5269
5336
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/core/schemas.js": {
5270
- "bytesInOutput": 24522
5337
+ "bytesInOutput": 24558
5271
5338
  },
5272
5339
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/locales/ar.js": {
5273
5340
  "bytesInOutput": 5591
@@ -5402,7 +5469,7 @@
5402
5469
  "bytesInOutput": 751
5403
5470
  },
5404
5471
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/core/api.js": {
5405
- "bytesInOutput": 9690
5472
+ "bytesInOutput": 9691
5406
5473
  },
5407
5474
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/core/function.js": {
5408
5475
  "bytesInOutput": 1300
@@ -5414,7 +5481,7 @@
5414
5481
  "bytesInOutput": 27
5415
5482
  },
5416
5483
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/core/index.js": {
5417
- "bytesInOutput": 4403
5484
+ "bytesInOutput": 4404
5418
5485
  },
5419
5486
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/classic/checks.js": {
5420
5487
  "bytesInOutput": 21
@@ -5429,7 +5496,7 @@
5429
5496
  "bytesInOutput": 78
5430
5497
  },
5431
5498
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/classic/schemas.js": {
5432
- "bytesInOutput": 14821
5499
+ "bytesInOutput": 14823
5433
5500
  },
5434
5501
  "node_modules/@task-shepherd/shared/node_modules/zod/v4/classic/compat.js": {
5435
5502
  "bytesInOutput": 425
@@ -5470,23 +5537,29 @@
5470
5537
  "node_modules/@task-shepherd/shared/dist/work-queue/validation.js": {
5471
5538
  "bytesInOutput": 17
5472
5539
  },
5540
+ "node_modules/@task-shepherd/shared/dist/work-queue/TaskDependencyGraph.js": {
5541
+ "bytesInOutput": 2555
5542
+ },
5473
5543
  "node_modules/@task-shepherd/shared/dist/work-queue/index.js": {
5474
- "bytesInOutput": 26
5544
+ "bytesInOutput": 31
5475
5545
  },
5476
5546
  "node_modules/@task-shepherd/shared/dist/index.js": {
5477
- "bytesInOutput": 46
5547
+ "bytesInOutput": 51
5478
5548
  },
5479
5549
  "src/handlers/DevelopmentPlanningHandler.ts": {
5480
- "bytesInOutput": 41916
5550
+ "bytesInOutput": 41555
5551
+ },
5552
+ "src/services/TaskImplementationExecutor.ts": {
5553
+ "bytesInOutput": 5759
5481
5554
  },
5482
5555
  "src/handlers/StoryImplementationHandler.ts": {
5483
- "bytesInOutput": 688
5556
+ "bytesInOutput": 13619
5484
5557
  },
5485
5558
  "src/handlers/ReviewApplicationHandler.ts": {
5486
- "bytesInOutput": 18313
5559
+ "bytesInOutput": 17942
5487
5560
  },
5488
5561
  "src/handlers/StoryTaskGeneratorHandler.ts": {
5489
- "bytesInOutput": 12416
5562
+ "bytesInOutput": 12055
5490
5563
  },
5491
5564
  "src/handlers/HandlerFactory.ts": {
5492
5565
  "bytesInOutput": 1739
@@ -5527,17 +5600,17 @@
5527
5600
  "src/services/MultiOrganizationWorkerService.ts": {
5528
5601
  "bytesInOutput": 10064
5529
5602
  },
5603
+ "src/services/ProjectMappingService.ts": {
5604
+ "bytesInOutput": 3058
5605
+ },
5530
5606
  "src/controllers/ProjectMappingController.ts": {
5531
5607
  "bytesInOutput": 3062
5532
5608
  },
5533
- "src/services/ServiceMappingService.ts": {
5534
- "bytesInOutput": 3289
5535
- },
5536
5609
  "src/controllers/ServiceMappingController.ts": {
5537
5610
  "bytesInOutput": 3752
5538
5611
  },
5539
5612
  "src/index.ts": {
5540
- "bytesInOutput": 35902
5613
+ "bytesInOutput": 35899
5541
5614
  },
5542
5615
  "src/cli/commands/OrganizationCommands.ts": {
5543
5616
  "bytesInOutput": 9476
@@ -5561,7 +5634,7 @@
5561
5634
  "bytesInOutput": 3712
5562
5635
  }
5563
5636
  },
5564
- "bytes": 1569652
5637
+ "bytes": 1602467
5565
5638
  }
5566
5639
  }
5567
5640
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@task-shepherd/agent",
3
- "version": "1.0.35",
3
+ "version": "1.0.36",
4
4
  "description": "Simplified AI agent service for Task Shepherd project analysis",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -0,0 +1 @@
1
+ *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96%;--secondary-foreground: 222.2 84% 4.9%;--muted: 210 40% 96%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96%;--accent-foreground: 222.2 84% 4.9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem}*{border-color:hsl(var(--border))}html,body{background-color:hsl(var(--background));color:hsl(var(--foreground));height:100%;font-family:ui-sans-serif,system-ui,sans-serif}#root{height:100%;min-height:100vh}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.z-50{z-index:50}.m-4{margin:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-mb-px{margin-bottom:-1px}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-10{margin-left:2.5rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.max-h-32{max-height:8rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(90vh-140px\)\]{max-height:calc(90vh - 140px)}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-4\/6{width:66.666667%}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-t-lg{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-border{border-color:hsl(var(--border))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-card{background-color:hsl(var(--card))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-primary{background-color:hsl(var(--primary))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.p-1{padding:.25rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-4{padding-bottom:1rem}.pl-6{padding-left:1.5rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-4{line-height:1rem}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-current{color:currentColor}.text-foreground{color:hsl(var(--foreground))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-200:hover{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-green-600:hover{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.hover\:text-green-700:hover{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.hover\:text-orange-600:hover{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.hover\:text-purple-600:hover{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:opacity-100:hover{opacity:1}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-blue-300:disabled{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width: 768px){.md\:block{display:block}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}