ft-scout 9.4.3 → 9.4.4
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/.firebase/hosting.d2Vi.cache +7 -7
- package/README.md +2 -2
- package/artifacts/scout_drone_3d.glb +0 -0
- package/artifacts/scout_drone_3d_render.png +0 -0
- package/bin/src/commands/brief.d.ts.map +1 -1
- package/bin/src/commands/brief.js +31 -1
- package/bin/src/commands/brief.js.map +1 -1
- package/bin/src/commands/plan.d.ts.map +1 -1
- package/bin/src/commands/plan.js +23 -3
- package/bin/src/commands/plan.js.map +1 -1
- package/bin/src/commands/risky.d.ts.map +1 -1
- package/bin/src/commands/risky.js +82 -1
- package/bin/src/commands/risky.js.map +1 -1
- package/bin/src/discovery/messages.js +2 -2
- package/bin/src/discovery/messages.js.map +1 -1
- package/bin/src/engine/computer/computerController.d.ts.map +1 -1
- package/bin/src/engine/computer/computerController.js +5 -0
- package/bin/src/engine/computer/computerController.js.map +1 -1
- package/bin/src/engine/computer/scoutDriver.cs +152 -18
- package/bin/src/engine/computer/scout_driver.exe +0 -0
- package/bin/src/engine/llm.d.ts.map +1 -1
- package/bin/src/engine/llm.js +3 -0
- package/bin/src/engine/llm.js.map +1 -1
- package/bin/src/engine/runtime/agentRuntime.d.ts.map +1 -1
- package/bin/src/engine/runtime/agentRuntime.js +20 -8
- package/bin/src/engine/runtime/agentRuntime.js.map +1 -1
- package/bin/src/engine/verifier.d.ts.map +1 -1
- package/bin/src/engine/verifier.js +31 -12
- package/bin/src/engine/verifier.js.map +1 -1
- package/bin/src/engine/workspace/agentWorkspace.d.ts.map +1 -1
- package/bin/src/engine/workspace/agentWorkspace.js +43 -0
- package/bin/src/engine/workspace/agentWorkspace.js.map +1 -1
- package/bin/src/index.js +21 -10
- package/bin/src/index.js.map +1 -1
- package/bin/src/mcp/client.js +1 -1
- package/bin/src/utils/branding.js +1 -1
- package/bin/src/utils/payment.d.ts.map +1 -1
- package/bin/src/utils/payment.js +38 -0
- package/bin/src/utils/payment.js.map +1 -1
- package/bin/src/utils/qrBridge.js +1 -1
- package/package.json +1 -1
- package/scripts/build_3d_drone.js +130 -0
- package/scripts/export_and_capture.js +48 -0
- package/scripts/render_and_export_drone.js +94 -0
- package/scripts/render_front_view.js +76 -0
- package/web/app.js +4 -4
- package/web/styles.css +338 -25
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { getMCPManager } from '../bin/src/mcp/index.js';
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import path from 'path';
|
|
4
|
+
|
|
5
|
+
async function main() {
|
|
6
|
+
const mgr = getMCPManager();
|
|
7
|
+
|
|
8
|
+
const artifactsDir = path.resolve('artifacts');
|
|
9
|
+
const glbPath = path.resolve(artifactsDir, 'scout_drone_3d.glb').replace(/\\/g, '/');
|
|
10
|
+
const renderPath = path.resolve(artifactsDir, 'scout_drone_3d_render.png').replace(/\\/g, '/');
|
|
11
|
+
|
|
12
|
+
const pyCode = `
|
|
13
|
+
import bpy
|
|
14
|
+
import math
|
|
15
|
+
|
|
16
|
+
# Position camera in front-three-quarter view (looking directly at the glowing front cockpit eye)
|
|
17
|
+
cam = bpy.data.objects.get('Camera')
|
|
18
|
+
if not cam:
|
|
19
|
+
bpy.ops.object.camera_add(location=(3.6, 3.8, 2.4))
|
|
20
|
+
cam = bpy.context.active_object
|
|
21
|
+
else:
|
|
22
|
+
cam.location = (3.6, 3.8, 2.4)
|
|
23
|
+
|
|
24
|
+
cam.rotation_euler = (math.radians(64), 0, math.radians(138))
|
|
25
|
+
bpy.context.scene.camera = cam
|
|
26
|
+
|
|
27
|
+
# Adjust lights for cinematic drama
|
|
28
|
+
# Front Key light on the glowing eye and gold ring
|
|
29
|
+
light_key = bpy.data.objects.get('Light')
|
|
30
|
+
if light_key:
|
|
31
|
+
light_key.location = (2.5, 4.0, 3.5)
|
|
32
|
+
light_key.data.energy = 900
|
|
33
|
+
light_key.data.color = (1.0, 0.92, 0.8)
|
|
34
|
+
|
|
35
|
+
# Cool cyan rim fill on the opposite flank
|
|
36
|
+
light_fill = bpy.data.objects.get('Light_Fill')
|
|
37
|
+
if light_fill:
|
|
38
|
+
light_fill.location = (-4.0, 2.0, 2.8)
|
|
39
|
+
light_fill.data.energy = 650
|
|
40
|
+
light_fill.data.color = (0.0, 0.85, 1.0)
|
|
41
|
+
|
|
42
|
+
# Back rim light for separation
|
|
43
|
+
light_under = bpy.data.objects.get('Light_Underglow')
|
|
44
|
+
if light_under:
|
|
45
|
+
light_under.location = (-1.0, -3.5, 3.0)
|
|
46
|
+
light_under.data.energy = 700
|
|
47
|
+
light_under.data.color = (0.9, 0.4, 1.0)
|
|
48
|
+
|
|
49
|
+
# Export updated GLB with all materials
|
|
50
|
+
bpy.ops.export_scene.gltf(
|
|
51
|
+
filepath='${glbPath}',
|
|
52
|
+
export_format='GLB',
|
|
53
|
+
use_selection=False,
|
|
54
|
+
export_apply=True
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
# Render cinematic 1280x720 still
|
|
58
|
+
bpy.context.scene.render.resolution_x = 1280
|
|
59
|
+
bpy.context.scene.render.resolution_y = 720
|
|
60
|
+
bpy.context.scene.render.image_settings.file_format = 'PNG'
|
|
61
|
+
bpy.context.scene.render.filepath = '${renderPath}'
|
|
62
|
+
bpy.ops.render.render(write_still=True)
|
|
63
|
+
print('FRONT_CINEMATIC_RENDER_COMPLETE')
|
|
64
|
+
`;
|
|
65
|
+
|
|
66
|
+
console.log('Rendering front cinematic view in Blender...');
|
|
67
|
+
const result = await mgr.executeTool('execute_blender_code', {
|
|
68
|
+
code: pyCode,
|
|
69
|
+
user_prompt: 'Render front cinematic camera angle of 3D Scout Drone'
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
console.log('Result Status:', result.status);
|
|
73
|
+
console.log('Output Summary:', result.outputSummary);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
main().catch(console.error);
|
package/web/app.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* ==========================================================================
|
|
2
|
-
FrontTerrain Scout Multi-Page Application Engine v9.4.
|
|
2
|
+
FrontTerrain Scout Multi-Page Application Engine v9.4.4
|
|
3
3
|
========================================================================== */
|
|
4
4
|
|
|
5
5
|
const FIREBASE_CONFIG = {
|
|
@@ -1103,7 +1103,7 @@ function initTerminalSimulator() {
|
|
|
1103
1103
|
`;
|
|
1104
1104
|
} else if (lower.includes('status')) {
|
|
1105
1105
|
response.innerHTML = `
|
|
1106
|
-
<span class="term-green">✔ Scout CLI Engine: v9.4.
|
|
1106
|
+
<span class="term-green">✔ Scout CLI Engine: v9.4.4 Online</span><br>
|
|
1107
1107
|
↳ User: <strong>${escapeHtml(state.user ? state.user.name : 'Guest Session')}</strong><br>
|
|
1108
1108
|
↳ Active Subscription: <strong>${escapeHtml(TIER_DETAILS[state.currentTier].name)}</strong><br>
|
|
1109
1109
|
↳ Credit Quota: <strong>${state.byokEnabled ? 'BYOK Mode (Unlimited)' : `${state.creditsUsed} / ${state.creditsTotal} Credits Used`}</strong><br>
|
|
@@ -3869,7 +3869,7 @@ function renderMcpServersList() {
|
|
|
3869
3869
|
}
|
|
3870
3870
|
|
|
3871
3871
|
const h = mcpState.health[server.id] || server.health || {};
|
|
3872
|
-
const latencyText = h.latencyMs !== undefined ? `${h.latencyMs}ms` : '
|
|
3872
|
+
const latencyText = h.latencyMs !== undefined ? `${h.latencyMs}ms` : '--';
|
|
3873
3873
|
const toolsCount = server.tools ? server.tools.length : 0;
|
|
3874
3874
|
const activeToolsCount = server.tools ? server.tools.filter(t => t.enabled !== false).length : 0;
|
|
3875
3875
|
const isHttp = server.transport === 'http';
|
|
@@ -4183,7 +4183,7 @@ function openInspectMcpModal(serverId) {
|
|
|
4183
4183
|
const subtitleEl = getEl('inspect-mcp-subtitle');
|
|
4184
4184
|
const contentEl = getEl('inspect-mcp-content');
|
|
4185
4185
|
|
|
4186
|
-
if (titleEl) titleEl.innerText = `${server.name}
|
|
4186
|
+
if (titleEl) titleEl.innerText = `${server.name} - Tools & Capabilities`;
|
|
4187
4187
|
if (subtitleEl) subtitleEl.innerText = `${server.transport.toUpperCase()} Transport • ${server.tools.length} Tools Available`;
|
|
4188
4188
|
|
|
4189
4189
|
if (contentEl) {
|
package/web/styles.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* ==========================================================================
|
|
2
|
-
FrontTerrain Scout Design System & Visual Engine v9.4.
|
|
2
|
+
FrontTerrain Scout Design System & Visual Engine v9.4.4
|
|
3
3
|
Inspired by HappyRobot, Linear.app & Vercel aesthetics
|
|
4
4
|
========================================================================== */
|
|
5
5
|
|
|
@@ -225,19 +225,134 @@ body {
|
|
|
225
225
|
min-height: 100vh;
|
|
226
226
|
}
|
|
227
227
|
|
|
228
|
-
/*
|
|
228
|
+
/* ==========================================================================
|
|
229
|
+
Animated Headings & Typography Engine
|
|
230
|
+
========================================================================== */
|
|
231
|
+
|
|
232
|
+
@keyframes headingShimmerFlow {
|
|
233
|
+
0% {
|
|
234
|
+
background-position: 0% 50%;
|
|
235
|
+
}
|
|
236
|
+
50% {
|
|
237
|
+
background-position: 100% 50%;
|
|
238
|
+
}
|
|
239
|
+
100% {
|
|
240
|
+
background-position: 0% 50%;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
@keyframes headingPulseAura {
|
|
245
|
+
0%, 100% {
|
|
246
|
+
filter: drop-shadow(0 0 12px rgba(225, 91, 55, 0.25)) drop-shadow(0 0 24px rgba(56, 189, 248, 0.15));
|
|
247
|
+
}
|
|
248
|
+
50% {
|
|
249
|
+
filter: drop-shadow(0 0 22px rgba(225, 91, 55, 0.55)) drop-shadow(0 0 40px rgba(56, 189, 248, 0.35));
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
@keyframes headingFloatSubtle {
|
|
254
|
+
0%, 100% {
|
|
255
|
+
transform: translateY(0);
|
|
256
|
+
}
|
|
257
|
+
50% {
|
|
258
|
+
transform: translateY(-2.5px);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
@keyframes textBeaconPulse {
|
|
263
|
+
0%, 100% {
|
|
264
|
+
opacity: 1;
|
|
265
|
+
transform: scale(1);
|
|
266
|
+
box-shadow: 0 0 0 0 rgba(225, 91, 55, 0.7);
|
|
267
|
+
}
|
|
268
|
+
50% {
|
|
269
|
+
opacity: 0.8;
|
|
270
|
+
transform: scale(1.15);
|
|
271
|
+
box-shadow: 0 0 0 6px rgba(225, 91, 55, 0);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
@keyframes borderGradientRotate {
|
|
276
|
+
0% {
|
|
277
|
+
background-position: 0% 50%;
|
|
278
|
+
}
|
|
279
|
+
50% {
|
|
280
|
+
background-position: 100% 50%;
|
|
281
|
+
}
|
|
282
|
+
100% {
|
|
283
|
+
background-position: 0% 50%;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
/* Base Headings */
|
|
229
288
|
h1, h2, h3, h4, h5, h6 {
|
|
230
289
|
font-family: var(--font-sans);
|
|
231
290
|
color: var(--text-primary);
|
|
232
291
|
font-weight: 700;
|
|
233
292
|
letter-spacing: -0.025em;
|
|
293
|
+
position: relative;
|
|
294
|
+
transition: transform var(--transition-fast), filter var(--transition-fast);
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
/* Primary Animated Headings */
|
|
298
|
+
.animated-gradient-heading,
|
|
299
|
+
.scout-hero-title,
|
|
300
|
+
.hero-title,
|
|
301
|
+
.arcade-title {
|
|
302
|
+
background: linear-gradient(135deg, #ffffff 0%, #ff8a65 25%, #38bdf8 50%, #ffffff 75%, #f06843 100%);
|
|
303
|
+
background-size: 300% 300%;
|
|
304
|
+
-webkit-background-clip: text;
|
|
305
|
+
background-clip: text;
|
|
306
|
+
-webkit-text-fill-color: transparent;
|
|
307
|
+
animation: headingShimmerFlow 6s ease-in-out infinite, headingFloatSubtle 5s ease-in-out infinite;
|
|
308
|
+
display: inline-block;
|
|
309
|
+
will-change: background-position, transform;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
.animated-gradient-heading:hover,
|
|
313
|
+
.scout-hero-title:hover {
|
|
314
|
+
animation: headingShimmerFlow 3s ease-in-out infinite, headingFloatSubtle 3s ease-in-out infinite;
|
|
315
|
+
filter: drop-shadow(0 0 20px rgba(56, 189, 248, 0.4));
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
.shimmer-text,
|
|
319
|
+
.scout-hero-title .shimmer-text {
|
|
320
|
+
background: linear-gradient(90deg, #38bdf8 0%, #ff7043 35%, #00e5ff 70%, #ff8a65 100%);
|
|
321
|
+
background-size: 250% 250%;
|
|
322
|
+
-webkit-background-clip: text;
|
|
323
|
+
background-clip: text;
|
|
324
|
+
-webkit-text-fill-color: transparent;
|
|
325
|
+
animation: headingShimmerFlow 4s ease-in-out infinite;
|
|
326
|
+
font-weight: 800;
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
.plan-name {
|
|
330
|
+
background: linear-gradient(120deg, #ffffff 0%, #fde047 30%, #38bdf8 70%, #ffffff 100%);
|
|
331
|
+
background-size: 250% 250%;
|
|
332
|
+
-webkit-background-clip: text;
|
|
333
|
+
background-clip: text;
|
|
334
|
+
-webkit-text-fill-color: transparent;
|
|
335
|
+
animation: headingShimmerFlow 8s ease-in-out infinite;
|
|
336
|
+
display: inline-block;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
.scout-card-title,
|
|
340
|
+
.card-header h3 {
|
|
341
|
+
background: linear-gradient(135deg, #f8fafc 0%, #cbd5e1 55%, #38bdf8 100%);
|
|
342
|
+
background-size: 200% 200%;
|
|
343
|
+
-webkit-background-clip: text;
|
|
344
|
+
background-clip: text;
|
|
345
|
+
-webkit-text-fill-color: transparent;
|
|
346
|
+
animation: headingShimmerFlow 9s ease-in-out infinite;
|
|
234
347
|
}
|
|
235
348
|
|
|
236
349
|
.text-gradient {
|
|
237
350
|
background: linear-gradient(135deg, #f8fafc 0%, #c7d2fe 40%, #38bdf8 100%);
|
|
351
|
+
background-size: 200% 200%;
|
|
238
352
|
background-clip: text;
|
|
239
353
|
-webkit-background-clip: text;
|
|
240
354
|
-webkit-text-fill-color: transparent;
|
|
355
|
+
animation: headingShimmerFlow 8s ease-in-out infinite;
|
|
241
356
|
}
|
|
242
357
|
|
|
243
358
|
.text-bright { color: var(--text-primary); }
|
|
@@ -294,7 +409,13 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
294
409
|
font-size: 18px;
|
|
295
410
|
font-weight: 800;
|
|
296
411
|
letter-spacing: 0.08em;
|
|
297
|
-
|
|
412
|
+
background: linear-gradient(135deg, #ffffff 0%, #ff8a65 35%, #38bdf8 70%, #ffffff 100%);
|
|
413
|
+
background-size: 250% 250%;
|
|
414
|
+
-webkit-background-clip: text;
|
|
415
|
+
background-clip: text;
|
|
416
|
+
-webkit-text-fill-color: transparent;
|
|
417
|
+
animation: headingShimmerFlow 6s ease-in-out infinite;
|
|
418
|
+
display: inline-block;
|
|
298
419
|
}
|
|
299
420
|
|
|
300
421
|
.brand-subtitle {
|
|
@@ -824,8 +945,24 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
824
945
|
}
|
|
825
946
|
|
|
826
947
|
.popular-tier {
|
|
827
|
-
|
|
828
|
-
|
|
948
|
+
position: relative;
|
|
949
|
+
border-color: rgba(225, 91, 55, 0.5);
|
|
950
|
+
box-shadow: 0 0 40px rgba(225, 91, 55, 0.3), 0 0 70px rgba(56, 189, 248, 0.15);
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
.popular-tier::before {
|
|
954
|
+
content: '';
|
|
955
|
+
position: absolute;
|
|
956
|
+
inset: -1px;
|
|
957
|
+
border-radius: var(--radius-lg);
|
|
958
|
+
padding: 1px;
|
|
959
|
+
background: linear-gradient(135deg, #ff5722, #38bdf8, #818cf8, #ff5722);
|
|
960
|
+
background-size: 300% 300%;
|
|
961
|
+
animation: borderGradientRotate 6s linear infinite;
|
|
962
|
+
mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
|
|
963
|
+
-webkit-mask-composite: xor;
|
|
964
|
+
mask-composite: exclude;
|
|
965
|
+
pointer-events: none;
|
|
829
966
|
}
|
|
830
967
|
|
|
831
968
|
.popular-badge {
|
|
@@ -833,14 +970,16 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
833
970
|
top: -14px;
|
|
834
971
|
left: 50%;
|
|
835
972
|
transform: translateX(-50%);
|
|
836
|
-
background: var(--hr-rust);
|
|
973
|
+
background: linear-gradient(135deg, var(--hr-rust) 0%, #ea580c 100%);
|
|
837
974
|
color: #ffffff;
|
|
838
975
|
font-size: 10px;
|
|
839
976
|
font-weight: 800;
|
|
840
977
|
letter-spacing: 0.12em;
|
|
841
|
-
padding:
|
|
978
|
+
padding: 5px 16px;
|
|
842
979
|
border-radius: var(--radius-pill);
|
|
843
980
|
text-transform: uppercase;
|
|
981
|
+
box-shadow: 0 4px 14px rgba(225, 91, 55, 0.4);
|
|
982
|
+
animation: textBeaconPulse 2s infinite;
|
|
844
983
|
}
|
|
845
984
|
|
|
846
985
|
.pricing-header { text-align: center; margin-bottom: 24px; }
|
|
@@ -1055,7 +1194,7 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
1055
1194
|
.footer-links a:hover { color: var(--hr-rust); }
|
|
1056
1195
|
|
|
1057
1196
|
/* ==========================================================================
|
|
1058
|
-
Visual Perception & Automation Engine v9.4.
|
|
1197
|
+
Visual Perception & Automation Engine v9.4.4
|
|
1059
1198
|
========================================================================== */
|
|
1060
1199
|
.vision-banner {
|
|
1061
1200
|
margin-bottom: 28px;
|
|
@@ -1713,10 +1852,15 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
1713
1852
|
|
|
1714
1853
|
.scout-sidebar-brand-title {
|
|
1715
1854
|
font-size: 14px;
|
|
1716
|
-
font-weight:
|
|
1855
|
+
font-weight: 800;
|
|
1717
1856
|
letter-spacing: 0.08em;
|
|
1718
|
-
|
|
1719
|
-
|
|
1857
|
+
background: linear-gradient(135deg, #ffffff 0%, #ff8a65 35%, #38bdf8 70%, #ffffff 100%);
|
|
1858
|
+
background-size: 250% 250%;
|
|
1859
|
+
-webkit-background-clip: text;
|
|
1860
|
+
background-clip: text;
|
|
1861
|
+
-webkit-text-fill-color: transparent;
|
|
1862
|
+
animation: headingShimmerFlow 6s ease-in-out infinite;
|
|
1863
|
+
display: inline-flex;
|
|
1720
1864
|
align-items: center;
|
|
1721
1865
|
gap: 6px;
|
|
1722
1866
|
}
|
|
@@ -2024,7 +2168,8 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
2024
2168
|
|
|
2025
2169
|
/* Command Center: Hero & Composer */
|
|
2026
2170
|
.scout-hero-header {
|
|
2027
|
-
margin-bottom:
|
|
2171
|
+
margin-bottom: 28px;
|
|
2172
|
+
position: relative;
|
|
2028
2173
|
}
|
|
2029
2174
|
|
|
2030
2175
|
.scout-hero-eyebrow {
|
|
@@ -2032,29 +2177,192 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
2032
2177
|
align-items: center;
|
|
2033
2178
|
gap: 8px;
|
|
2034
2179
|
font-size: 11px;
|
|
2035
|
-
font-weight:
|
|
2180
|
+
font-weight: 700;
|
|
2036
2181
|
text-transform: uppercase;
|
|
2037
2182
|
letter-spacing: 0.12em;
|
|
2038
2183
|
color: var(--scout-rust);
|
|
2039
|
-
background:
|
|
2040
|
-
border: 1px solid rgba(225, 91, 55, 0.
|
|
2041
|
-
padding:
|
|
2184
|
+
background: linear-gradient(90deg, rgba(225, 91, 55, 0.12) 0%, rgba(56, 189, 248, 0.08) 100%);
|
|
2185
|
+
border: 1px solid rgba(225, 91, 55, 0.35);
|
|
2186
|
+
padding: 5px 14px;
|
|
2042
2187
|
border-radius: 9999px;
|
|
2043
|
-
margin-bottom:
|
|
2188
|
+
margin-bottom: 12px;
|
|
2189
|
+
box-shadow: 0 0 16px rgba(225, 91, 55, 0.15);
|
|
2190
|
+
}
|
|
2191
|
+
|
|
2192
|
+
.scout-hero-eyebrow .pulse-beacon {
|
|
2193
|
+
width: 7px;
|
|
2194
|
+
height: 7px;
|
|
2195
|
+
border-radius: 50%;
|
|
2196
|
+
background-color: var(--scout-rust);
|
|
2197
|
+
box-shadow: 0 0 10px var(--scout-rust);
|
|
2198
|
+
animation: textBeaconPulse 1.8s infinite;
|
|
2044
2199
|
}
|
|
2045
2200
|
|
|
2046
2201
|
.scout-hero-title {
|
|
2047
|
-
font-size:
|
|
2048
|
-
font-weight:
|
|
2202
|
+
font-size: clamp(24px, 3.2vw, 36px);
|
|
2203
|
+
font-weight: 800;
|
|
2049
2204
|
letter-spacing: -0.03em;
|
|
2050
|
-
|
|
2051
|
-
margin-bottom:
|
|
2205
|
+
line-height: 1.25;
|
|
2206
|
+
margin-bottom: 8px;
|
|
2052
2207
|
}
|
|
2053
2208
|
|
|
2054
2209
|
.scout-hero-subtitle {
|
|
2055
|
-
font-size:
|
|
2210
|
+
font-size: 14.5px;
|
|
2211
|
+
line-height: 1.6;
|
|
2056
2212
|
color: var(--scout-text-secondary);
|
|
2057
|
-
max-width:
|
|
2213
|
+
max-width: 820px;
|
|
2214
|
+
}
|
|
2215
|
+
|
|
2216
|
+
/* QuickStart Terminal Bar */
|
|
2217
|
+
.scout-quickstart-banner {
|
|
2218
|
+
background: radial-gradient(100% 120% at 50% 0%, rgba(22, 27, 40, 0.85) 0%, rgba(10, 13, 20, 0.95) 100%);
|
|
2219
|
+
border: 1px solid rgba(56, 189, 248, 0.22);
|
|
2220
|
+
border-radius: 12px;
|
|
2221
|
+
padding: 12px 18px;
|
|
2222
|
+
margin-bottom: 24px;
|
|
2223
|
+
display: flex;
|
|
2224
|
+
align-items: center;
|
|
2225
|
+
justify-content: space-between;
|
|
2226
|
+
flex-wrap: wrap;
|
|
2227
|
+
gap: 14px;
|
|
2228
|
+
box-shadow: 0 8px 30px -10px rgba(0, 0, 0, 0.6);
|
|
2229
|
+
position: relative;
|
|
2230
|
+
overflow: hidden;
|
|
2231
|
+
}
|
|
2232
|
+
|
|
2233
|
+
.scout-quickstart-banner::before {
|
|
2234
|
+
content: '';
|
|
2235
|
+
position: absolute;
|
|
2236
|
+
top: 0;
|
|
2237
|
+
left: 0;
|
|
2238
|
+
right: 0;
|
|
2239
|
+
height: 1px;
|
|
2240
|
+
background: linear-gradient(90deg, transparent, rgba(56, 189, 248, 0.6), transparent);
|
|
2241
|
+
}
|
|
2242
|
+
|
|
2243
|
+
.scout-quickstart-left {
|
|
2244
|
+
display: flex;
|
|
2245
|
+
align-items: center;
|
|
2246
|
+
gap: 12px;
|
|
2247
|
+
flex-wrap: wrap;
|
|
2248
|
+
}
|
|
2249
|
+
|
|
2250
|
+
.scout-quickstart-code {
|
|
2251
|
+
font-family: var(--font-mono);
|
|
2252
|
+
font-size: 13px;
|
|
2253
|
+
color: #38bdf8;
|
|
2254
|
+
background: rgba(0, 0, 0, 0.5);
|
|
2255
|
+
padding: 6px 14px;
|
|
2256
|
+
border-radius: 6px;
|
|
2257
|
+
border: 1px solid rgba(56, 189, 248, 0.25);
|
|
2258
|
+
display: inline-flex;
|
|
2259
|
+
align-items: center;
|
|
2260
|
+
gap: 8px;
|
|
2261
|
+
}
|
|
2262
|
+
|
|
2263
|
+
.scout-quickstart-pills {
|
|
2264
|
+
display: flex;
|
|
2265
|
+
align-items: center;
|
|
2266
|
+
gap: 8px;
|
|
2267
|
+
flex-wrap: wrap;
|
|
2268
|
+
}
|
|
2269
|
+
|
|
2270
|
+
.scout-feature-pill {
|
|
2271
|
+
font-size: 11px;
|
|
2272
|
+
font-family: var(--font-mono);
|
|
2273
|
+
padding: 4px 10px;
|
|
2274
|
+
border-radius: 9999px;
|
|
2275
|
+
background: rgba(255, 255, 255, 0.04);
|
|
2276
|
+
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
2277
|
+
color: var(--scout-text-secondary);
|
|
2278
|
+
display: inline-flex;
|
|
2279
|
+
align-items: center;
|
|
2280
|
+
gap: 6px;
|
|
2281
|
+
}
|
|
2282
|
+
|
|
2283
|
+
/* 3 Superpower Value Pillars */
|
|
2284
|
+
.scout-pillars-grid {
|
|
2285
|
+
display: grid;
|
|
2286
|
+
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
|
2287
|
+
gap: 16px;
|
|
2288
|
+
margin-bottom: 28px;
|
|
2289
|
+
}
|
|
2290
|
+
|
|
2291
|
+
.scout-pillar-card {
|
|
2292
|
+
background: radial-gradient(120% 120% at 50% 0%, rgba(20, 24, 36, 0.75) 0%, rgba(13, 16, 24, 0.9) 100%);
|
|
2293
|
+
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
2294
|
+
border-radius: 12px;
|
|
2295
|
+
padding: 20px;
|
|
2296
|
+
display: flex;
|
|
2297
|
+
flex-direction: column;
|
|
2298
|
+
gap: 10px;
|
|
2299
|
+
position: relative;
|
|
2300
|
+
overflow: hidden;
|
|
2301
|
+
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
|
|
2302
|
+
}
|
|
2303
|
+
|
|
2304
|
+
.scout-pillar-card:hover {
|
|
2305
|
+
border-color: rgba(56, 189, 248, 0.4);
|
|
2306
|
+
transform: translateY(-2px);
|
|
2307
|
+
box-shadow: 0 12px 30px -10px rgba(56, 189, 248, 0.2);
|
|
2308
|
+
}
|
|
2309
|
+
|
|
2310
|
+
.scout-pillar-header {
|
|
2311
|
+
display: flex;
|
|
2312
|
+
align-items: center;
|
|
2313
|
+
justify-content: space-between;
|
|
2314
|
+
}
|
|
2315
|
+
|
|
2316
|
+
.scout-pillar-icon {
|
|
2317
|
+
width: 38px;
|
|
2318
|
+
height: 38px;
|
|
2319
|
+
border-radius: 10px;
|
|
2320
|
+
display: flex;
|
|
2321
|
+
align-items: center;
|
|
2322
|
+
justify-content: center;
|
|
2323
|
+
font-size: 16px;
|
|
2324
|
+
}
|
|
2325
|
+
|
|
2326
|
+
.scout-pillar-card.brief .scout-pillar-icon {
|
|
2327
|
+
background: rgba(245, 158, 11, 0.12);
|
|
2328
|
+
color: #f59e0b;
|
|
2329
|
+
border: 1px solid rgba(245, 158, 11, 0.3);
|
|
2330
|
+
}
|
|
2331
|
+
|
|
2332
|
+
.scout-pillar-card.risky .scout-pillar-icon {
|
|
2333
|
+
background: rgba(239, 68, 68, 0.12);
|
|
2334
|
+
color: #ef4444;
|
|
2335
|
+
border: 1px solid rgba(239, 68, 68, 0.3);
|
|
2336
|
+
}
|
|
2337
|
+
|
|
2338
|
+
.scout-pillar-card.operator .scout-pillar-icon {
|
|
2339
|
+
background: rgba(56, 189, 248, 0.12);
|
|
2340
|
+
color: #38bdf8;
|
|
2341
|
+
border: 1px solid rgba(56, 189, 248, 0.3);
|
|
2342
|
+
}
|
|
2343
|
+
|
|
2344
|
+
.scout-pillar-title {
|
|
2345
|
+
font-size: 15px;
|
|
2346
|
+
font-weight: 700;
|
|
2347
|
+
color: #ffffff;
|
|
2348
|
+
}
|
|
2349
|
+
|
|
2350
|
+
.scout-pillar-desc {
|
|
2351
|
+
font-size: 12.5px;
|
|
2352
|
+
color: var(--scout-text-secondary);
|
|
2353
|
+
line-height: 1.55;
|
|
2354
|
+
margin: 0;
|
|
2355
|
+
}
|
|
2356
|
+
|
|
2357
|
+
.scout-pillar-code {
|
|
2358
|
+
font-family: var(--font-mono);
|
|
2359
|
+
font-size: 11px;
|
|
2360
|
+
background: rgba(0, 0, 0, 0.35);
|
|
2361
|
+
padding: 4px 8px;
|
|
2362
|
+
border-radius: 4px;
|
|
2363
|
+
color: var(--scout-cyan);
|
|
2364
|
+
align-self: flex-start;
|
|
2365
|
+
margin-top: auto;
|
|
2058
2366
|
}
|
|
2059
2367
|
|
|
2060
2368
|
/* Task Composer */
|
|
@@ -2707,8 +3015,13 @@ h1, h2, h3, h4, h5, h6 {
|
|
|
2707
3015
|
|
|
2708
3016
|
.scout-capability-title {
|
|
2709
3017
|
font-size: 15px;
|
|
2710
|
-
font-weight:
|
|
2711
|
-
|
|
3018
|
+
font-weight: 700;
|
|
3019
|
+
background: linear-gradient(135deg, #f8fafc 0%, #cbd5e1 55%, #38bdf8 100%);
|
|
3020
|
+
background-size: 200% 200%;
|
|
3021
|
+
-webkit-background-clip: text;
|
|
3022
|
+
background-clip: text;
|
|
3023
|
+
-webkit-text-fill-color: transparent;
|
|
3024
|
+
animation: headingShimmerFlow 8s ease-in-out infinite;
|
|
2712
3025
|
margin-bottom: 6px;
|
|
2713
3026
|
}
|
|
2714
3027
|
|