Files
wordpress-theme-aksrt/assets/css/routes/user-center/credits.css
T
kate522 32e76b440f fix(frontend): 用户中心余额与积分记录不再拼接括号内容
记录行只保留中文变动原因、时间与变动额,移除名称后的(引用键/备注/提现单号)拼接。

同步清理该改动产生的死代码:$record_note 计算块、.uc-transactions__remark 样式、LedgerQuery 中已无消费者的 financial_flow LEFT JOIN 与 withdrawal_number 字段,以及 credits-wallet.php 里恒为 true 的 $skip_wallet_ledger 双路分支。
2026-09-19 11:46:01 +08:00

1389 lines
31 KiB
CSS
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.
/**
* User Center — assets (wallet + points) legacy parity
*/
/* The asset cards and the records card are sibling surfaces, not one nested card. */
.uc-content #panel-credits.dashboard-panel {
margin: 0;
padding: 0;
border: 0;
border-radius: 0;
background: transparent;
box-shadow: none;
}
/* Dual asset row — layout only (no outer mega-card). Desktop: 1 row; mobile: 2 rows. */
.uc-assets-row {
display: grid;
grid-template-columns: minmax(0, 1fr);
gap: 12px;
margin-bottom: 10px;
background: transparent;
border: 0;
box-shadow: none;
}
.uc-assets-row--dual {
grid-template-columns: repeat(2, minmax(0, 1fr));
grid-template-rows: auto;
gap: 10px;
}
.uc-assets-row--dual > .uc-assets-col {
display: contents;
}
.uc-assets-row--dual > .uc-assets-col:first-child > .uc-asset-card {
grid-column: 1;
}
.uc-assets-row--dual > .uc-assets-col:last-child > .uc-asset-card {
grid-column: 2;
}
.uc-assets-row--dual > .uc-assets-col > .uc-asset-card {
grid-row: 1;
}
.uc-assets-col {
min-width: 0;
display: flex;
flex-direction: column;
gap: 10px;
}
@media (max-width: 767px) {
.uc-assets-row--dual {
grid-template-columns: 1fr;
grid-template-rows: none;
}
.uc-assets-row--dual > .uc-assets-col {
display: flex;
grid-column: auto;
grid-row: auto;
}
.uc-assets-row--dual > .uc-assets-col > .uc-asset-card {
grid-column: auto;
grid-row: auto;
}
.uc-asset-card__body {
flex-direction: column;
align-items: flex-start;
}
}
/* One surface per asset (wallet / points) — never nest inside another card shell */
.uc-asset-card {
min-width: 0;
display: flex;
flex-direction: column;
background: var(--main-bg-color, var(--surface-1, #fff));
border-radius: var(--main-radius, 8px);
box-shadow: 0 0 10px var(--main-shadow, rgba(116, 116, 116, 0.08));
border: 1px solid var(--color-line-soft, rgba(0, 0, 0, 0.06));
padding: 16px 20px;
margin-bottom: 0;
}
/* Amount keeps its row; actions wrap below as a whole when space runs out. */
.uc-asset-card__body {
flex-wrap: wrap;
row-gap: 10px;
}
.uc-asset-card__head {
margin-bottom: 8px;
}
.uc-asset-card__title {
font-weight: 600;
color: var(--main-color, #4e5358);
}
.uc-asset-card__amount {
flex: none;
max-width: 100%;
white-space: nowrap;
font-variant-numeric: tabular-nums;
overflow: hidden;
text-overflow: ellipsis;
font-size: 1.75rem;
line-height: 1.2;
}
.uc-asset-card__mark {
font-size: 12px;
margin-right: 2px;
}
.uc-asset-card__actions .but {
min-width: 4.2em;
}
.uc-asset-card__link {
display: inline-flex;
align-items: center;
margin-top: auto;
padding-top: 8px;
background: none;
border: 0;
padding-right: 0;
padding-bottom: 0;
padding-left: 0;
cursor: pointer;
}
.uc-asset-card__link:hover {
color: var(--focus-color, #f04494);
}
/* Sidebar mini dual cards (legacy) */
.uc-asset-mini {
gap: 8px;
}
.uc-asset-mini__card {
display: block;
background: var(--muted-bg-color, #f3f4f6);
border-radius: 6px;
padding: 10px 12px;
text-decoration: none;
color: inherit;
transition: background 0.15s;
}
.uc-asset-mini__card:hover {
background: var(--color-line-soft, rgba(0, 0, 0, 0.06));
}
.uc-asset-mini__label {
margin-bottom: 6px;
}
.c-blue-2 {
color: #3b82f6;
}
.c-yellow {
color: #eab308;
}
.c-green {
color: #16a34a;
}
.col-ml6 {
margin-left: -6px;
}
.col-ml6 > * {
margin-left: 6px;
}
/* ===== 余额充值弹窗 — Zibll balance-charge modal parity =====
.zib-widget 基础卡样式与 .vip-product/.vip-tag 的 Zibll 原值仅在充值表单内生效
(vip-modal.css 在全局以同类名覆盖了它们,这里按 Zibll main.css 5962/5928/5990 回位)。 */
/* 弹窗壳静止态必须隐藏。Zibll 无此问题:它的 bootstrap 无 .modal 基础规则,
且弹窗壳由 refresh_modal JS 按需创建;本主题是服务端静态输出,若不在此
显式隐藏,main.css 的 .flex{display:flex}(后加载、与 bootstrap 的
.modal{display:none} 同特异性)会让弹窗永久 display:flex 铺满全屏,
叠加 .fade 的 opacity:0 形成隐形遮罩,拦截整页点击。 */
.modal[data-aksrt-charge-modal] {
display: none;
}
/* 打开态必须是 flex(而非 bootstrap 的内联 display:block):无头 Chrome
对 Zibll 真实 CSS 的几何实证显示,display:block 下 .modal.flex
.modal-dialog{margin:0} 使对话框顶在左上角;flex 下由壳上的 .flex.jc
(align-items:center;justify-content:center)双轴居中——Zibll 生产环境
即此形态(其 jQuery .show() 对 computed≠none 的壳是空操作,内联
display 从未写入)。 */
.modal[data-aksrt-charge-modal].in {
display: flex;
}
/* 购买积分弹窗壳与充值弹窗同构(服务端静态输出 .modal.flex.jc.fade),
静止态同样必须显式隐藏,否则 .flex 工具类会使其铺满全屏形成隐形遮罩,
拦截整页点击(2026-09-18 实测回归)。打开态由 initPointsPay 的内联
display:flex 驱动,关闭撤除内联样式后即回到隐藏规则。 */
.modal[data-aksrt-points-pay-modal] {
display: none;
}
.modal[data-aksrt-points-pay-modal].in {
display: flex;
}
.balance-charge-form .zib-widget {
clear: both;
background-color: var(--main-bg-color);
padding: 15px;
box-shadow: 0 0 10px var(--main-shadow);
border-radius: var(--main-radius);
margin-bottom: 20px;
}
.balance-charge-form .vip-product {
border: 1px solid var(--main-border-color);
box-shadow: none;
background-color: var(--main-bg-color);
min-width: 66px;
min-height: 65px;
display: inline-flex;
flex-direction: column;
justify-content: space-evenly;
align-items: center;
margin: 8px;
font-weight: normal;
gap: 10px;
padding: 15px 4px 10px;
cursor: pointer;
transition: 0.15s;
position: relative;
overflow: unset;
border-radius: var(--mini-radius);
}
.balance-charge-form .vip-product.active {
border-color: var(--focus-color);
background: var(--focus-color-opacity05);
box-shadow: none;
}
.balance-charge-form .vip-product.active::before {
content: '\f058';
/* 本主题打包的是 FA5(族名 'Font Awesome 5 Free',solid 字形需 900),
Zibll 遗留的 FA4 族名在本主题不存在 → 豆腐块(被误认破图)。 */
font: normal normal 900 16px/1 'Font Awesome 5 Free';
color: var(--focus-color);
position: absolute;
left: 3px;
top: 3px;
font-size: 18px;
}
.balance-charge-form .vip-product .vip-tag {
position: absolute;
font-size: 12px;
padding: 1px 5px;
border-radius: 100px;
right: -14px;
top: -10px;
transform: scale(0.9);
background: var(--this-bg);
color: var(--this-color);
line-height: 1.4;
width: auto;
z-index: 1;
}
/* Modal shell */
.uc-modal {
position: fixed;
inset: 0;
z-index: 1100;
display: none;
align-items: center;
justify-content: center;
padding: 16px;
}
.uc-modal.is-open,
.uc-modal:not([hidden]) {
display: flex;
}
.uc-modal[hidden] {
display: none !important;
}
.uc-modal__overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.45);
}
.uc-modal__dialog {
position: relative;
z-index: 1;
width: 100%;
max-width: 420px;
max-height: 85vh;
overflow: auto;
background: var(--main-bg-color, #fff);
border-radius: 12px;
padding: 18px 18px 20px;
box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
}
.uc-modal__close {
position: absolute;
top: 10px;
right: 12px;
border: 0;
background: transparent;
font-size: 18px;
cursor: pointer;
color: #999;
}
.uc-modal__title {
margin: 0 0 14px;
font-size: 17px;
font-weight: 700;
}
.uc-modal__desc {
margin-bottom: 12px;
}
body.uc-modal-open {
overflow: hidden;
}
.btn-block {
display: block;
width: 100%;
}
.but.jb-blue,
.but.b-blue-2 {
background: #3b82f6;
color: #fff;
border: 0;
border-radius: 4px;
padding: 0.45em 1em;
cursor: pointer;
}
.but.c-blue-2.hollow,
.but.c-green.hollow {
background: transparent;
border: 1px solid currentColor;
border-radius: 4px;
padding: 0.4em 0.9em;
cursor: pointer;
}
.but.c-blue-2 {
color: #3b82f6;
}
.but.c-green {
color: #16a34a;
}
/* Transfer search results */
.uc-transfer-results {
margin-top: 8px;
max-height: 200px;
overflow: auto;
}
.uc-transfer-user {
display: flex;
align-items: center;
gap: 8px;
width: 100%;
padding: 8px;
border: 0;
background: var(--muted-bg-color, #f5f5f5);
border-radius: 6px;
margin-bottom: 6px;
cursor: pointer;
text-align: left;
}
.uc-transfer-user:hover {
background: var(--color-primary-soft, rgba(240, 68, 148, 0.08));
}
.uc-transfer-user__avatar {
width: 36px;
height: 36px;
border-radius: 50%;
object-fit: cover;
}
.uc-transactions--wallet {
margin-bottom: 20px;
margin-top: 12px;
}
/* Asset records sit in their own card below the wallet and points cards. */
.uc-asset-tabs {
margin: 0;
padding: 20px;
background: var(--surface-1, #fff);
border: 1px solid var(--color-line-soft, rgba(0,0,0,0.06));
border-radius: var(--main-radius, var(--radius, 8px));
box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04);
}
@media (max-width: 480px) {
.uc-asset-tabs {
padding: 14px;
}
}
.uc-asset-tabs__nav {
display: flex;
gap: 18px;
list-style: none;
margin: 0 0 12px;
padding: 0 0 10px;
border-bottom: 1px solid var(--color-line-soft, rgba(0,0,0,.06));
}
.uc-asset-tabs__nav li a {
display: inline-block;
padding: 4px 0;
color: var(--muted-color, #777);
text-decoration: none;
font-weight: 700;
border-bottom: 2px solid transparent;
}
.uc-asset-tabs__nav li.active a,
.uc-asset-tabs__nav li a:hover {
color: var(--focus-color, #f04494);
border-bottom-color: var(--focus-color, #f04494);
}
.uc-asset-tabs__content .tab-pane[hidden] {
display: none !important;
}
.uc-asset-tabs__content .tab-pane.is-active {
display: block;
}
.uc-content #panel-credits .uc-transactions {
background: transparent;
border: 0;
border-radius: 0;
}
.uc-content #panel-credits .uc-transactions__header,
.uc-content #panel-credits .uc-transactions__item {
padding-left: 0;
padding-right: 0;
}
.uc-content .widget-title {
font-size: 15px;
font-weight: 600;
color: var(--color-ink);
margin: 0 0 14px;
padding-bottom: 10px;
border-bottom: 1px solid var(--color-line-soft, rgba(0,0,0,0.06));
}
.uc-content .widget-title::before {
content: '';
position: static;
display: inline-block;
width: 3px;
height: 14px;
background: var(--color-primary);
border-radius: 2px;
margin-right: 8px;
vertical-align: middle;
}
/* 积分流水 */
.uc-transactions {
background: var(--surface-1);
border-radius: var(--main-radius, var(--radius, 8px));
border: 1px solid var(--color-line-soft, rgba(0,0,0,0.06));
overflow: hidden;
}
.uc-transactions__header {
padding: 16px 20px;
border-bottom: 1px solid var(--color-line-soft, rgba(0,0,0,0.06));
}
.uc-transactions__title {
margin: 0;
font-size: 15px;
font-weight: 600;
color: var(--color-ink);
display: flex;
align-items: center;
gap: 8px;
}
.uc-transactions__title i {
font-size: 13px;
color: var(--color-primary);
}
.uc-transactions__list {
display: flex;
flex-direction: column;
}
.uc-transactions__item {
display: flex;
align-items: center;
gap: 12px;
padding: 14px 20px;
border-bottom: 1px solid var(--color-line-soft, rgba(0,0,0,0.04));
transition: background-color 0.15s;
}
.uc-transactions__item:last-child {
border-bottom: none;
}
.uc-transactions__item:hover {
background: var(--surface-2);
}
.uc-transactions__icon {
width: 36px;
height: 36px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
font-size: 14px;
}
.uc-transactions__icon.is-positive {
background: rgba(34, 197, 94, 0.1);
color: #22c55e;
}
.uc-transactions__icon.is-negative {
background: rgba(239, 68, 68, 0.1);
color: #ef4444;
}
.uc-transactions__info {
flex: 1;
min-width: 0;
}
.uc-transactions__reason {
font-size: 14px;
font-weight: 500;
color: var(--color-ink);
line-height: 1.4;
}
.uc-transactions__time {
font-size: 12px;
color: var(--color-ink-4);
margin-top: 2px;
}
.uc-transactions__amount {
text-align: right;
flex-shrink: 0;
}
.uc-transactions__delta {
display: block;
font-size: 15px;
font-weight: 700;
font-variant-numeric: tabular-nums;
line-height: 1.3;
}
.uc-transactions__delta.is-positive {
color: #22c55e;
}
.uc-transactions__delta.is-negative {
color: #ef4444;
}
.uc-transactions__balance {
display: block;
font-size: 11px;
color: var(--color-ink-4);
margin-top: 2px;
}
/* 空状态 */
.uc-transactions__empty {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 40px 20px;
text-align: center;
}
.uc-transactions__empty-icon {
width: 48px;
height: 48px;
border-radius: 50%;
background: var(--surface-2);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 12px;
font-size: 20px;
color: var(--color-ink-4);
}
.uc-transactions__empty p {
font-size: 14px;
color: var(--color-ink-4);
margin: 0;
}
/* ==================== VIP 会员开通 ==================== */
.uc-vip-card {
position: relative;
border-radius: var(--radius);
overflow: hidden;
margin-bottom: 16px;
box-shadow: 0 4px 20px rgba(245, 158, 11, 0.18);
}
.uc-vip-card__bg {
position: absolute;
inset: 0;
background: linear-gradient(135deg, #f59e0b 0%, #f97316 55%, #ef4444 100%);
z-index: 0;
}
.uc-vip-card--active .uc-vip-card__bg {
background: linear-gradient(135deg, #0ea5e9 0%, #6366f1 55%, #8b5cf6 100%);
}
.uc-vip-card__content {
position: relative;
z-index: 1;
padding: 22px;
color: #fff;
}
.aksrt-vip-level-icon {
display: inline-block;
width: 1.4em;
height: 1.4em;
object-fit: contain;
vertical-align: middle;
}
.uc-vip-level-card .aksrt-vip-level-icon {
width: auto;
height: 1.3em;
}
.uc-vip-card__header {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 12px;
}
.uc-vip-card__icon {
width: 42px;
height: 42px;
border-radius: 12px;
display: inline-flex;
align-items: center;
justify-content: center;
background: rgba(255,255,255,0.18);
font-size: 18px;
}
.uc-vip-card__label {
display: block;
font-size: 16px;
font-weight: 700;
}
.uc-vip-card__status {
display: inline-block;
margin-top: 4px;
font-size: 12px;
opacity: 0.9;
padding: 2px 8px;
border-radius: 999px;
background: rgba(255,255,255,0.16);
}
.uc-vip-card__status--active {
background: rgba(16, 185, 129, 0.25);
}
.uc-vip-card__benefits {
display: flex;
flex-wrap: wrap;
gap: 8px 12px;
font-size: 12px;
opacity: 0.95;
}
.uc-vip-card__benefit i { margin-right: 4px; }
.uc-vip-card__desc {
margin: 12px 0 0;
font-size: 12px;
opacity: 0.85;
line-height: 1.5;
}
.uc-vip-shop {
background: var(--surface-1, #fff);
border: 1px solid var(--color-line-soft, rgba(0,0,0,0.06));
border-radius: var(--radius, 10px);
padding: 16px 18px 18px;
margin-bottom: 20px;
}
.uc-vip-shop__title {
display: flex;
align-items: center;
gap: 8px;
font-size: 15px;
font-weight: 700;
color: var(--color-ink, #111);
margin-bottom: 14px;
}
.uc-vip-shop__title i { color: #f59e0b; }
.uc-vip-shop__group { margin-bottom: 16px; }
.uc-vip-shop__group-title {
font-size: 13px;
font-weight: 600;
color: var(--color-ink-2, #374151);
margin-bottom: 10px;
display: flex;
align-items: center;
gap: 8px;
}
.uc-vip-shop__badge {
font-size: 11px;
font-weight: 600;
color: #047857;
background: #ecfdf5;
border-radius: 999px;
padding: 2px 8px;
}
.uc-vip-shop__grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: 10px;
}
.uc-vip-shop__item {
appearance: none;
border: 1px solid var(--color-line, #e5e7eb);
background: var(--surface-0, #fafafa);
border-radius: 12px;
padding: 14px 12px;
text-align: left;
cursor: pointer;
display: flex;
flex-direction: column;
gap: 4px;
transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
color: inherit;
font: inherit;
}
.uc-vip-shop__item:hover {
border-color: #f59e0b;
box-shadow: 0 8px 20px rgba(245, 158, 11, 0.12);
transform: translateY(-1px);
}
.uc-vip-shop__item.is-loading {
opacity: 0.65;
pointer-events: none;
}
.uc-vip-shop__item-title {
font-size: 14px;
font-weight: 700;
color: var(--color-ink, #111);
}
.uc-vip-shop__item-days {
font-size: 12px;
color: var(--color-ink-3, #6b7280);
}
.uc-vip-shop__item-price {
margin-top: 6px;
font-size: 18px;
font-weight: 800;
color: #dc2626;
}
.uc-vip-shop__item-cta {
margin-top: 8px;
font-size: 12px;
font-weight: 600;
color: #b45309;
}
.uc-vip-shop__tip {
margin: 10px 0 0;
font-size: 12px;
color: var(--color-ink-3, #6b7280);
min-height: 1.2em;
}
.uc-vip-shop__tip.is-error { color: #dc2626; }
.uc-vip-shop__empty {
font-size: 13px;
color: var(--color-ink-3, #6b7280);
margin: 0 0 16px;
}
.uc-vip-shop__note {
margin: 0 0 12px;
font-size: 12px;
color: var(--color-ink-3, #6b7280);
line-height: 1.5;
}
.uc-vip-shop__item {
position: relative;
}
.uc-vip-shop__item-tag {
position: absolute;
top: 8px;
right: 8px;
font-size: 10px;
font-weight: 700;
color: #92400e;
background: #fef3c7;
border-radius: 999px;
padding: 2px 6px;
}
.uc-vip-shop__item-show {
display: inline-block;
margin-left: 6px;
font-size: 12px;
font-weight: 500;
color: #9ca3af;
text-decoration: line-through;
}
.uc-vip-shop--points {
border-color: rgba(16, 185, 129, 0.25);
}
.uc-vip-shop__balance {
font-size: 13px;
font-weight: 600;
color: #047857;
margin: 0 0 10px;
}
.uc-vip-shop__item.is-disabled {
opacity: 0.55;
cursor: not-allowed;
}
.uc-vip-shop__item.is-disabled:hover {
transform: none;
box-shadow: none;
border-color: var(--color-line, #e5e7eb);
}
/* Card-pass redeem modal inputs (universal modal in credits-wallet.php) */
.uc-card-pass__input {
display: block;
width: 100%;
margin: 0 0 8px;
padding: 9px 12px;
border: 1px solid #e5e7eb;
border-radius: 8px;
font-size: 13px;
box-sizing: border-box;
}
.uc-card-pass__btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 36px;
padding: 0 14px;
border: 0;
border-radius: 8px;
background: #2563eb;
color: #fff;
font-size: 13px;
font-weight: 600;
cursor: pointer;
}
.uc-card-pass__btn:hover { background: #1d4ed8; }
.uc-card-pass__btn:disabled { opacity: .6; cursor: not-allowed; }
/* Modal redeem action sits on the right */
.uc-card-pass-actions {
display: flex;
justify-content: flex-end;
margin-top: 2px;
}
/* Withdraw history + pending foot */
.uc-asset-card__foot {
margin-top: auto;
padding-top: 8px;
border-top: 1px dashed var(--muted-border-color, rgba(0,0,0,.08));
}
.uc-asset-card__head-action {
background: none;
border: 0;
cursor: pointer;
}
.uc-withdraw-history-modal__dialog {
max-width: min(860px, calc(100vw - 32px));
overflow: hidden;
}
.uc-withdraw-history {
width: 100%;
}
.uc-withdraw-history__item {
display: flex;
align-items: center;
gap: 12px;
min-width: 0;
padding: 10px 0;
border-bottom: 1px solid var(--muted-border-color, rgba(0,0,0,.08));
white-space: nowrap;
}
.uc-withdraw-history__item:last-child {
border-bottom: 0;
}
.uc-withdraw-history__status {
flex: 0 0 72px;
width: 72px;
}
.uc-withdraw-history__amount {
flex: 0 0 230px;
width: 230px;
min-width: 0;
overflow: hidden;
text-align: right;
text-overflow: ellipsis;
white-space: nowrap;
font-weight: 700;
}
.uc-withdraw-history__net {
margin-left: 4px;
color: var(--muted-2-color, #9aa1a8);
font-size: .78em;
font-weight: 400;
}
.uc-withdraw-history__number,
.uc-withdraw-history__meta {
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
}
.uc-withdraw-history__number {
flex: 1 1 190px;
}
.uc-withdraw-history__meta {
flex: 0 1 190px;
}
.uc-withdraw-history__pagination {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
gap: 6px;
margin-top: 14px;
}
.uc-withdraw-history__page {
min-width: 34px;
height: 32px;
padding: 0 8px;
border: 1px solid var(--muted-border-color, rgba(0,0,0,.12));
border-radius: 6px;
background: transparent;
color: inherit;
cursor: pointer;
}
.uc-withdraw-history__page:hover:not(:disabled),
.uc-withdraw-history__page.is-current {
border-color: var(--focus-color, #3b82f6);
background: var(--focus-color, #3b82f6);
color: #fff;
}
.uc-withdraw-history__page:disabled {
cursor: not-allowed;
opacity: .45;
}
@media (max-width: 640px) {
.uc-withdraw-history-modal__dialog {
max-width: calc(100vw - 20px);
padding-left: 12px;
padding-right: 12px;
}
.uc-withdraw-history__item {
flex-wrap: wrap;
align-items: flex-start;
gap: 8px;
font-size: 12px;
white-space: normal;
}
.uc-withdraw-history__status {
flex: 0 0 auto;
width: auto;
}
.uc-withdraw-history__amount {
flex: 0 0 auto;
width: auto;
min-width: 66px;
text-align: left;
overflow: visible;
text-overflow: clip;
white-space: normal;
}
.uc-withdraw-history__status {
align-self: center;
}
.uc-withdraw-history__number,
.uc-withdraw-history__meta {
flex: 1 1 100%;
overflow: visible;
text-overflow: clip;
white-space: normal;
overflow-wrap: anywhere;
}
.uc-withdraw-history__number {
flex-basis: 100%;
}
.uc-withdraw-history__meta {
flex-basis: 100%;
}
}
/* Points tasks tab */
.uc-points-tasks .border-bottom,
.uc-points-date .border-bottom,
.uc-withdraw-history__item.border-bottom {
border-bottom: 1px solid var(--muted-border-color, rgba(0,0,0,.08));
}
.uc-points-tasks button,
.uc-points-date button {
background: none;
border: 0;
cursor: pointer;
padding: 0;
}
.uc-points-tasks__meta {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 2px;
}
.uc-points-tasks__action {
display: inline-flex;
align-items: center;
text-decoration: none;
color: var(--muted-color, #8b9198);
background: none;
border: 0;
cursor: pointer;
padding: 0;
line-height: 1.4;
}
.uc-points-tasks__action:hover {
color: var(--focus-color, #f04494);
}
.focus-color { color: var(--focus-color, #f59e0b); }
/* 用户中心「我的徽章」弹窗样式已迁至 assets/css/frontend/medal.css(legacy medal 风格)。 */
.uc-points-tasks__row.is-done { opacity: .72; }
.uc-points-tasks__progress-bar {
height: 6px;
border-radius: 999px;
background: rgba(127,127,127,.16);
overflow: hidden;
}
.uc-points-tasks__progress-bar > span {
display: block;
height: 100%;
background: linear-gradient(90deg, #22c55e, #16a34a);
}
/* VIP tab — legacy 我的会员 (scoped; no dependence on homepage-only utilities) */
.uc-vip-tab {
min-width: 0;
}
/* Top profile card — legacy .user-content-myvip 1:1 */
.uc-vip-tab .user-content-myvip {
position: relative;
display: flex;
align-items: center;
gap: 20px;
padding: 18px 20px;
margin-bottom: 16px;
overflow: hidden;
z-index: 0;
}
.uc-vip-tab .user-content-myvip > .flex2,
.uc-vip-tab .user-content-myvip > .flex4,
.uc-vip-tab .user-content-myvip > .uc-vip-profile,
.uc-vip-tab .user-content-myvip > .uc-vip-state {
position: relative;
z-index: 1;
min-width: 0;
}
.uc-vip-tab .user-content-myvip .flex2,
.uc-vip-tab .user-content-myvip .uc-vip-profile {
flex: 2 1 0;
}
.uc-vip-tab .user-content-myvip .flex4,
.uc-vip-tab .user-content-myvip .uc-vip-state {
flex: 4 1 0;
}
/* Crown watermark — legacy .user-content-myvip .vip-img.abs-right */
.uc-vip-tab .user-content-myvip .vip-img,
.uc-vip-tab .user-content-myvip .vip-img.abs-right {
position: absolute;
right: -10px;
top: 50%;
transform: translateY(-50%);
font-size: 160px;
line-height: 1;
opacity: 0.15;
pointer-events: none;
z-index: 0;
color: currentColor;
}
.uc-vip-tab .user-content-myvip .vip-img i {
font-size: inherit;
line-height: 1;
}
/* Left user box */
.uc-vip-tab .uc-vip-userbox {
display: flex;
align-items: center;
min-width: 0;
}
.uc-vip-tab .uc-vip-userbox .mr20 {
margin-right: 20px;
}
.uc-vip-tab .uc-vip-userbox .shrink0 {
flex-shrink: 0;
}
/* avatar-md = 55×55 circle (legacy --this-size: 55px) */
.uc-vip-tab .user-content-myvip .avatar-img {
position: relative;
display: inline-block;
flex-shrink: 0;
--this-size: 55px;
width: var(--this-size);
height: var(--this-size);
line-height: 0;
}
.uc-vip-tab .user-content-myvip .avatar-img.avatar-md {
--this-size: 55px;
}
.uc-vip-tab .user-content-myvip .avatar-img .avatar,
.uc-vip-tab .user-content-myvip .avatar-img img {
display: block;
width: 100% !important;
height: 100% !important;
max-width: none;
border-radius: 50%;
object-fit: cover;
aspect-ratio: 1 / 1;
}
.uc-vip-tab .uc-vip-userbox .name {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 4px;
line-height: 1.35;
min-width: 0;
}
.uc-vip-tab .uc-vip-userbox .name .display-name,
.uc-vip-tab .uc-vip-userbox .name a {
font-weight: 700;
color: inherit;
text-decoration: none;
}
.uc-vip-tab .uc-vip-userbox .desc {
max-width: 100%;
line-height: 1.45;
}
.uc-vip-tab .em12 { font-size: 1.2em; }
.uc-vip-tab .em16 { font-size: 1.6em; line-height: 1.2; }
.uc-vip-tab .em09 { font-size: 0.9em; }
.uc-vip-tab .mt6 { margin-top: 6px; }
.uc-vip-tab .mr10 { margin-right: 10px; }
.uc-vip-tab .mr3 { margin-right: 3px; }
.uc-vip-tab .ml6 { margin-left: 6px; }
.uc-vip-tab .font-bold { font-weight: 700; }
.uc-vip-tab .c-red { color: #ff5473; }
.uc-vip-tab .min-w-0 { min-width: 0; }
.uc-vip-tab .text-ellipsis {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 100%;
}
/* Right status column — legacy my_vip_box */
.uc-vip-status,
.uc-vip-tab .uc-vip-status.flex.xx {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 6px;
}
.uc-vip-status .flex.ac {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 6px;
}
.uc-vip-status .badg {
display: inline-flex;
align-items: center;
gap: 4px;
width: auto;
max-width: 100%;
}
.uc-vip-level-cards {
display: flex;
flex-wrap: wrap;
gap: 12px;
align-items: stretch;
}
.uc-vip-level-card {
position: relative;
flex: 1 1 240px;
min-width: 0;
padding: 20px 16px 18px;
overflow: hidden;
text-align: center;
box-sizing: border-box;
}
/* Defensive: modal stylesheet also styles .pay-vip-info; keep UC cards independent */
.uc-vip-tab .uc-vip-level-card.pay-vip-info {
display: block;
background: var(--main-bg-color, var(--surface-1, #fff));
border: 1px solid var(--color-line-soft, rgba(0, 0, 0, 0.06));
box-shadow: var(--shadow-sm);
border-radius: var(--radius, 10px);
padding: 16px;
}
.uc-vip-level-card.level-1 {
background: linear-gradient(180deg, rgba(246, 196, 83, 0.16), rgba(255, 255, 255, 0.02)) !important;
}
.uc-vip-level-card.level-2 {
background: linear-gradient(180deg, rgba(142, 68, 173, 0.12), rgba(255, 255, 255, 0.02)) !important;
}
.uc-vip-level-card .vip-baicon {
display: none;
}
.uc-vip-level-card__inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
align-items: center;
min-height: 100%;
}
/* Level icon sits inline at the left of the name; its size tracks the name text. */
.uc-vip-level-card .v-iconbox {
display: block;
width: 100%;
margin-bottom: 10px;
text-align: center;
}
.uc-vip-level-card .v-icon {
display: inline-flex;
align-items: center;
justify-content: center;
flex: 0 0 auto;
width: auto;
height: auto;
border-radius: 0;
background: transparent !important;
color: inherit;
font-size: 1em;
line-height: 1;
}
.uc-vip-level-card.level-1 .v-icon,
.uc-vip-level-card.level-2 .v-icon {
background: transparent !important;
}
.uc-vip-level-card .v-name {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: 16px;
line-height: 1.3;
font-weight: 700;
}
.uc-vip-level-card .v-desc {
margin-top: 2px;
}
/* Equity is admin HTML — no forced bullets; only keep vertical flow */
.uc-vip-tab .uc-vip-level-card .v-equity,
.uc-vip-tab .pay-vip-info .v-equity {
display: block !important;
list-style: none !important;
margin: 12px auto 16px !important;
padding: 0 !important;
max-width: 240px;
width: 100%;
text-align: left;
font-size: 13px;
line-height: 1.55;
color: var(--muted-2-color, #888);
flex: 1 1 auto;
}
.uc-vip-tab .uc-vip-level-card .v-equity > li,
.uc-vip-tab .pay-vip-info .v-equity > li {
display: block !important;
margin: 0 0 8px !important;
padding: 0 !important;
list-style: none !important;
white-space: normal !important;
word-break: break-word;
float: none !important;
width: auto !important;
}
.uc-vip-tab .uc-vip-level-card .v-equity > li:last-child,
.uc-vip-tab .pay-vip-info .v-equity > li:last-child {
margin-bottom: 0 !important;
}
/* Explicitly kill any leftover decorative bullets */
.uc-vip-tab .uc-vip-level-card .v-equity > li::before,
.uc-vip-tab .uc-vip-level-card .v-equity > li::after,
.uc-vip-tab .pay-vip-info .v-equity > li::before,
.uc-vip-tab .pay-vip-info .v-equity > li::after {
content: none !important;
display: none !important;
}
/* Non-list equity HTML (p/br/div) */
.uc-vip-tab .uc-vip-level-card .v-equity > p,
.uc-vip-tab .pay-vip-info .v-equity > p {
margin: 0 0 8px;
}
.uc-vip-tab .uc-vip-level-card .v-equity > p:last-child,
.uc-vip-tab .pay-vip-info .v-equity > p:last-child {
margin-bottom: 0;
}
.uc-vip-cta {
display: inline-flex !important;
align-items: center;
justify-content: center;
gap: 8px;
min-width: 160px;
padding: 10px 18px !important;
border: 0;
text-decoration: none;
font-weight: 600;
margin-top: auto;
}
.uc-vip-cta > i {
margin: 0 !important;
line-height: 1;
}
.uc-vip-assets-entry {
gap: 12px;
}
.uc-vip-tab .mt15 {
margin-top: 15px;
}
.uc-vip-tab .font-bold {
font-weight: 700;
}
.jb-vip1 {
background: linear-gradient(25deg, #eabe7b 10%, #f5e3c7 70%, #edc788 100%);
color: #866127;
border: none;
}
.jb-vip2 {
background: linear-gradient(317deg, #4d4c4c 30%, #7b7b7b 70%, #5f5c5c 100%);
color: #ddd;
border: none;
}
/* Light theme contrast for VIP badges/status */
html:not(.dark):not(.theme-dark) .uc-vip-level-card.level-1 .v-name {
color: #6b4e16;
}
html:not(.dark):not(.theme-dark) .uc-vip-level-card.level-2 .v-name {
color: #4c3a7a;
}
@media (max-width: 767px) {
.uc-vip-level-cards {
flex-direction: column;
}
.uc-vip-level-card {
flex: 1 1 auto;
}
.uc-vip-tab .user-content-myvip {
padding: 14px 16px;
gap: 12px;
flex-wrap: wrap;
}
/* legacy: hide-sm on left profile column on mobile */
.uc-vip-tab .user-content-myvip .hide-sm,
.uc-vip-tab .user-content-myvip .uc-vip-profile.hide-sm {
display: none !important;
}
.uc-vip-tab .user-content-myvip .flex4,
.uc-vip-tab .user-content-myvip .uc-vip-state {
flex: 1 1 100%;
}
.uc-vip-tab .user-content-myvip .vip-img {
font-size: 110px;
opacity: 0.12;
}
}
@media (min-width: 768px) {
.uc-vip-tab .user-content-myvip .hide-sm {
display: block;
}
}