@mindexec/cli 0.2.478 → 0.2.479

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.
Files changed (146) hide show
  1. package/README.md +323 -323
  2. package/codex-model-catalog.js +202 -202
  3. package/codex-runtime.js +1608 -1608
  4. package/desktop-workspace-state.cjs +120 -120
  5. package/electron/main.cjs +517 -517
  6. package/electron/preload.cjs +17 -17
  7. package/electron/recurring-update-owner-smoke.mjs +55 -55
  8. package/electron/recurring-update-owner.cjs +97 -97
  9. package/electron/source-smoke.mjs +108 -108
  10. package/electron/update-feed-resolver.cjs +79 -79
  11. package/electron/update-feed.json +10 -10
  12. package/electron/update-manager-smoke.mjs +146 -146
  13. package/electron/update-manager.cjs +297 -297
  14. package/electron/windows-package-smoke.mjs +156 -156
  15. package/launch-bridge.cjs +236 -236
  16. package/lzo1x.js +110 -110
  17. package/mode4-atlas-worker.js +440 -440
  18. package/mode4-atlas.js +130 -130
  19. package/package.json +1 -1
  20. package/port-guard.cjs +285 -285
  21. package/remote-fast/osx-arm64/MacScreenCaptureKitH264.swift +339 -339
  22. package/remote-fast/osx-arm64/MacSystemAudioCapture.swift +214 -214
  23. package/remote-fast/osx-arm64/UnixRawCaptureHelper.mjs +80 -80
  24. package/remote-fast/osx-arm64/livedesk-raw-capture-resampler.mjs +73 -73
  25. package/remote-fast/osx-arm64/mindexec-remote-fast.dll +0 -0
  26. package/remote-fast/osx-x64/MacScreenCaptureKitH264.swift +339 -339
  27. package/remote-fast/osx-x64/MacSystemAudioCapture.swift +214 -214
  28. package/remote-fast/osx-x64/UnixRawCaptureHelper.mjs +80 -80
  29. package/remote-fast/osx-x64/livedesk-raw-capture-resampler.mjs +73 -73
  30. package/remote-fast/osx-x64/mindexec-remote-fast.dll +0 -0
  31. package/remote-fast/win-x64/mindexec-remote-fast.dll +0 -0
  32. package/remote-hub.js +3698 -3698
  33. package/scripts/auth-session-smoke.mjs +262 -262
  34. package/scripts/board-render-ownership-smoke.mjs +85 -85
  35. package/scripts/codex-model-catalog-smoke.mjs +150 -150
  36. package/scripts/codex-runtime-home-smoke.mjs +58 -58
  37. package/scripts/codex-sdk-image-live-smoke.mjs +43 -43
  38. package/scripts/codex-sdk-image-runtime-smoke.mjs +122 -122
  39. package/scripts/codex-sdk-runtime-smoke.mjs +89 -89
  40. package/scripts/desktop-update-publisher-smoke.mjs +89 -89
  41. package/scripts/desktop-update-worker-smoke.mjs +72 -72
  42. package/scripts/desktop-workspace-state-smoke.mjs +81 -81
  43. package/scripts/drive-installed-update-smoke.mjs +67 -67
  44. package/scripts/npm-fresh-install-smoke.mjs +216 -216
  45. package/scripts/publish-mindexec-desktop-updates.mjs +224 -224
  46. package/scripts/remote-agent-managed-smoke.mjs +318 -318
  47. package/scripts/remote-agent-package-smoke.mjs +64 -64
  48. package/scripts/remote-agent-ws-smoke.mjs +269 -269
  49. package/scripts/remote-fast-live-rate-smoke.mjs +343 -343
  50. package/scripts/remote-fast-mdm-browser-smoke.mjs +453 -453
  51. package/scripts/remote-fleet-render-smoke.mjs +1350 -1350
  52. package/scripts/remote-frame-ws-smoke.mjs +234 -234
  53. package/scripts/remote-http-smoke.mjs +592 -592
  54. package/scripts/remote-hub-identity-smoke.mjs +146 -146
  55. package/scripts/remote-hub-scale-smoke.mjs +124 -124
  56. package/scripts/remote-hub-smoke.mjs +699 -699
  57. package/scripts/remote-input-ws-smoke.mjs +263 -263
  58. package/scripts/remote-registry-follower-smoke.mjs +815 -815
  59. package/scripts/setup-tree-sitter-grammars.mjs +59 -59
  60. package/server.js +7510 -7510
  61. package/start-bridge.bat +32 -32
  62. package/start-bridge.sh +81 -81
  63. package/tree-sitter-grammars/README.md +18 -0
  64. package/tree-sitter-grammars/tree-sitter-c_sharp.wasm +0 -0
  65. package/tree-sitter-grammars/tree-sitter-go.wasm +0 -0
  66. package/tree-sitter-grammars/tree-sitter-java.wasm +0 -0
  67. package/tree-sitter-grammars/tree-sitter-javascript.wasm +0 -0
  68. package/tree-sitter-grammars/tree-sitter-python.wasm +0 -0
  69. package/tree-sitter-grammars/tree-sitter-rust.wasm +0 -0
  70. package/tree-sitter-grammars/tree-sitter-tsx.wasm +0 -0
  71. package/tree-sitter-grammars/tree-sitter-typescript.wasm +0 -0
  72. package/wwwroot/_content/MindExecution.Plugins.Admin/css/admin-dashboard.css +546 -546
  73. package/wwwroot/_content/MindExecution.Plugins.Directory/background.png +0 -0
  74. package/wwwroot/_content/MindExecution.Plugins.YouTube/css/youtube-search.css +251 -251
  75. package/wwwroot/_content/MindExecution.Shared/css/mind-map-overrides.css +3789 -3789
  76. package/wwwroot/_content/MindExecution.Shared/fonts/NotoSansKR-Bold.ttf +0 -0
  77. package/wwwroot/_content/MindExecution.Shared/fonts/NotoSansKR-Regular.ttf +0 -0
  78. package/wwwroot/_content/MindExecution.Shared/js/agent-visualization.js +27 -27
  79. package/wwwroot/_content/MindExecution.Shared/js/background-themes.js +1449 -1449
  80. package/wwwroot/_content/MindExecution.Shared/js/code-master.js +8316 -8316
  81. package/wwwroot/_content/MindExecution.Shared/js/file-system-helper.js +338 -338
  82. package/wwwroot/_content/MindExecution.Shared/js/marked.min.js +69 -69
  83. package/wwwroot/_content/MindExecution.Shared/js/mind-map-animated-image-preview.js +270 -270
  84. package/wwwroot/_content/MindExecution.Shared/js/mind-map-automation-edge-motion.js +170 -170
  85. package/wwwroot/_content/MindExecution.Shared/js/mind-map-board-render-ownership.js +81 -81
  86. package/wwwroot/_content/MindExecution.Shared/js/mind-map-core.js +10506 -10506
  87. package/wwwroot/_content/MindExecution.Shared/js/mind-map-core.js.backup +1059 -0
  88. package/wwwroot/_content/MindExecution.Shared/js/mind-map-css3d-hotpath.js +902 -902
  89. package/wwwroot/_content/MindExecution.Shared/js/mind-map-css3d-manager.js +24637 -24637
  90. package/wwwroot/_content/MindExecution.Shared/js/mind-map-dev-guards.js +325 -325
  91. package/wwwroot/_content/MindExecution.Shared/js/mind-map-dnd.js +1491 -1491
  92. package/wwwroot/_content/MindExecution.Shared/js/mind-map-dnd.js.bak +434 -0
  93. package/wwwroot/_content/MindExecution.Shared/js/mind-map-glow-shader.js +70 -70
  94. package/wwwroot/_content/MindExecution.Shared/js/mind-map-image-policy.js +218 -218
  95. package/wwwroot/_content/MindExecution.Shared/js/mind-map-interactions.js +7078 -7078
  96. package/wwwroot/_content/MindExecution.Shared/js/mind-map-lod-plan-worker.js +160 -160
  97. package/wwwroot/_content/MindExecution.Shared/js/mind-map-lod-renderer.js +9958 -9958
  98. package/wwwroot/_content/MindExecution.Shared/js/mind-map-lod-video-placeholder.js +107 -107
  99. package/wwwroot/_content/MindExecution.Shared/js/mind-map-logic-workers.js +1004 -1004
  100. package/wwwroot/_content/MindExecution.Shared/js/mind-map-menu-manager.js +1351 -1351
  101. package/wwwroot/_content/MindExecution.Shared/js/mind-map-multi-select.js +865 -865
  102. package/wwwroot/_content/MindExecution.Shared/js/mind-map-node-search-worker.js +554 -554
  103. package/wwwroot/_content/MindExecution.Shared/js/mind-map-nodes.js +4744 -4744
  104. package/wwwroot/_content/MindExecution.Shared/js/mind-map-normal-boundary-optimizer.js +624 -624
  105. package/wwwroot/_content/MindExecution.Shared/js/mind-map-object-manager.js +241 -241
  106. package/wwwroot/_content/MindExecution.Shared/js/mind-map-object-manager.js.backup +372 -0
  107. package/wwwroot/_content/MindExecution.Shared/js/mind-map-pipeline.js +2290 -2290
  108. package/wwwroot/_content/MindExecution.Shared/js/mind-map-remote-codecs.js +202 -202
  109. package/wwwroot/_content/MindExecution.Shared/js/mind-map-render-plan.js +1971 -1971
  110. package/wwwroot/_content/MindExecution.Shared/js/mind-map-text-lod-system.js +93 -93
  111. package/wwwroot/_content/MindExecution.Shared/js/mind-map-texture-factory.js +2391 -2391
  112. package/wwwroot/_content/MindExecution.Shared/js/mind-map-texture-factory.js.backup +1258 -0
  113. package/wwwroot/_content/MindExecution.Shared/js/mind-map-video-playback-controls.js +95 -95
  114. package/wwwroot/_content/MindExecution.Shared/js/mind-map-visibility-worker.js +895 -895
  115. package/wwwroot/_content/MindExecution.Shared/js/mindmap-toolbar.js +636 -636
  116. package/wwwroot/_content/MindExecution.Shared/js/native-drop-handler.js +45 -45
  117. package/wwwroot/_content/MindExecution.Shared/js/plan-master.js +117 -117
  118. package/wwwroot/_content/MindExecution.Shared/js/renderers/CSS3DRenderer.js +114 -114
  119. package/wwwroot/_content/MindExecution.Shared/js/texture-worker-manager.js +10 -10
  120. package/wwwroot/_content/MindExecution.Shared/js/three.min.js +6 -6
  121. package/wwwroot/_content/MindExecution.Shared/js/token-manager.js +7 -7
  122. package/wwwroot/_content/MindExecution.Shared/js/troika-bundle.js +6 -6
  123. package/wwwroot/_content/MindExecution.Shared/js/troika-bundle.js.map +2 -2
  124. package/wwwroot/_content/MindExecution.Shared/lib/font-awesome/css/all.min.css +8 -8
  125. package/wwwroot/_content/MindExecution.Shared/models/vocab.txt +30522 -30522
  126. package/wwwroot/_framework/{Google.Protobuf.33g2gb5is0.dll → Google.Protobuf.9h59ukbel7.dll} +0 -0
  127. package/wwwroot/_framework/{MindExecution.Core.z100xo4mg0.dll → MindExecution.Core.xxsj2s456b.dll} +0 -0
  128. package/wwwroot/_framework/{MindExecution.Kernel.i9cldrx8yc.dll → MindExecution.Kernel.5jofnc0wrd.dll} +0 -0
  129. package/wwwroot/_framework/{MindExecution.Plugins.Admin.48lzqddb0a.dll → MindExecution.Plugins.Admin.t7m4jnqjg3.dll} +0 -0
  130. package/wwwroot/_framework/{MindExecution.Plugins.Business.7m8u1q142p.dll → MindExecution.Plugins.Business.6yjlhhavap.dll} +0 -0
  131. package/wwwroot/_framework/{MindExecution.Plugins.Concept.cl5wmr53od.dll → MindExecution.Plugins.Concept.iikqq5zxu0.dll} +0 -0
  132. package/wwwroot/_framework/{MindExecution.Plugins.Directory.slipi39041.dll → MindExecution.Plugins.Directory.c5ribyne4m.dll} +0 -0
  133. package/wwwroot/_framework/{MindExecution.Plugins.PlanMaster.qfge05l671.dll → MindExecution.Plugins.PlanMaster.365bbuifr9.dll} +0 -0
  134. package/wwwroot/_framework/{MindExecution.Plugins.YouTube.tn7v29ut77.dll → MindExecution.Plugins.YouTube.ax415cilpk.dll} +0 -0
  135. package/wwwroot/_framework/MindExecution.Shared.21e2nvf86u.dll +0 -0
  136. package/wwwroot/_framework/{MindExecution.Web.rwawrxxk38.dll → MindExecution.Web.ppgm8rey59.dll} +0 -0
  137. package/wwwroot/_framework/{System.Collections.23yxgetbju.dll → System.Collections.zyvbaq6mpd.dll} +0 -0
  138. package/wwwroot/_framework/blazor.boot.json +25 -25
  139. package/wwwroot/_headers +40 -40
  140. package/wwwroot/_redirects +1 -1
  141. package/wwwroot/index.html +772 -772
  142. package/wwwroot/js/marketing-tool.js +180 -180
  143. package/wwwroot/manifest.webmanifest +23 -23
  144. package/wwwroot/service-worker-assets.js +109 -81
  145. package/wwwroot/service-worker.js +33 -33
  146. package/wwwroot/_framework/MindExecution.Shared.rjqlf0umjn.dll +0 -0
