public.scss 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293
  1. $card-width: calc(100% - 50rpx);
  2. $radius: 10rpx;
  3. $color-orange: #fa6400;
  4. .container {
  5. padding-top: 0 !important;
  6. width: 100%;
  7. min-height: 100vh;
  8. .top-back-pie {
  9. position: absolute;
  10. top: -2050rpx;
  11. left: 50%;
  12. transform: translate(-50%, 0);
  13. width: 2500rpx;
  14. height: 2500rpx;
  15. border-radius: 50%;
  16. background-color: #002f69;
  17. z-index: 0;
  18. }
  19. .content-layer {
  20. position: relative;
  21. position: absolute;
  22. z-index: 10;
  23. display: flex;
  24. flex-direction: column;
  25. align-items: center;
  26. justify-content: flex-start;
  27. width: 100%;
  28. padding-bottom: calc(var(--window-bottom) + 38rpx);
  29. .top-layer {
  30. position: fixed;
  31. z-index: 10000;
  32. display: flex;
  33. flex-direction: column;
  34. align-items: center;
  35. justify-content: flex-start;
  36. width: 100%;
  37. background-color: #002f69;
  38. padding-bottom: 20rpx;
  39. .project-title {
  40. display: flex;
  41. justify-content: center;
  42. align-items: center;
  43. margin-top: var(--status-bar-height);
  44. width: 100%;
  45. height: 88rpx;
  46. font-size: 36rpx;
  47. font-weight: 600;
  48. color: #fff;
  49. }
  50. .search-layer {
  51. margin-top: 24rpx;
  52. display: flex;
  53. justify-content: space-between;
  54. align-items: center;
  55. width: 90%;
  56. background-color: #fff;
  57. border-radius: 16rpx;
  58. .search-input {
  59. display: flex;
  60. align-items: center;
  61. width: 78%;
  62. height: 72rpx;
  63. padding: 0 20rpx;
  64. box-sizing: border-box;
  65. text-align: left;
  66. .search-icon {
  67. width: 40rpx;
  68. height: 40rpx;
  69. margin-right: 26rpx;
  70. background-image: url("@/static/home-search-icon.svg");
  71. background-size: 100% 100%;
  72. }
  73. }
  74. .search-line {
  75. width: 0;
  76. height: 28rpx;
  77. border-left: 1rpx solid rgba(0, 47, 105, 0.5);
  78. }
  79. .search-focus {
  80. display: flex;
  81. align-items: center;
  82. justify-content: flex-end;
  83. gap: 10rpx;
  84. width: 22%;
  85. .search-focus-icon {
  86. width: 40rpx;
  87. height: 40rpx;
  88. background-image: url("@/static/focus.svg");
  89. background-size: 100% 100%;
  90. }
  91. .text {
  92. margin-right: 20rpx;
  93. font-size: 28rpx;
  94. font-weight: 600;
  95. white-space: nowrap;
  96. color: #06356d;
  97. }
  98. }
  99. }
  100. }
  101. .banner-box {
  102. margin-top: calc(var(--status-bar-height) + 210rpx);
  103. width: $card-width;
  104. }
  105. .button-layer {
  106. margin-top: 40rpx;
  107. display: flex;
  108. justify-content: space-between;
  109. align-items: center;
  110. width: $card-width;
  111. .btn-item {
  112. display: flex;
  113. flex-direction: column;
  114. justify-content: center;
  115. align-items: center;
  116. gap: 10rpx;
  117. width: 160rpx;
  118. height: 176rpx;
  119. border-radius: 12rpx;
  120. background-color: #fff;
  121. box-shadow: 0rpx 0rpx 8rpx 0rpx #d8eeff;
  122. .item-icon {
  123. width: 88rpx;
  124. height: 88rpx;
  125. }
  126. .item-text {
  127. font-size: 28rpx;
  128. font-weight: 500;
  129. font-family: Medium;
  130. color: #222222;
  131. }
  132. }
  133. }
  134. .sub-title {
  135. display: flex;
  136. justify-content: center;
  137. width: 95%;
  138. padding: 48rpx 0 46rpx 0;
  139. font-size: 36rpx;
  140. font-weight: 600;
  141. color: #222222;
  142. }
  143. }
  144. }
  145. .project-info-select {
  146. margin: auto;
  147. display: flex;
  148. justify-content: flex-start;
  149. align-items: center;
  150. gap: 10rpx;
  151. width: $card-width;
  152. height: 88rpx;
  153. background: #efefef;
  154. border-radius: $radius $radius 0 0;
  155. padding-left: 40rpx;
  156. margin-bottom: -$radius;
  157. .choose-year {
  158. display: flex;
  159. align-items: center;
  160. justify-content: center;
  161. gap: 2rpx;
  162. font-size: 24rpx;
  163. font-weight: 500;
  164. color: #999999;
  165. .choose-year-text {
  166. overflow: hidden;
  167. text-overflow: ellipsis;
  168. white-space: nowrap;
  169. }
  170. image {
  171. width: 32rpx;
  172. height: 32rpx;
  173. }
  174. }
  175. }
  176. .bar-layer {
  177. width: 100%;
  178. display: flex;
  179. justify-content: space-between;
  180. gap: 50rpx;
  181. .bar-item {
  182. display: flex;
  183. flex-direction: column;
  184. align-items: flex-start;
  185. justify-content: space-between;
  186. gap: 20rpx;
  187. flex: 1;
  188. .line-progress {
  189. width: 100%;
  190. }
  191. }
  192. }
  193. .item-text {
  194. display: flex;
  195. justify-content: space-between;
  196. align-items: center;
  197. gap: 5rpx;
  198. .text-name {
  199. font-size: 28rpx;
  200. font-weight: 500;
  201. color: #666666;
  202. }
  203. .text-rote {
  204. font-size: 28rpx;
  205. font-weight: 700;
  206. color: $color-orange;
  207. }
  208. }
  209. .stats-layer {
  210. display: flex;
  211. flex-direction: column;
  212. justify-content: space-between;
  213. align-items: stretch;
  214. gap: 20rpx 0;
  215. width: $card-width;
  216. background-color: #fff;
  217. border-radius: 10rpx;
  218. padding: 40rpx;
  219. box-sizing: border-box;
  220. .stats-list {
  221. width: 100%;
  222. display: flex;
  223. justify-content: space-between;
  224. align-items: center;
  225. gap: 10rpx;
  226. .line {
  227. height: 25rpx;
  228. width: 0;
  229. border-right: 2rpx solid #ebebeb;
  230. margin: 0 -2rpx 2px 0;
  231. align-self: last baseline;
  232. }
  233. .stats-item {
  234. flex: 1;
  235. display: flex;
  236. flex-direction: column;
  237. align-items: center;
  238. justify-content: center;
  239. }
  240. .item-num {
  241. display: flex;
  242. justify-content: center;
  243. align-items: flex-end;
  244. color: #0033a8;
  245. margin-bottom: 4rpx;
  246. .number {
  247. font-size: 36rpx;
  248. }
  249. .unit {
  250. font-size: 20rpx;
  251. margin-bottom: 4rpx;
  252. }
  253. }
  254. .item-name {
  255. font-size: 24rpx;
  256. }
  257. }
  258. }
  259. .space-bg-yellow {
  260. display: flex;
  261. flex-direction: column;
  262. justify-content: space-between;
  263. align-items: stretch;
  264. gap: 20rpx 0;
  265. background: rgba($color: #fef5f5, $alpha: 0.56);
  266. margin: 0 -40rpx;
  267. padding: 40rpx;
  268. }