@import '../../../styles/variables.scss'; .detail-page { min-height: 100vh; background: $bg; padding-bottom: 40px; } /* ===== 余额卡片 ===== */ .balance-card { background: linear-gradient(135deg, $pri 0%, $pri-d 100%); padding: 32px; padding-top: 40px; } .balance-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; } .balance-label { font-size: 26px; color: rgba(255, 255, 255, 0.85); } .balance-value { font-size: 56px; font-weight: bold; color: white; letter-spacing: 1px; } .balance-stats { display: flex; align-items: center; background: rgba(255, 255, 255, 0.12); border-radius: $r; padding: 20px 0; } .stat-item { flex: 1; display: flex; flex-direction: column; align-items: center; } .stat-value { font-size: 30px; font-weight: bold; color: white; margin-bottom: 4px; &.green { color: #A7F3D0; } &.orange { color: #FDE68A; } &.gray { color: rgba(255, 255, 255, 0.6); } } .stat-label { font-size: 22px; color: rgba(255, 255, 255, 0.7); } .stat-divider { width: 1px; height: 48px; background: rgba(255, 255, 255, 0.2); } /* ===== 类型筛选标签 ===== */ .type-tabs { display: flex; gap: 0; padding: 20px 24px 0; background: $card; margin-bottom: 16px; } .type-tab { flex: 1; text-align: center; padding: 16px 0; position: relative; &.active::after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 48px; height: 4px; background: $pri; border-radius: 2px; } } .type-tab-text { font-size: 28px; color: $tx2; &.active { color: $pri; font-weight: bold; } } /* ===== 交易列表 ===== */ .transaction-list { padding: 0 24px; } .transaction-item { display: flex; align-items: center; background: $card; border-radius: $r; padding: 24px; margin-bottom: 12px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); } .tx-icon { width: 72px; height: 72px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-right: 20px; flex-shrink: 0; &.type-earn { background: $acc-l; } &.type-spend { background: $dan-l; } &.type-expired { background: $bd-l; } } .tx-icon-text { font-size: 32px; font-weight: bold; .type-earn & { color: $acc; } .type-spend & { color: $dan; } .type-expired & { color: $tx3; } } .tx-info { flex: 1; min-width: 0; } .tx-desc { font-size: 28px; color: $tx; display: block; margin-bottom: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .tx-date { font-size: 22px; color: $tx3; display: block; } .tx-amount-col { display: flex; flex-direction: column; align-items: flex-end; margin-left: 16px; flex-shrink: 0; } .tx-amount { font-size: 32px; font-weight: bold; margin-bottom: 4px; &.positive { color: $acc; } &.negative { color: $dan; } } .tx-remaining { font-size: 20px; color: $tx3; }