job.scss 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836
  1. page {
  2. background-color: #fff;
  3. font-family: "PingFang SC-Medium";
  4. }
  5. .page {
  6. background-color: #fff;
  7. position: relative;
  8. background: url("../../static/me/job/rw_bg_01.png") center top / 100% auto
  9. no-repeat,
  10. #f2f6f2;
  11. }
  12. // 顶部黄色背景
  13. .PageHeader {
  14. background: url("../../static/me/job/rw_bg_01.png") center top / 100% auto
  15. no-repeat,
  16. #f2f6f2;
  17. background-position-y: var(--status-bar-height);
  18. }
  19. .occupyHigh {
  20. height: calc(var(--status-bar-height) + 150rpx);
  21. width: 100%;
  22. }
  23. // 内容区域
  24. .content-area {
  25. position: relative;
  26. z-index: 1;
  27. padding: 0 20rpx;
  28. }
  29. // 星源余额展示区
  30. .person-info {
  31. display: flex;
  32. justify-content: space-between;
  33. align-items: center;
  34. padding: 0 20rpx;
  35. padding-bottom: 48rpx;
  36. .person-info-left {
  37. display: flex;
  38. .avator {
  39. width: 100rpx;
  40. height: 100rpx;
  41. border: 4rpx solid #fff;
  42. margin-right: 28rpx;
  43. }
  44. .title-area {
  45. .my-bean-title {
  46. font-size: 24rpx;
  47. }
  48. .bean-number {
  49. display: flex;
  50. align-items: center;
  51. font-family: "CustomFont";
  52. font-weight: 700;
  53. font-size: 48rpx;
  54. color: #1f1f1f;
  55. image {
  56. width: 40rpx;
  57. height: 40rpx;
  58. margin-right: 8rpx;
  59. }
  60. }
  61. }
  62. }
  63. .exchange-btn {
  64. width: 140rpx;
  65. height: 52rpx;
  66. background: #1f1f1f;
  67. border-radius: 26rpx;
  68. font-size: 24rpx;
  69. color: #acf934;
  70. display: flex;
  71. align-items: center;
  72. justify-content: center;
  73. }
  74. }
  75. // 星愿打卡区域
  76. .starWishCheckIn {
  77. width: 710rpx;
  78. height: 380rpx;
  79. background: url("../../static/me/job/rw_bg_02.png") top left/100% no-repeat,
  80. #ffffff;
  81. box-shadow: 0rpx 6rpx 8rpx 0rpx rgba(231, 231, 231, 0.29);
  82. border-radius: 20rpx;
  83. padding: 20rpx;
  84. padding-top: 96rpx;
  85. margin-bottom: 20rpx;
  86. display: flex;
  87. justify-content: space-between;
  88. position: relative;
  89. left: 0;
  90. top: 0;
  91. .title {
  92. position: absolute;
  93. left: 20rpx;
  94. top: 20rpx;
  95. width: 200rpx;
  96. height: 104rpx;
  97. }
  98. .card {
  99. width: 328rpx;
  100. height: 238rpx;
  101. padding: 28rpx 26rpx 22rpx 24rpx;
  102. box-sizing: border-box;
  103. .card-title {
  104. font-weight: 700;
  105. font-size: 28rpx;
  106. color: #ffffff;
  107. font-family: "CustomFont";
  108. }
  109. .card-desc {
  110. font-weight: 400;
  111. font-size: 22rpx;
  112. color: rgba(255, 255, 255, 0.8);
  113. width: 180rpx;
  114. padding-bottom: 20rpx;
  115. }
  116. .card-btn {
  117. width: 276rpx;
  118. height: 64rpx;
  119. display: flex;
  120. align-items: center;
  121. justify-content: center;
  122. padding-bottom: 10rpx;
  123. font-weight: 400;
  124. font-size: 28rpx;
  125. &.card-reward {
  126. background: url("../../static/me/job/rw_btn_01.png") center/100%
  127. no-repeat;
  128. color: #c88618;
  129. }
  130. &.sign-btn {
  131. background: url("../../static/me/job/rw_btn_02.png") center/100%
  132. no-repeat;
  133. color: #0484ce;
  134. }
  135. }
  136. &.purple-card {
  137. background: url("../../static/me/job/sy_img_xingyuandaka01.png")
  138. center/100% no-repeat;
  139. }
  140. &.yellow-card {
  141. background: url("../../static/me/job/sy_img_xingyuandaka02.png")
  142. center/100% no-repeat;
  143. }
  144. }
  145. }
  146. // 任务列表
  147. .task-list-box {
  148. box-shadow: 0rpx 6rpx 8rpx 0rpx rgba(231, 231, 231, 0.29);
  149. border-radius: 20rpx;
  150. background: url("../../static/me/job/rw_bg_02.png") top left/100% no-repeat,
  151. #ffffff;
  152. padding: 20rpx;
  153. box-sizing: border-box;
  154. .task-header {
  155. display: flex;
  156. align-items: center;
  157. image {
  158. width: 200rpx;
  159. height: 50rpx;
  160. margin-right: 4rpx;
  161. }
  162. .task-subtitle {
  163. font-weight: 400;
  164. font-size: 22rpx;
  165. color: #999999;
  166. }
  167. }
  168. .task-item {
  169. display: flex;
  170. flex-direction: row;
  171. align-items: center;
  172. padding: 20rpx 0;
  173. border-bottom: 1px solid #f0f0f0;
  174. justify-content: space-between;
  175. .task-info {
  176. flex: 1;
  177. display: flex;
  178. align-items: center;
  179. justify-content: flex-start;
  180. max-width: 408rpx;
  181. image {
  182. width: 88rpx;
  183. height: 88rpx;
  184. flex-shrink: 0;
  185. margin-right: 20rpx;
  186. }
  187. .task-name {
  188. color: #333;
  189. margin-bottom: 6rpx;
  190. max-width: 310rpx;
  191. font-weight: 400;
  192. font-size: 28rpx;
  193. color: #1f1f1f;
  194. font-family: "PingFang SC-Bold";
  195. }
  196. .task-desc {
  197. max-width: 310rpx;
  198. font-weight: 400;
  199. font-size: 22rpx;
  200. color: #999999;
  201. }
  202. }
  203. .task-reward {
  204. font-size: 28rpx;
  205. color: #1f1f1f;
  206. margin-right: 20rpx;
  207. display: flex;
  208. align-items: center;
  209. justify-content: center;
  210. image {
  211. width: 36rpx;
  212. height: 36rpx;
  213. }
  214. }
  215. .task-btn {
  216. display: flex;
  217. justify-content: center;
  218. align-items: center;
  219. width: 140rpx;
  220. height: 52rpx;
  221. background: #1f1f1f;
  222. border-radius: 26rpx;
  223. font-weight: 400;
  224. font-size: 24rpx;
  225. color: #acf934;
  226. border: 2rpx solid #1f1f1f;
  227. &.task-completed {
  228. background-color: #fff;
  229. color: #1f1f1f;
  230. border: 2rpx solid #1f1f1f;
  231. }
  232. }
  233. }
  234. }
  235. // 兑换弹窗
  236. .NicknamePopUpWindowBox {
  237. ::v-deep.uv-popup .uv-popup__content {
  238. border-radius: 28rpx 28rpx 0 0;
  239. min-height: 400rpx;
  240. background: url("../../static/me/wd_bg_jianjie.png") center top/100% auto no-repeat, #f2f6f2 !important;
  241. padding-bottom: 40rpx;
  242. }
  243. }
  244. .NicknamePopUpWindow {
  245. .nickname-heard {
  246. padding: 0 32rpx;
  247. padding-top: 20rpx;
  248. padding-bottom: -26rpx;
  249. display: flex;
  250. flex-direction: center;
  251. align-items: center;
  252. position: relative;
  253. left: 0;
  254. top: 0;
  255. width: 100vw;
  256. box-sizing: border-box;
  257. .available-mCoin {
  258. font-weight: 400;
  259. font-size: 24rpx;
  260. color: #1f1f1f;
  261. }
  262. .exchange-title {
  263. position: absolute;
  264. left: 50%;
  265. top: calc(50% + 10rpx);
  266. transform: translate(-50%, -50%);
  267. font-family: "CustomFont";
  268. font-weight: 700;
  269. font-size: 36rpx;
  270. color: #1f1f1f;
  271. }
  272. }
  273. .content-box {
  274. width: 686rpx;
  275. height: 360rpx;
  276. background: #FFFFFF;
  277. border-radius: 20rpx;
  278. margin: 0 auto;
  279. margin-bottom: 40rpx;
  280. padding: 24rpx;
  281. .prompt{
  282. font-weight: 400;
  283. font-size: 28rpx;
  284. color: #1F1F1F;
  285. padding-bottom: 24rpx;
  286. text{
  287. color: #999999;
  288. font-size: 24rpx;
  289. }
  290. }
  291. ::v-deep.uv-input{
  292. background-color: #f2f6f2;
  293. }
  294. .input-box{
  295. width: 100%;
  296. height: 88rpx;
  297. background: #F2F6F2;
  298. border-radius: 20rpx;
  299. display: flex;
  300. align-items: center;
  301. justify-content: center;
  302. margin-bottom: 60rpx;
  303. padding:18rpx 24rpx ;
  304. >image{
  305. width: 48rpx;
  306. height: 48rpx;
  307. margin-right: 16rpx;
  308. }
  309. .input{
  310. }
  311. }
  312. }
  313. }
  314. // 星源余额展示区
  315. .bean-balance {
  316. width: 690rpx;
  317. background-color: #ffffff;
  318. border-radius: 24rpx;
  319. padding: 30rpx;
  320. margin-bottom: 30rpx;
  321. box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.05);
  322. .balance-header {
  323. display: flex;
  324. flex-direction: row;
  325. justify-content: space-between;
  326. align-items: center;
  327. .title-area {
  328. display: flex;
  329. flex-direction: row;
  330. align-items: center;
  331. .yellow-dot {
  332. width: 16rpx;
  333. height: 16rpx;
  334. border-radius: 50%;
  335. background-color: #90d369;
  336. margin-right: 10rpx;
  337. }
  338. .my-bean-title {
  339. font-size: 32rpx;
  340. color: #333;
  341. font-weight: bold;
  342. }
  343. }
  344. .exchange-btn {
  345. width: 120rpx;
  346. height: 60rpx;
  347. background-color: #90d369;
  348. border-radius: 30rpx;
  349. display: flex;
  350. justify-content: center;
  351. align-items: center;
  352. font-size: 28rpx;
  353. color: #fff;
  354. font-weight: bold;
  355. }
  356. }
  357. .bean-number {
  358. font-size: 80rpx;
  359. font-weight: bold;
  360. color: #333;
  361. margin-top: 20rpx;
  362. }
  363. }
  364. // 星愿打卡区域
  365. .sign-cards {
  366. display: flex;
  367. flex-direction: row;
  368. justify-content: space-between;
  369. margin-bottom: 30rpx;
  370. .card {
  371. width: 330rpx;
  372. height: 240rpx;
  373. border-radius: 24rpx;
  374. padding: 24rpx;
  375. display: flex;
  376. flex-direction: column;
  377. box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.05);
  378. .card-title {
  379. font-size: 34rpx;
  380. font-weight: bold;
  381. color: #ffffff;
  382. margin-bottom: 10rpx;
  383. }
  384. .card-desc {
  385. font-size: 24rpx;
  386. color: rgba(255, 255, 255, 0.8);
  387. margin-bottom: 30rpx;
  388. }
  389. .card-reward {
  390. font-size: 30rpx;
  391. color: #ffffff;
  392. font-weight: bold;
  393. }
  394. .card-progress {
  395. font-size: 36rpx;
  396. color: #ffffff;
  397. font-weight: bold;
  398. margin-top: auto;
  399. }
  400. .sign-btn {
  401. width: 180rpx;
  402. height: 70rpx;
  403. background-color: #ffffff;
  404. border-radius: 35rpx;
  405. display: flex;
  406. justify-content: center;
  407. align-items: center;
  408. font-size: 28rpx;
  409. color: #333;
  410. font-weight: bold;
  411. margin-top: auto;
  412. }
  413. }
  414. .purple-card {
  415. background-color: #9c27b0;
  416. }
  417. .yellow-card {
  418. background-color: #90d369;
  419. }
  420. }
  421. // 任务列表
  422. .task-list {
  423. background-color: #ffffff;
  424. border-radius: 24rpx;
  425. padding: 30rpx;
  426. box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.05);
  427. .task-header {
  428. display: flex;
  429. flex-direction: row;
  430. align-items: center;
  431. margin-bottom: 30rpx;
  432. .task-title {
  433. font-size: 34rpx;
  434. color: #333;
  435. font-weight: bold;
  436. margin-right: 20rpx;
  437. }
  438. .task-subtitle {
  439. font-size: 24rpx;
  440. color: #999;
  441. }
  442. }
  443. .task-item {
  444. display: flex;
  445. flex-direction: row;
  446. align-items: center;
  447. padding: 20rpx 0;
  448. border-bottom: 1px solid #f0f0f0;
  449. .task-info {
  450. flex: 1;
  451. .task-name {
  452. font-size: 30rpx;
  453. color: #333;
  454. margin-bottom: 6rpx;
  455. }
  456. .task-desc {
  457. font-size: 24rpx;
  458. color: #999;
  459. }
  460. }
  461. .task-reward {
  462. font-size: 30rpx;
  463. color: #90d369;
  464. font-weight: bold;
  465. margin-right: 20rpx;
  466. }
  467. .task-btn {
  468. width: 120rpx;
  469. height: 60rpx;
  470. background-color: #90d369;
  471. border-radius: 30rpx;
  472. display: flex;
  473. justify-content: center;
  474. align-items: center;
  475. font-size: 26rpx;
  476. color: #fff;
  477. font-weight: bold;
  478. }
  479. .task-completed {
  480. background-color: #f0f0f0;
  481. color: #999;
  482. }
  483. }
  484. }
  485. // 星源兑换弹窗
  486. .exchange-popup {
  487. position: fixed;
  488. bottom: 0;
  489. left: 0;
  490. width: 100%;
  491. height: 100%;
  492. z-index: 999;
  493. .popup-mask {
  494. position: absolute;
  495. top: 0;
  496. left: 0;
  497. width: 100%;
  498. height: 100%;
  499. background-color: rgba(0, 0, 0, 0.5);
  500. }
  501. .popup-content {
  502. position: absolute;
  503. bottom: 0;
  504. left: 0;
  505. width: 100%;
  506. background-color: #f5f5f5;
  507. border-radius: 24rpx 24rpx 0 0;
  508. padding-bottom: 50rpx;
  509. .popup-header {
  510. display: flex;
  511. flex-direction: row;
  512. justify-content: space-between;
  513. align-items: center;
  514. padding: 30rpx;
  515. .available-balance {
  516. font-size: 28rpx;
  517. color: #333;
  518. }
  519. .exchange-title {
  520. font-size: 28rpx;
  521. color: #333;
  522. font-weight: bold;
  523. }
  524. }
  525. .exchange-area {
  526. background-color: #ffffff;
  527. margin: 0 30rpx;
  528. border-radius: 20rpx;
  529. padding: 30rpx;
  530. .exchange-title-area {
  531. margin-bottom: 40rpx;
  532. .exchange-main-title {
  533. font-size: 34rpx;
  534. color: #333;
  535. font-weight: bold;
  536. display: block;
  537. margin-bottom: 10rpx;
  538. }
  539. .exchange-subtitle {
  540. font-size: 24rpx;
  541. color: #999;
  542. }
  543. }
  544. .input-area {
  545. display: flex;
  546. flex-direction: row;
  547. align-items: center;
  548. padding: 20rpx 0;
  549. border-bottom: 1px solid #f0f0f0;
  550. margin-bottom: 50rpx;
  551. .bean-icon {
  552. width: 40rpx;
  553. height: 40rpx;
  554. border-radius: 50%;
  555. background-color: #ffe156;
  556. margin-right: 20rpx;
  557. }
  558. .exchange-input {
  559. flex: 1;
  560. height: 60rpx;
  561. font-size: 30rpx;
  562. }
  563. }
  564. .action-area {
  565. display: flex;
  566. flex-direction: column;
  567. align-items: center;
  568. .exchange-btn-large {
  569. width: 100%;
  570. height: 90rpx;
  571. background-color: #90d369;
  572. border-radius: 45rpx;
  573. display: flex;
  574. justify-content: center;
  575. align-items: center;
  576. font-size: 32rpx;
  577. color: #fff;
  578. font-weight: bold;
  579. margin-bottom: 20rpx;
  580. }
  581. .tips-text {
  582. font-size: 24rpx;
  583. color: #999;
  584. text-align: center;
  585. }
  586. }
  587. }
  588. }
  589. }
  590. // 签到弹窗
  591. .sign-popup {
  592. position: fixed;
  593. bottom: 0;
  594. left: 0;
  595. width: 100%;
  596. height: 100%;
  597. z-index: 1000;
  598. .popup-mask {
  599. position: absolute;
  600. top: 0;
  601. left: 0;
  602. width: 100%;
  603. height: 100%;
  604. background-color: rgba(0, 0, 0, 0.5);
  605. }
  606. .sign-popup-content {
  607. position: absolute;
  608. bottom: 0;
  609. left: 0;
  610. width: 100%;
  611. background: #ffffff;
  612. border-radius: 24rpx 24rpx 0 0;
  613. padding: 30rpx;
  614. padding-bottom: 50rpx;
  615. .sign-popup-header {
  616. position: relative;
  617. padding-bottom: 30rpx;
  618. .sign-popup-title {
  619. font-size: 36rpx;
  620. color: #333333;
  621. font-weight: bold;
  622. margin-bottom: 30rpx;
  623. display: block;
  624. }
  625. .sign-notify-switch {
  626. display: flex;
  627. flex-direction: row;
  628. align-items: center;
  629. position: absolute;
  630. top: 0;
  631. right: 0;
  632. .sign-notify-text {
  633. font-size: 24rpx;
  634. color: #666666;
  635. margin-right: 10rpx;
  636. }
  637. .sign-switch {
  638. transform: scale(0.7);
  639. }
  640. }
  641. .sign-days-tag {
  642. display: inline-block;
  643. padding: 6rpx 20rpx;
  644. background-color: #ffd54f;
  645. border-radius: 24rpx;
  646. font-size: 24rpx;
  647. color: #333;
  648. font-weight: bold;
  649. }
  650. }
  651. .vip-area {
  652. display: flex;
  653. flex-direction: row;
  654. justify-content: space-between;
  655. align-items: center;
  656. background-color: #f5f5f5;
  657. border-radius: 12rpx;
  658. padding: 20rpx;
  659. margin-bottom: 30rpx;
  660. .vip-left {
  661. .vip-text {
  662. font-size: 26rpx;
  663. color: #333333;
  664. }
  665. }
  666. .vip-right {
  667. .vip-offer {
  668. font-size: 24rpx;
  669. color: #9c27b0;
  670. }
  671. }
  672. }
  673. .sign-grid {
  674. display: flex;
  675. flex-direction: row;
  676. flex-wrap: wrap;
  677. margin: 0 -10rpx;
  678. margin-bottom: 40rpx;
  679. .sign-grid-item {
  680. width: calc(33.33% - 20rpx);
  681. background-color: #f5f5f5;
  682. border-radius: 12rpx;
  683. padding: 20rpx;
  684. margin: 10rpx;
  685. position: relative;
  686. height: 180rpx;
  687. display: flex;
  688. flex-direction: column;
  689. .sign-day-num {
  690. font-size: 24rpx;
  691. color: #666666;
  692. margin-bottom: 10rpx;
  693. }
  694. .sign-item-img {
  695. width: 70rpx;
  696. height: 70rpx;
  697. background-color: #dddddd;
  698. border-radius: 50%;
  699. margin: 10rpx auto;
  700. }
  701. .sign-item-name {
  702. font-size: 24rpx;
  703. color: #333333;
  704. text-align: center;
  705. margin-top: auto;
  706. }
  707. .sign-vip-tag {
  708. position: absolute;
  709. top: 20rpx;
  710. right: 20rpx;
  711. padding: 4rpx 10rpx;
  712. background-color: #9c27b0;
  713. border-radius: 10rpx;
  714. font-size: 20rpx;
  715. color: #ffffff;
  716. }
  717. .sign-received-mask {
  718. position: absolute;
  719. top: 0;
  720. left: 0;
  721. width: 100%;
  722. height: 100%;
  723. background-color: rgba(0, 0, 0, 0.5);
  724. border-radius: 12rpx;
  725. display: flex;
  726. justify-content: center;
  727. align-items: center;
  728. .received-text {
  729. font-size: 28rpx;
  730. color: #ffffff;
  731. font-weight: bold;
  732. }
  733. }
  734. }
  735. }
  736. .sign-btn-large {
  737. width: 100%;
  738. height: 90rpx;
  739. background-color: #9c27b0;
  740. border-radius: 45rpx;
  741. display: flex;
  742. justify-content: center;
  743. align-items: center;
  744. font-size: 32rpx;
  745. color: #ffffff;
  746. font-weight: bold;
  747. &.sign-btn-disabled {
  748. background-color: #cccccc;
  749. color: #999999;
  750. }
  751. }
  752. }
  753. }