index.css 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. .container {
  2. background-color: #F8F9FA;
  3. min-height: 100vh;
  4. }
  5. .nav-bar {
  6. background-color: #fff;
  7. padding-top: var(--status-bar-height);
  8. padding-left: 0.9375rem;
  9. padding-right: 0.9375rem;
  10. height: 2.75rem;
  11. box-sizing: content-box;
  12. display: flex;
  13. justify-content: space-between;
  14. align-items: center;
  15. position: -webkit-sticky;
  16. position: sticky;
  17. top: 0;
  18. z-index: 100;
  19. }
  20. .nav-left {
  21. height: 100%;
  22. display: flex;
  23. align-items: center;
  24. width: 1.875rem;
  25. }
  26. .back-icon {
  27. width: 1.25rem;
  28. height: 1.25rem;
  29. transform: rotate(180deg);
  30. }
  31. .nav-title {
  32. font-size: 0.875rem;
  33. font-weight: bold;
  34. color: #333;
  35. }
  36. .nav-right {
  37. width: 1.875rem;
  38. }
  39. /* 积分卡片 */
  40. .points-card {
  41. margin: 0.625rem 0.9375rem;
  42. height: 9.375rem;
  43. background: linear-gradient(135deg, #FFB74D 0%, #FF9800 100%);
  44. border-radius: 0.625rem;
  45. position: relative;
  46. padding: 0.9375rem;
  47. box-sizing: border-box;
  48. overflow: hidden;
  49. color: #fff;
  50. box-shadow: 0 0.125rem 0.5rem rgba(255, 152, 0, 0.2);
  51. }
  52. .bg-decor {
  53. position: absolute;
  54. right: -0.625rem;
  55. bottom: -0.625rem;
  56. width: 5.625rem;
  57. height: 5.625rem;
  58. opacity: 0.3;
  59. }
  60. .card-header {
  61. display: flex;
  62. justify-content: space-between;
  63. align-items: center;
  64. }
  65. .equity-btn {
  66. display: flex;
  67. align-items: center;
  68. font-size: 0.8125rem;
  69. }
  70. .equity-icon {
  71. width: 1rem; /* placeholder icon */
  72. height: 1rem;
  73. margin-right: 0.25rem;
  74. border-radius: 50%;
  75. background: rgba(255,255,255,0.3); /* circle bg for icon */
  76. }
  77. .detail-link {
  78. font-size: 0.75rem;
  79. opacity: 0.9;
  80. }
  81. .card-body {
  82. margin-top: 1.875rem;
  83. }
  84. .label {
  85. font-size: 0.8125rem;
  86. opacity: 0.9;
  87. display: block;
  88. margin-bottom: 0.3125rem;
  89. }
  90. .value {
  91. font-size: 2rem;
  92. font-weight: bold;
  93. }
  94. /* 记录区域 */
  95. .record-container {
  96. background-color: #fff;
  97. border-radius: 0.625rem 0.625rem 0 0;
  98. padding: 0.9375rem;
  99. min-height: 15.625rem;
  100. }
  101. .record-header {
  102. display: flex;
  103. justify-content: space-between;
  104. align-items: center;
  105. margin-bottom: 0.625rem;
  106. }
  107. .header-title {
  108. font-size: 0.9375rem;
  109. font-weight: bold;
  110. color: #333;
  111. }
  112. .header-more {
  113. display: flex;
  114. align-items: center;
  115. }
  116. .header-more uni-text {
  117. font-size: 0.75rem;
  118. color: #999;
  119. }
  120. .more-icon {
  121. width: 0.75rem;
  122. height: 0.75rem;
  123. margin-left: 0.125rem;
  124. }
  125. /* Tabs */
  126. .tabs-row {
  127. display: flex;
  128. border-bottom: 0.03125rem solid #f5f5f5;
  129. margin-bottom: 0.625rem;
  130. }
  131. .tab-item {
  132. margin-right: 1.25rem;
  133. padding-bottom: 0.375rem;
  134. font-size: 0.875rem;
  135. color: #666;
  136. position: relative;
  137. display: flex;
  138. flex-direction: column;
  139. align-items: center;
  140. }
  141. .tab-item.active {
  142. font-weight: bold;
  143. color: #333;
  144. }
  145. .tab-line {
  146. width: 0.875rem;
  147. height: 0.125rem;
  148. background-color: #FF9800; /* Match card color */
  149. border-radius: 0.125rem;
  150. position: absolute;
  151. bottom: 0;
  152. }
  153. /* 列表 */
  154. .list-item {
  155. display: flex;
  156. justify-content: space-between;
  157. padding: 0.75rem 0;
  158. border-bottom: 0.03125rem solid #f9f9f9;
  159. }
  160. .item-left {
  161. display: flex;
  162. flex-direction: column;
  163. }
  164. .item-title {
  165. font-size: 0.875rem;
  166. color: #333;
  167. margin-bottom: 0.25rem;
  168. font-weight: 500;
  169. }
  170. .item-desc {
  171. font-size: 0.75rem;
  172. color: #999;
  173. margin-bottom: 0.1875rem;
  174. }
  175. .item-time {
  176. font-size: 0.6875rem;
  177. color: #ccc;
  178. }
  179. .item-right {
  180. display: flex;
  181. flex-direction: column;
  182. align-items: flex-end;
  183. }
  184. .item-amount {
  185. font-size: 0.9375rem;
  186. font-weight: bold;
  187. margin-bottom: 0.25rem;
  188. }
  189. .item-amount.income {
  190. color: #FF9800; /* Orange for points income */
  191. }
  192. .item-amount.expense {
  193. color: #333;
  194. }
  195. .item-tag {
  196. display: inline-flex;
  197. justify-content: flex-end;
  198. }
  199. .item-tag uni-text {
  200. background-color: #F5F5F5;
  201. padding: 0.125rem 0.375rem;
  202. border-radius: 0.1875rem;
  203. font-size: 0.6875rem;
  204. color: #999;
  205. }