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

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