@@ -1,251 +1,251 @@
1
- .yt-page {
2
- width: min(1240px, calc(100vw - 110px));
3
- margin: 0 auto;
4
- color: #0f172a;
5
- }
6
-
7
- .yt-header {
8
- margin-bottom: 16px;
9
- }
10
-
11
- .yt-header h1 {
12
- font-size: 28px;
13
- font-weight: 800;
14
- margin: 0 0 4px 0;
15
- letter-spacing: -0.02em;
16
- }
17
-
18
- .yt-header p {
19
- margin: 0;
20
- color: #475569;
21
- }
22
-
23
- .yt-search-panel {
24
- background: #ffffff;
25
- border: 1px solid #e2e8f0;
26
- border-radius: 12px;
27
- padding: 14px;
28
- margin-bottom: 14px;
29
- }
30
-
31
- .yt-query-row {
32
- display: grid;
33
- grid-template-columns: 1fr auto;
34
- gap: 10px;
35
- margin-bottom: 12px;
36
- }
37
-
38
- .yt-query-input,
39
- .yt-filter-grid input,
40
- .yt-filter-grid select {
41
- border: 1px solid #cbd5e1;
42
- border-radius: 8px;
43
- background: #fff;
44
- color: #0f172a;
45
- padding: 8px 10px;
46
- font-size: 14px;
47
- }
48
-
49
- .yt-filter-grid {
50
- display: grid;
51
- grid-template-columns: repeat(4, minmax(0, 1fr));
52
- gap: 8px;
53
- }
54
-
55
- .yt-filter-grid label {
56
- display: flex;
57
- flex-direction: column;
58
- gap: 4px;
59
- font-size: 12px;
60
- color: #475569;
61
- font-weight: 600;
62
- }
63
-
64
- .yt-primary-btn,
65
- .yt-secondary-btn,
66
- .yt-link-btn {
67
- border-radius: 8px;
68
- padding: 8px 12px;
69
- font-size: 13px;
70
- font-weight: 700;
71
- border: 1px solid transparent;
72
- }
73
-
74
- .yt-primary-btn {
75
- background: #dc2626;
76
- color: #fff;
77
- }
78
-
79
- .yt-primary-btn:disabled,
80
- .yt-secondary-btn:disabled {
81
- opacity: 0.45;
82
- cursor: not-allowed;
83
- }
84
-
85
- .yt-secondary-btn {
86
- background: #f8fafc;
87
- border-color: #cbd5e1;
88
- color: #0f172a;
89
- }
90
-
91
- .yt-link-btn {
92
- background: #fff;
93
- border-color: #e2e8f0;
94
- color: #2563eb;
95
- }
96
-
97
- .yt-banner {
98
- border-radius: 10px;
99
- padding: 10px 12px;
100
- margin-bottom: 10px;
101
- font-size: 13px;
102
- font-weight: 600;
103
- }
104
-
105
- .yt-banner-error {
106
- background: #fef2f2;
107
- color: #b91c1c;
108
- border: 1px solid #fecaca;
109
- }
110
-
111
- .yt-banner-info {
112
- background: #eff6ff;
113
- color: #1d4ed8;
114
- border: 1px solid #bfdbfe;
115
- }
116
-
117
- .yt-actions-row {
118
- display: flex;
119
- align-items: center;
120
- justify-content: space-between;
121
- gap: 10px;
122
- margin-bottom: 10px;
123
- }
124
-
125
- .yt-selection-summary {
126
- display: flex;
127
- align-items: center;
128
- gap: 8px;
129
- font-size: 13px;
130
- font-weight: 700;
131
- color: #334155;
132
- }
133
-
134
- .yt-badge {
135
- background: #dcfce7;
136
- color: #166534;
137
- border: 1px solid #86efac;
138
- border-radius: 999px;
139
- font-size: 11px;
140
- line-height: 1;
141
- padding: 4px 7px;
142
- text-transform: uppercase;
143
- }
144
-
145
- .yt-actions {
146
- display: flex;
147
- align-items: center;
148
- gap: 8px;
149
- flex-wrap: wrap;
150
- justify-content: flex-end;
151
- }
152
-
153
- .yt-results-grid {
154
- display: grid;
155
- grid-template-columns: repeat(3, minmax(0, 1fr));
156
- gap: 10px;
157
- }
158
-
159
- .yt-card {
160
- background: #fff;
161
- border: 1px solid #e2e8f0;
162
- border-radius: 10px;
163
- padding: 10px;
164
- display: flex;
165
- flex-direction: column;
166
- gap: 8px;
167
- }
168
-
169
- .yt-card-top {
170
- display: flex;
171
- align-items: center;
172
- justify-content: space-between;
173
- gap: 8px;
174
- }
175
-
176
- .yt-check {
177
- display: inline-flex;
178
- align-items: center;
179
- gap: 6px;
180
- font-size: 12px;
181
- color: #334155;
182
- font-weight: 700;
183
- }
184
-
185
- .yt-thumb {
186
- width: 100%;
187
- aspect-ratio: 16 / 9;
188
- object-fit: cover;
189
- border-radius: 8px;
190
- border: 1px solid #e2e8f0;
191
- background: #f8fafc;
192
- }
193
-
194
- .yt-title {
195
- margin: 0;
196
- font-size: 14px;
197
- font-weight: 700;
198
- color: #0f172a;
199
- line-height: 1.35;
200
- display: -webkit-box;
201
- -webkit-line-clamp: 2;
202
- -webkit-box-orient: vertical;
203
- overflow: hidden;
204
- min-height: 38px;
205
- }
206
-
207
- .yt-meta {
208
- margin: 0;
209
- display: flex;
210
- justify-content: space-between;
211
- gap: 6px;
212
- font-size: 12px;
213
- color: #475569;
214
- }
215
-
216
- .yt-pagination {
217
- margin-top: 12px;
218
- display: flex;
219
- justify-content: center;
220
- gap: 8px;
221
- }
222
-
223
- @media (max-width: 1100px) {
224
- .yt-filter-grid {
225
- grid-template-columns: repeat(2, minmax(0, 1fr));
226
- }
227
-
228
- .yt-results-grid {
229
- grid-template-columns: repeat(2, minmax(0, 1fr));
230
- }
231
- }
232
-
233
- @media (max-width: 720px) {
234
- .yt-page {
235
- width: calc(100vw - 60px);
236
- }
237
-
238
- .yt-query-row {
239
- grid-template-columns: 1fr;
240
- }
241
-
242
- .yt-filter-grid,
243
- .yt-results-grid {
244
- grid-template-columns: 1fr;
245
- }
246
-
247
- .yt-actions-row {
248
- flex-direction: column;
249
- align-items: stretch;
250
- }
251
- }
1
+ .yt-page {
2
+ width: min(1240px, calc(100vw - 110px));
3
+ margin: 0 auto;
4
+ color: #0f172a;
5
+ }
6
+
7
+ .yt-header {
8
+ margin-bottom: 16px;
9
+ }
10
+
11
+ .yt-header h1 {
12
+ font-size: 28px;
13
+ font-weight: 800;
14
+ margin: 0 0 4px 0;
15
+ letter-spacing: -0.02em;
16
+ }
17
+
18
+ .yt-header p {
19
+ margin: 0;
20
+ color: #475569;
21
+ }
22
+
23
+ .yt-search-panel {
24
+ background: #ffffff;
25
+ border: 1px solid #e2e8f0;
26
+ border-radius: 12px;
27
+ padding: 14px;
28
+ margin-bottom: 14px;
29
+ }
30
+
31
+ .yt-query-row {
32
+ display: grid;
33
+ grid-template-columns: 1fr auto;
34
+ gap: 10px;
35
+ margin-bottom: 12px;
36
+ }
37
+
38
+ .yt-query-input,
39
+ .yt-filter-grid input,
40
+ .yt-filter-grid select {
41
+ border: 1px solid #cbd5e1;
42
+ border-radius: 8px;
43
+ background: #fff;
44
+ color: #0f172a;
45
+ padding: 8px 10px;
46
+ font-size: 14px;
47
+ }
48
+
49
+ .yt-filter-grid {
50
+ display: grid;
51
+ grid-template-columns: repeat(4, minmax(0, 1fr));
52
+ gap: 8px;
53
+ }
54
+
55
+ .yt-filter-grid label {
56
+ display: flex;
57
+ flex-direction: column;
58
+ gap: 4px;
59
+ font-size: 12px;
60
+ color: #475569;
61
+ font-weight: 600;
62
+ }
63
+
64
+ .yt-primary-btn,
65
+ .yt-secondary-btn,
66
+ .yt-link-btn {
67
+ border-radius: 8px;
68
+ padding: 8px 12px;
69
+ font-size: 13px;
70
+ font-weight: 700;
71
+ border: 1px solid transparent;
72
+ }
73
+
74
+ .yt-primary-btn {
75
+ background: #dc2626;
76
+ color: #fff;
77
+ }
78
+
79
+ .yt-primary-btn:disabled,
80
+ .yt-secondary-btn:disabled {
81
+ opacity: 0.45;
82
+ cursor: not-allowed;
83
+ }
84
+
85
+ .yt-secondary-btn {
86
+ background: #f8fafc;
87
+ border-color: #cbd5e1;
88
+ color: #0f172a;
89
+ }
90
+
91
+ .yt-link-btn {
92
+ background: #fff;
93
+ border-color: #e2e8f0;
94
+ color: #2563eb;
95
+ }
96
+
97
+ .yt-banner {
98
+ border-radius: 10px;
99
+ padding: 10px 12px;
100
+ margin-bottom: 10px;
101
+ font-size: 13px;
102
+ font-weight: 600;
103
+ }
104
+
105
+ .yt-banner-error {
106
+ background: #fef2f2;
107
+ color: #b91c1c;
108
+ border: 1px solid #fecaca;
109
+ }
110
+
111
+ .yt-banner-info {
112
+ background: #eff6ff;
113
+ color: #1d4ed8;
114
+ border: 1px solid #bfdbfe;
115
+ }
116
+
117
+ .yt-actions-row {
118
+ display: flex;
119
+ align-items: center;
120
+ justify-content: space-between;
121
+ gap: 10px;
122
+ margin-bottom: 10px;
123
+ }
124
+
125
+ .yt-selection-summary {
126
+ display: flex;
127
+ align-items: center;
128
+ gap: 8px;
129
+ font-size: 13px;
130
+ font-weight: 700;
131
+ color: #334155;
132
+ }
133
+
134
+ .yt-badge {
135
+ background: #dcfce7;
136
+ color: #166534;
137
+ border: 1px solid #86efac;
138
+ border-radius: 999px;
139
+ font-size: 11px;
140
+ line-height: 1;
141
+ padding: 4px 7px;
142
+ text-transform: uppercase;
143
+ }
144
+
145
+ .yt-actions {
146
+ display: flex;
147
+ align-items: center;
148
+ gap: 8px;
149
+ flex-wrap: wrap;
150
+ justify-content: flex-end;
151
+ }
152
+
153
+ .yt-results-grid {
154
+ display: grid;
155
+ grid-template-columns: repeat(3, minmax(0, 1fr));
156
+ gap: 10px;
157
+ }
158
+
159
+ .yt-card {
160
+ background: #fff;
161
+ border: 1px solid #e2e8f0;
162
+ border-radius: 10px;
163
+ padding: 10px;
164
+ display: flex;
165
+ flex-direction: column;
166
+ gap: 8px;
167
+ }
168
+
169
+ .yt-card-top {
170
+ display: flex;
171
+ align-items: center;
172
+ justify-content: space-between;
173
+ gap: 8px;
174
+ }
175
+
176
+ .yt-check {
177
+ display: inline-flex;
178
+ align-items: center;
179
+ gap: 6px;
180
+ font-size: 12px;
181
+ color: #334155;
182
+ font-weight: 700;
183
+ }
184
+
185
+ .yt-thumb {
186
+ width: 100%;
187
+ aspect-ratio: 16 / 9;
188
+ object-fit: cover;
189
+ border-radius: 8px;
190
+ border: 1px solid #e2e8f0;
191
+ background: #f8fafc;
192
+ }
193
+
194
+ .yt-title {
195
+ margin: 0;
196
+ font-size: 14px;
197
+ font-weight: 700;
198
+ color: #0f172a;
199
+ line-height: 1.35;
200
+ display: -webkit-box;
201
+ -webkit-line-clamp: 2;
202
+ -webkit-box-orient: vertical;
203
+ overflow: hidden;
204
+ min-height: 38px;
205
+ }
206
+
207
+ .yt-meta {
208
+ margin: 0;
209
+ display: flex;
210
+ justify-content: space-between;
211
+ gap: 6px;
212
+ font-size: 12px;
213
+ color: #475569;
214
+ }
215
+
216
+ .yt-pagination {
217
+ margin-top: 12px;
218
+ display: flex;
219
+ justify-content: center;
220
+ gap: 8px;
221
+ }
222
+
223
+ @media (max-width: 1100px) {
224
+ .yt-filter-grid {
225
+ grid-template-columns: repeat(2, minmax(0, 1fr));
226
+ }
227
+
228
+ .yt-results-grid {
229
+ grid-template-columns: repeat(2, minmax(0, 1fr));
230
+ }
231
+ }
232
+
233
+ @media (max-width: 720px) {
234
+ .yt-page {
235
+ width: calc(100vw - 60px);
236
+ }
237
+
238
+ .yt-query-row {
239
+ grid-template-columns: 1fr;
240
+ }
241
+
242
+ .yt-filter-grid,
243
+ .yt-results-grid {
244
+ grid-template-columns: 1fr;
245
+ }
246
+
247
+ .yt-actions-row {
248
+ flex-direction: column;
249
+ align-items: stretch;
250
+ }
251
+ }