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.
 
 
 
 
 
 

4124 lines
69 KiB

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