feat: 优化官网顾问首页文案、信任区布局与视觉风格
强化痛点入口与对接轮播,并统一工作台式彩色图标与海空配色。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
6fb1f4fd66
commit
bcfddf79f3
@ -31,6 +31,14 @@
|
||||
--ai-action: #054f74;
|
||||
--ai-action-hover: #054b6e;
|
||||
--ai-action-rgb: 5, 79, 116;
|
||||
--ai-sky: #2a9bb5;
|
||||
--ai-sky-hover: #238aa2;
|
||||
--ai-sky-rgb: 42, 155, 181;
|
||||
--ai-sky-soft: color-mix(in srgb, var(--ai-sky) 14%, #fff);
|
||||
--ai-gold: #c7923e;
|
||||
--ai-gold-hover: #b58232;
|
||||
--ai-gold-rgb: 199, 146, 62;
|
||||
--ai-gold-soft: color-mix(in srgb, var(--ai-gold) 16%, #fff);
|
||||
--ai-primary-soft: #e0edf2;
|
||||
--ai-primary-mid: color-mix(in srgb, var(--ai-action) 16%, #fff);
|
||||
--ai-primary-softer: color-mix(in srgb, var(--ai-action) 10%, #fff);
|
||||
@ -42,11 +50,10 @@
|
||||
--ai-muted: var(--ai-text-2);
|
||||
--ai-line: var(--ai-border);
|
||||
--ai-glass: var(--ai-surface);
|
||||
--ai-gold: var(--ai-action);
|
||||
--ai-content-max: 1120px;
|
||||
--ai-guide-panel-w: 520px;
|
||||
--ai-acrylic-bg: rgba(255, 255, 255, 0.32);
|
||||
--ai-acrylic-bg-primary: rgba(255, 255, 255, 0.38);
|
||||
--ai-acrylic-bg-primary: color-mix(in srgb, var(--ai-gold-soft) 42%, rgba(255, 255, 255, 0.38));
|
||||
}
|
||||
|
||||
body.command-home {
|
||||
@ -90,14 +97,6 @@ body.command-home .site-nav-dock {
|
||||
body.command-home #navbar .site-nav-dock a {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
body.command-home #navbar .site-nav-dock a .site-nav-dock__icon {
|
||||
font-size: 1.05rem;
|
||||
line-height: 1;
|
||||
color: var(--ai-text-3);
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
@media (max-width: 1279px) {
|
||||
@ -133,8 +132,8 @@ body.command-home #navbar .site-nav-dock a .site-nav-dock__icon {
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 4px;
|
||||
padding: 6px 8px;
|
||||
gap: 20px;
|
||||
padding: 6px 12px;
|
||||
border-radius: 22px;
|
||||
border: 1px solid rgba(255, 255, 255, 0.72);
|
||||
background: var(--ai-acrylic-bg);
|
||||
@ -154,14 +153,13 @@ body.command-home #navbar .site-nav-dock a .site-nav-dock__icon {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 6px;
|
||||
min-height: 40px;
|
||||
padding: 8px 14px;
|
||||
border-radius: 16px;
|
||||
border: 1px solid transparent;
|
||||
color: var(--ai-text-2);
|
||||
font-size: 0.84rem;
|
||||
font-weight: 600;
|
||||
font-size: 1rem;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.01em;
|
||||
white-space: nowrap;
|
||||
background: transparent;
|
||||
@ -171,13 +169,6 @@ body.command-home #navbar .site-nav-dock a .site-nav-dock__icon {
|
||||
color 0.2s var(--ai-ease);
|
||||
}
|
||||
|
||||
body.command-home #navbar .site-nav-dock a .site-nav-dock__icon {
|
||||
font-size: 1rem;
|
||||
line-height: 1;
|
||||
color: var(--ai-text-3);
|
||||
transition: color 0.2s var(--ai-ease);
|
||||
}
|
||||
|
||||
body.command-home #navbar .site-nav-dock a:hover,
|
||||
body.command-home #navbar .site-nav-dock a.active,
|
||||
body.command-home #navbar .site-nav-dock a.active:focus {
|
||||
@ -192,11 +183,6 @@ body.command-home #navbar .site-nav-dock a .site-nav-dock__icon {
|
||||
color: var(--ai-action);
|
||||
}
|
||||
|
||||
body.command-home #navbar .site-nav-dock a:hover .site-nav-dock__icon,
|
||||
body.command-home #navbar .site-nav-dock a.active .site-nav-dock__icon {
|
||||
color: var(--ai-action);
|
||||
}
|
||||
|
||||
body.command-home #navbar > ul > li.site-nav-tools {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@ -325,7 +311,11 @@ body.command-home #ai-advisor-shell {
|
||||
position: absolute;
|
||||
inset: -160px;
|
||||
overflow: visible;
|
||||
background: var(--ai-bg);
|
||||
background:
|
||||
radial-gradient(ellipse 58% 48% at 18% 12%, rgba(var(--ai-sky-rgb), 0.055), transparent 68%),
|
||||
radial-gradient(ellipse 52% 44% at 86% 78%, rgba(var(--ai-gold-rgb), 0.04), transparent 70%),
|
||||
radial-gradient(ellipse 40% 36% at 72% 18%, rgba(var(--ai-action-rgb), 0.03), transparent 72%),
|
||||
var(--ai-bg);
|
||||
}
|
||||
|
||||
.ai-shell-bg__veil {
|
||||
@ -807,7 +797,7 @@ body.command-home .ai-stage-map--eu {
|
||||
flex-direction: column;
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
overflow: hidden;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
/* History is a drawer, never a second brand column */
|
||||
@ -1270,7 +1260,7 @@ body.command-home .ai-stage-map--eu {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
overflow-y: auto;
|
||||
padding: 28px 0 16px;
|
||||
padding: 10px 0 16px;
|
||||
scroll-behavior: smooth;
|
||||
overscroll-behavior: contain;
|
||||
scrollbar-width: none;
|
||||
@ -1293,9 +1283,9 @@ body.command-home .ai-stage-map--eu {
|
||||
.ai-welcome {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
justify-content: flex-start;
|
||||
min-height: 0;
|
||||
padding: 16px 0 24px;
|
||||
padding: 0 0 16px;
|
||||
animation: ai-h5-rise-in 0.42s var(--ai-ease) both;
|
||||
}
|
||||
|
||||
@ -1319,8 +1309,8 @@ body.command-home .ai-stage-map--eu {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
padding: 4px 8px 16px;
|
||||
gap: 2px;
|
||||
padding: 0 8px 12px;
|
||||
isolation: isolate;
|
||||
}
|
||||
|
||||
@ -1334,7 +1324,7 @@ body.command-home .ai-stage-map--eu {
|
||||
height: clamp(220px, 34vh, 320px);
|
||||
transform: translateX(-50%);
|
||||
pointer-events: none;
|
||||
--ai-hero-grid-line: color-mix(in srgb, var(--ai-action) 4%, var(--ai-border));
|
||||
--ai-hero-grid-line: color-mix(in srgb, var(--ai-sky) 8%, var(--ai-border));
|
||||
background-image:
|
||||
repeating-linear-gradient(
|
||||
0deg,
|
||||
@ -1350,7 +1340,7 @@ body.command-home .ai-stage-map--eu {
|
||||
var(--ai-hero-grid-line) 47px,
|
||||
var(--ai-hero-grid-line) 48px
|
||||
);
|
||||
opacity: 0.16;
|
||||
opacity: 0.18;
|
||||
-webkit-mask-image:
|
||||
radial-gradient(ellipse 70% 78% at 50% 46%, #000 0%, transparent 74%),
|
||||
linear-gradient(to bottom, #000 0%, #000 48%, transparent 92%);
|
||||
@ -1361,14 +1351,30 @@ body.command-home .ai-stage-map--eu {
|
||||
mask-composite: intersect;
|
||||
}
|
||||
|
||||
.ai-welcome__hero::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: -24px;
|
||||
left: 50%;
|
||||
z-index: 0;
|
||||
width: min(980px, 110vw);
|
||||
height: clamp(260px, 42vh, 420px);
|
||||
transform: translateX(-50%);
|
||||
pointer-events: none;
|
||||
background:
|
||||
radial-gradient(ellipse 46% 58% at 42% 48%, rgba(var(--ai-sky-rgb), 0.07), transparent 72%),
|
||||
radial-gradient(ellipse 38% 48% at 62% 56%, rgba(var(--ai-gold-rgb), 0.045), transparent 74%);
|
||||
opacity: 0.75;
|
||||
}
|
||||
|
||||
.ai-welcome__stack {
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 28px;
|
||||
gap: 22px;
|
||||
width: min(900px, 94vw);
|
||||
margin-top: -32px;
|
||||
margin-top: -64px;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
background: transparent;
|
||||
@ -1412,15 +1418,16 @@ body.command-home .ai-stage-map--eu {
|
||||
|
||||
.ai-welcome-sub {
|
||||
margin: 0 auto 0;
|
||||
max-width: 520px;
|
||||
max-width: none;
|
||||
font-size: 0.92rem;
|
||||
line-height: 1.55;
|
||||
line-height: 1.45;
|
||||
color: var(--ai-text-2);
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.ai-welcome-sub__accent {
|
||||
font-weight: 700;
|
||||
color: var(--ai-action);
|
||||
color: var(--ai-sky);
|
||||
}
|
||||
|
||||
.ai-welcome__foot {
|
||||
@ -1470,28 +1477,40 @@ body.command-home .ai-stage-map--eu {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
width: 48px;
|
||||
height: 48px;
|
||||
border: none;
|
||||
background: transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door.is-primary {
|
||||
padding: 18px 16px;
|
||||
background: var(--ai-acrylic-bg-primary);
|
||||
border-color: rgba(255, 255, 255, 0.8);
|
||||
box-shadow: none;
|
||||
position: relative;
|
||||
padding: 18px 16px 18px 18px;
|
||||
background:
|
||||
linear-gradient(
|
||||
145deg,
|
||||
color-mix(in srgb, var(--ai-gold) 12%, rgba(255, 255, 255, 0.5)) 0%,
|
||||
var(--ai-acrylic-bg-primary) 48%,
|
||||
rgba(255, 255, 255, 0.36) 100%
|
||||
);
|
||||
border-color: color-mix(in srgb, var(--ai-gold) 34%, rgba(255, 255, 255, 0.8));
|
||||
box-shadow: 0 8px 24px rgba(var(--ai-gold-rgb), 0.08);
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door.is-primary .ai-intent-door__icon {
|
||||
width: 44px;
|
||||
height: 44px;
|
||||
width: 52px;
|
||||
height: 52px;
|
||||
background: transparent;
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door.is-primary .ai-icon--illus {
|
||||
width: 48px;
|
||||
height: 48px;
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door.is-primary .ai-intent-door__title {
|
||||
color: var(--ai-action);
|
||||
}
|
||||
@ -1504,9 +1523,14 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door.is-primary:hover {
|
||||
background: rgba(255, 255, 255, 0.48);
|
||||
box-shadow: none;
|
||||
transform: none;
|
||||
background:
|
||||
linear-gradient(
|
||||
145deg,
|
||||
color-mix(in srgb, var(--ai-gold) 16%, rgba(255, 255, 255, 0.55)) 0%,
|
||||
rgba(255, 255, 255, 0.5) 100%
|
||||
);
|
||||
border-color: color-mix(in srgb, var(--ai-gold) 42%, rgba(255, 255, 255, 0.9));
|
||||
box-shadow: 0 10px 28px rgba(var(--ai-gold-rgb), 0.12);
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door__title {
|
||||
@ -1524,17 +1548,17 @@ body.command-home .ai-stage-map--eu {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
margin: -18px 0 -8px;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.ai-welcome-plane img {
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
width: min(640px, 82vw);
|
||||
width: min(820px, 96vw);
|
||||
height: auto;
|
||||
display: block;
|
||||
filter: drop-shadow(0 18px 42px rgba(15, 23, 42, 0.1));
|
||||
filter: drop-shadow(0 18px 42px rgba(var(--ai-sky-rgb), 0.14));
|
||||
transform-origin: 50% 60%;
|
||||
animation: aiPlaneIn 2.4s cubic-bezier(0.22, 1, 0.36, 1) both;
|
||||
}
|
||||
@ -1550,6 +1574,14 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
}
|
||||
|
||||
.ai-welcome__actions {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-end;
|
||||
gap: 8px;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.ai-welcome-cta {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
@ -1579,6 +1611,22 @@ body.command-home .ai-stage-map--eu {
|
||||
box-shadow: 0 10px 26px rgba(var(--ai-action-rgb), 0.28);
|
||||
}
|
||||
|
||||
.ai-welcome-human {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: var(--ai-sky);
|
||||
font-size: 0.82rem;
|
||||
font-weight: 600;
|
||||
text-decoration: none;
|
||||
white-space: nowrap;
|
||||
transition: color 0.2s var(--ai-ease);
|
||||
}
|
||||
|
||||
.ai-welcome-human:hover {
|
||||
color: var(--ai-sky-hover);
|
||||
}
|
||||
|
||||
.ai-welcome-stats {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@ -1597,7 +1645,7 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-welcome-stats-block.is-open .ai-welcome-stats__trigger {
|
||||
color: var(--ai-action);
|
||||
color: var(--ai-sky);
|
||||
}
|
||||
|
||||
.ai-welcome-stats__trigger {
|
||||
@ -1621,7 +1669,8 @@ body.command-home .ai-stage-map--eu {
|
||||
|
||||
.ai-welcome-stats__trigger:hover,
|
||||
.ai-welcome-stats-block.is-open .ai-welcome-stats__trigger {
|
||||
background: color-mix(in srgb, var(--ai-primary-soft) 55%, transparent);
|
||||
background: color-mix(in srgb, var(--ai-sky-soft) 70%, transparent);
|
||||
color: var(--ai-sky);
|
||||
}
|
||||
|
||||
.ai-welcome-stats__trigger .ai-welcome-stats__value,
|
||||
@ -1646,8 +1695,8 @@ body.command-home .ai-stage-map--eu {
|
||||
font-weight: 600;
|
||||
line-height: 1.2;
|
||||
letter-spacing: 0.02em;
|
||||
color: var(--ai-action);
|
||||
opacity: 0.82;
|
||||
color: var(--ai-sky);
|
||||
opacity: 0.9;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
@ -1758,12 +1807,17 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__icon {
|
||||
width: 40px;
|
||||
width: 48px;
|
||||
}
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__icon .ai-icon {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
width: 44px;
|
||||
height: 44px;
|
||||
}
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__icon .ai-icon--illus {
|
||||
width: 48px;
|
||||
height: 48px;
|
||||
}
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__hint {
|
||||
@ -1781,7 +1835,12 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-intent-door:nth-child(4) {
|
||||
grid-column: 2 / span 2;
|
||||
grid-column: 2;
|
||||
grid-row: 2;
|
||||
}
|
||||
|
||||
.ai-intent-door:nth-child(5) {
|
||||
grid-column: 3;
|
||||
grid-row: 2;
|
||||
}
|
||||
|
||||
@ -1839,11 +1898,11 @@ body.command-home .ai-stage-map--eu {
|
||||
.ai-intent-door.is-primary {
|
||||
background: linear-gradient(
|
||||
145deg,
|
||||
color-mix(in srgb, var(--ai-action) 10%, #fff) 0%,
|
||||
color-mix(in srgb, var(--ai-gold) 14%, #fff) 0%,
|
||||
var(--ai-surface) 58%
|
||||
);
|
||||
border-color: color-mix(in srgb, var(--ai-action) 32%, var(--ai-border));
|
||||
box-shadow: 0 0 0 1px color-mix(in srgb, var(--ai-action) 8%, transparent);
|
||||
border-color: color-mix(in srgb, var(--ai-gold) 36%, var(--ai-border));
|
||||
box-shadow: 0 0 0 1px color-mix(in srgb, var(--ai-gold) 10%, transparent);
|
||||
}
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__title {
|
||||
@ -1852,8 +1911,8 @@ body.command-home .ai-stage-map--eu {
|
||||
|
||||
.ai-intent-door.is-primary .ai-icon .ai-icon__accent,
|
||||
.ai-intent-door.is-primary .ai-icon .ai-icon__accent-fill {
|
||||
stroke: var(--ai-action);
|
||||
fill: var(--ai-action);
|
||||
stroke: var(--ai-gold);
|
||||
fill: var(--ai-gold);
|
||||
}
|
||||
|
||||
.ai-intent-door:hover {
|
||||
@ -1879,7 +1938,7 @@ body.command-home .ai-stage-map--eu {
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.ai-icon > * {
|
||||
.ai-icon:not(.ai-icon--illus) > * {
|
||||
fill: none;
|
||||
stroke: var(--ai-ink);
|
||||
stroke-width: 1.7;
|
||||
@ -1888,20 +1947,26 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-icon .ai-icon__accent {
|
||||
stroke: var(--ai-gold);
|
||||
stroke: var(--ai-sky);
|
||||
}
|
||||
|
||||
.ai-icon .ai-icon__accent-fill {
|
||||
fill: var(--ai-gold);
|
||||
fill: var(--ai-sky);
|
||||
stroke: none;
|
||||
}
|
||||
|
||||
.ai-icon.ai-icon--illus {
|
||||
width: 44px;
|
||||
height: 44px;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.ai-intent-door__icon {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
justify-content: center;
|
||||
flex-shrink: 0;
|
||||
width: 36px;
|
||||
width: 44px;
|
||||
height: auto;
|
||||
padding: 0;
|
||||
border: none;
|
||||
@ -1931,6 +1996,132 @@ body.command-home .ai-stage-map--eu {
|
||||
color: var(--ai-text-2);
|
||||
}
|
||||
|
||||
/* —— Partner marquee (platforms + carriers) —— */
|
||||
.ai-partner-marquee {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
min-width: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__tag {
|
||||
flex-shrink: 0;
|
||||
padding: 6px 10px;
|
||||
border-radius: 999px;
|
||||
border: 1px solid color-mix(in srgb, var(--ai-sky) 22%, rgba(255, 255, 255, 0.72));
|
||||
background: color-mix(in srgb, var(--ai-sky-soft) 75%, rgba(255, 255, 255, 0.4));
|
||||
backdrop-filter: blur(20px) saturate(160%);
|
||||
-webkit-backdrop-filter: blur(20px) saturate(160%);
|
||||
font-size: 0.72rem;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.04em;
|
||||
color: var(--ai-action);
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__viewport {
|
||||
position: relative;
|
||||
flex: 1;
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
|
||||
-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
|
||||
}
|
||||
|
||||
.ai-partner-marquee__track {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
width: max-content;
|
||||
padding: 2px 0;
|
||||
animation: aiPartnerScroll 36s linear infinite;
|
||||
}
|
||||
|
||||
.ai-partner-marquee:hover .ai-partner-marquee__track,
|
||||
.ai-partner-marquee:focus-within .ai-partner-marquee__track {
|
||||
animation-play-state: paused;
|
||||
}
|
||||
|
||||
.ai-partner-chip {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 7px;
|
||||
flex-shrink: 0;
|
||||
min-height: 34px;
|
||||
padding: 0 14px 0 12px;
|
||||
border-radius: 999px;
|
||||
border: 1px solid rgba(255, 255, 255, 0.72);
|
||||
background: var(--ai-acrylic-bg);
|
||||
backdrop-filter: blur(20px) saturate(160%);
|
||||
-webkit-backdrop-filter: blur(20px) saturate(160%);
|
||||
color: var(--ai-text);
|
||||
font-size: 0.82rem;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.01em;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
transition:
|
||||
border-color 0.2s var(--ai-ease),
|
||||
background 0.2s var(--ai-ease),
|
||||
color 0.2s var(--ai-ease);
|
||||
}
|
||||
|
||||
.ai-partner-chip__logo {
|
||||
width: 15px;
|
||||
height: 15px;
|
||||
flex-shrink: 0;
|
||||
display: block;
|
||||
object-fit: contain;
|
||||
}
|
||||
|
||||
.ai-partner-chip__label {
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.ai-partner-chip--carrier {
|
||||
color: var(--ai-text-2);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.ai-partner-chip:hover,
|
||||
.ai-partner-chip:focus-visible {
|
||||
border-color: rgba(255, 255, 255, 0.92);
|
||||
background: rgba(255, 255, 255, 0.44);
|
||||
color: var(--ai-action);
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.ai-partner-chip:disabled {
|
||||
opacity: 0.55;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
@keyframes aiPartnerScroll {
|
||||
from {
|
||||
transform: translate3d(0, 0, 0);
|
||||
}
|
||||
to {
|
||||
transform: translate3d(-50%, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.ai-partner-marquee__track {
|
||||
animation: none;
|
||||
flex-wrap: wrap;
|
||||
width: auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__viewport {
|
||||
mask-image: none;
|
||||
-webkit-mask-image: none;
|
||||
overflow: visible;
|
||||
}
|
||||
}
|
||||
|
||||
/* —— Messages —— */
|
||||
.ai-messages {
|
||||
display: none;
|
||||
@ -2303,6 +2494,7 @@ body.command-home .ai-stage-map--eu {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-shrink: 0;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.ai-composer-slot--welcome:empty,
|
||||
@ -2520,13 +2712,16 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-trust-bar {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr) minmax(0, calc(var(--ai-content-max) - 40px)) minmax(0, 1fr);
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 8px 18px;
|
||||
margin-top: 4px;
|
||||
padding: 14px 4px 16px;
|
||||
column-gap: 16px;
|
||||
width: 100vw;
|
||||
max-width: 100vw;
|
||||
margin: 4px 0 0;
|
||||
margin-left: calc(50% - 50vw);
|
||||
padding: 10px max(20px, env(safe-area-inset-right, 0px)) 12px max(20px, env(safe-area-inset-left, 0px));
|
||||
box-sizing: border-box;
|
||||
border-top: 1px solid color-mix(in srgb, var(--ai-border) 55%, transparent);
|
||||
color: var(--ai-text-3);
|
||||
font-size: 0.72rem;
|
||||
@ -2537,6 +2732,7 @@ body.command-home .ai-stage-map--eu {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
flex-shrink: 0;
|
||||
color: var(--ai-text-3);
|
||||
text-decoration: none;
|
||||
}
|
||||
@ -2560,43 +2756,73 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-trust-wechat {
|
||||
grid-column: 1;
|
||||
justify-self: start;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: none;
|
||||
background: none;
|
||||
font: inherit;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.ai-trust-bar__human {
|
||||
color: var(--ai-action) !important;
|
||||
font-weight: 600;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.ai-trust-bar__human:hover {
|
||||
color: var(--ai-action-hover) !important;
|
||||
}
|
||||
|
||||
.ai-trust-address {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 6px;
|
||||
margin: 0;
|
||||
color: var(--ai-text-3);
|
||||
font-size: 0.72rem;
|
||||
line-height: 1.45;
|
||||
text-align: left;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.ai-trust-address i {
|
||||
margin-top: 0;
|
||||
font-size: 0.88rem;
|
||||
line-height: 1;
|
||||
color: var(--ai-action);
|
||||
flex-shrink: 0;
|
||||
.ai-trust-bar .ai-partner-marquee {
|
||||
grid-column: 2;
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
min-width: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.ai-trust-icp {
|
||||
grid-column: 3;
|
||||
justify-self: end;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
@media (max-height: 860px) {
|
||||
.ai-app-main {
|
||||
padding-top: 4px;
|
||||
}
|
||||
|
||||
.ai-welcome-plane {
|
||||
margin-top: -28px;
|
||||
margin-bottom: -12px;
|
||||
}
|
||||
|
||||
.ai-welcome__stack {
|
||||
margin-top: -76px;
|
||||
gap: 16px;
|
||||
}
|
||||
|
||||
.ai-welcome__deck {
|
||||
padding-top: 12px;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-grid {
|
||||
padding-top: 12px;
|
||||
}
|
||||
|
||||
.ai-partner-marquee {
|
||||
margin-top: 0;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__tag {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.ai-partner-chip {
|
||||
min-height: 30px;
|
||||
padding: 0 12px;
|
||||
font-size: 0.76rem;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__track {
|
||||
animation-duration: 42s;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 860px) {
|
||||
@ -2638,7 +2864,8 @@ body.command-home .ai-stage-map--eu {
|
||||
.ai-intent-door.is-primary,
|
||||
.ai-intent-door:nth-child(2),
|
||||
.ai-intent-door:nth-child(3),
|
||||
.ai-intent-door:nth-child(4) {
|
||||
.ai-intent-door:nth-child(4),
|
||||
.ai-intent-door:nth-child(5) {
|
||||
grid-column: auto;
|
||||
grid-row: auto;
|
||||
min-height: 0;
|
||||
@ -2650,8 +2877,14 @@ body.command-home .ai-stage-map--eu {
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__icon,
|
||||
.ai-intent-door.is-primary .ai-intent-door__icon .ai-icon {
|
||||
width: 36px;
|
||||
height: 36px;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.ai-intent-door.is-primary .ai-intent-door__icon .ai-icon--illus,
|
||||
.ai-welcome__command .ai-intent-door .ai-icon--illus {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.ai-welcome__command .ai-intent-door.is-primary {
|
||||
@ -2664,7 +2897,7 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-welcome-plane img {
|
||||
width: min(480px, 90vw);
|
||||
width: min(620px, 96vw);
|
||||
}
|
||||
|
||||
.ai-welcome__hero::before {
|
||||
@ -2700,12 +2933,13 @@ body.command-home .ai-stage-map--eu {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.ai-welcome-cta {
|
||||
.ai-welcome__actions {
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.ai-welcome-stats {
|
||||
justify-content: center;
|
||||
.ai-welcome-cta {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@ -2716,7 +2950,7 @@ body.command-home .ai-stage-map--eu {
|
||||
|
||||
.ai-welcome {
|
||||
min-height: 0;
|
||||
padding-top: 8px;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
.ai-welcome__hero {
|
||||
@ -2757,7 +2991,19 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-welcome__stack {
|
||||
margin-top: -20px;
|
||||
margin-top: -48px;
|
||||
}
|
||||
|
||||
.ai-partner-marquee {
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__tag {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.ai-partner-marquee__viewport {
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.ai-welcome__deck {
|
||||
@ -2773,18 +3019,22 @@ body.command-home .ai-stage-map--eu {
|
||||
}
|
||||
|
||||
.ai-welcome-sub {
|
||||
font-size: 0.9rem;
|
||||
font-size: 0.84rem;
|
||||
white-space: nowrap;
|
||||
overflow-x: auto;
|
||||
max-width: 94vw;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
scrollbar-width: none;
|
||||
}
|
||||
|
||||
.ai-welcome-sub::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.ai-trust-bar {
|
||||
gap: 8px 14px;
|
||||
}
|
||||
|
||||
.ai-trust-address {
|
||||
text-align: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.ai-new-chat-tip {
|
||||
max-width: min(94vw, 320px);
|
||||
white-space: normal;
|
||||
|
||||
1
IDE官网/assets/img/partners/dhl.svg
Normal file
1
IDE官网/assets/img/partners/dhl.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>DHL</title><path fill="#FFCC00" d="M4.22 10.303l-.767 1.043h4.18c.21 0 .208.078.105.218-.105.142-.28.39-.386.534-.054.073-.154.207.171.207h1.71l.505-.69c.314-.426.028-1.312-1.095-1.312H4.22zm7.204 0l-1.475 2.002h5.39l1.473-2.002H14.61l-.843 1.146h-.985l.846-1.146h-2.203zm6.105 0l-1.474 2.002h2.334l1.472-2.002H17.53zm-12.845 1.3l-1.54 2.094h3.754c1.24 0 1.932-.844 2.145-1.136h-2.56c-.326 0-.226-.133-.172-.207.107-.143.283-.388.388-.53.104-.14.107-.22-.105-.22h-1.91zM0 12.562v.242h3.398l.176-.242H0zm9.762 0l-.836 1.136h2.203l.836-1.136H9.762zm3.185 0l-.836 1.136h2.203l.836-1.136h-2.203zm2.918 0s-.159.22-.238.326c-.276.374-.033.81.87.81h3.538l.834-1.136h-5.004zm5.408 0l-.177.242H24v-.242h-2.727zM0 13.01v.24h3.068l.178-.24H0zm20.943 0l-.175.24H24v-.24h-3.057zM0 13.457v.24h2.74l.176-.24H0zm20.615 0l-.177.24H24v-.24h-3.385z"/></svg>
|
||||
|
After Width: | Height: | Size: 916 B |
1
IDE官网/assets/img/partners/fedex.svg
Normal file
1
IDE官网/assets/img/partners/fedex.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>FedEx</title><path fill="#4D148C" d="M22.498 14.298c-.016-.414.345-.751.75-.755a.745.745 0 0 1 .752.755.755.755 0 0 1-.751.745c-.395.002-.759-.346-.751-.745zm.759-.083c.067-.02.164-.042.162-.13.007-.09-.086-.133-.162-.134h-.163v.263c0 .001.165-.002.163.001zm-.163.107v.418h-.14v-.91h.327c.156-.021.294.092.286.253a.218.218 0 0 1-.156.19c.162.083.108.322.173.467h-.156a2.355 2.355 0 0 1-.04-.205c-.018-.093-.047-.229-.17-.213h-.124zm.76-.024a.603.603 0 0 0-.605-.632c-.338-.012-.62.302-.605.632a.619.619 0 0 0 .605.622.61.61 0 0 0 .605-.622zm-5.052-.579l-.878 1.008h-1.306l1.559-1.745-1.56-1.75h1.355l.902.997.878-.998h1.306l-1.543 1.743 1.559 1.753h-1.371l-.901-1.008zm-4.703-.352v-.827h1.904v-1.506l1.724 1.948-1.724 1.941v-1.556h-1.904zm1.56 1.36h-3.2V9.044h3.224v1.024H13.77v1.163h1.888v.958h-1.904v1.522h1.904v1.016zm-5.705-.655c-.54.017-.878-.552-.877-1.04-.01-.507.307-1.123.878-1.105.579-.025.871.6.845 1.103.023.501-.29 1.062-.846 1.042zM4.743 12.41c.076-.358.403-.67.78-.663a.788.788 0 0 1 .803.663H4.743zm15.182.564l1.815-2.047h-2.125l-.74.844-.763-.844h-4.037v-.548h1.912V8.741H10.84v2.58c-.362-.448-.981-.559-1.526-.492-.782.123-1.427.762-1.634 1.514-.254-.958-1.179-1.588-2.157-1.554-.781.009-1.6.365-1.987 1.071v-.818h-1.87v-.9h2.043v-1.4H0v6.287h1.666v-2.644h1.666a7.59 7.59 0 0 0-.082.622c-.013 1.232 1.042 2.27 2.274 2.236a2.204 2.204 0 0 0 2.157-1.432H6.254c-.14.268-.441.38-.73.36-.457.009-.83-.417-.829-.86h2.914c.083 1.027.988 1.966 2.043 1.947a1.53 1.53 0 0 0 1.19-.639v.41h7.215l.754-.86.754.86h2.192l-1.832-2.055z"/></svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
1
IDE官网/assets/img/partners/shopee.svg
Normal file
1
IDE官网/assets/img/partners/shopee.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Shopee</title><path fill="#EE4D2D" d="M15.9414 17.9633c.229-1.879-.981-3.077-4.1758-4.0969-1.548-.528-2.277-1.22-2.26-2.1719.065-1.056 1.048-1.825 2.352-1.85a5.2898 5.2898 0 0 1 2.8838.89c.116.072.197.06.263-.039.09-.145.315-.494.39-.62.051-.081.061-.187-.068-.281-.185-.1369-.704-.4149-.983-.5319a6.4697 6.4697 0 0 0-2.5118-.514c-1.909.008-3.4129 1.215-3.5389 2.826-.082 1.1629.494 2.1078 1.73 2.8278.262.152 1.6799.716 2.2438.892 1.774.552 2.695 1.5419 2.478 2.6969-.197 1.047-1.299 1.7239-2.818 1.7439-1.2039-.046-2.2878-.537-3.1278-1.19l-.141-.11c-.104-.08-.218-.075-.287.03-.05.077-.376.547-.458.67-.077.108-.035.168.045.234.35.293.817.613 1.134.775a6.7097 6.7097 0 0 0 2.8289.727 4.9048 4.9048 0 0 0 2.0759-.354c1.095-.465 1.8029-1.394 1.9449-2.554zM11.9986 1.4009c-2.068 0-3.7539 1.95-3.8329 4.3899h7.6657c-.08-2.44-1.765-4.3899-3.8328-4.3899zm7.8516 22.5981-.08.001-15.7843-.002c-1.074-.04-1.863-.91-1.971-1.991l-.01-.195L1.298 6.2858a.459.459 0 0 1 .45-.494h4.9748C6.8448 2.568 9.1607 0 11.9996 0c2.8388 0 5.1537 2.5689 5.2757 5.7898h4.9678a.459.459 0 0 1 .458.483l-.773 15.5883-.007.131c-.094 1.094-.979 1.9769-2.0709 2.0059z"/></svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
1
IDE官网/assets/img/partners/tiktok.svg
Normal file
1
IDE官网/assets/img/partners/tiktok.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>TikTok</title><path fill="#000000" d="M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z"/></svg>
|
||||
|
After Width: | Height: | Size: 722 B |
1
IDE官网/assets/img/partners/ups.svg
Normal file
1
IDE官网/assets/img/partners/ups.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>UPS</title><path fill="#351C15" d="M11.668 14.544l-.028-5.226c.138-.055.387-.111.608-.111.995 0 1.41.774 1.41 2.682 0 1.853-.47 2.765-1.438 2.765-.22 0-.441-.055-.552-.11zM3.124 7.438c4.203-3.843 9.29-4.866 14.018-4.866 1.3 0 2.544.083 3.76.194h-.028v11.253c0 2.184-.774 3.926-2.295 5.171-1.355 1.134-5.447 2.959-6.581 3.456-1.161-.525-5.253-2.378-6.581-3.456-1.493-1.244-2.295-3.014-2.295-5.171V7.438zm12.664 2.599c.028.912.276 1.576 1.687 2.406.747.442 1.051.747 1.051 1.272 0 .581-.387.94-1.023.94-.553 0-1.189-.304-1.631-.691v1.576c.553.304 1.217.525 1.88.525 1.687 0 2.433-1.189 2.461-2.267.028-.995-.249-1.742-1.659-2.571-.608-.387-1.134-.636-1.106-1.244 0-.581.525-.802.995-.802.581 0 1.161.332 1.521.691V8.378c-.304-.221-.94-.581-1.88-.553-1.135.028-2.296.829-2.296 2.212zm-5.834 9.484h1.714l-.028-3.594c.166.028.415.083.774.083 1.908 0 2.986-1.687 2.986-4.175 0-2.461-1.106-4.009-3.152-4.009-.94 0-1.687.221-2.295.608v11.087zm-5.945-6.166c0 1.797.829 2.71 2.516 2.71 1.051 0 1.908-.249 2.571-.691V7.991H7.41v6.387c-.194.138-.47.221-.802.221-.774 0-.885-.719-.885-1.189V7.991H4.009v5.364zM22.12 2.295v11.723c0 2.516-.94 4.645-2.765 6.111-1.549 1.3-6.332 3.429-7.355 3.871-1.023-.442-5.806-2.571-7.355-3.843-1.797-1.465-2.765-3.594-2.765-6.111V2.295C4.756.747 8.074 0 12 0s7.244.747 10.12 2.295zm-.304.221c-2.71-1.465-6-2.184-9.788-2.184s-7.079.746-9.788 2.184v11.502c0 2.433.912 4.452 2.627 5.862 1.576 1.3 6.581 3.484 7.161 3.76.581-.249 5.585-2.433 7.161-3.733 1.714-1.41 2.627-3.429 2.627-5.862V2.516zm-2.433 20.295c0 .47-.387.829-.829.829a.831.831 0 0 1-.829-.829c0-.47.387-.829.829-.829.441 0 .801.359.829.829zm-.166 0a.679.679 0 0 0-.664-.691c-.359 0-.664.332-.664.691 0 .359.304.664.664.664a.673.673 0 0 0 .664-.664zm-.553.055c.028.055.304.442.304.442h-.221s-.276-.387-.276-.415h-.028v.415h-.194v-.995l.304-.028c.249 0 .332.166.332.304s-.083.25-.221.277zm.027-.276c0-.055 0-.138-.166-.138h-.083v.304h.028c.194 0 .221-.083.221-.166z"/></svg>
|
||||
|
After Width: | Height: | Size: 2.0 KiB |
@ -37,9 +37,9 @@
|
||||
en: {
|
||||
welcomeTitle: 'IDE, your cross-border logistics advisor',
|
||||
welcomeTitleShort: 'IDE · Your logistics advisor',
|
||||
welcomeSubLead: 'Parcels, express, dropship, and 9610 clearance — ',
|
||||
welcomeSubAccent: 'built for SMB cross-border sellers',
|
||||
welcomeSubTail: '.',
|
||||
welcomeSubLead: 'Preferential rates · proactive service · faster transit · ',
|
||||
welcomeSubAccent: 'AI-powered logistics',
|
||||
welcomeSubTail: ' · dedicated lines, packets, air & express covered.',
|
||||
placeholder: 'Ask about lanes, tracking, or 9610…',
|
||||
sendLabel: 'Ask',
|
||||
human: 'Talk to a human advisor',
|
||||
@ -65,16 +65,18 @@
|
||||
statsCoverageHint: 'Tap to view',
|
||||
mapZoomHint: 'Tap a country to pin it on the map',
|
||||
composeLead: 'Ask about a lane, or pick a shortcut below',
|
||||
partnerTag: 'Partners',
|
||||
partnerAria: 'Connected platforms and carriers',
|
||||
},
|
||||
zh: {
|
||||
welcomeTitle: 'IDE,您身边的跨境物流顾问',
|
||||
welcomeTitleShort: 'IDE · 跨境物流顾问',
|
||||
welcomeSubLead: '专线小包、国际快递、一件代发与 9610 报关,',
|
||||
welcomeSubAccent: '专为中小跨境卖家而生',
|
||||
welcomeSubTail: '。',
|
||||
welcomeSubLead: '价格更优惠 · 服务更主动 · 时效更快 · ',
|
||||
welcomeSubAccent: 'AI 助力物流',
|
||||
welcomeSubTail: ' · 专线/小包/空派/快递全覆盖。',
|
||||
placeholder: '问线路、查轨迹、9610 政策…',
|
||||
sendLabel: '提问',
|
||||
human: '联系人工顾问',
|
||||
human: '联系在线顾问',
|
||||
you: '你',
|
||||
historyTitle: '历史记录',
|
||||
newChat: '新会话',
|
||||
@ -97,6 +99,8 @@
|
||||
statsCoverageHint: '点我查看',
|
||||
mapZoomHint: '点击国家,地图上会用定位图标标出',
|
||||
composeLead: '先问线路,或选快捷入口',
|
||||
partnerTag: '合作伙伴',
|
||||
partnerAria: '对接平台与服务商',
|
||||
},
|
||||
};
|
||||
|
||||
@ -255,63 +259,231 @@
|
||||
{
|
||||
id: 'quote',
|
||||
icon: 'quote',
|
||||
en: { title: 'Clear rates', hint: 'Tailored solutions — better, faster. Register to inquire.', label: 'I need a shipping quote' },
|
||||
zh: { title: '明码报价', hint: '量身定制解决方案,更优更快等你来询', label: '我要报价' },
|
||||
en: {
|
||||
title: 'Tired of list prices?',
|
||||
hint: 'Low volume means low commission for sales — our member tiers get better as you ship more, or become an agent and earn',
|
||||
label: 'I want member or agent rates',
|
||||
},
|
||||
zh: {
|
||||
title: '拿不到优惠价?',
|
||||
hint: '单少提成低,销售爱搭不理 → 会员成长体系发越多越优惠,还能做代理拿分成',
|
||||
label: '我想看会员价/代理价',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'track',
|
||||
icon: 'track',
|
||||
en: { title: 'Track a shipment', hint: 'End-to-end tracking, timely exception alerts', label: 'Track my shipment' },
|
||||
zh: { title: '轨迹追踪', hint: '轨迹全程可追踪,异常及时提醒', label: '我想查这票货到哪了' },
|
||||
en: {
|
||||
title: 'Lost mid-route?',
|
||||
hint: 'Order → pickup → warehouse → clearance → delivery, with exception alerts',
|
||||
label: 'Where is my shipment from pickup to delivery?',
|
||||
},
|
||||
zh: {
|
||||
title: '货丢在半路?',
|
||||
hint: '下单→揽收→出入库→清关→派送,一站可视,异常有人盯',
|
||||
label: '这票货从揽收到派送卡在哪',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'hard',
|
||||
icon: 'hard',
|
||||
en: { title: 'Tough orders', hint: 'Refund, exemption, 3C battery, special & cosmetic goods', label: 'Can you take a difficult or 9610 order?' },
|
||||
zh: { title: '疑难杂单', hint: '退税、免征、3C带电、特殊品、化妆品', label: '疑难杂单或 9610 怎么发?' },
|
||||
en: {
|
||||
title: 'Others declined it?',
|
||||
hint: 'Battery, special cargo, cosmetics — if others refuse, ask us first',
|
||||
label: 'Others declined this cargo. Can you take it?',
|
||||
},
|
||||
zh: {
|
||||
title: '别人不接的单?',
|
||||
hint: '3C带电、特殊品、化妆品,别处拒收,先问我们',
|
||||
label: '别人不接的货,你们能发吗?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'compliance',
|
||||
icon: 'clearance',
|
||||
en: {
|
||||
title: 'Need export compliance?',
|
||||
hint: 'Formal declaration, VAT refund, and invoice-free exemption',
|
||||
label: 'I need export compliance — declaration, refund, or exemption',
|
||||
},
|
||||
zh: {
|
||||
title: '想出口合规?',
|
||||
hint: '正式报关、出口退税、无票免征,我们都能办',
|
||||
label: '想出口合规:正式报关 / 退税 / 无票免征',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'human',
|
||||
icon: 'human',
|
||||
en: { title: 'Your advisor', hint: 'One person from quote to delivery', label: 'Talk to a human advisor' },
|
||||
zh: { title: '专属顾问', hint: '报价跟到签收,售后有人认', label: '联系专属顾问' },
|
||||
en: {
|
||||
title: 'Stuck in a group chat?',
|
||||
hint: 'No mega group chats — one owner from quote to POD, even for small volume',
|
||||
label: 'Give me a dedicated advisor, no group chat',
|
||||
},
|
||||
zh: {
|
||||
title: '拉群找不到人?',
|
||||
hint: '不拉大群、不踢皮球;单量少也有人认,报价跟到签收',
|
||||
label: '给我一个专属顾问,别拉群',
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
const PARTNERS = [
|
||||
{
|
||||
id: 'lazada',
|
||||
group: 'platform',
|
||||
label: { zh: 'Lazada', en: 'Lazada' },
|
||||
ask: {
|
||||
zh: 'Lazada 店铺怎么授权、同步订单做一件代发?',
|
||||
en: 'How do I authorize a Lazada shop and sync orders for dropship?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'shopee',
|
||||
group: 'platform',
|
||||
icon: 'assets/img/partners/shopee.svg',
|
||||
label: { zh: 'Shopee', en: 'Shopee' },
|
||||
ask: {
|
||||
zh: 'Shopee 店铺怎么授权同步订单?',
|
||||
en: 'How do I authorize a Shopee shop and sync orders?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'tiktok',
|
||||
group: 'platform',
|
||||
icon: 'assets/img/partners/tiktok.svg',
|
||||
label: { zh: 'TikTok', en: 'TikTok' },
|
||||
ask: {
|
||||
zh: 'TikTok 店铺订单怎么同步到你们系统?',
|
||||
en: 'How do TikTok shop orders sync into your system?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'temu',
|
||||
group: 'platform',
|
||||
label: { zh: 'Temu', en: 'Temu' },
|
||||
ask: {
|
||||
zh: 'Temu 店铺怎么授权同步、一件代发?',
|
||||
en: 'How do I authorize Temu for order sync and dropship?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'dhl',
|
||||
group: 'carrier',
|
||||
icon: 'assets/img/partners/dhl.svg',
|
||||
label: { zh: 'DHL', en: 'DHL' },
|
||||
ask: {
|
||||
zh: '有没有 DHL 线路可以询价?',
|
||||
en: 'Do you have DHL lanes I can quote?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'fedex',
|
||||
group: 'carrier',
|
||||
icon: 'assets/img/partners/fedex.svg',
|
||||
label: { zh: 'FedEx', en: 'FedEx' },
|
||||
ask: {
|
||||
zh: '有没有 FedEx 线路可以询价?',
|
||||
en: 'Do you have FedEx lanes I can quote?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'ups',
|
||||
group: 'carrier',
|
||||
icon: 'assets/img/partners/ups.svg',
|
||||
label: { zh: 'UPS', en: 'UPS' },
|
||||
ask: {
|
||||
zh: '有没有 UPS 线路报价?',
|
||||
en: 'Do you have UPS lanes I can quote?',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: '3pe',
|
||||
group: 'carrier',
|
||||
label: { zh: '3PE', en: '3PE' },
|
||||
ask: {
|
||||
zh: '3PE 国际快递怎么走、怎么报价?',
|
||||
en: 'How does 3PE express work, and how do I get a quote?',
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
function iconMarkup(name) {
|
||||
const art = {
|
||||
const illus = {
|
||||
quote:
|
||||
'<rect x="6.5" y="4.5" width="14" height="19" rx="3"/>' +
|
||||
'<path d="M10 10h7M10 14h7M10 18h4"/>' +
|
||||
'<path class="ai-icon__accent" d="M18.2 20.8l5.4-5.4a2 2 0 012.8 0l.6.6a2 2 0 010 2.8l-5.4 5.4-3.4-3.4z"/>' +
|
||||
'<circle class="ai-icon__accent-fill" cx="24.2" cy="16.8" r="1.05"/>',
|
||||
'<ellipse cx="27" cy="44" rx="13" ry="3" fill="#C7923E" opacity="0.28"/>' +
|
||||
'<path d="M17 23.5c0-1.5 1.2-2.7 2.7-2.7H29c2.6 0 4.7 2.1 4.7 4.7v1.3h3.4c1.7 0 3 1.5 2.8 3.2l-.9 7.5c-.2 1.6-1.5 2.7-3.1 2.7H19.7c-1.5 0-2.7-1.2-2.7-2.7V23.5z" fill="url(#ai-g-quote)"/>' +
|
||||
'<path d="M20.2 20.8v-1.3c0-2.2 1.8-4 4-4h5.6c2.2 0 4 1.8 4 4v1.3" stroke="#B58232" stroke-width="2.2" stroke-linecap="round"/>' +
|
||||
'<circle cx="28" cy="32.5" r="3.4" fill="#FFF8EC"/>' +
|
||||
'<path d="M28 30.6v3.8M26.5 32h3" stroke="#C7923E" stroke-width="1.5" stroke-linecap="round"/>',
|
||||
track:
|
||||
'<circle cx="13.5" cy="17" r="8.2"/>' +
|
||||
'<ellipse cx="13.5" cy="17" rx="3.2" ry="8.2"/>' +
|
||||
'<path d="M5.3 17h16.4"/>' +
|
||||
'<path class="ai-icon__accent" d="M23 8.2c0 3.4-4.2 7.3-4.2 7.3S14.6 11.6 14.6 8.2a4.2 4.2 0 118.4 0z"/>' +
|
||||
'<circle class="ai-icon__accent-fill" cx="23" cy="8.2" r="1.45"/>',
|
||||
'<ellipse cx="27" cy="44" rx="13" ry="3" fill="#2A9BB5" opacity="0.28"/>' +
|
||||
'<path d="M11 28h17.8l4.1-7.1c.4-.7 1.1-1.1 1.9-1.1H40.2c1.1 0 2 .9 2 2v12.6c0 .8-.7 1.5-1.5 1.5H11V28z" fill="url(#ai-g-track)"/>' +
|
||||
'<path d="M11 22h15.2v18H13c-1.1 0-2-.9-2-2V22z" fill="#054F74"/>' +
|
||||
'<rect x="14.2" y="25.6" width="6.6" height="4" rx="1" fill="#E6F6FA"/>' +
|
||||
'<circle cx="17.6" cy="39.6" r="3.4" fill="#1D2129"/>' +
|
||||
'<circle cx="17.6" cy="39.6" r="1.5" fill="#C9CDD4"/>' +
|
||||
'<circle cx="35.6" cy="39.6" r="3.4" fill="#1D2129"/>' +
|
||||
'<circle cx="35.6" cy="39.6" r="1.5" fill="#C9CDD4"/>' +
|
||||
'<path d="M6.2 24.6h4M5.2 28h3.6M6.6 31.6h3.2" stroke="#2A9BB5" stroke-width="1.8" stroke-linecap="round" opacity="0.9"/>',
|
||||
hard:
|
||||
'<path d="M16 6.2l10 4.8v10.2L16 26 6 21.2V11l10-4.8z"/>' +
|
||||
'<path d="M16 6.2V26M6 11l10 4.8L26 11"/>' +
|
||||
'<path class="ai-icon__accent" d="M11.5 14.6l4.5 2.2 4.5-2.2" stroke-width="2.2"/>' +
|
||||
'<path class="ai-icon__accent-fill" d="M21.2 8.1l1.1 2.4 2.6.2-2 1.6.6 2.5-2.3-1.3-2.3 1.3.6-2.5-2-1.6 2.6-.2z"/>',
|
||||
'<ellipse cx="27" cy="44" rx="12" ry="3" fill="#E07A5F" opacity="0.28"/>' +
|
||||
'<path d="M27 12.6c1.1 0 2.1.58 2.64 1.52l12.1 21.1c.54.95.53 2.12-.03 3.06A3.05 3.05 0 0 1 39.07 40H14.93c-1.1 0-2.12-.58-2.64-1.52a3.05 3.05 0 0 1-.03-3.06l12.1-21.1A3.05 3.05 0 0 1 27 12.6z" fill="url(#ai-g-hard)"/>' +
|
||||
'<rect x="25.4" y="21.2" width="3.2" height="9.4" rx="1.6" fill="#fff"/>' +
|
||||
'<circle cx="27" cy="34.3" r="2" fill="#fff"/>',
|
||||
clearance:
|
||||
'<ellipse cx="27" cy="44" rx="12" ry="3" fill="#054F74" opacity="0.22"/>' +
|
||||
'<path d="M16.5 13.5c0-1.4 1.1-2.5 2.5-2.5h10.4c.7 0 1.4.3 1.9.8l6.2 6.2c.5.5.8 1.2.8 1.9V36c0 1.4-1.1 2.5-2.5 2.5H19c-1.4 0-2.5-1.1-2.5-2.5V13.5z" fill="url(#ai-g-clear)"/>' +
|
||||
'<path d="M30.2 11.2V16c0 1.1.9 2 2 2h4.7L30.2 11.2z" fill="#9ED7E4"/>' +
|
||||
'<rect x="21" y="23.5" width="13.5" height="2.2" rx="1.1" fill="#fff" opacity="0.92"/>' +
|
||||
'<rect x="21" y="28.5" width="9.5" height="2.2" rx="1.1" fill="#fff" opacity="0.75"/>' +
|
||||
'<circle cx="37.5" cy="34.2" r="7.6" fill="#2A9BB5"/>' +
|
||||
'<path d="M34.6 34.4l1.8 1.8 4.2-4.4" stroke="#fff" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"/>',
|
||||
human:
|
||||
'<circle cx="16" cy="11.2" r="4.3"/>' +
|
||||
'<path d="M8.2 26.2c1.1-5.2 4.2-7.8 7.8-7.8s6.7 2.6 7.8 7.8"/>' +
|
||||
'<path class="ai-icon__accent" d="M10 12.4c.2-4.6 2.8-7.4 6-7.4s5.8 2.8 6 7.4"/>' +
|
||||
'<rect class="ai-icon__accent-fill" x="8" y="11.6" width="3.1" height="5" rx="1.5"/>' +
|
||||
'<rect class="ai-icon__accent" x="20.9" y="11.6" width="3.1" height="5" rx="1.5"/>' +
|
||||
'<path class="ai-icon__accent" d="M9.6 16.6v3.2h4.8"/>',
|
||||
'<ellipse cx="27" cy="44" rx="13" ry="3" fill="#2A9BB5" opacity="0.28"/>' +
|
||||
'<circle cx="27" cy="18.2" r="7.2" fill="url(#ai-g-human)"/>' +
|
||||
'<path d="M14.8 40.2c1.4-7.2 5.8-10.8 12.2-10.8s10.8 3.6 12.2 10.8" fill="#054F74"/>' +
|
||||
'<path d="M18.5 20.2c.4-5.2 3.4-8.4 8.5-8.4s8.1 3.2 8.5 8.4" stroke="#9ED7E4" stroke-width="2" stroke-linecap="round" opacity="0.9"/>' +
|
||||
'<rect x="15.6" y="19.4" width="3.4" height="5.4" rx="1.7" fill="#2A9BB5"/>' +
|
||||
'<rect x="35" y="19.4" width="3.4" height="5.4" rx="1.7" fill="#2A9BB5"/>' +
|
||||
'<path d="M22.4 28.6h9.2c1.4 0 2.5 1.1 2.5 2.5v2.2H19.9v-2.2c0-1.4 1.1-2.5 2.5-2.5z" fill="#E6F6FA"/>',
|
||||
};
|
||||
|
||||
const defs = {
|
||||
quote:
|
||||
'<linearGradient id="ai-g-quote" x1="17" y1="16" x2="40" y2="40" gradientUnits="userSpaceOnUse">' +
|
||||
'<stop stop-color="#E0B35A"/><stop offset="1" stop-color="#C7923E"/></linearGradient>',
|
||||
track:
|
||||
'<linearGradient id="ai-g-track" x1="11" y1="19" x2="42" y2="40" gradientUnits="userSpaceOnUse">' +
|
||||
'<stop stop-color="#7DCFDD"/><stop offset="1" stop-color="#2A9BB5"/></linearGradient>',
|
||||
hard:
|
||||
'<linearGradient id="ai-g-hard" x1="12" y1="12" x2="42" y2="40" gradientUnits="userSpaceOnUse">' +
|
||||
'<stop stop-color="#F0A090"/><stop offset="1" stop-color="#E07A5F"/></linearGradient>',
|
||||
clearance:
|
||||
'<linearGradient id="ai-g-clear" x1="16" y1="11" x2="40" y2="39" gradientUnits="userSpaceOnUse">' +
|
||||
'<stop stop-color="#5EC4D6"/><stop offset="1" stop-color="#054F74"/></linearGradient>',
|
||||
human:
|
||||
'<linearGradient id="ai-g-human" x1="20" y1="11" x2="34" y2="26" gradientUnits="userSpaceOnUse">' +
|
||||
'<stop stop-color="#7DCFDD"/><stop offset="1" stop-color="#2A9BB5"/></linearGradient>',
|
||||
};
|
||||
|
||||
if (illus[name]) {
|
||||
return (
|
||||
'<svg class="ai-icon ai-icon--illus" viewBox="0 0 54 54" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">' +
|
||||
'<defs>' +
|
||||
defs[name] +
|
||||
'</defs>' +
|
||||
illus[name] +
|
||||
'</svg>'
|
||||
);
|
||||
}
|
||||
|
||||
// Legacy stroke icons for guide / other surfaces
|
||||
const art = {
|
||||
lane:
|
||||
'<path d="M4.5 21.5c4.2-8.4 10.4-12.6 15-12.6 5.8 0 8.8 4.6 9.6 8.8"/>' +
|
||||
'<path d="M4.5 21.5h23"/>' +
|
||||
'<path class="ai-icon__accent-fill" d="M9.8 16.4l13.8-4.2-2.4 6.2-4.6-1.2-2.8 3.6-2.1-1.1 1.9-3.6-3.8.3z"/>',
|
||||
clearance:
|
||||
'<rect x="6.5" y="4.5" width="14.5" height="18.5" rx="2.5"/>' +
|
||||
'<path d="M10 10h7.5M10 14h7.5M10 18h4.5"/>' +
|
||||
'<circle class="ai-icon__accent" cx="22.2" cy="22.2" r="5.6"/>' +
|
||||
'<path class="ai-icon__accent" d="M19.6 22.4l1.7 1.7 3.6-3.8"/>',
|
||||
advise:
|
||||
'<circle cx="16" cy="16" r="10"/>' +
|
||||
'<path d="M16 6.2v2.2M16 23.6v2.2M6.2 16h2.2M23.6 16h2.2"/>' +
|
||||
@ -963,7 +1135,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a class="ai-welcome-cta" href="#"></a>
|
||||
<div class="ai-welcome__actions">
|
||||
<a class="ai-welcome-cta" href="#"></a>
|
||||
<a class="ai-welcome-human" href="#contact"></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ai-welcome__command">
|
||||
@ -995,23 +1170,16 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="ai-trust-bar">
|
||||
<a class="ai-trust-phone" href="tel:${PHONE}">
|
||||
<i class="bi bi-telephone" aria-hidden="true"></i>
|
||||
<span class="ai-trust-label"></span>
|
||||
</a>
|
||||
<button type="button" class="ai-trust-wechat" title="${WECHAT}">
|
||||
<i class="bi bi-wechat" aria-hidden="true"></i>
|
||||
<span class="ai-trust-label"></span>
|
||||
</button>
|
||||
<a class="ai-trust-email" href="mailto:${EMAIL}">
|
||||
<i class="bi bi-envelope" aria-hidden="true"></i>
|
||||
<span class="ai-trust-label"></span>
|
||||
</a>
|
||||
<a class="ai-trust-bar__human" href="#contact"></a>
|
||||
<p class="ai-trust-address">
|
||||
<i class="bi bi-geo-alt" aria-hidden="true"></i>
|
||||
<span class="ai-trust-label"></span>
|
||||
</p>
|
||||
<div class="ai-partner-marquee" aria-label="">
|
||||
<span class="ai-partner-marquee__tag"></span>
|
||||
<div class="ai-partner-marquee__viewport">
|
||||
<div class="ai-partner-marquee__track"></div>
|
||||
</div>
|
||||
</div>
|
||||
<a class="ai-trust-icp" href="https://beian.miit.gov.cn" target="_blank" rel="noopener">
|
||||
<i class="bi bi-shield-check" aria-hidden="true"></i>
|
||||
<span class="ai-trust-label"></span>
|
||||
@ -1262,9 +1430,76 @@
|
||||
btn.addEventListener('click', () => onIntentClick(intent));
|
||||
intentGridEl.appendChild(btn);
|
||||
});
|
||||
renderPartnerMarquee();
|
||||
renderCoverage();
|
||||
}
|
||||
|
||||
function partnerAsk(partner) {
|
||||
return lang === 'zh' ? partner.ask.zh : partner.ask.en;
|
||||
}
|
||||
|
||||
function partnerLabel(partner) {
|
||||
return lang === 'zh' ? partner.label.zh : partner.label.en;
|
||||
}
|
||||
|
||||
function prefillComposer(text) {
|
||||
if (!inputEl || isBusy || !text) return;
|
||||
hideNewChatTip();
|
||||
inputEl.value = text;
|
||||
inputEl.style.height = 'auto';
|
||||
inputEl.style.height = Math.min(inputEl.scrollHeight, 160) + 'px';
|
||||
syncComposerSendState();
|
||||
inputEl.focus();
|
||||
try {
|
||||
const len = text.length;
|
||||
inputEl.setSelectionRange(len, len);
|
||||
} catch (_) {
|
||||
/* ignore */
|
||||
}
|
||||
inputEl.scrollIntoView({ block: 'nearest', behavior: 'smooth' });
|
||||
}
|
||||
|
||||
function renderPartnerMarquee() {
|
||||
if (!shell) return;
|
||||
const root = shell.querySelector('.ai-partner-marquee');
|
||||
const track = shell.querySelector('.ai-partner-marquee__track');
|
||||
const tag = shell.querySelector('.ai-partner-marquee__tag');
|
||||
if (!root || !track || !tag) return;
|
||||
|
||||
root.setAttribute('aria-label', t('partnerAria'));
|
||||
tag.textContent = t('partnerTag');
|
||||
track.innerHTML = '';
|
||||
|
||||
const makeChip = (partner) => {
|
||||
const btn = document.createElement('button');
|
||||
btn.type = 'button';
|
||||
btn.className = 'ai-partner-chip ai-partner-chip--' + partner.group;
|
||||
btn.dataset.partner = partner.id;
|
||||
btn.title = partnerAsk(partner);
|
||||
if (partner.icon) {
|
||||
const img = document.createElement('img');
|
||||
img.className = 'ai-partner-chip__logo';
|
||||
img.src = partner.icon;
|
||||
img.alt = '';
|
||||
img.decoding = 'async';
|
||||
img.setAttribute('aria-hidden', 'true');
|
||||
btn.appendChild(img);
|
||||
}
|
||||
const label = document.createElement('span');
|
||||
label.className = 'ai-partner-chip__label';
|
||||
label.textContent = partnerLabel(partner);
|
||||
btn.appendChild(label);
|
||||
btn.addEventListener('click', () => prefillComposer(partnerAsk(partner)));
|
||||
return btn;
|
||||
};
|
||||
|
||||
// Duplicate once for seamless loop (skip when user prefers reduced motion)
|
||||
const loopTwice = !window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
||||
(loopTwice ? [0, 1] : [0]).forEach(() => {
|
||||
PARTNERS.forEach((partner) => track.appendChild(makeChip(partner)));
|
||||
});
|
||||
}
|
||||
|
||||
function coverName(item) {
|
||||
return lang === 'zh' ? item.zh : item.en;
|
||||
}
|
||||
@ -1576,6 +1811,8 @@
|
||||
heroCta.textContent = t('heroCta');
|
||||
heroCta.href = loginPortalUrl();
|
||||
}
|
||||
const welcomeHuman = shell.querySelector('.ai-welcome-human');
|
||||
if (welcomeHuman) welcomeHuman.textContent = t('human') + ' →';
|
||||
renderWelcomeStats();
|
||||
const mapHint = shell.querySelector('.ai-cover-panel__hint');
|
||||
if (mapHint) mapHint.textContent = t('mapZoomHint');
|
||||
@ -1590,12 +1827,8 @@
|
||||
globeController.setMarkers(buildCoverageMarkers());
|
||||
}
|
||||
}
|
||||
setTrustLabel('.ai-trust-phone', t('trustPhone'));
|
||||
setTrustLabel('.ai-trust-address', t('trustAddress'));
|
||||
setTrustLabel('.ai-trust-wechat', t('trustWechat'));
|
||||
setTrustLabel('.ai-trust-email', t('trustEmail'));
|
||||
setTrustLabel('.ai-trust-icp', t('trustIcp'));
|
||||
shell.querySelector('.ai-trust-bar__human').textContent = t('human') + ' →';
|
||||
const composeLead = shell.querySelector('.ai-welcome-compose__lead');
|
||||
if (composeLead) composeLead.textContent = t('composeLead');
|
||||
inputEl.placeholder = t('placeholder');
|
||||
@ -1688,7 +1921,8 @@
|
||||
function detectIntent(text) {
|
||||
const lower = text.toLowerCase();
|
||||
if (/track|tracking|物流|单号|追踪/.test(lower) || looksLikeTracking(text)) return 'track';
|
||||
if (/9610|退税|专票|免税|疑难|小批量|不接/.test(lower)) return 'hard';
|
||||
if (/9610|退税|专票|免税|免征|合规|报关|declaration|refund|exempt/.test(lower)) return 'compliance';
|
||||
if (/疑难|小批量|不接|带电|3c|特殊品|化妆品/.test(lower)) return 'hard';
|
||||
if (/一件代发|代发|dropship|fulfillment/.test(lower)) return 'warehouse';
|
||||
if (/仓储|清关|空运|海运|服务|warehous|customs|services/.test(lower)) return 'guide';
|
||||
if (/定价|收费|价目|pricing/.test(lower)) return 'pricing';
|
||||
@ -1786,11 +2020,21 @@
|
||||
}
|
||||
|
||||
if (intentId === 'hard') {
|
||||
flow = null;
|
||||
return {
|
||||
text: zh
|
||||
? '带电、特殊品、化妆品这类别人不接的单,我们按品类选线路。先说下货是什么,或点在线顾问细聊。'
|
||||
: 'Battery, special cargo, cosmetics — we pick a lane by commodity. Tell us what it is, or talk to an advisor.',
|
||||
card: { type: 'contact' },
|
||||
};
|
||||
}
|
||||
|
||||
if (intentId === 'compliance') {
|
||||
flow = { id: 'hard', step: 0, data: {} };
|
||||
return {
|
||||
text: zh
|
||||
? '别人不接的单我们接。如果走 9610,先确认一张票,再给你对应方案。'
|
||||
: 'We take orders others decline. For 9610, one tax question first — then the matching scheme.',
|
||||
? '出口合规我们能办:正式报关、退税、无票免征。先确认一张票,再给你对应方案。'
|
||||
: 'We handle formal declaration, VAT refund, and invoice-free exemption. One tax question first — then the matching scheme.',
|
||||
card: {
|
||||
type: 'choice',
|
||||
flowId: 'hard',
|
||||
@ -1890,7 +2134,9 @@
|
||||
function setBusy(busy) {
|
||||
isBusy = busy;
|
||||
if (inputEl) inputEl.disabled = busy;
|
||||
shell?.querySelectorAll('.ai-intent-door, .ai-followup-chip, .ai-card-opt, .ai-cover-chip').forEach((node) => {
|
||||
shell?.querySelectorAll(
|
||||
'.ai-intent-door, .ai-followup-chip, .ai-card-opt, .ai-cover-chip, .ai-partner-chip'
|
||||
).forEach((node) => {
|
||||
node.disabled = busy;
|
||||
});
|
||||
syncComposerSendState();
|
||||
@ -1959,7 +2205,7 @@
|
||||
const labels = {
|
||||
company: lang === 'zh' ? '关于我们' : 'About IDE',
|
||||
pricing: lang === 'zh' ? '价格怎么算?' : 'How does pricing work?',
|
||||
human: lang === 'zh' ? '联系人工顾问' : 'Talk to a human advisor',
|
||||
human: lang === 'zh' ? '联系在线顾问' : 'Talk to an online advisor',
|
||||
};
|
||||
setNavActive(topic);
|
||||
if (location.hash !== `#${spec.hash}`) {
|
||||
@ -2001,7 +2247,7 @@
|
||||
});
|
||||
});
|
||||
|
||||
shell?.querySelector('.ai-trust-bar__human')?.addEventListener('click', (e) => {
|
||||
shell?.querySelector('.ai-welcome-human')?.addEventListener('click', (e) => {
|
||||
e.preventDefault();
|
||||
openNavTopic('contact');
|
||||
});
|
||||
|
||||
@ -45,23 +45,18 @@
|
||||
<ul>
|
||||
<li class="site-nav-dock">
|
||||
<a href="/" class="active">
|
||||
<i class="bi bi-house-door site-nav-dock__icon" aria-hidden="true"></i>
|
||||
<span data-i18n-key="Home">Home</span>
|
||||
</a>
|
||||
<a href="#services">
|
||||
<i class="bi bi-box-seam site-nav-dock__icon" aria-hidden="true"></i>
|
||||
<span data-i18n-key="Services">Services</span>
|
||||
</a>
|
||||
<a href="#pricing">
|
||||
<i class="bi bi-tag site-nav-dock__icon" aria-hidden="true"></i>
|
||||
<span data-i18n-key="Pricing">Pricing</span>
|
||||
</a>
|
||||
<a href="#about">
|
||||
<i class="bi bi-building site-nav-dock__icon" aria-hidden="true"></i>
|
||||
<span data-i18n-key="About">About</span>
|
||||
</a>
|
||||
<a href="#contact">
|
||||
<i class="bi bi-envelope site-nav-dock__icon" aria-hidden="true"></i>
|
||||
<span data-i18n-key="Contact">Contact</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user