永久会员与模板库后台化:预览门控、轻量首页与 Admin CRUD

- 会员改为永久激活方案;云端文件不再拦截非会员;预览弹窗内导出/打印才校验
- 首页最近文件支持本地记录,登录后与云端合并;移除独立会员页与订阅页
- 模板库入库管理:soon_templates 表、Admin 上传 CRUD、/templates 轻量列表与按需下载

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
24kycj
2026-06-08 23:52:56 +08:00
parent 152228d41f
commit ebe191b06d
45 changed files with 1616 additions and 1259 deletions
@@ -222,3 +222,86 @@
opacity: 0.45;
cursor: not-allowed;
}
.soon-login-gate__form {
padding: 0 24px 8px;
display: flex;
flex-direction: column;
gap: 12px;
}
.soon-login-gate__form .soon-input-wrap {
width: 100%;
}
.soon-login-gate__error {
color: #f87171;
font-size: 13px;
margin: 0;
}
.soon-login-gate__links {
padding: 0 24px 16px;
font-size: 13px;
color: rgba(255, 255, 255, 0.65);
}
.soon-login-gate__links a {
color: #7dd3fc;
}
.soon-activate-price {
padding: 16px 20px;
border-radius: 12px;
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(255, 255, 255, 0.08);
display: flex;
flex-direction: column;
gap: 6px;
}
.soon-activate-price__label {
font-size: 13px;
color: rgba(255, 255, 255, 0.55);
}
.soon-activate-price__value {
font-size: 28px;
font-weight: 700;
color: #fff;
}
.soon-activate-price__hint {
font-size: 12px;
color: rgba(255, 255, 255, 0.5);
}
.soon-activate-channels {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 16px;
}
.soon-activate-channel {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 8px 14px;
border-radius: 999px;
border: 1px solid rgba(255, 255, 255, 0.12);
font-size: 13px;
cursor: pointer;
}
.soon-activate-channel.is-active {
border-color: #38bdf8;
background: rgba(56, 189, 248, 0.12);
}
.soon-activate-load {
margin: 12px 0 0;
font-size: 13px;
color: rgba(255, 255, 255, 0.55);
min-height: 18px;
}