时空网前端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

4002 lines
64 KiB

5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
  1. /*
  2. ColorUi for uniApp v2.1.6 | by 文晓港 2019-05-31 10:44:24
  3. 仅供学习交流如作它用所承受的法律责任一概与作者无关
  4. *使用ColorUi开发扩展与插件时请注明基于ColorUi开发
  5. QQ交流群240787041
  6. */
  7. /* ==================
  8. 初始化
  9. ==================== */
  10. body {
  11. background-color: #fff;
  12. font-size: 28upx;
  13. color: #333333;
  14. font-family: Helvetica Neue, Helvetica, sans-serif;
  15. }
  16. view,
  17. scroll-view,
  18. swiper,
  19. button,
  20. input,
  21. textarea,
  22. label,
  23. navigator,
  24. image {
  25. box-sizing: border-box;
  26. }
  27. .round {
  28. border-radius: 5000upx;
  29. }
  30. .radius {
  31. border-radius: 6upx;
  32. }
  33. /* ==================
  34. 图片
  35. ==================== */
  36. image {
  37. max-width: 100%;
  38. display: inline-block;
  39. position: relative;
  40. z-index: 0;
  41. }
  42. image.loading::before {
  43. content: "";
  44. background-color: #f5f5f5;
  45. display: block;
  46. position: absolute;
  47. width: 100%;
  48. height: 100%;
  49. z-index: -2;
  50. }
  51. image.loading::after {
  52. content: "\e7f1";
  53. font-family: "cuIcon";
  54. position: absolute;
  55. top: 0;
  56. left: 0;
  57. width: 32upx;
  58. height: 32upx;
  59. line-height: 32upx;
  60. right: 0;
  61. bottom: 0;
  62. z-index: -1;
  63. font-size: 32upx;
  64. margin: auto;
  65. color: #ccc;
  66. -webkit-animation: cuIcon-spin 2s infinite linear;
  67. animation: cuIcon-spin 2s infinite linear;
  68. display: block;
  69. }
  70. .response {
  71. width: 100%;
  72. }
  73. /* ==================
  74. 开关
  75. ==================== */
  76. switch,
  77. checkbox,
  78. radio {
  79. position: relative;
  80. }
  81. switch::after,
  82. switch::before {
  83. font-family: "cuIcon";
  84. content: "\e645";
  85. position: absolute;
  86. color: #ffffff !important;
  87. top: 0%;
  88. left: 0upx;
  89. font-size: 26upx;
  90. line-height: 26px;
  91. width: 50%;
  92. text-align: center;
  93. pointer-events: none;
  94. transform: scale(0, 0);
  95. transition: all 0.3s ease-in-out 0s;
  96. z-index: 9;
  97. bottom: 0;
  98. height: 26px;
  99. margin: auto;
  100. }
  101. switch::before {
  102. content: "\e646";
  103. right: 0;
  104. transform: scale(1, 1);
  105. left: auto;
  106. }
  107. switch[checked]::after,
  108. switch.checked::after {
  109. transform: scale(1, 1);
  110. }
  111. switch[checked]::before,
  112. switch.checked::before {
  113. transform: scale(0, 0);
  114. }
  115. /* #ifndef MP-ALIPAY */
  116. radio::before,
  117. checkbox::before {
  118. font-family: "cuIcon";
  119. content: "\e645";
  120. position: absolute;
  121. color: #ffffff !important;
  122. top: 50%;
  123. margin-top: -8px;
  124. right: 5px;
  125. font-size: 32upx;
  126. line-height: 16px;
  127. pointer-events: none;
  128. transform: scale(1, 1);
  129. transition: all 0.3s ease-in-out 0s;
  130. z-index: 9;
  131. }
  132. radio .wx-radio-input,
  133. checkbox .wx-checkbox-input,
  134. radio .uni-radio-input,
  135. checkbox .uni-checkbox-input {
  136. margin: 0;
  137. width: 24px;
  138. height: 24px;
  139. }
  140. checkbox.round .wx-checkbox-input,
  141. checkbox.round .uni-checkbox-input {
  142. border-radius: 100upx;
  143. }
  144. /* #endif */
  145. switch[checked]::before {
  146. transform: scale(0, 0);
  147. }
  148. switch .wx-switch-input,
  149. switch .uni-switch-input {
  150. border: none;
  151. padding: 0 24px;
  152. width: 48px;
  153. height: 26px;
  154. margin: 0;
  155. border-radius: 100upx;
  156. }
  157. switch .wx-switch-input:not([class*="bg-"]),
  158. switch .uni-switch-input:not([class*="bg-"]) {
  159. background: #8799a3 !important;
  160. }
  161. switch .wx-switch-input::after,
  162. switch .uni-switch-input::after {
  163. margin: auto;
  164. width: 26px;
  165. height: 26px;
  166. border-radius: 100upx;
  167. left: 0upx;
  168. top: 0upx;
  169. bottom: 0upx;
  170. position: absolute;
  171. transform: scale(0.9, 0.9);
  172. transition: all 0.1s ease-in-out 0s;
  173. }
  174. switch .wx-switch-input.wx-switch-input-checked::after,
  175. switch .uni-switch-input.uni-switch-input-checked::after {
  176. margin: auto;
  177. left: 22px;
  178. box-shadow: none;
  179. transform: scale(0.9, 0.9);
  180. }
  181. radio-group {
  182. display: inline-block;
  183. }
  184. switch.radius .wx-switch-input::after,
  185. switch.radius .wx-switch-input,
  186. switch.radius .wx-switch-input::before,
  187. switch.radius .uni-switch-input::after,
  188. switch.radius .uni-switch-input,
  189. switch.radius .uni-switch-input::before {
  190. border-radius: 10upx;
  191. }
  192. switch .wx-switch-input::before,
  193. radio.radio::before,
  194. checkbox .wx-checkbox-input::before,
  195. radio .wx-radio-input::before,
  196. switch .uni-switch-input::before,
  197. radio.radio::before,
  198. checkbox .uni-checkbox-input::before,
  199. radio .uni-radio-input::before {
  200. display: none;
  201. }
  202. radio.radio[checked]::after,
  203. radio.radio .uni-radio-input-checked::after {
  204. content: "";
  205. background-color: transparent;
  206. display: block;
  207. position: absolute;
  208. width: 8px;
  209. height: 8px;
  210. z-index: 999;
  211. top: 0upx;
  212. left: 0upx;
  213. right: 0;
  214. bottom: 0;
  215. margin: auto;
  216. border-radius: 200upx;
  217. /* #ifndef MP */
  218. border: 7px solid #ffffff !important;
  219. /* #endif */
  220. /* #ifdef MP */
  221. border: 8px solid #ffffff !important;
  222. /* #endif */
  223. }
  224. .switch-sex::after {
  225. content: "\e71c";
  226. }
  227. .switch-sex::before {
  228. content: "\e71a";
  229. }
  230. .switch-sex .wx-switch-input,
  231. .switch-sex .uni-switch-input {
  232. background: #e54d42 !important;
  233. border-color: #e54d42 !important;
  234. }
  235. .switch-sex[checked] .wx-switch-input,
  236. .switch-sex.checked .uni-switch-input {
  237. background: #0081ff !important;
  238. border-color: #0081ff !important;
  239. }
  240. switch.red[checked] .wx-switch-input.wx-switch-input-checked,
  241. checkbox.red[checked] .wx-checkbox-input,
  242. radio.red[checked] .wx-radio-input,
  243. switch.red.checked .uni-switch-input.uni-switch-input-checked,
  244. checkbox.red.checked .uni-checkbox-input,
  245. radio.red.checked .uni-radio-input {
  246. background-color: #e54d42 !important;
  247. border-color: #e54d42 !important;
  248. color: #ffffff !important;
  249. }
  250. switch.orange[checked] .wx-switch-input,
  251. checkbox.orange[checked] .wx-checkbox-input,
  252. radio.orange[checked] .wx-radio-input,
  253. switch.orange.checked .uni-switch-input,
  254. checkbox.orange.checked .uni-checkbox-input,
  255. radio.orange.checked .uni-radio-input {
  256. background-color: #f37b1d !important;
  257. border-color: #f37b1d !important;
  258. color: #ffffff !important;
  259. }
  260. switch.yellow[checked] .wx-switch-input,
  261. checkbox.yellow[checked] .wx-checkbox-input,
  262. radio.yellow[checked] .wx-radio-input,
  263. switch.yellow.checked .uni-switch-input,
  264. checkbox.yellow.checked .uni-checkbox-input,
  265. radio.yellow.checked .uni-radio-input {
  266. background-color: #fbbd08 !important;
  267. border-color: #fbbd08 !important;
  268. color: #333333 !important;
  269. }
  270. switch.olive[checked] .wx-switch-input,
  271. checkbox.olive[checked] .wx-checkbox-input,
  272. radio.olive[checked] .wx-radio-input,
  273. switch.olive.checked .uni-switch-input,
  274. checkbox.olive.checked .uni-checkbox-input,
  275. radio.olive.checked .uni-radio-input {
  276. background-color: #8dc63f !important;
  277. border-color: #8dc63f !important;
  278. color: #ffffff !important;
  279. }
  280. switch.green[checked] .wx-switch-input,
  281. switch[checked] .wx-switch-input,
  282. checkbox.green[checked] .wx-checkbox-input,
  283. checkbox[checked] .wx-checkbox-input,
  284. radio.green[checked] .wx-radio-input,
  285. radio[checked] .wx-radio-input,
  286. switch.green.checked .uni-switch-input,
  287. switch.checked .uni-switch-input,
  288. checkbox.green.checked .uni-checkbox-input,
  289. checkbox.checked .uni-checkbox-input,
  290. radio.green.checked .uni-radio-input,
  291. radio.checked .uni-radio-input {
  292. /* background-color: #39b54a !important;
  293. border-color: #39b54a !important; */
  294. color: #ffffff !important;
  295. /* border-color: #39B54A !important; */
  296. }
  297. switch.cyan[checked] .wx-switch-input,
  298. checkbox.cyan[checked] .wx-checkbox-input,
  299. radio.cyan[checked] .wx-radio-input,
  300. switch.cyan.checked .uni-switch-input,
  301. checkbox.cyan.checked .uni-checkbox-input,
  302. radio.cyan.checked .uni-radio-input {
  303. background-color: #1cbbb4 !important;
  304. border-color: #1cbbb4 !important;
  305. color: #ffffff !important;
  306. }
  307. switch.blue[checked] .wx-switch-input,
  308. checkbox.blue[checked] .wx-checkbox-input,
  309. radio.blue[checked] .wx-radio-input,
  310. switch.blue.checked .uni-switch-input,
  311. checkbox.blue.checked .uni-checkbox-input,
  312. radio.blue.checked .uni-radio-input {
  313. background-color: #0081ff !important;
  314. border-color: #0081ff !important;
  315. color: #ffffff !important;
  316. }
  317. switch.purple[checked] .wx-switch-input,
  318. checkbox.purple[checked] .wx-checkbox-input,
  319. radio.purple[checked] .wx-radio-input,
  320. switch.purple.checked .uni-switch-input,
  321. checkbox.purple.checked .uni-checkbox-input,
  322. radio.purple.checked .uni-radio-input {
  323. background-color: #6739b6 !important;
  324. border-color: #6739b6 !important;
  325. color: #ffffff !important;
  326. }
  327. switch.mauve[checked] .wx-switch-input,
  328. checkbox.mauve[checked] .wx-checkbox-input,
  329. radio.mauve[checked] .wx-radio-input,
  330. switch.mauve.checked .uni-switch-input,
  331. checkbox.mauve.checked .uni-checkbox-input,
  332. radio.mauve.checked .uni-radio-input {
  333. background-color: #9c26b0 !important;
  334. border-color: #9c26b0 !important;
  335. color: #ffffff !important;
  336. }
  337. switch.pink[checked] .wx-switch-input,
  338. checkbox.pink[checked] .wx-checkbox-input,
  339. radio.pink[checked] .wx-radio-input,
  340. switch.pink.checked .uni-switch-input,
  341. checkbox.pink.checked .uni-checkbox-input,
  342. radio.pink.checked .uni-radio-input {
  343. background-color: #e03997 !important;
  344. border-color: #e03997 !important;
  345. color: #ffffff !important;
  346. }
  347. switch.brown[checked] .wx-switch-input,
  348. checkbox.brown[checked] .wx-checkbox-input,
  349. radio.brown[checked] .wx-radio-input,
  350. switch.brown.checked .uni-switch-input,
  351. checkbox.brown.checked .uni-checkbox-input,
  352. radio.brown.checked .uni-radio-input {
  353. background-color: #a5673f !important;
  354. border-color: #a5673f !important;
  355. color: #ffffff !important;
  356. }
  357. switch.grey[checked] .wx-switch-input,
  358. checkbox.grey[checked] .wx-checkbox-input,
  359. radio.grey[checked] .wx-radio-input,
  360. switch.grey.checked .uni-switch-input,
  361. checkbox.grey.checked .uni-checkbox-input,
  362. radio.grey.checked .uni-radio-input {
  363. background-color: #8799a3 !important;
  364. border-color: #8799a3 !important;
  365. color: #ffffff !important;
  366. }
  367. switch.gray[checked] .wx-switch-input,
  368. checkbox.gray[checked] .wx-checkbox-input,
  369. radio.gray[checked] .wx-radio-input,
  370. switch.gray.checked .uni-switch-input,
  371. checkbox.gray.checked .uni-checkbox-input,
  372. radio.gray.checked .uni-radio-input {
  373. background-color: #f0f0f0 !important;
  374. border-color: #f0f0f0 !important;
  375. color: #333333 !important;
  376. }
  377. switch.black[checked] .wx-switch-input,
  378. checkbox.black[checked] .wx-checkbox-input,
  379. radio.black[checked] .wx-radio-input,
  380. switch.black.checked .uni-switch-input,
  381. checkbox.black.checked .uni-checkbox-input,
  382. radio.black.checked .uni-radio-input {
  383. background-color: #333333 !important;
  384. border-color: #333333 !important;
  385. color: #ffffff !important;
  386. }
  387. switch.white[checked] .wx-switch-input,
  388. checkbox.white[checked] .wx-checkbox-input,
  389. radio.white[checked] .wx-radio-input,
  390. switch.white.checked .uni-switch-input,
  391. checkbox.white.checked .uni-checkbox-input,
  392. radio.white.checked .uni-radio-input {
  393. background-color: #ffffff !important;
  394. border-color: #ffffff !important;
  395. color: #333333 !important;
  396. }
  397. /* ==================
  398. 边框
  399. ==================== */
  400. /* -- 实线 -- */
  401. .solid,
  402. .solid-top,
  403. .solid-right,
  404. .solid-bottom,
  405. .solid-left,
  406. .solids,
  407. .solids-top,
  408. .solids-right,
  409. .solids-bottom,
  410. .solids-left,
  411. .dashed,
  412. .dashed-top,
  413. .dashed-right,
  414. .dashed-bottom,
  415. .dashed-left {
  416. position: relative;
  417. }
  418. .solid::after,
  419. .solid-top::after,
  420. .solid-right::after,
  421. .solid-bottom::after,
  422. .solid-left::after,
  423. .solids::after,
  424. .solids-top::after,
  425. .solids-right::after,
  426. .solids-bottom::after,
  427. .solids-left::after,
  428. .dashed::after,
  429. .dashed-top::after,
  430. .dashed-right::after,
  431. .dashed-bottom::after,
  432. .dashed-left::after {
  433. content: " ";
  434. width: 200%;
  435. height: 200%;
  436. position: absolute;
  437. top: 0;
  438. left: 0;
  439. border-radius: inherit;
  440. transform: scale(0.5);
  441. transform-origin: 0 0;
  442. pointer-events: none;
  443. box-sizing: border-box;
  444. }
  445. .solid::after {
  446. border: 1upx solid rgba(0, 0, 0, 0.1);
  447. }
  448. .solid-top::after {
  449. left: 24upx;
  450. width: calc(200% - 114upx);
  451. border-top: 1upx solid rgba(0, 0, 0, 0.1);
  452. }
  453. .solid-right::after {
  454. border-right: 1upx solid rgba(0, 0, 0, 0.1);
  455. }
  456. .solid-bottom::after {
  457. left: 30upx;
  458. width: calc(200% - 120upx);
  459. border-bottom: 1upx solid rgba(0, 0, 0, 0.1);
  460. }
  461. .solid-left::after {
  462. border-left: 1upx solid rgba(0, 0, 0, 0.1);
  463. }
  464. .solids::after {
  465. border: 8upx solid #eee;
  466. }
  467. .solids-top::after {
  468. border-top: 8upx solid #eee;
  469. }
  470. .solids-right::after {
  471. border-right: 8upx solid #eee;
  472. }
  473. .solids-bottom::after {
  474. border-bottom: 8upx solid #eee;
  475. }
  476. .solids-left::after {
  477. border-left: 8upx solid #eee;
  478. }
  479. /* -- 虚线 -- */
  480. .dashed::after {
  481. border: 1upx dashed #ddd;
  482. }
  483. .dashed-top::after {
  484. border-top: 1upx dashed #ddd;
  485. }
  486. .dashed-right::after {
  487. border-right: 1upx dashed #ddd;
  488. }
  489. .dashed-bottom::after {
  490. border-bottom: 1upx dashed #ddd;
  491. }
  492. .dashed-left::after {
  493. border-left: 1upx dashed #ddd;
  494. }
  495. /* -- 阴影 -- */
  496. .shadow[class*='white'] {
  497. --ShadowSize: 0 1upx 6upx;
  498. }
  499. .shadow-lg {
  500. --ShadowSize: 0upx 40upx 100upx 0upx;
  501. }
  502. .shadow-warp {
  503. position: relative;
  504. box-shadow: 0 0 10upx rgba(0, 0, 0, 0.1);
  505. }
  506. .shadow-warp:before,
  507. .shadow-warp:after {
  508. position: absolute;
  509. content: "";
  510. top: 20upx;
  511. bottom: 30upx;
  512. left: 20upx;
  513. width: 50%;
  514. box-shadow: 0 30upx 20upx rgba(0, 0, 0, 0.2);
  515. transform: rotate(-3deg);
  516. z-index: -1;
  517. }
  518. .shadow-warp:after {
  519. right: 20upx;
  520. left: auto;
  521. transform: rotate(3deg);
  522. }
  523. .shadow-blur {
  524. position: relative;
  525. }
  526. .shadow-blur::before {
  527. content: "";
  528. display: block;
  529. background: inherit;
  530. filter: blur(10upx);
  531. position: absolute;
  532. width: 100%;
  533. height: 100%;
  534. top: 10upx;
  535. left: 10upx;
  536. z-index: -1;
  537. opacity: 0.4;
  538. transform-origin: 0 0;
  539. border-radius: inherit;
  540. transform: scale(1, 1);
  541. }
  542. /* ==================
  543. 按钮
  544. ==================== */
  545. .cu-btn {
  546. position: relative;
  547. border: 0upx;
  548. display: inline-flex;
  549. align-items: center;
  550. justify-content: center;
  551. box-sizing: border-box;
  552. padding: 0 30upx;
  553. font-size: 28upx;
  554. height: 64upx;
  555. line-height: 1;
  556. text-align: center;
  557. text-decoration: none;
  558. overflow: visible;
  559. margin-left: initial;
  560. transform: translate(0upx, 0upx);
  561. margin-right: initial;
  562. }
  563. .cu-btn::after {
  564. display: none;
  565. }
  566. .cu-btn:not([class*="bg-"]) {
  567. background-color: #f0f0f0;
  568. }
  569. .cu-btn[class*="line"] {
  570. background-color: transparent;
  571. }
  572. .cu-btn[class*="line"]::after {
  573. content: " ";
  574. display: block;
  575. width: 200%;
  576. height: 200%;
  577. position: absolute;
  578. top: 0;
  579. left: 0;
  580. border: 1upx solid currentColor;
  581. transform: scale(0.5);
  582. transform-origin: 0 0;
  583. box-sizing: border-box;
  584. border-radius: 12upx;
  585. z-index: 1;
  586. pointer-events: none;
  587. }
  588. .cu-btn.round[class*="line"]::after {
  589. border-radius: 1000upx;
  590. }
  591. .cu-btn[class*="lines"]::after {
  592. border: 6upx solid currentColor;
  593. }
  594. .cu-btn[class*="bg-"]::after {
  595. display: none;
  596. }
  597. .cu-btn.sm {
  598. padding: 0 20upx;
  599. font-size: 20upx;
  600. height: 48upx;
  601. }
  602. .cu-btn.lg {
  603. padding: 0 40upx;
  604. font-size: 32upx;
  605. height: 80upx;
  606. }
  607. .cu-btn.cuIcon.sm {
  608. width: 48upx;
  609. height: 48upx;
  610. }
  611. .cu-btn.cuIcon {
  612. width: 64upx;
  613. height: 64upx;
  614. border-radius: 500upx;
  615. padding: 0;
  616. }
  617. button.cuIcon.lg {
  618. width: 80upx;
  619. height: 80upx;
  620. }
  621. .cu-btn.shadow-blur::before {
  622. top: 4upx;
  623. left: 4upx;
  624. filter: blur(6upx);
  625. opacity: 0.6;
  626. }
  627. .cu-btn.button-hover {
  628. transform: translate(1upx, 1upx);
  629. }
  630. .block {
  631. display: block;
  632. }
  633. .cu-btn.block {
  634. display: flex;
  635. }
  636. .cu-btn[disabled] {
  637. opacity: 0.6;
  638. color: #ffffff;
  639. }
  640. /* ==================
  641. 徽章
  642. ==================== */
  643. .cu-tag {
  644. font-size: 24upx;
  645. vertical-align: middle;
  646. position: relative;
  647. display: inline-flex;
  648. align-items: center;
  649. justify-content: center;
  650. box-sizing: border-box;
  651. padding: 0upx 16upx;
  652. height: 48upx;
  653. font-family: Helvetica Neue, Helvetica, sans-serif;
  654. white-space: nowrap;
  655. }
  656. .cu-tag:not([class*="bg"]):not([class*="line"]) {
  657. background-color: #f1f1f1;
  658. }
  659. .cu-tag[class*="line-"]::after {
  660. content: " ";
  661. width: 200%;
  662. height: 200%;
  663. position: absolute;
  664. top: 0;
  665. left: 0;
  666. border: 1upx solid currentColor;
  667. transform: scale(0.5);
  668. transform-origin: 0 0;
  669. box-sizing: border-box;
  670. border-radius: inherit;
  671. z-index: 1;
  672. pointer-events: none;
  673. }
  674. .cu-tag.radius[class*="line"]::after {
  675. border-radius: 12upx;
  676. }
  677. .cu-tag.round[class*="line"]::after {
  678. border-radius: 1000upx;
  679. }
  680. .cu-tag[class*="line-"]::after {
  681. border-radius: 0;
  682. }
  683. .cu-tag+.cu-tag {
  684. margin-left: 10upx;
  685. }
  686. .cu-tag.sm {
  687. font-size: 20upx;
  688. padding: 0upx 12upx;
  689. height: 32upx;
  690. }
  691. .cu-capsule {
  692. display: inline-flex;
  693. vertical-align: middle;
  694. }
  695. .cu-capsule+.cu-capsule {
  696. margin-left: 10upx;
  697. }
  698. .cu-capsule .cu-tag {
  699. margin: 0;
  700. }
  701. .cu-capsule .cu-tag[class*="line-"]:last-child::after {
  702. border-left: 0upx solid transparent;
  703. }
  704. .cu-capsule .cu-tag[class*="line-"]:first-child::after {
  705. border-right: 0upx solid transparent;
  706. }
  707. .cu-capsule.radius .cu-tag:first-child {
  708. border-top-left-radius: 6upx;
  709. border-bottom-left-radius: 6upx;
  710. }
  711. .cu-capsule.radius .cu-tag:last-child::after,
  712. .cu-capsule.radius .cu-tag[class*="line-"] {
  713. border-top-right-radius: 12upx;
  714. border-bottom-right-radius: 12upx;
  715. }
  716. .cu-capsule.round .cu-tag:first-child {
  717. border-top-left-radius: 200upx;
  718. border-bottom-left-radius: 200upx;
  719. text-indent: 4upx;
  720. }
  721. .cu-capsule.round .cu-tag:last-child::after,
  722. .cu-capsule.round .cu-tag:last-child {
  723. border-top-right-radius: 200upx;
  724. border-bottom-right-radius: 200upx;
  725. text-indent: -4upx;
  726. }
  727. .cu-tag.badge {
  728. border-radius: 16upx;
  729. position: absolute;
  730. top: -10upx;
  731. left: -10upx;
  732. font-size: 28upx;
  733. padding: 22upx;
  734. height: 40upx;
  735. font-weight: 200;
  736. color: #ffffff;
  737. }
  738. .cu-tag.badge:not([class*="bg-"]) {
  739. background-color: #FF0000;
  740. }
  741. .cu-tag:empty:not([class*="cuIcon-"]) {
  742. padding: 0upx;
  743. width: 16upx;
  744. height: 16upx;
  745. top: -4upx;
  746. right: -4upx;
  747. }
  748. .cu-tag[class*="cuIcon-"] {
  749. width: 32upx;
  750. height: 32upx;
  751. top: -4upx;
  752. right: -4upx;
  753. }
  754. /* ==================
  755. 头像
  756. ==================== */
  757. .cu-avatar {
  758. font-variant: small-caps;
  759. margin: 0;
  760. padding: 0;
  761. display: inline-flex;
  762. text-align: center;
  763. justify-content: center;
  764. align-items: center;
  765. background-color: #ccc;
  766. color: #ffffff;
  767. white-space: nowrap;
  768. position: relative;
  769. width: 64upx;
  770. height: 64upx;
  771. background-size: cover;
  772. background-position: center;
  773. vertical-align: middle;
  774. font-size: 1.5em;
  775. }
  776. .cu-avatar.sm {
  777. width: 48upx;
  778. height: 48upx;
  779. font-size: 1em;
  780. }
  781. .cu-avatar.lg {
  782. width: 96upx;
  783. height: 96upx;
  784. font-size: 2em;
  785. }
  786. .cu-avatar.xl {
  787. width: 128upx;
  788. height: 128upx;
  789. font-size: 2.5em;
  790. }
  791. .cu-avatar.xxl {
  792. width: 150upx;
  793. height: 150upx;
  794. font-size: 2.5em;
  795. }
  796. .cu-avatar .avatar-text {
  797. font-size: 0.4em;
  798. }
  799. .cu-avatar-group {
  800. direction: rtl;
  801. unicode-bidi: bidi-override;
  802. padding: 0 10upx 0 40upx;
  803. display: inline-block;
  804. }
  805. .cu-avatar-group .cu-avatar {
  806. margin-left: -30upx;
  807. border: 4upx solid #f1f1f1;
  808. vertical-align: middle;
  809. }
  810. .cu-avatar-group .cu-avatar.sm {
  811. margin-left: -20upx;
  812. border: 1upx solid #f1f1f1;
  813. }
  814. /* ==================
  815. 进度条
  816. ==================== */
  817. .cu-progress {
  818. overflow: hidden;
  819. height: 28upx;
  820. background-color: #ebeef5;
  821. display: inline-flex;
  822. align-items: center;
  823. width: 100%;
  824. }
  825. .cu-progress+view,
  826. .cu-progress+text {
  827. line-height: 1;
  828. }
  829. .cu-progress.xs {
  830. height: 10upx;
  831. }
  832. .cu-progress.sm {
  833. height: 20upx;
  834. }
  835. .cu-progress view {
  836. width: 0;
  837. height: 100%;
  838. align-items: center;
  839. display: flex;
  840. justify-items: flex-end;
  841. justify-content: space-around;
  842. font-size: 20upx;
  843. color: #ffffff;
  844. transition: width 0.6s ease;
  845. }
  846. .cu-progress text {
  847. align-items: center;
  848. display: flex;
  849. font-size: 20upx;
  850. color: #333333;
  851. text-indent: 10upx;
  852. }
  853. .cu-progress.text-progress {
  854. padding-right: 60upx;
  855. }
  856. .cu-progress.striped view {
  857. background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  858. background-size: 72upx 72upx;
  859. }
  860. .cu-progress.active view {
  861. animation: progress-stripes 2s linear infinite;
  862. }
  863. @keyframes progress-stripes {
  864. from {
  865. background-position: 72upx 0;
  866. }
  867. to {
  868. background-position: 0 0;
  869. }
  870. }
  871. /* ==================
  872. 加载
  873. ==================== */
  874. .cu-load {
  875. display: block;
  876. line-height: 3em;
  877. text-align: center;
  878. }
  879. .cu-load::before {
  880. font-family: "cuIcon";
  881. display: inline-block;
  882. margin-right: 6upx;
  883. }
  884. .cu-load.loading::before {
  885. content: "\e67a";
  886. animation: cuIcon-spin 2s infinite linear;
  887. }
  888. .cu-load.loading::after {
  889. content: "加载中...";
  890. }
  891. .cu-load.over::before {
  892. content: "\e64a";
  893. }
  894. .cu-load.over::after {
  895. content: "没有更多了";
  896. }
  897. .cu-load.erro::before {
  898. content: "\e658";
  899. }
  900. .cu-load.erro::after {
  901. content: "加载失败";
  902. }
  903. .cu-load.load-cuIcon::before {
  904. font-size: 32upx;
  905. }
  906. .cu-load.load-cuIcon::after {
  907. display: none;
  908. }
  909. .cu-load.load-cuIcon.over {
  910. display: none;
  911. }
  912. .cu-load.load-modal {
  913. position: fixed;
  914. top: 0;
  915. right: 0;
  916. bottom: 140upx;
  917. left: 0;
  918. margin: auto;
  919. width: 260upx;
  920. height: 260upx;
  921. background-color: #ffffff;
  922. border-radius: 10upx;
  923. box-shadow: 0 0 0upx 2000upx rgba(0, 0, 0, 0.5);
  924. display: flex;
  925. align-items: center;
  926. flex-direction: column;
  927. justify-content: center;
  928. font-size: 28upx;
  929. z-index: 9999;
  930. line-height: 2.4em;
  931. }
  932. .cu-load.load-modal [class*="cuIcon-"] {
  933. font-size: 60upx;
  934. }
  935. .cu-load.load-modal image {
  936. width: 70upx;
  937. height: 70upx;
  938. }
  939. .cu-load.load-modal::after {
  940. content: "";
  941. position: absolute;
  942. background-color: #ffffff;
  943. border-radius: 50%;
  944. width: 200upx;
  945. height: 200upx;
  946. font-size: 10px;
  947. border-top: 6upx solid rgba(0, 0, 0, 0.05);
  948. border-right: 6upx solid rgba(0, 0, 0, 0.05);
  949. border-bottom: 6upx solid rgba(0, 0, 0, 0.05);
  950. border-left: 6upx solid #f37b1d;
  951. animation: cuIcon-spin 1s infinite linear;
  952. z-index: -1;
  953. }
  954. .load-progress {
  955. pointer-events: none;
  956. top: 0;
  957. position: fixed;
  958. width: 100%;
  959. left: 0;
  960. z-index: 2000;
  961. }
  962. .load-progress.hide {
  963. display: none;
  964. }
  965. .load-progress .load-progress-bar {
  966. position: relative;
  967. width: 100%;
  968. height: 4upx;
  969. overflow: hidden;
  970. transition: all 200ms ease 0s;
  971. }
  972. .load-progress .load-progress-spinner {
  973. position: absolute;
  974. top: 10upx;
  975. right: 10upx;
  976. z-index: 2000;
  977. display: block;
  978. }
  979. .load-progress .load-progress-spinner::after {
  980. content: "";
  981. display: block;
  982. width: 24upx;
  983. height: 24upx;
  984. -webkit-box-sizing: border-box;
  985. box-sizing: border-box;
  986. border: solid 4upx transparent;
  987. border-top-color: inherit;
  988. border-left-color: inherit;
  989. border-radius: 50%;
  990. -webkit-animation: load-progress-spinner 0.4s linear infinite;
  991. animation: load-progress-spinner 0.4s linear infinite;
  992. }
  993. @-webkit-keyframes load-progress-spinner {
  994. 0% {
  995. -webkit-transform: rotate(0);
  996. transform: rotate(0);
  997. }
  998. 100% {
  999. -webkit-transform: rotate(360deg);
  1000. transform: rotate(360deg);
  1001. }
  1002. }
  1003. @keyframes load-progress-spinner {
  1004. 0% {
  1005. -webkit-transform: rotate(0);
  1006. transform: rotate(0);
  1007. }
  1008. 100% {
  1009. -webkit-transform: rotate(360deg);
  1010. transform: rotate(360deg);
  1011. }
  1012. }
  1013. /* ==================
  1014. 列表
  1015. ==================== */
  1016. .grayscale {
  1017. filter: grayscale(1);
  1018. }
  1019. .cu-list+.cu-list {
  1020. margin-top: 30upx
  1021. }
  1022. .cu-list>.cu-item {
  1023. transition: all .6s ease-in-out 0s;
  1024. transform: translateX(0upx)
  1025. }
  1026. .cu-list>.cu-item.move-cur {
  1027. transform: translateX(-260upx)
  1028. }
  1029. .cu-list>.cu-item .move {
  1030. position: absolute;
  1031. right: 0;
  1032. display: flex;
  1033. width: 260upx;
  1034. height: 100%;
  1035. transform: translateX(100%)
  1036. }
  1037. .cu-list>.cu-item .move view {
  1038. display: flex;
  1039. flex: 1;
  1040. justify-content: center;
  1041. align-items: center
  1042. }
  1043. .cu-list.menu-avatar {
  1044. overflow: hidden;
  1045. }
  1046. .cu-list.menu-avatar>.cu-item {
  1047. position: relative;
  1048. display: flex;
  1049. padding-right: 10upx;
  1050. height: 140upx;
  1051. background-color: #ffffff;
  1052. justify-content: flex-end;
  1053. align-items: center
  1054. }
  1055. .cu-list.menu-avatar>.cu-item>.cu-avatar {
  1056. position: absolute;
  1057. left: 30upx
  1058. }
  1059. .cu-list.menu-avatar>.cu-item .flex .text-cut {
  1060. max-width: 510upx
  1061. }
  1062. .cu-list.menu-avatar>.cu-item .content {
  1063. position: absolute;
  1064. left: 146upx;
  1065. width: calc(100% - 96upx - 60upx - 120upx - 20upx);
  1066. line-height: 1.6em;
  1067. }
  1068. .cu-list.menu-avatar>.cu-item .content.flex-sub {
  1069. width: calc(100% - 96upx - 60upx - 20upx);
  1070. }
  1071. .cu-list.menu-avatar>.cu-item .content>view:first-child {
  1072. font-size: 30upx;
  1073. display: flex;
  1074. align-items: center
  1075. }
  1076. .cu-list.menu-avatar>.cu-item .content .cu-tag.sm {
  1077. display: inline-block;
  1078. margin-left: 10upx;
  1079. height: 28upx;
  1080. font-size: 16upx;
  1081. line-height: 32upx
  1082. }
  1083. .cu-list.menu-avatar>.cu-item .action {
  1084. width: 100upx;
  1085. text-align: center
  1086. }
  1087. .cu-list.menu-avatar>.cu-item .action view+view {
  1088. margin-top: 10upx
  1089. }
  1090. .cu-list.menu-avatar.comment>.cu-item .content {
  1091. position: relative;
  1092. left: 0;
  1093. width: auto;
  1094. flex: 1;
  1095. }
  1096. .cu-list.menu-avatar.comment>.cu-item {
  1097. padding: 30upx 30upx 30upx 120upx;
  1098. height: auto
  1099. }
  1100. .cu-list.menu-avatar.comment .cu-avatar {
  1101. align-self: flex-start
  1102. }
  1103. .cu-list.menu>.cu-item {
  1104. position: relative;
  1105. display: flex;
  1106. padding: 0 30upx;
  1107. min-height: 100upx;
  1108. background-color: #ffffff;
  1109. justify-content: space-between;
  1110. align-items: center
  1111. }
  1112. .cu-list.menu>.cu-item:last-child:after {
  1113. border: none
  1114. }
  1115. .cu-list.menu-avatar>.cu-item:after,
  1116. .cu-list.menu>.cu-item:after {
  1117. position: absolute;
  1118. top: 0;
  1119. left: 0;
  1120. box-sizing: border-box;
  1121. width: 200%;
  1122. height: 200%;
  1123. border-bottom: 1upx solid #ddd;
  1124. border-radius: inherit;
  1125. content: " ";
  1126. transform: scale(.5);
  1127. transform-origin: 0 0;
  1128. pointer-events: none
  1129. }
  1130. .cu-list.menu>.cu-item.grayscale {
  1131. background-color: #f5f5f5
  1132. }
  1133. .cu-list.menu>.cu-item.cur {
  1134. background-color: #fcf7e9
  1135. }
  1136. .cu-list.menu>.cu-item.arrow {
  1137. padding-right: 90upx
  1138. }
  1139. .cu-list.menu>.cu-item.arrow:before {
  1140. position: absolute;
  1141. top: 0;
  1142. right: 30upx;
  1143. bottom: 0;
  1144. display: block;
  1145. margin: auto;
  1146. width: 30upx;
  1147. height: 30upx;
  1148. color: #8799a3;
  1149. content: "\e6a3";
  1150. text-align: center;
  1151. font-size: 34upx;
  1152. font-family: cuIcon;
  1153. line-height: 30upx
  1154. }
  1155. .cu-list.menu>.cu-item button.content {
  1156. padding: 0;
  1157. background-color: transparent;
  1158. justify-content: flex-start
  1159. }
  1160. .cu-list.menu>.cu-item button.content:after {
  1161. display: none
  1162. }
  1163. .cu-list.menu>.cu-item .cu-avatar-group .cu-avatar {
  1164. border-color: #ffffff
  1165. }
  1166. .cu-list.menu>.cu-item .content>view:first-child {
  1167. display: flex;
  1168. align-items: center
  1169. }
  1170. .cu-list.menu>.cu-item .content>text[class*=cuIcon] {
  1171. display: inline-block;
  1172. margin-right: 10upx;
  1173. width: 1.6em;
  1174. text-align: center
  1175. }
  1176. .cu-list.menu>.cu-item .content>image {
  1177. display: inline-block;
  1178. margin-right: 10upx;
  1179. width: 1.6em;
  1180. height: 1.6em;
  1181. vertical-align: middle
  1182. }
  1183. .cu-list.menu>.cu-item .content {
  1184. font-size: 30upx;
  1185. line-height: 1.6em;
  1186. flex: 1
  1187. }
  1188. .cu-list.menu>.cu-item .content .cu-tag.sm {
  1189. display: inline-block;
  1190. margin-left: 10upx;
  1191. height: 28upx;
  1192. font-size: 16upx;
  1193. line-height: 32upx
  1194. }
  1195. .cu-list.menu>.cu-item .action .cu-tag:empty {
  1196. right: 10upx
  1197. }
  1198. .cu-list.menu {
  1199. display: block;
  1200. overflow: hidden
  1201. }
  1202. .cu-list.menu.sm-border>.cu-item:after {
  1203. left: 30upx;
  1204. width: calc(200% - 120upx)
  1205. }
  1206. .cu-list.grid>.cu-item {
  1207. position: relative;
  1208. display: flex;
  1209. padding: 20upx 0 30upx;
  1210. transition-duration: 0s;
  1211. flex-direction: column
  1212. }
  1213. .cu-list.grid>.cu-item:after {
  1214. position: absolute;
  1215. top: 0;
  1216. left: 0;
  1217. box-sizing: border-box;
  1218. width: 200%;
  1219. height: 200%;
  1220. border-right: 1px solid rgba(0, 0, 0, .1);
  1221. border-bottom: 1px solid rgba(0, 0, 0, .1);
  1222. border-radius: inherit;
  1223. content: " ";
  1224. transform: scale(.5);
  1225. transform-origin: 0 0;
  1226. pointer-events: none
  1227. }
  1228. .cu-list.grid>.cu-item text {
  1229. display: block;
  1230. margin-top: 10upx;
  1231. color: #888;
  1232. font-size: 26upx;
  1233. line-height: 40upx
  1234. }
  1235. .cu-list.grid>.cu-item [class*=cuIcon] {
  1236. position: relative;
  1237. display: block;
  1238. margin-top: 20upx;
  1239. width: 100%;
  1240. font-size: 48upx
  1241. }
  1242. .cu-list.grid>.cu-item .cu-tag {
  1243. right: auto;
  1244. left: 50%;
  1245. margin-left: 20upx
  1246. }
  1247. .cu-list.grid {
  1248. background-color: #ffffff;
  1249. text-align: center
  1250. }
  1251. .cu-list.grid.no-border>.cu-item {
  1252. padding-top: 10upx;
  1253. padding-bottom: 20upx
  1254. }
  1255. .cu-list.grid.no-border>.cu-item:after {
  1256. border: none
  1257. }
  1258. .cu-list.grid.no-border {
  1259. padding: 20upx 10upx
  1260. }
  1261. .cu-list.grid.col-3>.cu-item:nth-child(3n):after,
  1262. .cu-list.grid.col-4>.cu-item:nth-child(4n):after,
  1263. .cu-list.grid.col-5>.cu-item:nth-child(5n):after {
  1264. border-right-width: 0
  1265. }
  1266. .cu-list.card-menu {
  1267. overflow: hidden;
  1268. margin-right: 30upx;
  1269. margin-left: 30upx;
  1270. border-radius: 20upx
  1271. }
  1272. /* ==================
  1273. 操作条
  1274. ==================== */
  1275. .cu-bar {
  1276. display: flex;
  1277. position: relative;
  1278. align-items: center;
  1279. min-height: 100upx;
  1280. justify-content: space-between;
  1281. }
  1282. .cu-bar .action {
  1283. display: flex;
  1284. align-items: center;
  1285. height: 100%;
  1286. justify-content: center;
  1287. max-width: 100%;
  1288. }
  1289. .cu-bar .action.border-title {
  1290. position: relative;
  1291. top: -10upx;
  1292. }
  1293. .cu-bar .action.border-title text[class*="bg-"]:last-child {
  1294. position: absolute;
  1295. bottom: -0.5rem;
  1296. min-width: 2rem;
  1297. height: 6upx;
  1298. left: 0;
  1299. }
  1300. .cu-bar .action.sub-title {
  1301. position: relative;
  1302. top: -0.2rem;
  1303. }
  1304. .cu-bar .action.sub-title text {
  1305. position: relative;
  1306. z-index: 1;
  1307. }
  1308. .cu-bar .action.sub-title text[class*="bg-"]:last-child {
  1309. position: absolute;
  1310. display: inline-block;
  1311. bottom: -0.2rem;
  1312. border-radius: 6upx;
  1313. width: 100%;
  1314. height: 0.6rem;
  1315. left: 0.6rem;
  1316. opacity: 0.3;
  1317. z-index: 0;
  1318. }
  1319. .cu-bar .action.sub-title text[class*="text-"]:last-child {
  1320. position: absolute;
  1321. display: inline-block;
  1322. bottom: -0.7rem;
  1323. left: 0.5rem;
  1324. opacity: 0.2;
  1325. z-index: 0;
  1326. text-align: right;
  1327. font-weight: 900;
  1328. font-size: 36upx;
  1329. }
  1330. .cu-bar.justify-center .action.border-title text:last-child,
  1331. .cu-bar.justify-center .action.sub-title text:last-child {
  1332. left: 0;
  1333. right: 0;
  1334. margin: auto;
  1335. text-align: center;
  1336. }
  1337. .cu-bar .action:first-child {
  1338. margin-left: 30upx;
  1339. font-size: 30upx;
  1340. }
  1341. .cu-bar .action text.text-cut {
  1342. text-align: left;
  1343. width: 100%;
  1344. }
  1345. .cu-bar .cu-avatar:first-child {
  1346. margin-left: 20upx;
  1347. }
  1348. .cu-bar .action:first-child>text[class*="cuIcon-"] {
  1349. margin-left: -0.3em;
  1350. margin-right: 0.3em;
  1351. }
  1352. .cu-bar .action:last-child {
  1353. margin-right: 30upx;
  1354. }
  1355. .cu-bar .action>text[class*="cuIcon-"],
  1356. .cu-bar .action>view[class*="cuIcon-"] {
  1357. font-size: 36upx;
  1358. }
  1359. .cu-bar .action>text[class*="cuIcon-"]+text[class*="cuIcon-"] {
  1360. margin-left: 0.5em;
  1361. }
  1362. .cu-bar .content {
  1363. position: absolute;
  1364. text-align: center;
  1365. width: calc(100% - 340upx);
  1366. left: 0;
  1367. right: 0;
  1368. bottom: 0;
  1369. top: 0;
  1370. margin: auto;
  1371. height: 64upx;
  1372. font-size: 32upx;
  1373. line-height: 64upx;
  1374. cursor: none;
  1375. /* pointer-events: none; */
  1376. text-overflow: ellipsis;
  1377. white-space: nowrap;
  1378. overflow: hidden;
  1379. }
  1380. .cu-bar.ios .content {
  1381. bottom: 7px;
  1382. height: 30px;
  1383. font-size: 32upx;
  1384. line-height: 30px;
  1385. }
  1386. .cu-bar.btn-group {
  1387. justify-content: space-around;
  1388. }
  1389. .cu-bar.btn-group button {
  1390. padding: 20upx 32upx;
  1391. }
  1392. .cu-bar.btn-group button {
  1393. flex: 1;
  1394. margin: 0 20upx;
  1395. max-width: 50%;
  1396. }
  1397. .cu-bar .search-form {
  1398. background-color: #f5f5f5;
  1399. line-height: 64upx;
  1400. height: 64upx;
  1401. font-size: 24upx;
  1402. color: #333333;
  1403. flex: 1;
  1404. display: flex;
  1405. align-items: center;
  1406. margin: 0 30upx;
  1407. }
  1408. .cu-bar .search-form+.action {
  1409. margin-right: 30upx;
  1410. }
  1411. .cu-bar .search-form input {
  1412. flex: 1;
  1413. padding-right: 30upx;
  1414. height: 64upx;
  1415. line-height: 64upx;
  1416. font-size: 26upx;
  1417. background-color: transparent;
  1418. }
  1419. .cu-bar .search-form [class*="cuIcon-"] {
  1420. margin: 0 0.5em 0 0.8em;
  1421. }
  1422. .cu-bar .search-form [class*="cuIcon-"]::before {
  1423. top: 0upx;
  1424. }
  1425. .cu-bar.fixed,
  1426. .nav.fixed {
  1427. position: fixed;
  1428. width: 100%;
  1429. top: 0;
  1430. z-index: 1024;
  1431. box-shadow: 0 1upx 6upx rgba(0, 0, 0, 0.1);
  1432. }
  1433. .cu-bar.foot {
  1434. position: fixed;
  1435. width: 100%;
  1436. bottom: 0;
  1437. z-index: 1024;
  1438. box-shadow: 0 -1upx 6upx rgba(0, 0, 0, 0.1);
  1439. }
  1440. .cu-bar.tabbar {
  1441. padding: 0;
  1442. height: calc(100upx + env(safe-area-inset-bottom) / 2);
  1443. padding-bottom: calc(env(safe-area-inset-bottom) / 2);
  1444. }
  1445. .cu-tabbar-height {
  1446. min-height: 100upx;
  1447. height: calc(100upx + env(safe-area-inset-bottom) / 2);
  1448. }
  1449. .cu-bar.tabbar.shadow {
  1450. box-shadow: 0 -1upx 6upx rgba(0, 0, 0, 0.1);
  1451. }
  1452. .cu-bar.tabbar .action {
  1453. font-size: 22upx;
  1454. position: relative;
  1455. flex: 1;
  1456. text-align: center;
  1457. padding: 0;
  1458. display: block;
  1459. height: auto;
  1460. line-height: 1;
  1461. margin: 0;
  1462. background-color: inherit;
  1463. overflow: initial;
  1464. }
  1465. .cu-bar.tabbar.shop .action {
  1466. width: 140upx;
  1467. flex: initial;
  1468. }
  1469. .cu-bar.tabbar .action.add-action {
  1470. position: relative;
  1471. z-index: 2;
  1472. padding-top: 50upx;
  1473. }
  1474. .cu-bar.tabbar .action.add-action [class*="cuIcon-"] {
  1475. position: absolute;
  1476. width: 70upx;
  1477. z-index: 2;
  1478. height: 70upx;
  1479. border-radius: 50%;
  1480. line-height: 70upx;
  1481. font-size: 50upx;
  1482. top: -35upx;
  1483. left: 0;
  1484. right: 0;
  1485. margin: auto;
  1486. padding: 0;
  1487. }
  1488. .cu-bar.tabbar .action.add-action::after {
  1489. content: "";
  1490. position: absolute;
  1491. width: 100upx;
  1492. height: 100upx;
  1493. top: -50upx;
  1494. left: 0;
  1495. right: 0;
  1496. margin: auto;
  1497. box-shadow: 0 -3upx 8upx rgba(0, 0, 0, 0.08);
  1498. border-radius: 50upx;
  1499. background-color: inherit;
  1500. z-index: 0;
  1501. }
  1502. .cu-bar.tabbar .action.add-action::before {
  1503. content: "";
  1504. position: absolute;
  1505. width: 100upx;
  1506. height: 30upx;
  1507. bottom: 30upx;
  1508. left: 0;
  1509. right: 0;
  1510. margin: auto;
  1511. background-color: inherit;
  1512. z-index: 1;
  1513. }
  1514. .cu-bar.tabbar .btn-group {
  1515. flex: 1;
  1516. display: flex;
  1517. justify-content: space-around;
  1518. align-items: center;
  1519. padding: 0 10upx;
  1520. }
  1521. .cu-bar.tabbar button.action::after {
  1522. border: 0;
  1523. }
  1524. .cu-bar.tabbar .action [class*="cuIcon-"] {
  1525. width: 100upx;
  1526. position: relative;
  1527. display: block;
  1528. height: auto;
  1529. margin: 0 auto 10upx;
  1530. text-align: center;
  1531. font-size: 40upx;
  1532. }
  1533. .cu-bar.tabbar .action .cuIcon-cu-image {
  1534. margin: 0 auto;
  1535. }
  1536. .cu-bar.tabbar .action .cuIcon-cu-image image {
  1537. width: 50upx;
  1538. height: 50upx;
  1539. display: inline-block;
  1540. }
  1541. .cu-bar.tabbar .submit {
  1542. align-items: center;
  1543. display: flex;
  1544. justify-content: center;
  1545. text-align: center;
  1546. position: relative;
  1547. flex: 2;
  1548. align-self: stretch;
  1549. }
  1550. .cu-bar.tabbar .submit:last-child {
  1551. flex: 2.6;
  1552. }
  1553. .cu-bar.tabbar .submit+.submit {
  1554. flex: 2;
  1555. }
  1556. .cu-bar.tabbar.border .action::before {
  1557. content: " ";
  1558. width: 200%;
  1559. height: 200%;
  1560. position: absolute;
  1561. top: 0;
  1562. left: 0;
  1563. transform: scale(0.5);
  1564. transform-origin: 0 0;
  1565. border-right: 1upx solid rgba(0, 0, 0, 0.1);
  1566. z-index: 3;
  1567. }
  1568. .cu-bar.tabbar.border .action:last-child:before {
  1569. display: none;
  1570. }
  1571. .cu-bar.input {
  1572. padding-right: 20upx;
  1573. background-color: #ffffff;
  1574. }
  1575. .cu-bar.input input {
  1576. overflow: initial;
  1577. line-height: 64upx;
  1578. height: 64upx;
  1579. min-height: 64upx;
  1580. flex: 1;
  1581. font-size: 30upx;
  1582. margin: 0 20upx;
  1583. }
  1584. .cu-bar.input .action {
  1585. margin-left: 20upx;
  1586. }
  1587. .cu-bar.input .action [class*="cuIcon-"] {
  1588. font-size: 48upx;
  1589. }
  1590. .cu-bar.input input+.action {
  1591. margin-right: 20upx;
  1592. margin-left: 0upx;
  1593. }
  1594. .cu-bar.input .action:first-child [class*="cuIcon-"] {
  1595. margin-left: 0upx;
  1596. }
  1597. .cu-custom {
  1598. display: block;
  1599. position: relative;
  1600. }
  1601. .cu-custom .cu-bar .content {
  1602. width: calc(100% - 140upx);
  1603. }
  1604. /* #ifdef MP-ALIPAY */
  1605. .cu-custom .cu-bar .action .cuIcon-back {
  1606. opacity: 0;
  1607. }
  1608. /* #endif */
  1609. .cu-custom .cu-bar .content image {
  1610. height: 60upx;
  1611. width: 240upx;
  1612. }
  1613. .cu-custom .cu-bar {
  1614. min-height: 0px;
  1615. /* #ifdef MP-WEIXIN */
  1616. padding-right: 220upx;
  1617. /* #endif */
  1618. /* #ifdef MP-ALIPAY */
  1619. padding-right: 150upx;
  1620. /* #endif */
  1621. box-shadow: 0upx 0upx 0upx;
  1622. z-index: 999;
  1623. }
  1624. .cu-custom .cu-bar .border-custom {
  1625. position: relative;
  1626. background: rgba(0, 0, 0, 0.15);
  1627. border-radius: 1000upx;
  1628. height: 30px;
  1629. }
  1630. .cu-custom .cu-bar .border-custom::after {
  1631. content: " ";
  1632. width: 200%;
  1633. height: 200%;
  1634. position: absolute;
  1635. top: 0;
  1636. left: 0;
  1637. border-radius: inherit;
  1638. transform: scale(0.5);
  1639. transform-origin: 0 0;
  1640. pointer-events: none;
  1641. box-sizing: border-box;
  1642. border: 1upx solid #ffffff;
  1643. opacity: 0.5;
  1644. }
  1645. .cu-custom .cu-bar .border-custom::before {
  1646. content: " ";
  1647. width: 1upx;
  1648. height: 110%;
  1649. position: absolute;
  1650. top: 22.5%;
  1651. left: 0;
  1652. right: 0;
  1653. margin: auto;
  1654. transform: scale(0.5);
  1655. transform-origin: 0 0;
  1656. pointer-events: none;
  1657. box-sizing: border-box;
  1658. opacity: 0.6;
  1659. background-color: #ffffff;
  1660. }
  1661. .cu-custom .cu-bar .border-custom text {
  1662. display: block;
  1663. flex: 1;
  1664. margin: auto !important;
  1665. text-align: center;
  1666. font-size: 34upx;
  1667. }
  1668. /* ==================
  1669. 导航栏
  1670. ==================== */
  1671. .nav {
  1672. white-space: nowrap;
  1673. }
  1674. ::-webkit-scrollbar {
  1675. display: none;
  1676. }
  1677. .nav .cu-item {
  1678. height: 90upx;
  1679. display: inline-block;
  1680. line-height: 90upx;
  1681. margin: 0 10upx;
  1682. padding: 0 20upx;
  1683. }
  1684. .nav .cu-item.cur {
  1685. border-bottom: 4upx solid;
  1686. }
  1687. /* ==================
  1688. 时间轴
  1689. ==================== */
  1690. .cu-timeline {
  1691. display: block;
  1692. background-color: #ffffff;
  1693. }
  1694. .cu-timeline .cu-time {
  1695. width: 120upx;
  1696. text-align: center;
  1697. padding: 20upx 0;
  1698. font-size: 26upx;
  1699. color: #888;
  1700. display: block;
  1701. }
  1702. .cu-timeline>.cu-item {
  1703. padding: 30upx 30upx 30upx 120upx;
  1704. position: relative;
  1705. display: block;
  1706. z-index: 0;
  1707. }
  1708. .cu-timeline>.cu-item:not([class*="text-"]) {
  1709. color: #ccc;
  1710. }
  1711. .cu-timeline>.cu-item::after {
  1712. content: "";
  1713. display: block;
  1714. position: absolute;
  1715. width: 1upx;
  1716. background-color: #ddd;
  1717. left: 60upx;
  1718. height: 100%;
  1719. top: 0;
  1720. z-index: 8;
  1721. }
  1722. .cu-timeline>.cu-item::before {
  1723. font-family: "cuIcon";
  1724. display: block;
  1725. position: absolute;
  1726. top: 36upx;
  1727. z-index: 9;
  1728. background-color: #ffffff;
  1729. width: 50upx;
  1730. height: 50upx;
  1731. text-align: center;
  1732. border: none;
  1733. line-height: 50upx;
  1734. left: 36upx;
  1735. }
  1736. .cu-timeline>.cu-item:not([class*="cuIcon-"])::before {
  1737. content: "\e763";
  1738. }
  1739. .cu-timeline>.cu-item[class*="cuIcon-"]::before {
  1740. background-color: #ffffff;
  1741. width: 50upx;
  1742. height: 50upx;
  1743. text-align: center;
  1744. border: none;
  1745. line-height: 50upx;
  1746. left: 36upx;
  1747. }
  1748. .cu-timeline>.cu-item>.content {
  1749. padding: 30upx;
  1750. border-radius: 6upx;
  1751. display: block;
  1752. line-height: 1.6;
  1753. }
  1754. .cu-timeline>.cu-item>.content:not([class*="bg-"]) {
  1755. background-color: #f1f1f1;
  1756. color: #333333;
  1757. }
  1758. .cu-timeline>.cu-item>.content+.content {
  1759. margin-top: 20upx;
  1760. }
  1761. /* ==================
  1762. 聊天
  1763. ==================== */
  1764. .cu-chat {
  1765. display: flex;
  1766. flex-direction: column;
  1767. }
  1768. .cu-chat .cu-item {
  1769. display: flex;
  1770. padding: 30upx 30upx 70upx;
  1771. position: relative;
  1772. }
  1773. .cu-chat .cu-item>.cu-avatar {
  1774. width: 80upx;
  1775. height: 80upx;
  1776. }
  1777. .cu-chat .cu-item>.main {
  1778. max-width: calc(100% - 260upx);
  1779. margin: 0 40upx;
  1780. display: flex;
  1781. align-items: center;
  1782. }
  1783. .cu-chat .cu-item>image {
  1784. height: 320upx;
  1785. }
  1786. .cu-chat .cu-item>.main .content {
  1787. padding: 20upx;
  1788. border-radius: 6upx;
  1789. display: inline-flex;
  1790. max-width: 100%;
  1791. align-items: center;
  1792. font-size: 30upx;
  1793. position: relative;
  1794. min-height: 80upx;
  1795. line-height: 40upx;
  1796. text-align: left;
  1797. }
  1798. .cu-chat .cu-item>.main .content:not([class*="bg-"]) {
  1799. background-color: #ffffff;
  1800. color: #333333;
  1801. }
  1802. .cu-chat .cu-item .date {
  1803. position: absolute;
  1804. font-size: 24upx;
  1805. color: #8799a3;
  1806. width: calc(100% - 320upx);
  1807. bottom: 20upx;
  1808. left: 160upx;
  1809. }
  1810. .cu-chat .cu-item .action {
  1811. padding: 0 30upx;
  1812. display: flex;
  1813. align-items: center;
  1814. }
  1815. .cu-chat .cu-item>.main .content::after {
  1816. content: "";
  1817. top: 27upx;
  1818. transform: rotate(45deg);
  1819. position: absolute;
  1820. z-index: 100;
  1821. display: inline-block;
  1822. overflow: hidden;
  1823. width: 24upx;
  1824. height: 24upx;
  1825. left: -12upx;
  1826. right: initial;
  1827. background-color: inherit;
  1828. }
  1829. .cu-chat .cu-item.self>.main .content::after {
  1830. left: auto;
  1831. right: -12upx;
  1832. }
  1833. .cu-chat .cu-item>.main .content::before {
  1834. content: "";
  1835. top: 30upx;
  1836. transform: rotate(45deg);
  1837. position: absolute;
  1838. z-index: -1;
  1839. display: inline-block;
  1840. overflow: hidden;
  1841. width: 24upx;
  1842. height: 24upx;
  1843. left: -12upx;
  1844. right: initial;
  1845. background-color: inherit;
  1846. filter: blur(5upx);
  1847. opacity: 0.3;
  1848. }
  1849. .cu-chat .cu-item>.main .content:not([class*="bg-"])::before {
  1850. background-color: #333333;
  1851. opacity: 0.1;
  1852. }
  1853. .cu-chat .cu-item.self>.main .content::before {
  1854. left: auto;
  1855. right: -12upx;
  1856. }
  1857. .cu-chat .cu-item.self {
  1858. justify-content: flex-end;
  1859. text-align: right;
  1860. }
  1861. .cu-chat .cu-info {
  1862. display: inline-block;
  1863. margin: 20upx auto;
  1864. font-size: 24upx;
  1865. padding: 8upx 12upx;
  1866. background-color: rgba(0, 0, 0, 0.2);
  1867. border-radius: 6upx;
  1868. color: #ffffff;
  1869. max-width: 400upx;
  1870. line-height: 1.4;
  1871. }
  1872. /* ==================
  1873. 卡片
  1874. ==================== */
  1875. .cu-card {
  1876. display: block;
  1877. overflow: hidden;
  1878. }
  1879. .cu-card>.cu-item {
  1880. display: block;
  1881. background-color: #ffffff;
  1882. overflow: hidden;
  1883. border-radius: 10upx;
  1884. margin: 30upx;
  1885. }
  1886. .cu-card>.cu-item.shadow-blur {
  1887. overflow: initial;
  1888. }
  1889. .cu-card.no-card>.cu-item {
  1890. margin: 0upx;
  1891. border-radius: 0upx;
  1892. }
  1893. .cu-card .grid.grid-square {
  1894. margin-bottom: -20upx;
  1895. }
  1896. .cu-card.case .image {
  1897. position: relative;
  1898. }
  1899. .cu-card.case .image image {
  1900. width: 100%;
  1901. }
  1902. .cu-card.case .image .cu-tag {
  1903. position: absolute;
  1904. right: 0;
  1905. top: 0;
  1906. }
  1907. .cu-card.case .image .cu-bar {
  1908. position: absolute;
  1909. bottom: 0;
  1910. width: 100%;
  1911. background-color: transparent;
  1912. padding: 0upx 30upx;
  1913. }
  1914. .cu-card.case.no-card .image {
  1915. margin: 30upx 30upx 0;
  1916. overflow: hidden;
  1917. border-radius: 10upx;
  1918. }
  1919. .cu-card.dynamic {
  1920. display: block;
  1921. }
  1922. .cu-card.dynamic>.cu-item {
  1923. display: block;
  1924. background-color: #ffffff;
  1925. overflow: hidden;
  1926. }
  1927. .cu-card.dynamic>.cu-item>.text-content {
  1928. padding: 0 30upx 0;
  1929. max-height: 6.4em;
  1930. overflow: hidden;
  1931. font-size: 30upx;
  1932. margin-bottom: 20upx;
  1933. }
  1934. .cu-card.dynamic>.cu-item .square-img {
  1935. width: 100%;
  1936. height: 200upx;
  1937. border-radius: 6upx;
  1938. }
  1939. .cu-card.dynamic>.cu-item .only-img {
  1940. width: 100%;
  1941. height: 320upx;
  1942. border-radius: 6upx;
  1943. }
  1944. /* card.dynamic>.cu-item .comment {
  1945. padding: 20upx;
  1946. background-color: #f1f1f1;
  1947. margin: 0 30upx 30upx;
  1948. border-radius: 6upx;
  1949. } */
  1950. .cu-card.article {
  1951. display: block;
  1952. }
  1953. .cu-card.article>.cu-item {
  1954. padding-bottom: 30upx;
  1955. }
  1956. .cu-card.article>.cu-item .title {
  1957. font-size: 30upx;
  1958. font-weight: 900;
  1959. color: #333333;
  1960. line-height: 100upx;
  1961. padding: 0 30upx;
  1962. }
  1963. .cu-card.article>.cu-item .content {
  1964. display: flex;
  1965. padding: 0 30upx;
  1966. }
  1967. .cu-card.article>.cu-item .content>image {
  1968. width: 240upx;
  1969. height: 6.4em;
  1970. margin-right: 20upx;
  1971. border-radius: 6upx;
  1972. }
  1973. .cu-card.article>.cu-item .content .desc {
  1974. flex: 1;
  1975. display: flex;
  1976. flex-direction: column;
  1977. justify-content: space-between;
  1978. }
  1979. .cu-card.article>.cu-item .content .text-content {
  1980. font-size: 28upx;
  1981. color: #888;
  1982. height: 4.8em;
  1983. overflow: hidden;
  1984. }
  1985. /* ==================
  1986. 表单
  1987. ==================== */
  1988. .cu-form-group {
  1989. background-color: #ffffff;
  1990. padding: 1upx 30upx;
  1991. display: flex;
  1992. align-items: center;
  1993. min-height: 100upx;
  1994. justify-content: space-between;
  1995. }
  1996. .cu-form-group+.cu-form-group {
  1997. border-top: 1upx solid #eee;
  1998. }
  1999. .cu-form-group .title {
  2000. text-align: justify;
  2001. padding-right: 30upx;
  2002. font-size: 30upx;
  2003. position: relative;
  2004. height: 60upx;
  2005. line-height: 60upx;
  2006. }
  2007. .cu-form-group input {
  2008. flex: 1;
  2009. font-size: 30upx;
  2010. color: #555;
  2011. padding-right: 20upx;
  2012. }
  2013. .cu-form-group>text[class*="cuIcon-"] {
  2014. font-size: 36upx;
  2015. padding: 0;
  2016. box-sizing: border-box;
  2017. }
  2018. .cu-form-group textarea {
  2019. margin: 32upx 0 30upx;
  2020. height: 4.6em;
  2021. width: 100%;
  2022. line-height: 1.2em;
  2023. flex: 1;
  2024. font-size: 28upx;
  2025. padding: 0;
  2026. }
  2027. .cu-form-group.align-start .title {
  2028. height: 1em;
  2029. margin-top: 32upx;
  2030. line-height: 1em;
  2031. }
  2032. .cu-form-group picker {
  2033. flex: 1;
  2034. padding-right: 40upx;
  2035. overflow: hidden;
  2036. position: relative;
  2037. }
  2038. .cu-form-group picker .picker {
  2039. line-height: 100upx;
  2040. font-size: 28upx;
  2041. text-overflow: ellipsis;
  2042. white-space: nowrap;
  2043. overflow: hidden;
  2044. width: 100%;
  2045. text-align: right;
  2046. }
  2047. .cu-form-group picker::after {
  2048. font-family: cuIcon;
  2049. display: block;
  2050. content: "\e6a3";
  2051. position: absolute;
  2052. font-size: 34upx;
  2053. color: #8799a3;
  2054. line-height: 100upx;
  2055. width: 60upx;
  2056. text-align: center;
  2057. top: 0;
  2058. bottom: 0;
  2059. right: -20upx;
  2060. margin: auto;
  2061. }
  2062. .cu-form-group textarea[disabled],
  2063. .cu-form-group textarea[disabled] .placeholder {
  2064. color: transparent;
  2065. }
  2066. /* ==================
  2067. 模态窗口
  2068. ==================== */
  2069. .cu-modal {
  2070. position: fixed;
  2071. top: 0;
  2072. right: 0;
  2073. bottom: 0;
  2074. left: 0;
  2075. z-index: 1110;
  2076. opacity: 0;
  2077. outline: 0;
  2078. text-align: center;
  2079. -ms-transform: scale(1.185);
  2080. transform: scale(1.185);
  2081. backface-visibility: hidden;
  2082. perspective: 2000upx;
  2083. background: rgba(0, 0, 0, 0.6);
  2084. transition: all 0.3s ease-in-out 0s;
  2085. pointer-events: none;
  2086. }
  2087. .cu-modal::before {
  2088. content: "\200B";
  2089. display: inline-block;
  2090. height: 100%;
  2091. vertical-align: middle;
  2092. }
  2093. .cu-modal.show {
  2094. opacity: 1;
  2095. transition-duration: 0.3s;
  2096. -ms-transform: scale(1);
  2097. transform: scale(1);
  2098. overflow-x: hidden;
  2099. overflow-y: auto;
  2100. pointer-events: auto;
  2101. }
  2102. .cu-dialog {
  2103. position: relative;
  2104. display: inline-block;
  2105. vertical-align: middle;
  2106. margin-left: auto;
  2107. margin-right: auto;
  2108. width: 680upx;
  2109. max-width: 100%;
  2110. background-color: #f8f8f8;
  2111. border-radius: 10upx;
  2112. overflow: hidden;
  2113. }
  2114. .cu-modal.bottom-modal::before {
  2115. vertical-align: bottom;
  2116. }
  2117. .cu-modal.bottom-modal .cu-dialog {
  2118. width: 100%;
  2119. border-radius: 0;
  2120. }
  2121. .cu-modal.bottom-modal {
  2122. margin-bottom: -1000upx;
  2123. }
  2124. .cu-modal.bottom-modal.show {
  2125. margin-bottom: 0;
  2126. }
  2127. .cu-modal.drawer-modal {
  2128. transform: scale(1);
  2129. display: flex;
  2130. }
  2131. .cu-modal.drawer-modal .cu-dialog {
  2132. height: 100%;
  2133. min-width: 200upx;
  2134. border-radius: 0;
  2135. margin: initial;
  2136. transition-duration: 0.3s;
  2137. }
  2138. .cu-modal.drawer-modal.justify-start .cu-dialog {
  2139. transform: translateX(-100%);
  2140. }
  2141. .cu-modal.drawer-modal.justify-end .cu-dialog {
  2142. transform: translateX(100%);
  2143. }
  2144. .cu-modal.drawer-modal.show .cu-dialog {
  2145. transform: translateX(0%);
  2146. }
  2147. .cu-modal .cu-dialog>.cu-bar:first-child .action{
  2148. min-width: 100rpx;
  2149. margin-right: 0;
  2150. min-height: 100rpx;
  2151. }
  2152. /* ==================
  2153. 轮播
  2154. ==================== */
  2155. swiper .a-swiper-dot {
  2156. display: inline-block;
  2157. width: 16upx;
  2158. height: 16upx;
  2159. background: rgba(0, 0, 0, .3);
  2160. border-radius: 50%;
  2161. vertical-align: middle;
  2162. }
  2163. swiper[class*="-dot"] .wx-swiper-dots,
  2164. swiper[class*="-dot"] .a-swiper-dots,
  2165. swiper[class*="-dot"] .uni-swiper-dots {
  2166. display: flex;
  2167. align-items: center;
  2168. width: 100%;
  2169. justify-content: center;
  2170. }
  2171. swiper.square-dot .wx-swiper-dot,
  2172. swiper.square-dot .a-swiper-dot,
  2173. swiper.square-dot .uni-swiper-dot {
  2174. background-color: #ffffff;
  2175. opacity: 0.4;
  2176. width: 10upx;
  2177. height: 10upx;
  2178. border-radius: 20upx;
  2179. margin: 0 8upx !important;
  2180. }
  2181. swiper.square-dot .wx-swiper-dot.wx-swiper-dot-active,
  2182. swiper.square-dot .a-swiper-dot.a-swiper-dot-active,
  2183. swiper.square-dot .uni-swiper-dot.uni-swiper-dot-active {
  2184. opacity: 1;
  2185. width: 30upx;
  2186. }
  2187. swiper.round-dot .wx-swiper-dot,
  2188. swiper.round-dot .a-swiper-dot,
  2189. swiper.round-dot .uni-swiper-dot {
  2190. width: 10upx;
  2191. height: 10upx;
  2192. position: relative;
  2193. margin: 4upx 8upx !important;
  2194. }
  2195. swiper.round-dot .wx-swiper-dot.wx-swiper-dot-active::after,
  2196. swiper.round-dot .a-swiper-dot.a-swiper-dot-active::after,
  2197. swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active::after {
  2198. content: "";
  2199. position: absolute;
  2200. width: 10upx;
  2201. height: 10upx;
  2202. top: 0upx;
  2203. left: 0upx;
  2204. right: 0;
  2205. bottom: 0;
  2206. margin: auto;
  2207. background-color: #ffffff;
  2208. border-radius: 20upx;
  2209. }
  2210. swiper.round-dot .wx-swiper-dot.wx-swiper-dot-active,
  2211. swiper.round-dot .a-swiper-dot.a-swiper-dot-active,
  2212. swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active {
  2213. width: 18upx;
  2214. height: 18upx;
  2215. }
  2216. .screen-swiper {
  2217. min-height: 375upx;
  2218. }
  2219. .screen-swiper image,
  2220. .screen-swiper video,
  2221. .swiper-item image,
  2222. .swiper-item video {
  2223. width: 100%;
  2224. display: block;
  2225. height: 100%;
  2226. margin: 0;
  2227. pointer-events: none;
  2228. }
  2229. .card-swiper {
  2230. height: 420upx !important;
  2231. }
  2232. .card-swiper swiper-item {
  2233. width: 610upx !important;
  2234. left: 70upx;
  2235. box-sizing: border-box;
  2236. padding: 40upx 0upx 70upx;
  2237. overflow: initial;
  2238. }
  2239. .card-swiper swiper-item .swiper-item {
  2240. width: 100%;
  2241. display: block;
  2242. height: 100%;
  2243. border-radius: 10upx;
  2244. transform: scale(0.9);
  2245. transition: all 0.2s ease-in 0s;
  2246. overflow: hidden;
  2247. }
  2248. .card-swiper swiper-item.cur .swiper-item {
  2249. transform: none;
  2250. transition: all 0.2s ease-in 0s;
  2251. }
  2252. .tower-swiper {
  2253. height: 420upx;
  2254. position: relative;
  2255. max-width: 750upx;
  2256. overflow: hidden;
  2257. }
  2258. .tower-swiper .tower-item {
  2259. position: absolute;
  2260. width: 300upx;
  2261. height: 380upx;
  2262. top: 0;
  2263. bottom: 0;
  2264. left: 50%;
  2265. margin: auto;
  2266. transition: all 0.2s ease-in 0s;
  2267. opacity: 1;
  2268. }
  2269. .tower-swiper .tower-item.none {
  2270. opacity: 0;
  2271. }
  2272. .tower-swiper .tower-item .swiper-item {
  2273. width: 100%;
  2274. height: 100%;
  2275. border-radius: 6upx;
  2276. overflow: hidden;
  2277. }
  2278. /* ==================
  2279. 步骤条
  2280. ==================== */
  2281. .cu-steps {
  2282. display: flex;
  2283. }
  2284. scroll-view.cu-steps {
  2285. display: block;
  2286. white-space: nowrap;
  2287. }
  2288. scroll-view.cu-steps .cu-item {
  2289. display: inline-block;
  2290. }
  2291. .cu-steps .cu-item {
  2292. flex: 1;
  2293. text-align: center;
  2294. position: relative;
  2295. min-width: 100upx;
  2296. }
  2297. .cu-steps .cu-item:not([class*="text-"]) {
  2298. color: #8799a3;
  2299. }
  2300. .cu-steps .cu-item [class*="cuIcon-"],
  2301. .cu-steps .cu-item .num {
  2302. display: block;
  2303. font-size: 40upx;
  2304. line-height: 80upx;
  2305. }
  2306. .cu-steps .cu-item::before,
  2307. .cu-steps .cu-item::after,
  2308. .cu-steps.steps-arrow .cu-item::before,
  2309. .cu-steps.steps-arrow .cu-item::after {
  2310. content: "";
  2311. display: block;
  2312. position: absolute;
  2313. height: 0px;
  2314. width: calc(100% - 80upx);
  2315. border-bottom: 1px solid #ccc;
  2316. left: calc(0px - (100% - 80upx) / 2);
  2317. top: 40upx;
  2318. z-index: 0;
  2319. }
  2320. .cu-steps.steps-arrow .cu-item::before,
  2321. .cu-steps.steps-arrow .cu-item::after {
  2322. content: "\e6a3";
  2323. font-family: 'cuIcon';
  2324. height: 30upx;
  2325. border-bottom-width: 0px;
  2326. line-height: 30upx;
  2327. top: 0;
  2328. bottom: 0;
  2329. margin: auto;
  2330. color: #ccc;
  2331. }
  2332. .cu-steps.steps-bottom .cu-item::before,
  2333. .cu-steps.steps-bottom .cu-item::after {
  2334. bottom: 40upx;
  2335. top: initial;
  2336. }
  2337. .cu-steps .cu-item::after {
  2338. border-bottom: 1px solid currentColor;
  2339. width: 0px;
  2340. transition: all 0.3s ease-in-out 0s;
  2341. }
  2342. .cu-steps .cu-item[class*="text-"]::after {
  2343. width: calc(100% - 80upx);
  2344. color: currentColor;
  2345. }
  2346. .cu-steps .cu-item:first-child::before,
  2347. .cu-steps .cu-item:first-child::after {
  2348. display: none;
  2349. }
  2350. .cu-steps .cu-item .num {
  2351. width: 40upx;
  2352. height: 40upx;
  2353. border-radius: 50%;
  2354. line-height: 40upx;
  2355. margin: 20upx auto;
  2356. font-size: 24upx;
  2357. border: 1px solid currentColor;
  2358. position: relative;
  2359. overflow: hidden;
  2360. }
  2361. .cu-steps .cu-item[class*="text-"] .num {
  2362. background-color: currentColor;
  2363. }
  2364. .cu-steps .cu-item .num::before,
  2365. .cu-steps .cu-item .num::after {
  2366. content: attr(data-index);
  2367. position: absolute;
  2368. left: 0;
  2369. right: 0;
  2370. top: 0;
  2371. bottom: 0;
  2372. margin: auto;
  2373. transition: all 0.3s ease-in-out 0s;
  2374. transform: translateY(0upx);
  2375. }
  2376. .cu-steps .cu-item[class*="text-"] .num::before {
  2377. transform: translateY(-40upx);
  2378. color: #ffffff;
  2379. }
  2380. .cu-steps .cu-item .num::after {
  2381. transform: translateY(40upx);
  2382. color: #ffffff;
  2383. transition: all 0.3s ease-in-out 0s;
  2384. }
  2385. .cu-steps .cu-item[class*="text-"] .num::after {
  2386. content: "\e645";
  2387. font-family: 'cuIcon';
  2388. color: #ffffff;
  2389. transform: translateY(0upx);
  2390. }
  2391. .cu-steps .cu-item[class*="text-"] .num.err::after {
  2392. content: "\e646";
  2393. }
  2394. /* ==================
  2395. 布局
  2396. ==================== */
  2397. /* -- flex弹性布局 -- */
  2398. .flex {
  2399. display: flex;
  2400. }
  2401. .basis-xs {
  2402. flex-basis: 20%;
  2403. }
  2404. .basis-sm {
  2405. flex-basis: 40%;
  2406. }
  2407. .basis-df {
  2408. flex-basis: 50%;
  2409. }
  2410. .basis-lg {
  2411. flex-basis: 60%;
  2412. }
  2413. .basis-xl {
  2414. flex-basis: 80%;
  2415. }
  2416. .flex-sub {
  2417. flex: 1;
  2418. }
  2419. .flex-twice {
  2420. flex: 2;
  2421. }
  2422. .flex-treble {
  2423. flex: 3;
  2424. }
  2425. .flex-direction {
  2426. flex-direction: column;
  2427. }
  2428. .flex-wrap {
  2429. flex-wrap: wrap;
  2430. }
  2431. .align-start {
  2432. align-items: flex-start;
  2433. }
  2434. .align-end {
  2435. align-items: flex-end;
  2436. }
  2437. .align-center {
  2438. align-items: center;
  2439. }
  2440. .align-stretch {
  2441. align-items: stretch;
  2442. }
  2443. .self-start {
  2444. align-self: flex-start;
  2445. }
  2446. .self-center {
  2447. align-self: flex-center;
  2448. }
  2449. .self-end {
  2450. align-self: flex-end;
  2451. }
  2452. .self-stretch {
  2453. align-self: stretch;
  2454. }
  2455. .align-stretch {
  2456. align-items: stretch;
  2457. }
  2458. .justify-start {
  2459. justify-content: flex-start;
  2460. }
  2461. .justify-end {
  2462. justify-content: flex-end;
  2463. }
  2464. .justify-center {
  2465. justify-content: center;
  2466. }
  2467. .justify-between {
  2468. justify-content: space-between;
  2469. }
  2470. .justify-around {
  2471. justify-content: space-around;
  2472. }
  2473. /* grid布局 */
  2474. .grid {
  2475. display: flex;
  2476. flex-wrap: wrap;
  2477. }
  2478. .grid.grid-square {
  2479. overflow: hidden;
  2480. }
  2481. .grid.grid-square .cu-tag {
  2482. position: absolute;
  2483. right: 0;
  2484. top: 0;
  2485. border-bottom-left-radius: 6upx;
  2486. padding: 6upx 12upx;
  2487. height: auto;
  2488. background-color: rgba(0, 0, 0, 0.5);
  2489. }
  2490. .grid.grid-square>view>text[class*="cuIcon-"] {
  2491. font-size: 52upx;
  2492. position: absolute;
  2493. color: #8799a3;
  2494. margin: auto;
  2495. top: 0;
  2496. bottom: 0;
  2497. left: 0;
  2498. right: 0;
  2499. display: flex;
  2500. justify-content: center;
  2501. align-items: center;
  2502. flex-direction: column;
  2503. }
  2504. .grid.grid-square>view {
  2505. margin-right: 18rpx;
  2506. /* margin-bottom: 18rpx; */
  2507. border-radius: 10rpx;
  2508. position: relative;
  2509. overflow: hidden;
  2510. }
  2511. .grid.grid-square>view.bg-img image {
  2512. width: 100%;
  2513. height: 100%;
  2514. position: absolute;
  2515. }
  2516. .grid.col-1.grid-square>view {
  2517. padding-bottom: 100%;
  2518. height: 0;
  2519. margin-right: 0;
  2520. }
  2521. .grid.col-2.grid-square>view {
  2522. padding-bottom: calc((100% - 20upx)/2);
  2523. height: 0;
  2524. width: calc((100% - 20upx)/2);
  2525. }
  2526. .grid.col-3.grid-square>view {
  2527. padding-bottom: calc((100% - 40upx)/3);
  2528. height: 0;
  2529. width: calc((100% - 40upx)/3);
  2530. }
  2531. .grid.col-4.grid-square>view {
  2532. padding-bottom: calc((100% - 60upx)/4);
  2533. height: 0;
  2534. width: calc((100% - 60upx)/4);
  2535. }
  2536. .grid.col-5.grid-square>view {
  2537. padding-bottom: calc((100% - 80upx)/5);
  2538. height: 0;
  2539. width: calc((100% - 80upx)/5);
  2540. }
  2541. .grid.col-2.grid-square>view:nth-child(2n),
  2542. .grid.col-3.grid-square>view:nth-child(3n),
  2543. .grid.col-4.grid-square>view:nth-child(4n),
  2544. .grid.col-5.grid-square>view:nth-child(5n) {
  2545. margin-right: 0;
  2546. }
  2547. .grid.col-1>view {
  2548. width: 100%;
  2549. }
  2550. .grid.col-2>view {
  2551. width: 50%;
  2552. }
  2553. .grid.col-3>view {
  2554. width: 33.33%;
  2555. }
  2556. .grid.col-4>view {
  2557. width: 25%;
  2558. }
  2559. .grid.col-5>view {
  2560. width: 20%;
  2561. }
  2562. /* -- 内外边距 -- */
  2563. .margin-0 {
  2564. margin: 0;
  2565. }
  2566. .margin-xxs {
  2567. margin: 5upx;
  2568. }
  2569. .margin-xs {
  2570. margin: 10upx;
  2571. }
  2572. .margin-sm {
  2573. margin: 20upx;
  2574. }
  2575. .margin {
  2576. margin: 30upx;
  2577. }
  2578. .margin-lg {
  2579. margin: 40upx;
  2580. }
  2581. .margin-xl {
  2582. margin: 50upx;
  2583. }
  2584. .margin-top-xss {
  2585. margin-top: 5upx;
  2586. }
  2587. .margin-top-xs {
  2588. margin-top: 10upx;
  2589. }
  2590. .margin-top-sm {
  2591. margin-top: 20upx;
  2592. }
  2593. .margin-top {
  2594. margin-top: 30upx;
  2595. }
  2596. .margin-top-lg {
  2597. margin-top: 40upx;
  2598. }
  2599. .margin-top-xl {
  2600. margin-top: 50upx;
  2601. }
  2602. .margin-right-xxs {
  2603. margin-right: 5upx;
  2604. }
  2605. .margin-right-xs {
  2606. margin-right: 10upx;
  2607. }
  2608. .margin-right-sm {
  2609. margin-right: 20upx;
  2610. }
  2611. .margin-right {
  2612. margin-right: 30upx;
  2613. }
  2614. .margin-right-lg {
  2615. margin-right: 40upx;
  2616. }
  2617. .margin-right-xl {
  2618. margin-right: 50upx;
  2619. }
  2620. .margin-bottom-xxs {
  2621. margin-bottom: 5upx;
  2622. }
  2623. .margin-bottom-xs {
  2624. margin-bottom: 10upx;
  2625. }
  2626. .margin-bottom-sm {
  2627. margin-bottom: 20upx;
  2628. }
  2629. .margin-bottom {
  2630. margin-bottom: 30upx;
  2631. }
  2632. .margin-bottom-lg {
  2633. margin-bottom: 40upx;
  2634. }
  2635. .margin-bottom-xl {
  2636. margin-bottom: 50upx;
  2637. }
  2638. .margin-left-xxs {
  2639. margin-left: 5upx;
  2640. }
  2641. .margin-left-xs {
  2642. margin-left: 10upx;
  2643. }
  2644. .margin-left-sm {
  2645. margin-left: 20upx;
  2646. }
  2647. .margin-left {
  2648. margin-left: 30upx;
  2649. }
  2650. .margin-left-lg {
  2651. margin-left: 40upx;
  2652. }
  2653. .margin-left-xl {
  2654. margin-left: 50upx;
  2655. }
  2656. .margin-lr-xxs {
  2657. margin-left: 5upx;
  2658. margin-right: 5upx;
  2659. }
  2660. .margin-lr-xs {
  2661. margin-left: 10upx;
  2662. margin-right: 10upx;
  2663. }
  2664. .margin-lr-sm {
  2665. margin-left: 20upx;
  2666. margin-right: 20upx;
  2667. }
  2668. .margin-lr {
  2669. margin-left: 30upx;
  2670. margin-right: 30upx;
  2671. }
  2672. .margin-lr-lg {
  2673. margin-left: 40upx;
  2674. margin-right: 40upx;
  2675. }
  2676. .margin-lr-xl {
  2677. margin-left: 50upx;
  2678. margin-right: 50upx;
  2679. }
  2680. .margin-tb-xxs {
  2681. margin-top: 5upx;
  2682. margin-bottom: 5upx;
  2683. }
  2684. .margin-tb-xs {
  2685. margin-top: 10upx;
  2686. margin-bottom: 10upx;
  2687. }
  2688. .margin-tb-sm {
  2689. margin-top: 20upx;
  2690. margin-bottom: 20upx;
  2691. }
  2692. .margin-tb {
  2693. margin-top: 30upx;
  2694. margin-bottom: 30upx;
  2695. }
  2696. .margin-tb-lg {
  2697. margin-top: 40upx;
  2698. margin-bottom: 40upx;
  2699. }
  2700. .margin-tb-xl {
  2701. margin-top: 50upx;
  2702. margin-bottom: 50upx;
  2703. }
  2704. .padding-0 {
  2705. padding: 0;
  2706. }
  2707. .padding-xxs {
  2708. padding: 5upx;
  2709. }
  2710. .padding-xs {
  2711. padding: 10upx;
  2712. }
  2713. .padding-sm {
  2714. padding: 20upx;
  2715. }
  2716. .padding {
  2717. padding: 30upx;
  2718. }
  2719. .padding-lg {
  2720. padding: 40upx;
  2721. }
  2722. .padding-xl {
  2723. padding: 50upx;
  2724. }
  2725. .padding-top-xxs {
  2726. padding-top: 5upx;
  2727. }
  2728. .padding-top-xs {
  2729. padding-top: 10upx;
  2730. }
  2731. .padding-top-sm {
  2732. padding-top: 20upx;
  2733. }
  2734. .padding-top {
  2735. padding-top: 30upx;
  2736. }
  2737. .padding-top-lg {
  2738. padding-top: 40upx;
  2739. }
  2740. .padding-top-xl {
  2741. padding-top: 50upx;
  2742. }
  2743. .padding-right-xxs {
  2744. padding-right: 5upx;
  2745. }
  2746. .padding-right-xs {
  2747. padding-right: 10upx;
  2748. }
  2749. .padding-right-sm {
  2750. padding-right: 20upx;
  2751. }
  2752. .padding-right {
  2753. padding-right: 30upx;
  2754. }
  2755. .padding-right-lg {
  2756. padding-right: 40upx;
  2757. }
  2758. .padding-right-xl {
  2759. padding-right: 50upx;
  2760. }
  2761. .padding-bottom-xxs {
  2762. padding-bottom: 5upx;
  2763. }
  2764. .padding-bottom-xs {
  2765. padding-bottom: 10upx;
  2766. }
  2767. .padding-bottom-sm {
  2768. padding-bottom: 20upx;
  2769. }
  2770. .padding-bottom {
  2771. padding-bottom: 30upx;
  2772. }
  2773. .padding-bottom-lg {
  2774. padding-bottom: 40upx;
  2775. }
  2776. .padding-bottom-xl {
  2777. padding-bottom: 50upx;
  2778. }
  2779. .padding-left-xxs {
  2780. padding-left: 5upx;
  2781. }
  2782. .padding-left-xs {
  2783. padding-left: 10upx;
  2784. }
  2785. .padding-left-sm {
  2786. padding-left: 20upx;
  2787. }
  2788. .padding-left {
  2789. padding-left: 30upx;
  2790. }
  2791. .padding-left-lg {
  2792. padding-left: 40upx;
  2793. }
  2794. .padding-left-xl {
  2795. padding-left: 50upx;
  2796. }
  2797. .padding-lr-xxs {
  2798. padding-left: 5upx;
  2799. padding-right: 5upx;
  2800. }
  2801. .padding-lr-xs {
  2802. padding-left: 10upx;
  2803. padding-right: 10upx;
  2804. }
  2805. .padding-lr-sm {
  2806. padding-left: 20upx;
  2807. padding-right: 20upx;
  2808. }
  2809. .padding-lr {
  2810. padding-left: 32rpx;
  2811. padding-right: 32rpx;
  2812. }
  2813. .padding-lr-lg {
  2814. padding-left: 40upx;
  2815. padding-right: 40upx;
  2816. }
  2817. .padding-lr-xl {
  2818. padding-left: 50upx;
  2819. padding-right: 50upx;
  2820. }
  2821. .padding-tb-xxs {
  2822. padding-top: 5upx;
  2823. padding-bottom: 5upx;
  2824. }
  2825. .padding-tb-xs {
  2826. padding-top: 10upx;
  2827. padding-bottom: 10upx;
  2828. }
  2829. .padding-tb-sm {
  2830. padding-top: 20upx;
  2831. padding-bottom: 20upx;
  2832. }
  2833. .padding-tb {
  2834. padding-top: 30upx;
  2835. padding-bottom: 30upx;
  2836. }
  2837. .padding-tb-lg {
  2838. padding-top: 40upx;
  2839. padding-bottom: 40upx;
  2840. }
  2841. .padding-tb-xl {
  2842. padding-top: 50upx;
  2843. padding-bottom: 50upx;
  2844. }
  2845. /* -- 浮动 -- */
  2846. .cf::after,
  2847. .cf::before {
  2848. content: " ";
  2849. display: table;
  2850. }
  2851. .cf::after {
  2852. clear: both;
  2853. }
  2854. .fl {
  2855. float: left;
  2856. }
  2857. .fr {
  2858. float: right;
  2859. }
  2860. .border {
  2861. border: 1px solid #777!important;
  2862. }
  2863. /* ==================
  2864. 背景
  2865. ==================== */
  2866. .line-red::after,
  2867. .lines-red::after {
  2868. border-color: #e54d42;
  2869. }
  2870. .line-orange::after,
  2871. .lines-orange::after {
  2872. border-color: #FE9903;
  2873. }
  2874. .line-yellow::after,
  2875. .lines-yellow::after {
  2876. border-color: #fbbd08;
  2877. }
  2878. .line-olive::after,
  2879. .lines-olive::after {
  2880. border-color: #8dc63f;
  2881. }
  2882. .line-green::after,
  2883. .lines-green::after {
  2884. border-color: #39b54a;
  2885. }
  2886. .line-cyan::after,
  2887. .lines-cyan::after {
  2888. border-color: #1cbbb4;
  2889. }
  2890. .line-blue::after,
  2891. .lines-blue::after {
  2892. border-color: #0081ff;
  2893. }
  2894. .line-purple::after,
  2895. .lines-purple::after {
  2896. border-color: #6739b6;
  2897. }
  2898. .line-mauve::after,
  2899. .lines-mauve::after {
  2900. border-color: #9c26b0;
  2901. }
  2902. .line-pink::after,
  2903. .lines-pink::after {
  2904. border-color: #e03997;
  2905. }
  2906. .line-brown::after,
  2907. .lines-brown::after {
  2908. border-color: #a5673f;
  2909. }
  2910. .line-grey::after,
  2911. .lines-grey::after {
  2912. border-color: #8799a3;
  2913. }
  2914. .line-gray::after,
  2915. .lines-gray::after {
  2916. border-color: #777777!important;
  2917. }
  2918. .line-black::after,
  2919. .lines-black::after {
  2920. border-color: #333333;
  2921. }
  2922. .line-white::after,
  2923. .lines-white::after {
  2924. border-color: #ffffff;
  2925. }
  2926. .bg-red {
  2927. background-color: #FF0000;
  2928. color: #ffffff;
  2929. }
  2930. .bg-orange {
  2931. background-color: #FE9903!important;
  2932. color: #ffffff!important;
  2933. }
  2934. .bg-yellow {
  2935. background-color: #fbbd08;
  2936. color: #333333;
  2937. }
  2938. .bg-olive {
  2939. background-color: #8dc63f;
  2940. color: #ffffff;
  2941. }
  2942. .bg-green {
  2943. background-color: #10CB3B!important;
  2944. color: #ffffff;
  2945. }
  2946. .bg-cyan {
  2947. background-color: #1cbbb4;
  2948. color: #ffffff;
  2949. }
  2950. .bg-blue {
  2951. background-color: #1E89FF!important;
  2952. color: #ffffff;
  2953. }
  2954. .border-blue {
  2955. border: 1px solid #1E89FF!important;
  2956. }
  2957. .bg-purple {
  2958. background-color: #6739b6;
  2959. color: #ffffff;
  2960. }
  2961. .bg-mauve {
  2962. background-color: #9c26b0;
  2963. color: #ffffff;
  2964. }
  2965. .bg-pink {
  2966. background-color: #e03997;
  2967. color: #ffffff;
  2968. }
  2969. .bg-brown {
  2970. background-color: #a5673f;
  2971. color: #ffffff;
  2972. }
  2973. .bg-grey {
  2974. background-color: #8799a3;
  2975. color: #ffffff;
  2976. }
  2977. .bg-gray {
  2978. background-color: #999999!important;
  2979. color: white!important;
  2980. }
  2981. .bg-gray1 {
  2982. background-color: #f7f7fb;
  2983. color: #333333;
  2984. }
  2985. .bg-black {
  2986. background-color: #333333;
  2987. color: #ffffff;
  2988. }
  2989. .bg-white {
  2990. background-color: #ffffff;
  2991. color: #777;
  2992. }
  2993. .bg-shadeTop {
  2994. background-image: linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.01));
  2995. color: #ffffff;
  2996. }
  2997. .bg-shadeBottom {
  2998. background-image: linear-gradient(rgba(0, 0, 0, 0.01), rgba(0, 0, 0, 1));
  2999. color: #ffffff;
  3000. }
  3001. .bg-red.light {
  3002. color: #e54d42;
  3003. background-color: #fadbd9;
  3004. }
  3005. .bg-orange.light {
  3006. color: #f37b1d;
  3007. background-color: #fde6d2;
  3008. }
  3009. .bg-yellow.light {
  3010. color: #fbbd08;
  3011. background-color: #fef2ced2;
  3012. }
  3013. .bg-olive.light {
  3014. color: #8dc63f;
  3015. background-color: #e8f4d9;
  3016. }
  3017. .bg-green.light {
  3018. color: #39b54a;
  3019. background-color: #d7f0dbff;
  3020. }
  3021. .bg-cyan.light {
  3022. color: #1cbbb4;
  3023. background-color: #d2f1f0;
  3024. }
  3025. .bg-blue.light {
  3026. color: #0081ff;
  3027. background-color: #cce6ff;
  3028. }
  3029. .bg-purple.light {
  3030. color: #6739b6;
  3031. background-color: #e1d7f0;
  3032. }
  3033. .bg-mauve.light {
  3034. color: #9c26b0;
  3035. background-color: #ebd4ef;
  3036. }
  3037. .bg-pink.light {
  3038. color: #e03997;
  3039. background-color: #f9d7ea;
  3040. }
  3041. .bg-brown.light {
  3042. color: #a5673f;
  3043. background-color: #ede1d9;
  3044. }
  3045. .bg-grey.light {
  3046. color: #8799a3;
  3047. background-color: #e7ebed;
  3048. }
  3049. .bg-gradual-red {
  3050. background-image: linear-gradient(45deg, #f43f3b, #ec008c);
  3051. color: #ffffff;
  3052. }
  3053. .bg-gradual-orange {
  3054. background-image: linear-gradient(45deg, #ff9700, #ed1c24);
  3055. color: #ffffff;
  3056. }
  3057. .bg-gradual-green {
  3058. background-image: linear-gradient(45deg, #39b54a, #8dc63f);
  3059. color: #ffffff;
  3060. }
  3061. .bg-gradual-purple {
  3062. background-image: linear-gradient(45deg, #9000ff, #5e00ff);
  3063. color: #ffffff;
  3064. }
  3065. .bg-gradual-pink {
  3066. background-image: linear-gradient(45deg, #ec008c, #6739b6);
  3067. color: #ffffff;
  3068. }
  3069. .bg-gradual-blue {
  3070. background-image: linear-gradient(45deg, #0081ff, #1cbbb4);
  3071. color: #ffffff;
  3072. }
  3073. .shadow[class*="-red"] {
  3074. box-shadow: 6upx 6upx 8upx rgba(204, 69, 59, 0.2);
  3075. }
  3076. .shadow[class*="-orange"] {
  3077. box-shadow: 6upx 6upx 8upx rgba(217, 109, 26, 0.2);
  3078. }
  3079. .shadow[class*="-yellow"] {
  3080. box-shadow: 6upx 6upx 8upx rgba(224, 170, 7, 0.2);
  3081. }
  3082. .shadow[class*="-olive"] {
  3083. box-shadow: 6upx 6upx 8upx rgba(124, 173, 55, 0.2);
  3084. }
  3085. .shadow[class*="-green"] {
  3086. box-shadow: 6upx 6upx 8upx rgba(48, 156, 63, 0.2);
  3087. }
  3088. .shadow[class*="-cyan"] {
  3089. box-shadow: 6upx 6upx 8upx rgba(28, 187, 180, 0.2);
  3090. }
  3091. .shadow[class*="-blue"] {
  3092. box-shadow: 6upx 6upx 8upx rgba(0, 102, 204, 0.2);
  3093. }
  3094. .shadow[class*="-purple"] {
  3095. box-shadow: 6upx 6upx 8upx rgba(88, 48, 156, 0.2);
  3096. }
  3097. .shadow[class*="-mauve"] {
  3098. box-shadow: 6upx 6upx 8upx rgba(133, 33, 150, 0.2);
  3099. }
  3100. .shadow[class*="-pink"] {
  3101. box-shadow: 6upx 6upx 8upx rgba(199, 50, 134, 0.2);
  3102. }
  3103. .shadow[class*="-brown"] {
  3104. box-shadow: 6upx 6upx 8upx rgba(140, 88, 53, 0.2);
  3105. }
  3106. .shadow[class*="-grey"] {
  3107. box-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2);
  3108. }
  3109. .shadow[class*="-gray"] {
  3110. box-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2);
  3111. }
  3112. .shadow[class*="-black"] {
  3113. box-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2);
  3114. }
  3115. .shadow[class*="-white"] {
  3116. box-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2);
  3117. }
  3118. .text-shadow[class*="-red"] {
  3119. text-shadow: 6upx 6upx 8upx rgba(204, 69, 59, 0.2);
  3120. }
  3121. .text-shadow[class*="-orange"] {
  3122. text-shadow: 6upx 6upx 8upx rgba(217, 109, 26, 0.2);
  3123. }
  3124. .text-shadow[class*="-yellow"] {
  3125. text-shadow: 6upx 6upx 8upx rgba(224, 170, 7, 0.2);
  3126. }
  3127. .text-shadow[class*="-olive"] {
  3128. text-shadow: 6upx 6upx 8upx rgba(124, 173, 55, 0.2);
  3129. }
  3130. .text-shadow[class*="-green"] {
  3131. text-shadow: 6upx 6upx 8upx rgba(48, 156, 63, 0.2);
  3132. }
  3133. .text-shadow[class*="-cyan"] {
  3134. text-shadow: 6upx 6upx 8upx rgba(28, 187, 180, 0.2);
  3135. }
  3136. .text-shadow[class*="-blue"] {
  3137. text-shadow: 6upx 6upx 8upx rgba(0, 102, 204, 0.2);
  3138. }
  3139. .text-shadow[class*="-purple"] {
  3140. text-shadow: 6upx 6upx 8upx rgba(88, 48, 156, 0.2);
  3141. }
  3142. .text-shadow[class*="-mauve"] {
  3143. text-shadow: 6upx 6upx 8upx rgba(133, 33, 150, 0.2);
  3144. }
  3145. .text-shadow[class*="-pink"] {
  3146. text-shadow: 6upx 6upx 8upx rgba(199, 50, 134, 0.2);
  3147. }
  3148. .text-shadow[class*="-brown"] {
  3149. text-shadow: 6upx 6upx 8upx rgba(140, 88, 53, 0.2);
  3150. }
  3151. .text-shadow[class*="-grey"] {
  3152. text-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2);
  3153. }
  3154. .text-shadow[class*="-gray"] {
  3155. text-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2);
  3156. }
  3157. .text-shadow[class*="-black"] {
  3158. text-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2);
  3159. }
  3160. .bg-img {
  3161. background-size: cover;
  3162. background-position: center;
  3163. background-repeat: no-repeat;
  3164. }
  3165. .bg-mask {
  3166. background-color: #333333;
  3167. position: relative;
  3168. }
  3169. .bg-mask::after {
  3170. content: "";
  3171. border-radius: inherit;
  3172. width: 100%;
  3173. height: 100%;
  3174. display: block;
  3175. background-color: rgba(0, 0, 0, 0.4);
  3176. position: absolute;
  3177. left: 0;
  3178. right: 0;
  3179. bottom: 0;
  3180. top: 0;
  3181. }
  3182. .bg-mask view,
  3183. .bg-mask cover-view {
  3184. z-index: 5;
  3185. position: relative;
  3186. }
  3187. .bg-video {
  3188. position: relative;
  3189. }
  3190. .bg-video video {
  3191. display: block;
  3192. height: 100%;
  3193. width: 100%;
  3194. -o-object-fit: cover;
  3195. object-fit: cover;
  3196. position: absolute;
  3197. top: 0;
  3198. z-index: 0;
  3199. pointer-events: none;
  3200. }
  3201. /* ==================
  3202. 文本
  3203. ==================== */
  3204. .text-xs {
  3205. font-size: 20upx;
  3206. }
  3207. .text-sm {
  3208. font-size: 24upx;
  3209. }
  3210. .text-df {
  3211. font-size: 28upx;
  3212. }
  3213. .text-lg {
  3214. font-size: 32upx;
  3215. }
  3216. .text-xl {
  3217. font-size: 36upx;
  3218. }
  3219. .text-xxl {
  3220. font-size: 44upx;
  3221. }
  3222. .text-sl {
  3223. font-size: 80upx;
  3224. }
  3225. .text-xsl {
  3226. font-size: 120upx;
  3227. }
  3228. .text-Abc {
  3229. text-transform: Capitalize;
  3230. }
  3231. .text-ABC {
  3232. text-transform: Uppercase;
  3233. }
  3234. .text-abc {
  3235. text-transform: Lowercase;
  3236. }
  3237. .text-price::before {
  3238. content: "¥";
  3239. font-size: 24rpx!important;
  3240. margin-right: 4upx;
  3241. }
  3242. .text-cut {
  3243. text-overflow: ellipsis;
  3244. white-space: nowrap;
  3245. overflow: hidden;
  3246. }
  3247. .text-bold {
  3248. font-weight: bold;
  3249. }
  3250. .text-center {
  3251. text-align: center;
  3252. }
  3253. .text-content {
  3254. line-height: 1.6;
  3255. }
  3256. .text-left {
  3257. text-align: left;
  3258. }
  3259. .text-right {
  3260. text-align: right;
  3261. }
  3262. .text-red,
  3263. .line-red,
  3264. .lines-red {
  3265. color: #FF0000;
  3266. }
  3267. .text-orange,
  3268. .line-orange,
  3269. .lines-orange {
  3270. color: #FE9903;
  3271. }
  3272. .text-yellow,
  3273. .line-yellow,
  3274. .lines-yellow {
  3275. color: #fbbd08;
  3276. }
  3277. .text-olive,
  3278. .line-olive,
  3279. .lines-olive {
  3280. color: #8dc63f;
  3281. }
  3282. .text-green,
  3283. .line-green,
  3284. .lines-green {
  3285. color: #10CB3B;
  3286. }
  3287. .text-cyan,
  3288. .line-cyan,
  3289. .lines-cyan {
  3290. color: #1cbbb4;
  3291. }
  3292. .text-blue,
  3293. .line-blue,
  3294. .lines-blue {
  3295. color: #1E89FF!important;
  3296. }
  3297. .text-purple,
  3298. .line-purple,
  3299. .lines-purple {
  3300. color: #6739b6;
  3301. }
  3302. .text-mauve,
  3303. .line-mauve,
  3304. .lines-mauve {
  3305. color: #9c26b0;
  3306. }
  3307. .text-pink,
  3308. .line-pink,
  3309. .lines-pink {
  3310. color: #e03997;
  3311. }
  3312. .text-brown,
  3313. .line-brown,
  3314. .lines-brown {
  3315. color: #a5673f;
  3316. }
  3317. .text-grey,
  3318. .line-grey,
  3319. .lines-grey {
  3320. color: #8799a3;
  3321. }
  3322. .text-gray,
  3323. .line-gray,
  3324. .lines-gray {
  3325. color: #777777!important;
  3326. }
  3327. .text-black,
  3328. .line-black,
  3329. .lines-black {
  3330. color: #333333;
  3331. }
  3332. .text-black1,
  3333. .line-black1,
  3334. .lines-black1 {
  3335. color: #222222;
  3336. }
  3337. .text-white,
  3338. .line-white,
  3339. .lines-white {
  3340. color: #ffffff;
  3341. }