index.module.less 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923
  1. .student-register {
  2. min-height: 100vh;
  3. // background: #FFF4E2;
  4. background: linear-gradient(180deg, #c9edfd 0%, #ccf0ff 100%);
  5. overflow: hidden;
  6. position: relative;
  7. --k-font-primary: #007afe;
  8. .studentRegisterContainer {
  9. padding-top: 142px;
  10. background: url('./images/new1/banner-bg.png') no-repeat top center;
  11. background-size: contain;
  12. }
  13. .video-content {
  14. margin: 16px 14px 2px;
  15. padding: 6px;
  16. background: linear-gradient(270deg, #5bbefc 0%, #5cc9ff 100%), #5bbefc;
  17. border-radius: 16px;
  18. height: 171.125px;
  19. // 154.125
  20. box-sizing: content-box;
  21. position: relative;
  22. .videoDuration {
  23. position: absolute;
  24. background-color: rgba(0, 0, 0, 0.3);
  25. border-radius: 6px;
  26. padding: 4px 6px;
  27. font-size: 13px;
  28. line-height: 1;
  29. color: #fff;
  30. right: 14px;
  31. bottom: 12px;
  32. }
  33. .coverImg {
  34. width: 100%;
  35. height: 100%;
  36. border-radius: 30px;
  37. }
  38. video {
  39. width: 100%;
  40. }
  41. :global {
  42. .video-back {
  43. position: absolute;
  44. left: 20px;
  45. top: 20px;
  46. color: #fff;
  47. z-index: 99;
  48. font-size: 24px;
  49. width: 30px;
  50. height: 30px;
  51. background-color: rgba(0, 0, 0, 0.5);
  52. border-radius: 50%;
  53. padding: 4px 5px 4px 3px;
  54. }
  55. .video-js {
  56. width: 100%;
  57. height: 100%;
  58. border-radius: 30px;
  59. overflow: hidden;
  60. }
  61. .vjs-poster {
  62. background-size: cover;
  63. }
  64. .plyr__poster {
  65. background-size: cover;
  66. }
  67. .plyr__control--overlaid {
  68. border: 1px solid #fff;
  69. background-color: rgba(0, 0, 0, 0.2) !important;
  70. }
  71. .plyr--video .plyr__control:hover {
  72. background-color: transparent !important;
  73. }
  74. .video-js {
  75. width: 100%;
  76. height: 100%;
  77. }
  78. .tcp-skin .vjs-play-progress {
  79. background-color: #fff !important;
  80. }
  81. .vjs-slider:focus {
  82. box-shadow: none !important;
  83. }
  84. .video-js .vjs-progress-control:hover .vjs-progress-holder {
  85. font-size: 1em !important;
  86. }
  87. .vjs-button-icon {
  88. height: 42px !important;
  89. }
  90. }
  91. .video {
  92. position: relative;
  93. border-radius: 12px;
  94. background-color: transparent !important;
  95. }
  96. }
  97. }
  98. .countdownSection {
  99. position: relative;
  100. background: linear-gradient(90deg, #ffbbd1 0%, #ffefe2 100%),
  101. linear-gradient(
  102. 180deg,
  103. rgba(255, 255, 255, 0) 0%,
  104. rgba(255, 255, 255, 0.7) 100%
  105. );
  106. border-radius: 16px;
  107. margin: 0 14px 12px;
  108. padding: 10px 16px 10px;
  109. border: 2px solid #ffffff;
  110. &::before {
  111. content: '';
  112. position: absolute;
  113. top: 0;
  114. left: 13px;
  115. display: inline-block;
  116. width: 32px;
  117. height: 48px;
  118. background: url('./images/new/icon-1.png') no-repeat center;
  119. background-size: contain;
  120. }
  121. .timer {
  122. display: flex;
  123. align-items: center;
  124. justify-content: center;
  125. }
  126. .timerAll {
  127. font-size: 12px;
  128. color: #131415;
  129. line-height: 17px;
  130. display: flex;
  131. align-items: center;
  132. justify-content: center;
  133. span {
  134. display: flex;
  135. align-items: center;
  136. justify-content: center;
  137. height: 22px;
  138. min-width: 22px;
  139. padding: 0 3px;
  140. background: #ff3a5f;
  141. border-radius: 4px;
  142. font-weight: 600;
  143. font-size: 12px;
  144. color: #ffffff;
  145. margin: 0 4px;
  146. }
  147. }
  148. .timerTitle {
  149. width: 80px;
  150. height: 15px;
  151. margin-right: 4px;
  152. }
  153. .timerTip {
  154. margin-top: 10px;
  155. background: linear-gradient(180deg, #ffffff 0%, #ffffff 100%);
  156. border-radius: 12px;
  157. text-align: center;
  158. padding: 4px 6px;
  159. font-size: 11px;
  160. color: #69717c;
  161. line-height: 16px;
  162. }
  163. }
  164. .paymentContainer {
  165. display: flex;
  166. align-items: center;
  167. justify-content: flex-end;
  168. font-size: 14px;
  169. padding: 16px 14px calc(16px + env(safe-area-inset-bottom)) 12px;
  170. background: #ffffff;
  171. box-shadow: 0px -1px 0px 0px #f2f2f2, inset 0px 1px 3px 0px #ffffff;
  172. border-radius: 18px 18px 0px 0px;
  173. .payemntPrice {
  174. // line-height: 0;
  175. position: absolute;
  176. left: 14px;
  177. }
  178. .giftTip {
  179. width: 94px;
  180. height: 19px;
  181. }
  182. .needPrice {
  183. color: #333333;
  184. padding-bottom: 7px;
  185. font-size: 14px;
  186. font-family: DINAlternate-Bold, DINAlternate;
  187. font-weight: bold;
  188. color: #fc1a19;
  189. padding-right: 6px;
  190. span {
  191. font-size: 24px;
  192. margin-right: 2px;
  193. }
  194. i {
  195. // margin-top: -3px;
  196. vertical-align: text-bottom;
  197. font-weight: 400;
  198. &.unit {
  199. font-size: 12px;
  200. }
  201. }
  202. }
  203. .allPrice {
  204. display: inline-block;
  205. font-size: 14px;
  206. font-family: DINAlternate-Bold, DINAlternate;
  207. font-weight: bold;
  208. color: #aaaaaa;
  209. line-height: 16px;
  210. vertical-align: text-top;
  211. }
  212. :global {
  213. .van-button {
  214. height: 40px;
  215. line-height: 40px;
  216. width: 148px;
  217. background: linear-gradient(135deg, #31c7ff 0%, #007afe 100%);
  218. font-size: 16px;
  219. color: #fff;
  220. font-weight: 500;
  221. border: 0;
  222. }
  223. }
  224. .traditionBtn {
  225. flex: 1;
  226. text-align: center;
  227. :global {
  228. .van-button {
  229. width: 100%;
  230. max-width: 325px;
  231. }
  232. }
  233. }
  234. }
  235. .studentSection {
  236. margin: 0 14px 12px;
  237. padding: 12px 15px;
  238. background: linear-gradient(
  239. 180deg,
  240. rgba(219, 246, 253) 0%,
  241. rgba(255, 255, 255) 30%
  242. );
  243. border-radius: 16px;
  244. border: 2px solid #ffffff;
  245. &.studentSectionForm {
  246. padding: 12px 0;
  247. background: linear-gradient(180deg, #dbf6fd 0%, #ffffff 10%);
  248. }
  249. &.noSendDay {
  250. padding-bottom: 0;
  251. }
  252. .title1,
  253. .title3,
  254. .title4 {
  255. width: 212px;
  256. height: 22px;
  257. background: url('./images/new/title-7.png') no-repeat center;
  258. background-size: contain;
  259. margin: 0 auto;
  260. }
  261. // .title4 {
  262. // width: 231px;
  263. // }
  264. .title2 {
  265. width: 248px;
  266. height: 22px;
  267. background: url('./images/new1/title-4.png') no-repeat center;
  268. background-size: contain;
  269. margin: 0 auto;
  270. }
  271. .title3 {
  272. background: url('./images/new/title-6.png') no-repeat center;
  273. background-size: contain;
  274. }
  275. .title4 {
  276. background: url('./images/new/title-8.png') no-repeat center;
  277. background-size: contain;
  278. }
  279. .videoContent {
  280. font-size: 14px;
  281. color: #777777;
  282. line-height: 22px;
  283. padding: 16px 14px 0;
  284. }
  285. .goodsGroup {
  286. display: flex;
  287. align-items: center;
  288. margin-top: 29px;
  289. }
  290. .goodsItem {
  291. cursor: pointer;
  292. position: relative;
  293. display: flex;
  294. align-items: center;
  295. justify-content: center;
  296. flex: 1;
  297. // background: #EBF3F8;
  298. // border-radius: 20px 4px 4px 20px;
  299. height: 36px;
  300. line-height: 36px;
  301. font-size: 16px;
  302. color: #728088;
  303. // transform: skewX(-15deg);
  304. background: url('./images/new/btn-left-default.png') no-repeat center;
  305. background-size: contain;
  306. .goodsInner {
  307. // transform: skewX(15deg);
  308. // background: #EBF3F8;
  309. width: 100%;
  310. text-align: center;
  311. }
  312. &.checked {
  313. // background: linear-gradient(315deg, #31C7FF 0%, #007AFE 100%);
  314. background: url('./images/new/btn-left-active.png') no-repeat center !important;
  315. background-size: contain !important;
  316. color: #fff;
  317. font-weight: 600;
  318. }
  319. &.checked1 {
  320. background: url('./images/new/btn-right-active.png') no-repeat center !important;
  321. background-size: contain !important;
  322. color: #fff;
  323. font-weight: 600;
  324. }
  325. .proposalTip {
  326. position: absolute;
  327. right: 8px;
  328. top: -14px;
  329. width: 40px;
  330. height: 26px;
  331. display: inline-block;
  332. background: url('./images/new/icon-2.png') no-repeat center;
  333. background-size: contain;
  334. }
  335. .proposalTip2 {
  336. position: absolute;
  337. right: -3px;
  338. top: -14px;
  339. width: 62px;
  340. height: 23px;
  341. display: inline-block;
  342. background: url('./images/new1/icon-tips-2.png') no-repeat center;
  343. background-size: contain;
  344. }
  345. & + .goodsItem {
  346. // margin-left: 8px;
  347. // border-radius: 4px 20px 20px 4px;
  348. // transform: skewX(-15deg);
  349. background: url('./images/new/btn-right-default.png') no-repeat center;
  350. background-size: contain;
  351. // &.checked {
  352. // background: linear-gradient(315deg, #31C7FF 0%, #007AFE 100%);
  353. // }
  354. }
  355. }
  356. .goodsTypeGroup {
  357. padding-top: 14px;
  358. padding-bottom: 2px;
  359. .showImg {
  360. height: 95px;
  361. // width: 100%
  362. }
  363. .showImg1 {
  364. height: 47px;
  365. // width: 100%;
  366. }
  367. .memberNumer {
  368. margin: 14px 0 0;
  369. background: #e8f8ff;
  370. border-radius: 8px;
  371. padding: 8px 0 8px 10px;
  372. display: flex;
  373. align-items: center;
  374. // font-weight: 600;
  375. font-size: 13px;
  376. color: #131415;
  377. line-height: 18px;
  378. .iconGift {
  379. width: 18px;
  380. height: 18px;
  381. margin-right: 6px;
  382. }
  383. span {
  384. font-size: 15px;
  385. color: #f62c2c;
  386. padding: 0 5px;
  387. font-weight: 600;
  388. }
  389. }
  390. }
  391. }
  392. .registerForm {
  393. // background: #FFFFFF;
  394. // border-radius: 16px;
  395. border-radius: 18px;
  396. // margin: 0 12px;
  397. overflow: hidden;
  398. .selectStudentGroup {
  399. margin-left: 10px;
  400. font-size: 14px;
  401. color: #1189ff;
  402. display: flex;
  403. align-items: center;
  404. justify-content: center;
  405. &.selectStudentGroupChecked {
  406. span::after {
  407. transform: rotate(180deg);
  408. }
  409. }
  410. span {
  411. display: flex;
  412. align-items: center;
  413. justify-content: center;
  414. &::after {
  415. display: inline-block;
  416. content: '';
  417. width: 9px;
  418. height: 5px;
  419. margin-left: 4px;
  420. background: url('./images/new/icon-n-6.png') no-repeat center;
  421. background-size: contain;
  422. }
  423. }
  424. }
  425. :global {
  426. .van-cell {
  427. background-color: transparent;
  428. }
  429. }
  430. .fieldTipsGroup {
  431. margin: 0 14px 0;
  432. padding-bottom: 9px;
  433. }
  434. .fieldTips {
  435. font-size: 13px;
  436. color: #ec763b;
  437. line-height: 18px;
  438. background: #fff8eb;
  439. border-radius: 4px;
  440. padding: 4px 10px;
  441. }
  442. .tips {
  443. display: inline-block;
  444. // padding-left: 5px;
  445. // padding-top: 2px;
  446. font-size: 12px;
  447. font-weight: 400;
  448. color: #777;
  449. line-height: 17px;
  450. }
  451. .username {
  452. padding-bottom: 8px !important;
  453. :global {
  454. .van-field__label {
  455. display: flex;
  456. align-items: center;
  457. width: 170px;
  458. }
  459. }
  460. }
  461. .countDown {
  462. min-width: 80px;
  463. text-align: center;
  464. font-size: 14px;
  465. color: #a0d0ff;
  466. }
  467. :global {
  468. .van-cell {
  469. padding: 18px 14px;
  470. }
  471. .van-field__label {
  472. font-size: 16px;
  473. color: #666666;
  474. line-height: 22px;
  475. }
  476. .van-field__control {
  477. font-size: 16px;
  478. color: #131415;
  479. }
  480. }
  481. .codeText {
  482. color: #1189ff;
  483. font-size: 14px;
  484. // &.codeTextDisabled {
  485. // color: #ccc;
  486. // }
  487. }
  488. .memberNumer {
  489. margin: 14px 12px 0;
  490. background: #e8f8ff;
  491. border-radius: 8px;
  492. padding: 8px 0 8px 10px;
  493. display: flex;
  494. align-items: center;
  495. // font-weight: 600;
  496. font-size: 13px;
  497. color: #131415;
  498. line-height: 18px;
  499. .iconGift {
  500. width: 18px;
  501. height: 18px;
  502. margin-right: 6px;
  503. }
  504. span {
  505. font-size: 15px;
  506. color: #f62c2c;
  507. padding: 0 5px;
  508. font-weight: 600;
  509. }
  510. }
  511. }
  512. .radioSection {
  513. position: relative;
  514. min-width: 32px;
  515. justify-content: center;
  516. // padding-left: 19px;
  517. // padding-right: 19px;
  518. padding: 5px 19px;
  519. font-size: 14px;
  520. font-weight: 500;
  521. border-radius: 6px;
  522. }
  523. .radioItem {
  524. position: absolute;
  525. top: 0;
  526. left: 0;
  527. right: 0;
  528. bottom: 0;
  529. opacity: 0;
  530. }
  531. .radioSection + .radioSection {
  532. margin-left: 12px;
  533. }
  534. .goodsSection {
  535. border-radius: 18px 18px;
  536. box-shadow: 0px 1px 6px 0px #f0d8c8;
  537. border-radius: 18px;
  538. overflow: hidden;
  539. background: transparent;
  540. margin-bottom: 12px;
  541. &:last-child {
  542. margin-bottom: 0;
  543. }
  544. }
  545. .iconArrow {
  546. display: inline-block;
  547. width: 21px;
  548. height: 21px;
  549. background: url('./images/new/icon-arrow.png') no-repeat center;
  550. background-size: contain;
  551. }
  552. .goodsExtra {
  553. position: relative;
  554. margin: 16px 12px;
  555. background: #ffffff;
  556. border-radius: 16px;
  557. padding-bottom: 16px;
  558. .iconArrow {
  559. position: absolute;
  560. left: 86px;
  561. top: -9px;
  562. }
  563. .memberNumer {
  564. margin: 16px 16px 0;
  565. background: #e8f8ff;
  566. border-radius: 8px;
  567. padding: 8px 0 8px 10px;
  568. display: flex;
  569. align-items: center;
  570. // font-weight: 600;
  571. font-size: 13px;
  572. color: #131415;
  573. line-height: 18px;
  574. .iconGift {
  575. width: 18px;
  576. height: 18px;
  577. margin-right: 6px;
  578. }
  579. span {
  580. font-size: 15px;
  581. color: #f62c2c;
  582. padding: 0 5px;
  583. font-weight: 600;
  584. }
  585. }
  586. }
  587. .goodsCell {
  588. position: relative;
  589. border-radius: 16px;
  590. padding: 16px 16px 0;
  591. .img {
  592. margin-right: 10px;
  593. width: 98px;
  594. height: 98px;
  595. border-radius: 8px;
  596. overflow: hidden;
  597. flex-shrink: 0;
  598. }
  599. h2 {
  600. display: flex;
  601. align-items: center;
  602. font-weight: 500;
  603. font-size: 16px;
  604. color: #131415;
  605. line-height: 22px;
  606. }
  607. .goodsName {
  608. width: 112px;
  609. height: 16px;
  610. line-height: 0;
  611. }
  612. .brandName {
  613. margin-left: 6px;
  614. font-size: 12px;
  615. font-weight: 400;
  616. color: #19a1fe;
  617. line-height: 17px;
  618. height: 18px;
  619. background: #f4faff;
  620. border-radius: 4px;
  621. border: 1px solid rgba(52, 173, 255, 0.55);
  622. white-space: nowrap;
  623. }
  624. .model {
  625. margin: 6px 0 4px;
  626. font-weight: 500;
  627. font-size: 13px;
  628. color: #ff711b;
  629. p {
  630. display: flex;
  631. align-items: center;
  632. i {
  633. width: 4px;
  634. height: 4px;
  635. border-radius: 50%;
  636. display: inline-block;
  637. margin-right: 4px;
  638. background: #ff711b;
  639. }
  640. }
  641. }
  642. .sendInstrument {
  643. // background: linear-gradient(270deg, #FF7B57 0%, #FF3460 100%);
  644. // border-radius: 4px;
  645. // font-size: 12px;
  646. // color: #FFFFFF;
  647. // padding: 2px 6px 3px;
  648. width: 106px;
  649. height: 23px;
  650. }
  651. .moreBtn {
  652. color: #aaa;
  653. font-size: 12px;
  654. :global {
  655. .van-icon {
  656. margin-left: 4px;
  657. }
  658. }
  659. }
  660. .sbtnGroup {
  661. display: flex;
  662. & > span {
  663. font-size: 12px;
  664. font-weight: 600;
  665. color: #af540d;
  666. line-height: 18px;
  667. border-radius: 9px;
  668. border: 1px solid rgba(175, 84, 13, 0.62);
  669. padding: 0 6px;
  670. }
  671. }
  672. }
  673. .goodsTradition {
  674. position: relative;
  675. margin: 16px 12px;
  676. background: #ffffff;
  677. border-radius: 16px;
  678. padding: 13px 16px 20px;
  679. .iconArrow {
  680. position: absolute;
  681. right: 85px;
  682. top: -9px;
  683. }
  684. .goodsTitle {
  685. width: 137px;
  686. height: 44px;
  687. background: url('./images/new/title-5.png') no-repeat center;
  688. background-size: contain;
  689. margin: 0 auto 11px;
  690. }
  691. .steps {
  692. }
  693. .step {
  694. position: relative;
  695. padding-left: 38px;
  696. padding-bottom: 16px;
  697. &::before {
  698. content: '';
  699. border-left: 1px dashed rgba(9, 135, 254, 0.4);
  700. position: absolute;
  701. left: 15px;
  702. top: 0;
  703. display: inline-block;
  704. height: 100%;
  705. }
  706. &:last-child {
  707. padding-bottom: 0;
  708. &::before {
  709. display: none;
  710. }
  711. }
  712. .stepContent {
  713. font-size: 14px;
  714. color: #777777;
  715. line-height: 24px;
  716. text-align: justify;
  717. padding-top: 3px;
  718. span {
  719. font-weight: 500;
  720. color: #333333;
  721. }
  722. }
  723. .nums {
  724. position: absolute;
  725. left: 0;
  726. width: 30px;
  727. height: 30px;
  728. background: #c9e5ff;
  729. display: flex;
  730. align-items: center;
  731. justify-content: center;
  732. border-radius: 50%;
  733. .numInner {
  734. display: flex;
  735. align-items: center;
  736. justify-content: center;
  737. border-radius: 50%;
  738. width: 22px;
  739. height: 22px;
  740. font-weight: bold;
  741. font-size: 13px;
  742. color: #ffffff;
  743. background: #1ba5fe;
  744. }
  745. }
  746. }
  747. }
  748. .selectStudentPopup {
  749. :global {
  750. .van-popup__close-icon {
  751. color: #767c7f;
  752. }
  753. }
  754. }
  755. // 赠送会员
  756. .vipGiftContainer {
  757. display: flex;
  758. align-items: center;
  759. margin: 7px 13px 12px;
  760. background-image: url('./images/new/vip_gift_suffix.png'),
  761. url('./images/new/vip_gift_bg.png');
  762. background-position: center right, center;
  763. background-repeat: no-repeat;
  764. background-size: contain;
  765. height: 47px;
  766. .iconGift {
  767. width: 60px;
  768. height: 51px;
  769. margin: -10px 11px 0 16px;
  770. }
  771. font-weight: 500;
  772. font-size: 15px;
  773. color: #801d09;
  774. line-height: 21px;
  775. p {
  776. display: flex;
  777. align-items: center;
  778. justify-content: space-between;
  779. flex: 1;
  780. & > div {
  781. color: #ffffff;
  782. min-width: 84px;
  783. // text-align: center;
  784. display: flex;
  785. align-items: center;
  786. justify-content: center;
  787. }
  788. }
  789. .vipGiftNum {
  790. font-weight: bold;
  791. font-size: 30px;
  792. line-height: 36px;
  793. padding-right: 2px;
  794. }
  795. .vipGiftPreviod {
  796. vertical-align: text-bottom;
  797. font-weight: 600;
  798. font-size: 16px;
  799. margin-top: 6px;
  800. }
  801. }