- 购物车/商品/论坛表面复用 #77 soft recipe(mix 边 + soft ring) - 论坛 visibility=pay:订单 resource + 余额扣费闭环 - VIP 价/免费解锁 + 购买 CTA/AJAX,复用现有 Order/Credits Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
658 lines
14 KiB
CSS
658 lines
14 KiB
CSS
/* Forum home-shell refinement */
|
|
.aksrt-forum-board__hero {
|
|
margin-bottom: 20px;
|
|
padding: 24px;
|
|
border-radius: var(--radius-2xl, 16px);
|
|
background: linear-gradient(180deg, rgba(240,68,148,0.05), rgba(255,255,255,0.96));
|
|
border: none;
|
|
box-shadow: var(--shadow-sm);
|
|
}
|
|
|
|
.aksrt-forum-board__summary {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 12px;
|
|
margin-top: 16px;
|
|
}
|
|
|
|
.aksrt-forum-board__summary-item {
|
|
min-width: 120px;
|
|
padding: 10px 14px;
|
|
border-radius: 999px;
|
|
background: var(--surface-1, #fff);
|
|
border: 1px solid var(--color-line-soft, rgba(0,0,0,0.06));
|
|
}
|
|
|
|
.aksrt-forum-board__summary-label {
|
|
display: block;
|
|
margin-bottom: 4px;
|
|
font-size: 12px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-board__layout {
|
|
align-items: start;
|
|
}
|
|
|
|
.aksrt-forum-board__governance--inline {
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.aksrt-forum-board__sidebar {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 16px;
|
|
}
|
|
|
|
.aksrt-forum-board__governance-card--sidebar {
|
|
position: sticky;
|
|
top: calc(var(--nav-height, 64px) + 16px);
|
|
}
|
|
|
|
.aksrt-forum-board__moderators--stacked {
|
|
flex-direction: column;
|
|
align-items: stretch;
|
|
}
|
|
|
|
.aksrt-forum-board {
|
|
padding-top: 24px;
|
|
padding-bottom: 48px;
|
|
}
|
|
|
|
.aksrt-forum-board__header {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
gap: 16px;
|
|
margin-bottom: 24px;
|
|
padding: 22px;
|
|
background: var(--surface-1, #fff);
|
|
border: none;
|
|
border-radius: var(--radius-2xl, 16px);
|
|
box-shadow: var(--shadow-sm);
|
|
}
|
|
|
|
.aksrt-forum-board__title {
|
|
margin: 0 0 4px;
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
color: var(--color-ink);
|
|
}
|
|
|
|
.aksrt-forum-board__desc {
|
|
margin: 0 0 8px;
|
|
font-size: 14px;
|
|
color: var(--color-ink-3, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-board__meta {
|
|
display: flex;
|
|
gap: 16px;
|
|
font-size: 13px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-board__meta i {
|
|
margin-right: 4px;
|
|
}
|
|
|
|
.aksrt-forum-board__compose-btn {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
padding: 8px 18px;
|
|
border-radius: 8px;
|
|
background: var(--color-primary);
|
|
color: #fff;
|
|
text-decoration: none;
|
|
font-size: 14px;
|
|
font-weight: 500;
|
|
white-space: nowrap;
|
|
transition: opacity 0.15s;
|
|
}
|
|
|
|
.aksrt-forum-board__compose-btn:hover {
|
|
opacity: 0.85;
|
|
}
|
|
|
|
.aksrt-forum-board__actions {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 10px;
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
.aksrt-forum-board__manage-btn {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
padding: 8px 16px;
|
|
border-radius: 8px;
|
|
border: 1px solid var(--color-line, #d9d9d9);
|
|
background: var(--surface-1, #fff);
|
|
color: var(--color-ink);
|
|
text-decoration: none;
|
|
cursor: pointer;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.aksrt-forum-board__manage-btn--danger {
|
|
border-color: var(--color-error, #f5222d);
|
|
color: var(--color-error, #f5222d);
|
|
}
|
|
|
|
.aksrt-forum-board__manage-btn--danger:hover {
|
|
background: var(--color-error, #f5222d);
|
|
color: #fff;
|
|
}
|
|
|
|
.aksrt-forum-board__governance {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
|
gap: 16px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.aksrt-forum-board__governance-card {
|
|
padding: 18px;
|
|
background: var(--surface-1, #fff);
|
|
border: none;
|
|
border-radius: var(--main-radius, var(--radius, 8px));
|
|
box-shadow: var(--shadow-sm);
|
|
}
|
|
|
|
.aksrt-forum-board__section-title {
|
|
margin: 0 0 10px;
|
|
font-size: 15px;
|
|
font-weight: 600;
|
|
color: var(--color-ink);
|
|
}
|
|
|
|
.aksrt-forum-board__moderators {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 10px;
|
|
}
|
|
|
|
.aksrt-forum-board__moderator {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 6px 10px;
|
|
border-radius: 999px;
|
|
background: var(--surface-1, #f8f9fa);
|
|
}
|
|
|
|
.aksrt-forum-board__moderator img {
|
|
width: 36px;
|
|
height: 36px;
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.aksrt-forum-board__application-form textarea {
|
|
width: 100%;
|
|
border: 1px solid var(--color-line, #d9d9d9);
|
|
border-radius: 8px;
|
|
padding: 10px 12px;
|
|
resize: vertical;
|
|
font-family: inherit;
|
|
}
|
|
|
|
.aksrt-forum-board__application-actions {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.aksrt-forum-board__apply-btn {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 8px 14px;
|
|
border: none;
|
|
border-radius: 8px;
|
|
background: var(--color-primary);
|
|
color: #fff;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.aksrt-forum-board__application-note {
|
|
color: var(--color-ink-3, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-board__application-reason {
|
|
margin: 10px 0;
|
|
padding: 10px 12px;
|
|
border-left: 3px solid color-mix(in srgb, var(--color-primary) 55%, transparent);
|
|
background: var(--surface-2, #f8fafc);
|
|
color: var(--color-ink-3, #64748b);
|
|
font-size: 13px;
|
|
}
|
|
|
|
.aksrt-forum-board__governance-card .aksrt-forum-board__apply-btn {
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* Sticky section */
|
|
.aksrt-forum-board__sticky {
|
|
margin-bottom: 16px;
|
|
padding: 12px 16px;
|
|
background: var(--surface-1, #fff);
|
|
border-radius: 8px;
|
|
border-left: 3px solid color-mix(in srgb, var(--color-primary) 55%, transparent);
|
|
}
|
|
|
|
.aksrt-forum-board__sticky h3 {
|
|
margin: 0 0 8px;
|
|
font-size: 13px;
|
|
color: var(--color-ink-3, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-board__sticky-item {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 6px 0;
|
|
text-decoration: none;
|
|
color: var(--color-ink);
|
|
font-size: 14px;
|
|
}
|
|
|
|
.aksrt-forum-board__sticky-item:hover {
|
|
color: var(--color-primary);
|
|
}
|
|
|
|
.aksrt-forum-board__sticky-meta {
|
|
font-size: 12px;
|
|
color: var(--color-ink-4, #c0c4cc);
|
|
}
|
|
|
|
.aksrt-forum-board__sticky-badge {
|
|
display: inline-block;
|
|
padding: 1px 6px;
|
|
border-radius: 3px;
|
|
font-size: 11px;
|
|
font-weight: 500;
|
|
background: var(--color-primary);
|
|
color: #fff;
|
|
margin-right: 6px;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
/* Topic list items */
|
|
.aksrt-forum-board__topics {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 1px;
|
|
}
|
|
|
|
.aksrt-forum-topic-item {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
padding: 16px 18px;
|
|
background: var(--surface-1, #fff);
|
|
border-bottom: 1px solid var(--color-line-soft);
|
|
transition: background 0.15s, box-shadow 0.15s;
|
|
}
|
|
|
|
.aksrt-forum-topic-item:first-child {
|
|
border-radius: 8px 8px 0 0;
|
|
}
|
|
|
|
.aksrt-forum-topic-item:last-child {
|
|
border-radius: 0 0 8px 8px;
|
|
}
|
|
|
|
.aksrt-forum-topic-item:hover {
|
|
background: var(--surface-4, #f8f9fa);
|
|
}
|
|
|
|
.aksrt-forum-topic-item.is-sticky {
|
|
background: var(--surface-2, #f0f5ff);
|
|
}
|
|
|
|
.aksrt-forum-topic-item.is-featured {
|
|
border-left: 3px solid var(--color-success, #52c41a);
|
|
}
|
|
|
|
.aksrt-forum-topic-item__avatar img {
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__body {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__title {
|
|
font-size: 15px;
|
|
font-weight: 500;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__title a {
|
|
color: var(--color-ink);
|
|
text-decoration: none;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__title a:hover {
|
|
color: var(--color-primary);
|
|
}
|
|
|
|
.aksrt-forum-topic-item__badge {
|
|
display: inline-block;
|
|
padding: 1px 6px;
|
|
border-radius: 3px;
|
|
font-size: 11px;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__badge--sticky {
|
|
background: var(--color-primary);
|
|
color: #fff;
|
|
}
|
|
|
|
/* 置顶分级视觉区分(§7.3):超级置顶加深色,全局置顶用红色凸显。 */
|
|
.aksrt-forum-topic-item__badge--sticky-super {
|
|
background: var(--focus-color, #fd53a1);
|
|
color: #fff;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__badge--sticky-global {
|
|
background: #e53e3e;
|
|
color: #fff;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__badge--featured {
|
|
background: var(--color-success, #52c41a);
|
|
color: #fff;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__badge--muted {
|
|
background: var(--surface-2, #f5f7fa);
|
|
color: var(--color-ink-3, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-topic-item__lock {
|
|
color: var(--color-warning, #fa8c16);
|
|
font-size: 12px;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__meta {
|
|
display: flex;
|
|
gap: 12px;
|
|
margin-top: 3px;
|
|
font-size: 12px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-topic-item__stats {
|
|
display: flex;
|
|
gap: 12px;
|
|
font-size: 12px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-topic-item__stats i {
|
|
margin-right: 3px;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__actions {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 6px;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__action {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 6px 10px;
|
|
border-radius: 999px;
|
|
border: 1px solid var(--color-line, #d9d9d9);
|
|
background: #fff;
|
|
color: var(--color-ink);
|
|
text-decoration: none;
|
|
cursor: pointer;
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.aksrt-forum-topic-item__action--link {
|
|
background: var(--surface-1, #f8f9fa);
|
|
}
|
|
|
|
/* Pagination */
|
|
.aksrt-forum-board__pagination {
|
|
display: flex;
|
|
justify-content: center;
|
|
padding: 20px 0;
|
|
}
|
|
|
|
/* Empty state */
|
|
.aksrt-forum-board__empty {
|
|
text-align: center;
|
|
padding: 48px 24px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum-board__empty i {
|
|
font-size: 40px;
|
|
margin-bottom: 12px;
|
|
display: block;
|
|
}
|
|
|
|
.aksrt-forum-board__empty a {
|
|
display: inline-block;
|
|
margin-top: 12px;
|
|
color: var(--color-primary);
|
|
}
|
|
|
|
|
|
/* Board sort tabs */
|
|
.aksrt-forum-board__tabs {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 8px;
|
|
margin: 0 0 16px;
|
|
padding: 8px;
|
|
border-radius: var(--radius-xl, 12px);
|
|
background: var(--surface-1, #fff);
|
|
box-shadow: var(--shadow-sm);
|
|
}
|
|
|
|
.aksrt-forum-board__tab {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
padding: 8px 14px;
|
|
border-radius: 999px;
|
|
color: var(--color-ink-3, #5c6370);
|
|
text-decoration: none;
|
|
font-size: 14px;
|
|
font-weight: 600;
|
|
transition: background .15s ease, color .15s ease;
|
|
}
|
|
|
|
.aksrt-forum-board__tab:hover {
|
|
background: rgba(240, 68, 148, 0.08);
|
|
color: var(--color-primary, #f04494);
|
|
}
|
|
|
|
.aksrt-forum-board__tab.is-active {
|
|
background: var(--color-primary, #f04494);
|
|
color: #fff;
|
|
}
|
|
|
|
.aksrt-forum-board__governance--footer {
|
|
margin-top: 28px;
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
|
|
gap: 16px;
|
|
}
|
|
|
|
.aksrt-forum-topic-row {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
gap: 12px;
|
|
padding: 14px 16px;
|
|
margin-bottom: 10px;
|
|
border-radius: var(--radius-xl, 12px);
|
|
background: var(--surface-1, #fff);
|
|
box-shadow: var(--shadow-sm);
|
|
}
|
|
|
|
.aksrt-forum-topic-row__avatar img {
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
object-fit: cover;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__body {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__title-wrap {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
gap: 6px;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__title {
|
|
margin: 0;
|
|
font-size: 16px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__title a {
|
|
color: var(--color-ink);
|
|
text-decoration: none;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__meta {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 10px;
|
|
margin-top: 6px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
font-size: 12px;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__badge {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
padding: 2px 8px;
|
|
border-radius: 999px;
|
|
font-size: 12px;
|
|
font-weight: 700;
|
|
line-height: 1.4;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__badge--sticky { background: rgba(255, 149, 0, 0.12); color: #c77700; }
|
|
.aksrt-forum-topic-row__badge--featured { background: rgba(240, 68, 148, 0.12); color: #f04494; }
|
|
.aksrt-forum-topic-row__badge--question { background: rgba(47, 128, 237, 0.12); color: #2f80ed; }
|
|
.aksrt-forum-topic-row__badge--question.is-solved { background: rgba(39, 174, 96, 0.12); color: #27ae60; }
|
|
|
|
.aksrt-forum-topic-row__cover {
|
|
position: relative;
|
|
width: 84px;
|
|
height: 60px;
|
|
flex: 0 0 auto;
|
|
border-radius: 10px;
|
|
overflow: hidden;
|
|
background: var(--surface-2, #f5f6f8);
|
|
}
|
|
|
|
.aksrt-forum-topic-row__cover img {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
}
|
|
|
|
.aksrt-forum-topic-row__cover .fa-play-circle,
|
|
.aksrt-forum-topic-row__cover-count {
|
|
position: absolute;
|
|
right: 6px;
|
|
bottom: 6px;
|
|
color: #fff;
|
|
text-shadow: 0 1px 2px rgba(0,0,0,.35);
|
|
}
|
|
|
|
.aksrt-forum-board-card__grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.aksrt-forum-board-card {
|
|
display: flex;
|
|
flex-direction: column;
|
|
overflow: hidden;
|
|
border-radius: var(--radius-xl, 12px);
|
|
background: var(--surface-1, #fff);
|
|
box-shadow: var(--shadow-sm);
|
|
text-decoration: none;
|
|
color: inherit;
|
|
}
|
|
|
|
.aksrt-forum-board-card__cover {
|
|
display: block;
|
|
height: 96px;
|
|
background-size: cover;
|
|
background-position: center;
|
|
}
|
|
|
|
.aksrt-forum-board-card__cover--empty {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background: linear-gradient(135deg, rgba(240,68,148,.08), rgba(47,128,237,.08));
|
|
color: var(--color-primary, #f04494);
|
|
font-size: 24px;
|
|
}
|
|
|
|
.aksrt-forum-board-card__body {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 6px;
|
|
padding: 12px 14px 14px;
|
|
}
|
|
|
|
.aksrt-forum-board-card__title {
|
|
font-weight: 700;
|
|
}
|
|
|
|
.aksrt-forum-board-card__desc,
|
|
.aksrt-forum-board-card__meta {
|
|
font-size: 12px;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum__empty,
|
|
.aksrt-forum-board__empty,
|
|
.aksrt-forum-tag__empty {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 10px;
|
|
padding: 48px 20px;
|
|
text-align: center;
|
|
color: var(--color-ink-4, #8a909c);
|
|
}
|
|
|
|
.aksrt-forum__empty a,
|
|
.aksrt-forum-board__empty a {
|
|
color: var(--color-primary, #f04494);
|
|
font-weight: 600;
|
|
text-decoration: none;
|
|
}
|