时空网前端
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.

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