feat(ops): ECR-007 行为分析与 ECR-008 内容运营后台
落地埋点 ingest/数据看板、首页宫格 CMS 与测评上下架;含账号引导、问答流式与免责声明去重,以及 review P1 审计同事务修复。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,36 +1,76 @@
|
||||
/* 愈心谷运营后台 — 对齐 packages/ui tokens */
|
||||
:root {
|
||||
--bg: #f3f0eb;
|
||||
--panel: #fffdf9;
|
||||
--ink: #1c1917;
|
||||
--muted: #78716c;
|
||||
--line: #e7e5e4;
|
||||
--accent: #c45c4a;
|
||||
--color-primary: #e54d42;
|
||||
--color-primary-hover: #d44338;
|
||||
--color-primary-soft: #ffe4e4;
|
||||
--color-bg-start: #ffd1c7;
|
||||
--color-bg-end: #ffc8b5;
|
||||
--color-bg-sheet: #fff9f7;
|
||||
--color-surface: #ffffff;
|
||||
--color-text-primary: #333333;
|
||||
--color-text-secondary: #999999;
|
||||
--color-border: #f0e6e2;
|
||||
--color-accent-gold: #c8923a;
|
||||
--color-accent-blue: #4a90e2;
|
||||
--color-accent-green: #5cb85c;
|
||||
--color-error: #e54d42;
|
||||
|
||||
--bg: linear-gradient(165deg, #ffe8e0 0%, #fff5f1 42%, #ffece5 100%);
|
||||
--panel: #fffdfb;
|
||||
--ink: #333333;
|
||||
--muted: #9a8f8b;
|
||||
--line: #f0e6e2;
|
||||
--accent: #e54d42;
|
||||
--accent-ink: #fff;
|
||||
--danger: #b91c1c;
|
||||
font-family: "IBM Plex Sans", "PingFang SC", "Noto Sans SC", sans-serif;
|
||||
--danger: #e54d42;
|
||||
--radius: 14px;
|
||||
--shadow: 0 8px 28px rgba(229, 77, 66, 0.08);
|
||||
|
||||
font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
|
||||
color: var(--ink);
|
||||
background: var(--bg);
|
||||
background: var(--color-bg-sheet);
|
||||
}
|
||||
|
||||
* { box-sizing: border-box; }
|
||||
body { margin: 0; min-height: 100vh; background: linear-gradient(160deg, #f7f3ee 0%, #ebe6df 45%, #f3efea 100%); }
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
background: var(--bg);
|
||||
background-attachment: fixed;
|
||||
}
|
||||
a { color: inherit; text-decoration: none; }
|
||||
button, input, select { font: inherit; }
|
||||
table { width: 100%; border-collapse: collapse; }
|
||||
th, td { text-align: left; padding: 0.65rem 0.75rem; border-bottom: 1px solid var(--line); font-size: 0.92rem; }
|
||||
th { color: var(--muted); font-weight: 600; }
|
||||
.btn {
|
||||
border: 0; border-radius: 8px; padding: 0.55rem 1rem; cursor: pointer;
|
||||
background: var(--accent); color: var(--accent-ink);
|
||||
border: 0; border-radius: 12px; padding: 0.55rem 1rem; cursor: pointer;
|
||||
background: linear-gradient(135deg, #ff7a6e, var(--accent));
|
||||
color: var(--accent-ink);
|
||||
box-shadow: 0 6px 16px rgba(229, 77, 66, 0.22);
|
||||
font-weight: 650;
|
||||
}
|
||||
.btn.ghost { background: transparent; color: var(--ink); border: 1px solid var(--line); }
|
||||
.btn:disabled { opacity: 0.55; cursor: not-allowed; }
|
||||
.btn.ghost {
|
||||
background: transparent; color: var(--ink);
|
||||
border: 1px solid var(--line); box-shadow: none; font-weight: 500;
|
||||
}
|
||||
.btn:disabled { opacity: 0.55; cursor: not-allowed; box-shadow: none; }
|
||||
.field { display: flex; flex-direction: column; gap: 0.35rem; margin-bottom: 0.9rem; }
|
||||
.field input, .field select {
|
||||
border: 1px solid var(--line); border-radius: 8px; padding: 0.6rem 0.75rem; background: #fff;
|
||||
border: 1.5px solid var(--line); border-radius: 12px; padding: 0.6rem 0.75rem;
|
||||
background: #fdfaf8;
|
||||
}
|
||||
.field input:focus, .field select:focus {
|
||||
outline: none; border-color: #f0b8b0;
|
||||
box-shadow: 0 0 0 3px rgba(229, 77, 66, 0.1);
|
||||
}
|
||||
.err { color: var(--danger); font-size: 0.9rem; }
|
||||
.muted { color: var(--muted); }
|
||||
.card {
|
||||
background: var(--panel); border: 1px solid var(--line); border-radius: 12px; padding: 1.1rem 1.2rem;
|
||||
background: var(--panel);
|
||||
border: 1px solid rgba(255, 255, 255, 0.9);
|
||||
border-radius: var(--radius);
|
||||
padding: 1.1rem 1.2rem;
|
||||
box-shadow: var(--shadow);
|
||||
}
|
||||
code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
|
||||
|
||||
Reference in New Issue
Block a user