Files
anxinyan/design-prototypes/anxinyan-user-ui-style-variants-v2-v3.html
wushumin edd1a02157 first
2026-05-11 15:28:27 +08:00

1001 lines
34 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>安心验 · 其他风格方向参考</title>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=IBM+Plex+Sans+SC:wght@400;500;600;700&family=Noto+Serif+SC:wght@500;600;700&display=swap" rel="stylesheet" />
<script crossorigin src="https://unpkg.com/react@18/umd/react.production.min.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"></script>
<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
<style>
:root {
--bg: #f6f1e8;
--ink: #1e1914;
--ink-soft: #73685a;
--line: rgba(110, 96, 78, 0.16);
--shadow: 0 24px 80px rgba(36, 28, 16, 0.12);
}
* { box-sizing: border-box; }
html, body {
margin: 0;
min-height: 100%;
background:
radial-gradient(circle at top left, rgba(214, 182, 115, 0.14), transparent 24%),
radial-gradient(circle at bottom right, rgba(23, 20, 18, 0.08), transparent 22%),
linear-gradient(180deg, #fbf8f2 0%, #f1eadf 100%);
color: var(--ink);
font-family: "IBM Plex Sans SC", -apple-system, BlinkMacSystemFont, sans-serif;
}
body { padding: 38px; }
#root { max-width: 1760px; margin: 0 auto; }
.page-shell {
display: grid;
gap: 26px;
}
.intro {
display: grid;
grid-template-columns: 1.15fr 0.85fr;
gap: 24px;
padding: 28px;
border-radius: 34px;
background: rgba(255, 253, 248, 0.8);
border: 1px solid rgba(193, 176, 147, 0.24);
box-shadow: var(--shadow);
}
.intro h1 {
margin: 14px 0 0;
font-family: "Cormorant Garamond", serif;
font-size: 56px;
line-height: 0.96;
letter-spacing: -0.03em;
}
.intro p {
margin: 14px 0 0;
font-size: 17px;
line-height: 1.85;
color: var(--ink-soft);
max-width: 760px;
}
.intro-kicker {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 10px 16px;
border-radius: 999px;
background: rgba(255,255,255,0.72);
color: var(--ink-soft);
font-size: 13px;
letter-spacing: 0.08em;
text-transform: uppercase;
width: fit-content;
}
.intro-tags {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 18px;
}
.intro-tag {
padding: 10px 14px;
border-radius: 999px;
background: rgba(214, 182, 115, 0.18);
color: #97721f;
font-size: 13px;
font-weight: 700;
}
.intro-side {
display: grid;
gap: 16px;
padding: 20px;
border-radius: 28px;
background: linear-gradient(165deg, #1b1814 0%, #2b261f 100%);
color: rgba(255, 248, 234, 0.9);
}
.brand-box {
display: flex;
align-items: center;
justify-content: center;
min-height: 118px;
border-radius: 22px;
background: rgba(255,255,255,0.88);
overflow: hidden;
padding: 12px;
}
.brand-box img {
max-width: 100%;
max-height: 90px;
object-fit: contain;
}
.side-title {
color: #efd184;
font-size: 18px;
font-weight: 700;
}
.side-copy {
color: rgba(255, 248, 234, 0.72);
font-size: 14px;
line-height: 1.8;
}
.direction-block {
padding: 28px;
border-radius: 34px;
background: rgba(255, 253, 248, 0.78);
border: 1px solid rgba(193, 176, 147, 0.22);
box-shadow: var(--shadow);
}
.direction-head {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 20px;
}
.direction-title {
margin: 0;
font-family: "Cormorant Garamond", serif;
font-size: 44px;
line-height: 1;
letter-spacing: -0.03em;
}
.direction-sub {
margin-top: 10px;
color: var(--ink-soft);
font-size: 15px;
line-height: 1.85;
max-width: 760px;
}
.direction-badge {
padding: 10px 16px;
border-radius: 999px;
background: rgba(214, 182, 115, 0.18);
color: #8f6b1d;
font-size: 13px;
font-weight: 700;
white-space: nowrap;
}
.device-row {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 20px;
justify-items: center;
}
.device-label {
margin-bottom: 10px;
color: var(--ink-soft);
font-size: 12px;
letter-spacing: 0.08em;
text-transform: uppercase;
text-align: center;
}
.device-wrap {
display: grid;
justify-items: center;
gap: 10px;
}
.screen-base {
min-height: 100%;
padding: 18px 18px 26px;
color: #1f1915;
position: relative;
}
.screen-title {
font-size: 12px;
letter-spacing: 0.08em;
text-transform: uppercase;
color: rgba(108, 97, 84, 0.78);
}
.screen-heading {
margin: 14px 0 0;
font-family: "Cormorant Garamond", serif;
font-size: 36px;
line-height: 0.98;
letter-spacing: -0.03em;
}
.screen-copy {
margin-top: 10px;
font-size: 12px;
line-height: 1.8;
color: rgba(91, 83, 73, 0.88);
}
.text-nav {
position: absolute;
left: 14px;
right: 14px;
bottom: 4px;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 6px;
padding: 10px 12px;
border-radius: 24px;
background: rgba(255,255,255,0.88);
border: 1px solid rgba(110, 96, 78, 0.08);
box-shadow: 0 10px 22px rgba(36,28,16,0.08);
}
.text-nav__item {
display: flex;
align-items: center;
justify-content: center;
min-height: 34px;
border-radius: 14px;
color: rgba(108, 97, 84, 0.92);
font-size: 11px;
font-weight: 700;
letter-spacing: 0.04em;
}
.text-nav__item--active {
background: linear-gradient(135deg, #d8b453 0%, #b88718 100%);
color: #1d1811;
box-shadow: 0 8px 16px rgba(184, 135, 24, 0.2);
}
.archive-shell {
background:
linear-gradient(180deg, #f8f1e4 0%, #efe4d3 100%);
}
.archive-divider {
height: 1px;
margin: 18px 0 14px;
background: linear-gradient(90deg, transparent 0%, rgba(78, 63, 42, 0.22) 22%, rgba(78, 63, 42, 0.22) 78%, transparent 100%);
}
.archive-card {
padding: 16px;
border-radius: 0;
background: rgba(255, 251, 244, 0.68);
border: 1px solid rgba(78, 63, 42, 0.12);
box-shadow: none;
}
.archive-card + .archive-card {
margin-top: 12px;
}
.archive-card__eyebrow {
color: #8e6232;
font-size: 11px;
letter-spacing: 0.08em;
text-transform: uppercase;
font-weight: 700;
}
.archive-card__title {
margin-top: 8px;
font-size: 16px;
font-weight: 700;
}
.archive-card__desc {
margin-top: 6px;
color: rgba(81, 67, 51, 0.82);
font-size: 12px;
line-height: 1.75;
}
.archive-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px 16px;
margin-top: 12px;
}
.archive-kv {
display: grid;
gap: 4px;
}
.archive-kv__label {
color: rgba(113, 97, 75, 0.72);
font-size: 10px;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.archive-kv__value {
color: #1b1712;
font-size: 13px;
font-weight: 700;
}
.archive-list-line {
display: flex;
justify-content: space-between;
gap: 12px;
padding: 12px 0;
border-top: 1px solid rgba(78, 63, 42, 0.12);
font-size: 12px;
}
.archive-list-line strong {
color: #1b1712;
font-size: 13px;
}
.gallery-shell {
background:
radial-gradient(circle at top left, rgba(224, 197, 138, 0.24), transparent 30%),
linear-gradient(180deg, #fff9f2 0%, #f5eee7 100%);
}
.gallery-hero {
padding: 18px;
border-radius: 28px;
background:
linear-gradient(150deg, rgba(255,255,255,0.9) 0%, rgba(247, 239, 226, 0.88) 100%);
border: 1px solid rgba(194, 176, 147, 0.24);
box-shadow: 0 14px 34px rgba(66, 48, 20, 0.08);
}
.gallery-chip-row {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 14px;
}
.gallery-chip {
padding: 8px 12px;
border-radius: 999px;
background: rgba(214, 182, 115, 0.14);
color: #916716;
font-size: 11px;
font-weight: 700;
}
.gallery-card {
padding: 14px;
border-radius: 24px;
background: rgba(255,255,255,0.78);
border: 1px solid rgba(194, 176, 147, 0.22);
box-shadow: 0 12px 26px rgba(61, 47, 20, 0.06);
}
.gallery-metric-row {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 10px;
margin-top: 16px;
}
.gallery-metric {
padding: 12px;
border-radius: 18px;
background: linear-gradient(180deg, #fff 0%, #f8f1e6 100%);
text-align: center;
}
.gallery-metric strong {
display: block;
font-family: "Cormorant Garamond", serif;
font-size: 28px;
line-height: 1;
color: #1e1814;
}
.gallery-metric span {
display: block;
margin-top: 8px;
color: rgba(95, 83, 69, 0.82);
font-size: 11px;
line-height: 1.5;
}
.gallery-action-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 10px;
margin-top: 16px;
}
.gallery-primary {
display: flex;
align-items: center;
justify-content: center;
min-height: 44px;
border-radius: 999px;
background: linear-gradient(135deg, #d9b65d 0%, #bf8d24 100%);
color: #1b160f;
font-size: 14px;
font-weight: 700;
box-shadow: 0 10px 22px rgba(191, 141, 36, 0.22);
}
.gallery-secondary {
display: flex;
align-items: center;
justify-content: center;
min-width: 108px;
min-height: 44px;
padding: 0 16px;
border-radius: 999px;
background: rgba(255,255,255,0.72);
border: 1px solid rgba(194, 176, 147, 0.24);
color: rgba(85, 74, 61, 0.94);
font-size: 12px;
font-weight: 700;
}
.certificate-card {
margin-top: 14px;
padding: 16px;
border-radius: 26px;
background: linear-gradient(180deg, #ffffff 0%, #f8f2ea 100%);
border: 1px solid rgba(194, 176, 147, 0.22);
}
.certificate-card__title {
font-family: "Cormorant Garamond", serif;
font-size: 34px;
line-height: 1;
color: #1e1814;
margin: 0;
}
.certificate-result {
margin-top: 14px;
padding: 14px;
border-radius: 18px;
background: rgba(61, 112, 81, 0.08);
}
.certificate-result strong {
display: block;
color: #2f634d;
font-size: 24px;
line-height: 1.2;
}
.certificate-result span {
display: block;
margin-top: 6px;
color: rgba(88, 80, 71, 0.84);
font-size: 12px;
line-height: 1.7;
}
.badge-line {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 14px;
}
.badge {
padding: 8px 11px;
border-radius: 999px;
background: rgba(214, 182, 115, 0.14);
color: #8d6720;
font-size: 11px;
font-weight: 700;
}
@media (max-width: 1440px) {
.device-row {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.intro {
grid-template-columns: 1fr;
}
}
@media (max-width: 860px) {
body { padding: 20px; }
.device-row { grid-template-columns: 1fr; }
.intro h1 { font-size: 42px; }
}
</style>
</head>
<body>
<div id="root"></div>
<script type="text/babel">
/*
Huashu-Design · Variations pass
用户反馈:
1. 继续给其他风格参考
2. 底部四个主按键不要带图标
因此本稿不再重复 V1而是给两个差异化方向
B. 档案册 / 信息建筑派
C. 珠宝盒 / 高级陈列派
*/
const iosFrameStyles = {
wrapper: {
display: "inline-block",
padding: 12,
background: "#000",
borderRadius: 60,
boxShadow: "0 0 0 2px #1f2937, 0 20px 60px rgba(0,0,0,0.3)",
position: "relative",
},
screen: {
position: "relative",
borderRadius: 48,
overflow: "hidden",
background: "#fff",
},
statusBar: {
position: "absolute",
top: 0,
left: 0,
right: 0,
height: 54,
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "0 32px 0 32px",
fontSize: 16,
fontWeight: 600,
fontFamily: '-apple-system, "SF Pro Text", sans-serif',
zIndex: 20,
pointerEvents: "none",
},
dynamicIsland: {
position: "absolute",
top: 12,
left: "50%",
transform: "translateX(-50%)",
width: 124,
height: 36,
background: "#000",
borderRadius: 999,
zIndex: 30,
},
statusIcons: {
display: "flex",
alignItems: "center",
gap: 6,
},
signalIcon: {
display: "flex",
alignItems: "flex-end",
gap: 2,
height: 12,
},
signalBar: {
width: 3,
background: "currentColor",
borderRadius: 1,
},
batteryIcon: {
width: 26,
height: 12,
border: "1.5px solid currentColor",
borderRadius: 3,
padding: 1,
position: "relative",
opacity: 0.8,
},
batteryCap: {
position: "absolute",
top: 3,
right: -3,
width: 2,
height: 6,
background: "currentColor",
borderRadius: "0 1px 1px 0",
},
content: {
position: "absolute",
top: 54,
left: 0,
right: 0,
bottom: 34,
overflow: "auto",
},
homeIndicator: {
position: "absolute",
bottom: 10,
left: "50%",
transform: "translateX(-50%)",
width: 140,
height: 5,
background: "rgba(0,0,0,0.3)",
borderRadius: 999,
zIndex: 10,
},
};
function IosFrame({ children, width = 393, height = 852, time = "9:41", battery = 87 }) {
return (
<div style={iosFrameStyles.wrapper}>
<div style={{ ...iosFrameStyles.screen, width, height }}>
<div style={{ ...iosFrameStyles.statusBar, color: "#000" }}>
<span>{time}</span>
<div style={iosFrameStyles.statusIcons}>
<div style={iosFrameStyles.signalIcon}>
<div style={{ ...iosFrameStyles.signalBar, height: 4 }} />
<div style={{ ...iosFrameStyles.signalBar, height: 6 }} />
<div style={{ ...iosFrameStyles.signalBar, height: 9 }} />
<div style={{ ...iosFrameStyles.signalBar, height: 11 }} />
</div>
<svg width="16" height="12" viewBox="0 0 16 12" fill="none" style={{ color: "#000" }}>
<path d="M8 11.5a1 1 0 100-2 1 1 0 000 2z" fill="currentColor" />
<path d="M3 7.5a7 7 0 0110 0" stroke="currentColor" strokeWidth="1.3" fill="none" strokeLinecap="round" />
<path d="M1 4.5a11 11 0 0114 0" stroke="currentColor" strokeWidth="1.3" fill="none" strokeLinecap="round" opacity="0.7" />
</svg>
<div style={iosFrameStyles.batteryIcon}>
<div style={{ width: `${battery}%`, height: "100%", background: "currentColor", borderRadius: 1 }} />
<div style={iosFrameStyles.batteryCap} />
</div>
</div>
</div>
<div style={iosFrameStyles.dynamicIsland} />
<div style={iosFrameStyles.content}>{children}</div>
<div style={iosFrameStyles.homeIndicator} />
</div>
</div>
);
}
function TextNav({ active }) {
const items = ["首页", "订单", "报告", "我的"];
return (
<div className="text-nav">
{items.map((item) => (
<div key={item} className={`text-nav__item ${item === active ? "text-nav__item--active" : ""}`}>
{item}
</div>
))}
</div>
);
}
function ArchiveHome() {
return (
<div className="screen-base archive-shell">
<div className="screen-title">方向 B · 档案册式</div>
<h3 className="screen-heading" style={{ fontFamily: "'Noto Serif SC', serif", fontSize: 34 }}>安心验首页</h3>
<p className="screen-copy">像翻开一本机构档案册首页更克制更理性用户感受到的是专业判断而不是营销推动</p>
<div className="archive-divider" />
<div className="archive-card">
<div className="archive-card__eyebrow">鉴证总览</div>
<div className="archive-card__title">让每一步都留痕让每一份结果有据可查</div>
<div className="archive-card__desc">流程寄送补资料报告与验真都被组织进一套秩序中更像专业服务机构而不是商详页</div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">服务入口</div>
<div className="archive-list-line"><strong>实物鉴定</strong><span></span></div>
<div className="archive-list-line"><strong>中检鉴定</strong><span></span></div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">机构摘要</div>
<div className="archive-grid">
<div className="archive-kv"><div className="archive-kv__label">累计申请</div><div className="archive-kv__value">12,800+</div></div>
<div className="archive-kv"><div className="archive-kv__label">标准时效</div><div className="archive-kv__value">48h</div></div>
<div className="archive-kv"><div className="archive-kv__label">报告验真</div><div className="archive-kv__value">100%</div></div>
<div className="archive-kv"><div className="archive-kv__label">服务属性</div><div className="archive-kv__value"></div></div>
</div>
</div>
<TextNav active="首页" />
</div>
);
}
function ArchiveOrder() {
return (
<div className="screen-base archive-shell">
<div className="screen-title">方向 B · 订单详情</div>
<h3 className="screen-heading" style={{ fontFamily: "'Noto Serif SC', serif", fontSize: 34 }}>订单详情</h3>
<p className="screen-copy">重点不是漂亮卡片而是像案件档案一样把当前状态资料和轨迹梳理清楚</p>
<div className="archive-divider" />
<div className="archive-card">
<div className="archive-card__eyebrow">当前状态</div>
<div className="archive-card__title">鉴定中心已收货</div>
<div className="archive-card__desc">商品已签收后续如需补资料或正式报告生成会同步至订单页与消息中心</div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">商品摘要</div>
<div className="archive-grid">
<div className="archive-kv"><div className="archive-kv__label">品类 / 品牌</div><div className="archive-kv__value">箱包 / LV</div></div>
<div className="archive-kv"><div className="archive-kv__label">型号 / 规格</div><div className="archive-kv__value">Neverfull MM / 42</div></div>
<div className="archive-kv"><div className="archive-kv__label">购买渠道</div><div className="archive-kv__value"></div></div>
<div className="archive-kv"><div className="archive-kv__label">使用情况</div><div className="archive-kv__value">使</div></div>
</div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">处理轨迹</div>
<div className="archive-list-line"><strong>2026-04-23 15:39</strong><span></span></div>
<div className="archive-list-line"><strong>2026-04-23 13:58</strong><span></span></div>
<div className="archive-list-line"><strong>2026-04-23 12:16</strong><span></span></div>
</div>
<TextNav active="订单" />
</div>
);
}
function ArchiveReport() {
return (
<div className="screen-base archive-shell">
<div className="screen-title">方向 B · 报告详情</div>
<h3 className="screen-heading" style={{ fontFamily: "'Noto Serif SC', serif", fontSize: 34 }}>报告详情</h3>
<p className="screen-copy">报告页更像正式证书的数字镜像强调阅读秩序留白和凭证编号而不是营销式大按钮</p>
<div className="archive-divider" />
<div className="archive-card">
<div className="archive-card__eyebrow">鉴定结论</div>
<div className="archive-card__title">正品</div>
<div className="archive-card__desc">符合正品工艺特征包身结构五金细节与编码信息均与品牌标准一致</div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">凭证信息</div>
<div className="archive-grid">
<div className="archive-kv"><div className="archive-kv__label">报告编号</div><div className="archive-kv__value">AXY-R-20260423-8841</div></div>
<div className="archive-kv"><div className="archive-kv__label">机构</div><div className="archive-kv__value"></div></div>
<div className="archive-kv"><div className="archive-kv__label">商品</div><div className="archive-kv__value">Neverfull MM</div></div>
<div className="archive-kv"><div className="archive-kv__label">颜色 / 规格</div><div className="archive-kv__value">白盘 / 42</div></div>
</div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">说明</div>
<div className="archive-card__desc">本报告基于送检商品及当前提交资料出具若商品状态或所附资料发生变化报告结论可能不再适用</div>
</div>
<TextNav active="报告" />
</div>
);
}
function ArchiveMessages() {
return (
<div className="screen-base archive-shell">
<div className="screen-title">方向 B · 消息中心</div>
<h3 className="screen-heading" style={{ fontFamily: "'Noto Serif SC', serif", fontSize: 34 }}>消息中心</h3>
<p className="screen-copy">消息页像一份机构通知簿分类筛选与时间分组更克制减少视觉噪音</p>
<div className="archive-divider" />
<div className="archive-card">
<div className="archive-card__eyebrow">筛选条件</div>
<div className="archive-list-line"><strong>全部</strong><span> · · </span></div>
</div>
<div className="archive-card">
<div className="archive-card__eyebrow">今天</div>
<div className="archive-list-line"><strong>报告已出具</strong><span></span></div>
<div className="archive-list-line"><strong>请补充鉴定资料</strong><span></span></div>
</div>
<TextNav active="我的" />
</div>
);
}
function GalleryHome() {
return (
<div className="screen-base gallery-shell">
<div className="gallery-hero">
<div className="screen-title">方向 C · 珠宝盒式</div>
<h3 className="screen-heading">安心验首页</h3>
<p className="screen-copy">把首页做得更像高级服务陈列柜更轻盈更有光泽更偏消费奢品服务体验</p>
<div className="gallery-chip-row">
<div className="gallery-chip">独立第三方</div>
<div className="gallery-chip">报告可验真</div>
<div className="gallery-chip">流程可追踪</div>
</div>
<div className="gallery-action-row">
<div className="gallery-primary">立即发起鉴定</div>
<div className="gallery-secondary">服务说明</div>
</div>
</div>
<div className="gallery-metric-row">
<div className="gallery-metric"><strong>48h</strong><span></span></div>
<div className="gallery-metric"><strong>100%</strong><span></span></div>
<div className="gallery-metric"><strong>12.8k</strong><span></span></div>
</div>
<div className="gallery-card" style={{ marginTop: 16 }}>
<div className="archive-card__eyebrow">服务入口</div>
<div className="archive-list-line"><strong>实物鉴定</strong><span></span></div>
<div className="archive-list-line"><strong>中检鉴定</strong><span></span></div>
</div>
<TextNav active="首页" />
</div>
);
}
function GalleryService() {
return (
<div className="screen-base gallery-shell">
<div className="gallery-hero">
<div className="screen-title">方向 C · 服务选择</div>
<h3 className="screen-heading">先选服务再进商品信息</h3>
<p className="screen-copy">在这个方向里服务选择页更像精品服务目录信息被压缩得更轻巧但气质更高级</p>
</div>
<div className="stack" style={{ marginTop: 16 }}>
<div className="gallery-card">
<div className="badge-line">
<div className="badge">当前推荐</div>
</div>
<div className="archive-card__title" style={{ marginTop: 10 }}>实物鉴定</div>
<div className="archive-card__desc">适合标准交付强调流程透明结果清晰与凭证感</div>
<div className="archive-list-line"><strong>¥99 </strong><span> 48 </span></div>
</div>
<div className="gallery-card">
<div className="badge-line">
<div className="badge">更高规格</div>
</div>
<div className="archive-card__title" style={{ marginTop: 10 }}>中检鉴定</div>
<div className="archive-card__desc">更适合高要求场景机构规格更高时效与价格也相应变化</div>
<div className="archive-list-line"><strong>¥199 </strong><span></span></div>
</div>
</div>
<TextNav active="首页" />
</div>
);
}
function GalleryOrder() {
return (
<div className="screen-base gallery-shell">
<div className="gallery-card">
<div className="badge-line">
<div className="badge">鉴定中心已收货</div>
</div>
<h3 className="screen-heading" style={{ marginTop: 12 }}>订单详情</h3>
<p className="screen-copy">这条路线会让订单页更像服务礼盒内页焦点在当前动作和用户感受到的被照料感</p>
</div>
<div className="gallery-card" style={{ marginTop: 14, background: "linear-gradient(160deg, #1a1714 0%, #2d241c 100%)", color: "#fff7ea" }}>
<div className="archive-card__eyebrow" style={{ color: "#f0d48e" }}>当前建议动作</div>
<div className="archive-card__title" style={{ color: "#fff7ea", marginTop: 8 }}>等待专业鉴定与复核</div>
<div className="archive-card__desc" style={{ color: "rgba(255,247,234,0.76)" }}>商品已签收后续如需补资料正式报告生成或安排回寄都会同步提醒</div>
</div>
<div className="gallery-card" style={{ marginTop: 14 }}>
<div className="archive-card__eyebrow">商品摘要</div>
<div className="archive-grid">
<div className="archive-kv"><div className="archive-kv__label">品类 / 品牌</div><div className="archive-kv__value">箱包 / LV</div></div>
<div className="archive-kv"><div className="archive-kv__label">型号 / 规格</div><div className="archive-kv__value">Neverfull MM / 42</div></div>
</div>
</div>
<TextNav active="订单" />
</div>
);
}
function GalleryReport() {
return (
<div className="screen-base gallery-shell">
<div className="certificate-card">
<div className="badge-line">
<div className="badge">正式结果凭证</div>
<div className="badge">可验真</div>
</div>
<h3 className="certificate-card__title">鉴定报告</h3>
<div className="certificate-result">
<strong>正品</strong>
<span>符合正品工艺特征包身结构五金细节与编码信息均与品牌标准一致</span>
</div>
</div>
<div className="gallery-card" style={{ marginTop: 14 }}>
<div className="archive-card__eyebrow">商品摘要</div>
<div className="archive-list-line"><strong>Neverfull MM</strong><span>箱包 / Louis Vuitton</span></div>
<div className="archive-list-line"><strong>白盘 / 42</strong><span>AXY-R-20260423-8841</span></div>
</div>
<div className="gallery-card" style={{ marginTop: 14 }}>
<div className="archive-card__eyebrow">报告凭证</div>
<div className="gallery-action-row" style={{ gridTemplateColumns: "1fr auto" }}>
<div className="archive-card__desc" style={{ marginTop: 0 }}>支持扫码或输入编号验真请以验真页面结果为准</div>
<div className="gallery-primary" style={{ minWidth: 100 }}>去验真</div>
</div>
</div>
<TextNav active="报告" />
</div>
);
}
function Device({ label, children }) {
return (
<div className="device-wrap">
<div className="device-label">{label}</div>
<IosFrame>{children}</IosFrame>
</div>
);
}
function App() {
return (
<div className="page-shell">
<section className="intro">
<div>
<div className="intro-kicker">Huashu-Design · Style Variations</div>
<h1>安心验用户端<br />其他风格方向参考</h1>
<p>
基于你刚才的反馈我保持同样的功能结构但把视觉语言拉开差异重点让你判断
这个产品更像专业机构还是更像高级服务品牌
</p>
<div className="intro-tags">
<div className="intro-tag">共同要求底部四主按键改成纯文字</div>
<div className="intro-tag">方向 B档案册 / 信息建筑</div>
<div className="intro-tag">方向 C珠宝盒 / 高级陈列</div>
</div>
</div>
<aside className="intro-side">
<div className="brand-box">
<img src="../logo.jpeg" alt="安心验品牌标识参考" />
</div>
<div className="side-title">这两套参考怎么区分看</div>
<div className="side-copy">
方向 B 更强调秩序可信专业判断方向 C 更强调高级感服务陈列和消费端亲和力
两者都保留黑金识别但气质重心不同
</div>
</aside>
</section>
<section className="direction-block">
<div className="direction-head">
<div>
<h2 className="direction-title">方向 B · 档案册 / 信息建筑派</h2>
<div className="direction-sub">
更像一家专业鉴定机构的数字档案册排版更规整边界更克制阅读更安静适合强调公信力流程可信度
</div>
</div>
<div className="direction-badge">理性 / 克制 / 专业</div>
</div>
<div className="device-row">
<Device label="B1 · 首页"><ArchiveHome /></Device>
<Device label="B2 · 订单详情"><ArchiveOrder /></Device>
<Device label="B3 · 报告详情"><ArchiveReport /></Device>
<Device label="B4 · 消息中心"><ArchiveMessages /></Device>
</div>
</section>
<section className="direction-block">
<div className="direction-head">
<div>
<h2 className="direction-title">方向 C · 珠宝盒 / 高级陈列派</h2>
<div className="direction-sub">
更像高级服务品牌的小程序底色更轻盈卡片更柔和信息组织像打开一只珠宝盒适合强调高级感服务品质
</div>
</div>
<div className="direction-badge">轻盈 / 高级 / 陈列感</div>
</div>
<div className="device-row">
<Device label="C1 · 首页"><GalleryHome /></Device>
<Device label="C2 · 服务选择"><GalleryService /></Device>
<Device label="C3 · 订单详情"><GalleryOrder /></Device>
<Device label="C4 · 报告详情"><GalleryReport /></Device>
</div>
</section>
</div>
);
}
ReactDOM.createRoot(document.getElementById("root")).render(<App />);
</script>
</body>
</html>