screen.scss 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904
  1. @import "./_stu-body";
  2. @import "./_stu-box_header";
  3. @import "./_stu-form";
  4. body {
  5. /*background: #3c3c3c;*/
  6. /*background: #005f61;*/
  7. /*background-image: linear-gradient(150deg,#005f61,#007f61);*/
  8. font-size: 22px;
  9. color: var(--mc);
  10. width: 100vw;
  11. }
  12. .main-box {
  13. border-left: 0;
  14. box-sizing: padding-box;
  15. padding: 0;
  16. margin: 0;
  17. .main-box-body {
  18. margin: 0 30px 0;
  19. }
  20. > div {
  21. /* width: calc(100vw - 20px) !important;
  22. height: calc(100% - 20px) !important;*/
  23. display: flex;
  24. flex: 1 auto;
  25. }
  26. }
  27. .box {
  28. margin: 0 10px;
  29. font-size: 1.25rem;
  30. > .box {
  31. margin: 0;
  32. width: 100%;
  33. height: 100%;
  34. border: 2px solid #fff;
  35. border-radius: 10px;
  36. }
  37. .box-header {
  38. height: 50px;
  39. border-radius: 10px 10px 0 0;
  40. position: relative;
  41. .title {
  42. --w: 50px;
  43. font-size: 22px;
  44. }
  45. }
  46. .box-body {
  47. background: linear-gradient(174.54deg, rgba(204, 224, 248, 0.76) 0.23%, rgba(242, 249, 255, 0.76) 120.71%);
  48. overflow-y: auto;
  49. margin: 0;
  50. padding: 10px 10px 0;
  51. height: calc(100% - 50px);
  52. }
  53. .scene-box-body {
  54. background: linear-gradient(174.54deg, rgba(204, 224, 248, 0.76) 0.23%, rgba(242, 249, 255, 0.76) 120.71%);
  55. overflow-y: auto;
  56. margin: 0;
  57. padding: 10px 10px 0;
  58. height: calc(100% - 50px);
  59. .box-body {
  60. background: none;
  61. margin: 0;
  62. padding: 0;
  63. }
  64. }
  65. .media-box {
  66. width: 98%;
  67. margin: 10px auto 0;
  68. border: 2px solid #4585CC;
  69. border-radius: 5px;
  70. background: var(--bg);
  71. .body-content {
  72. display: flex;
  73. justify-content: center;
  74. align-items: center;
  75. width: 100%;
  76. height: 100%;
  77. /*max-width: 100%;
  78. max-height: 100%;*/
  79. overflow: hidden;
  80. span {
  81. color: #4585CC;
  82. font-size: 30px;
  83. font-weight: 600;
  84. display: block;
  85. }
  86. img, video {
  87. width: auto;
  88. height: 100%;
  89. padding: 0;
  90. overflow: hidden;
  91. }
  92. }
  93. }
  94. .scene-box {
  95. width: 100%;
  96. margin: 8px 0;
  97. display: flex;
  98. flex-direction: column;
  99. .title {
  100. width: 100%;
  101. color: #fff;
  102. background: none;
  103. position: relative;
  104. height: 35px;
  105. border-bottom: 2px solid #4585CC;
  106. span.text {
  107. display: inline-block;
  108. padding: 0px 20px;
  109. line-height: 35px;
  110. text-align: center;
  111. min-width: 250px;
  112. max-width: 300px;
  113. background: #4585CC;
  114. position: relative;
  115. overflow: hidden;
  116. white-space: nowrap;
  117. text-overflow: ellipsis;
  118. font-weight: 600;
  119. &:after {
  120. position: absolute;
  121. content: "";
  122. right: -1px;
  123. height: 0;
  124. width: 0;
  125. border-left: 10px solid #4585CC;
  126. border-bottom: 18px solid #4585CC;
  127. border-right: 10px solid none;
  128. border-top: 18px solid none;
  129. }
  130. }
  131. .attach-box, .tool {
  132. position: absolute;
  133. font-size: 0.875rem;
  134. right: 40px;
  135. top: 5px;
  136. }
  137. .tool {
  138. right: 10px;
  139. top: 10px;
  140. color: #4585CC;
  141. opacity: 1;
  142. }
  143. .attach1 {
  144. color: #fff;
  145. background: #4585CC;
  146. margin: 0 5px;
  147. padding: 3px 8px;
  148. }
  149. }
  150. .guide-box {
  151. margin: 10px 0;
  152. padding: 10px;
  153. background: var(--bg);
  154. border-radius: 5px;
  155. p {
  156. margin: 0;
  157. font-size: 13px;
  158. }
  159. .guide-title {
  160. font-weight: 600;
  161. }
  162. }
  163. .desc {
  164. padding: 8px;
  165. color: #36536D;
  166. background: var(--bg);
  167. white-space: normal;
  168. word-break: break-word;
  169. min-height: 40px;
  170. font-size: 16px;
  171. }
  172. &.handled {
  173. //--bc: rgba(0,0,0,.1);
  174. /* --bc: #e5e5e5;
  175. --bc2: #108F85;*/
  176. .title {
  177. background: var(--bc);
  178. span.text {
  179. font-size: 90%;
  180. font-weight: 400;
  181. background: #4585CC;
  182. &:after {
  183. //background-image: linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1));
  184. border-left-color: #4585CC;
  185. border-bottom-color: #4585CC;
  186. border-right-color: none;
  187. border-top-color: none;
  188. }
  189. }
  190. }
  191. }
  192. &.current-scene {
  193. border: 2px solid #4585CC;
  194. }
  195. &.flash-scene {
  196. animation: flash 2s 10;
  197. }
  198. }
  199. .log-box {
  200. width: calc(100% - 20px);
  201. min-height: 60px;
  202. display: flex;
  203. flex-direction: column;
  204. color: #415B73;
  205. background: var(--bg);
  206. border-radius: 8px;
  207. font-size: 18px;
  208. margin: 8px auto;
  209. padding: 5px 10px;
  210. .content {
  211. width: 100%;
  212. display: flex;
  213. flex-direction: column;
  214. padding: 5px;
  215. padding-right: 15px;
  216. .title {
  217. display: flex;
  218. align-items: flex-start;
  219. .role {
  220. font-weight: 600;
  221. font-size: 16px;
  222. color: #094888;
  223. }
  224. .scene-name {
  225. margin-left: 10px;
  226. font-size: 12px;
  227. padding: 1px 5px;
  228. border-radius: 3px;
  229. background: rgba(69, 133, 204, 0.1);
  230. border: 1px solid #094888;
  231. color: #094B88;
  232. }
  233. }
  234. .text {
  235. font-size: 14px;
  236. color: #36536D;
  237. padding-left: 15px;
  238. position: relative;
  239. &:before {
  240. content: "";
  241. position: absolute;
  242. width: 8px;
  243. height: 8px;
  244. border-radius: 8px;
  245. left: 0;
  246. top: 50%;
  247. transform: translateY(-50%);
  248. background: #999;
  249. }
  250. }
  251. }
  252. .reviews-box {
  253. display: flex;
  254. justify-content: flex-end;
  255. color: var(--mc);
  256. cursor: pointer;
  257. .disabled {
  258. cursor: not-allowed;
  259. }
  260. i {
  261. font-size: 15px;
  262. margin: 0 5px;
  263. }
  264. .fas:nth-child(1) {
  265. color: #007bff;
  266. }
  267. .fas:nth-child(2) {
  268. color: #dc3545;
  269. }
  270. }
  271. &.send {
  272. .title .role {
  273. color: #03AEBC;
  274. }
  275. .text {
  276. &:before {
  277. background: #03AEBC;
  278. }
  279. }
  280. .btn {
  281. background: #36536D;
  282. color: #fff;
  283. }
  284. }
  285. }
  286. .role-box {
  287. display: flex;
  288. flex-wrap: wrap;
  289. justify-content: center;
  290. .role {
  291. width: calc(50% - 20px);
  292. height: 50px;
  293. margin: 6px;
  294. padding: 0 5px;
  295. font-size: 14px;
  296. display: flex;
  297. justify-content: center;
  298. align-items: center;
  299. text-align: center;
  300. white-space: normal;
  301. word-break: break-all;
  302. color: var(--tc);
  303. border: 1px solid var(--brc);
  304. background: var(--bg);
  305. border-radius: 5px;
  306. cursor: pointer;
  307. overflow: hidden;
  308. }
  309. }
  310. .score-box {
  311. font-size: 14px;
  312. margin: 5px;
  313. padding: 8px 15px;
  314. display: flex;
  315. justify-content: space-between;
  316. border-radius: 5px;
  317. color: #262626;
  318. background: var(--bg);
  319. .name {
  320. width: 130px;
  321. line-height: 30px;
  322. border-radius: 5px;
  323. background: #03AEBC;
  324. color: #fff;
  325. text-align: center;
  326. font-size: 100%;
  327. white-space: nowrap;
  328. overflow: hidden;
  329. text-overflow: ellipsis;
  330. }
  331. .score {
  332. font-size: 110%;
  333. font-weight: 600;
  334. color: #094B88;
  335. line-height: 30px;
  336. text-align: center;
  337. span {
  338. padding-left: 10px;
  339. font-size: 1rem;
  340. font-weight: 400;
  341. }
  342. }
  343. &.system-score {
  344. .name {
  345. font-size: 16px;
  346. font-weight: 600;
  347. }
  348. }
  349. }
  350. &.plan-box {
  351. margin: 5px 10px;
  352. border: 1px solid #a5d4f4;
  353. border-radius: 5px 5px 0 0;
  354. display: flex;
  355. flex-direction: column;
  356. background: linear-gradient(174.54deg, rgba(204, 224, 248, 0.76) 0.23%, rgba(242, 249, 255, 0.76) 120.71%);
  357. .plan-name {
  358. width: 100%;
  359. background: #a5d4f4;
  360. color: #fff;
  361. padding: 5px 0;
  362. text-align: center;
  363. cursor: pointer;
  364. }
  365. .plan-role {
  366. width: 100%;
  367. padding: 5px 15px;
  368. display: flex;
  369. flex-wrap: wrap;
  370. justify-content: flex-start;
  371. .role {
  372. width: calc(25% - 12px);
  373. height: 50px;
  374. font-size: 14px;
  375. padding: 0 5px;
  376. margin: 6px;
  377. display: flex;
  378. justify-content: center;
  379. align-items: center;
  380. text-align: center;
  381. white-space: normal;
  382. word-break: break-all;
  383. color: var(--tc);
  384. border: 1px solid var(--brc);
  385. background: var(--bg);
  386. border-radius: 5px;
  387. cursor: pointer;
  388. overflow: hidden;
  389. }
  390. }
  391. }
  392. }
  393. .modal {
  394. .modal-content {
  395. /*background: #d7e7fa;*/
  396. }
  397. .modal-header {
  398. color: var(--tc);
  399. .modal-title-span {
  400. }
  401. .close {
  402. font-size: 30px;
  403. }
  404. }
  405. .modal-footer {
  406. justify-content: center;
  407. .btn {
  408. margin: 0;
  409. }
  410. .btn-outline-iwb {
  411. background: #F5F5F5;
  412. color: #36536D;
  413. border: 1px solid #F3F3F3;
  414. }
  415. .btn-iwb {
  416. margin: 0 15px;
  417. padding: 8px 20px;
  418. background: #03AEBC;
  419. border-color: #03AEBC;
  420. border-radius: 8px;
  421. color: #DAEDFF;
  422. font-size: 16px;
  423. }
  424. }
  425. }
  426. .load-box {
  427. position: fixed;
  428. top: 0;
  429. bottom: 0;
  430. left: 0;
  431. right: 0;
  432. display: flex;
  433. justify-content: center;
  434. align-items: center;
  435. font-size: 40px;
  436. font-weight: 400;
  437. color: #094B88;
  438. z-index: 1000;
  439. background: rgba(255,255,255,0.6);
  440. .loading {
  441. margin-top: -10%;
  442. }
  443. .loading:after {
  444. overflow: hidden;
  445. display: inline-block;
  446. vertical-align: bottom;
  447. animation: ellipsis 2s infinite;
  448. content: "\2026";
  449. }
  450. }
  451. .question-box {
  452. button {
  453. --w: 80px;
  454. width: var(--w);
  455. height: var(--w);
  456. border-radius: var(--w);
  457. position: absolute;
  458. right: 300px;
  459. /* left: 50%;
  460. top: 40%;
  461. transform: translateX(-50%) translateY(-50%);*/
  462. z-index: 5;
  463. background-color: #dc3545;
  464. color: #fff;
  465. border: none;
  466. outline: none;
  467. &:hover {
  468. background-color: #bd2130;
  469. }
  470. i {
  471. font-size: 40px;
  472. }
  473. &:not(:hover) {
  474. animation: 1s shine ease-in-out infinite;
  475. i {
  476. animation: 1s flashing ease-in-out infinite;
  477. }
  478. }
  479. }
  480. }
  481. .modal .question {
  482. font-size: 18px;
  483. margin-bottom: 10px;
  484. }
  485. .btn-box {
  486. position: absolute;
  487. top: 15px;
  488. left: 50px;
  489. &.btn-box-right {
  490. top: 5px;
  491. left: auto;
  492. right: 40px;
  493. }
  494. .btn-question {
  495. display: flex;
  496. flex-direction: column;
  497. justify-content: center;
  498. align-items: center;
  499. position: relative;
  500. .img {
  501. --w: 40px;
  502. width: var(--w);
  503. height: var(--w);
  504. }
  505. .text {
  506. color: #fff;
  507. font-size: 14px;
  508. }
  509. .dot {
  510. display: none;
  511. width: 10px;
  512. height: 10px;
  513. border-radius: 10px;
  514. background: red;
  515. position: absolute;
  516. top: 2px;
  517. right: 6px;
  518. animation: 1s flashing ease-in-out infinite;
  519. }
  520. &.notity {
  521. .dot {
  522. display: block;
  523. }
  524. }
  525. }
  526. }
  527. .stu-question-box {
  528. position: fixed;
  529. top: 0;
  530. left: 0;
  531. z-index: 10;
  532. width: 100vw;
  533. height: 100vh;
  534. background-color: rgba(0,0,0,.2);
  535. display: flex;
  536. justify-content: center;
  537. align-items: center;
  538. .question-box-body {
  539. position: relative;
  540. z-index: 20;
  541. .close-icon {
  542. --w: 35px;
  543. --t: -70px;
  544. width: var(--w);
  545. height: var(--w);
  546. border-radius: var(--w);
  547. position: absolute;
  548. top: var(--t);
  549. right: var(--t);
  550. background: #5f7790;
  551. color: #fff;
  552. font-size: 14px;
  553. font-weight: 400;
  554. display: flex;
  555. justify-content: center;
  556. align-items: center;
  557. cursor: pointer;
  558. :hover {
  559. background: #405b76;
  560. }
  561. }
  562. }
  563. .question-bg-box {
  564. --h: 624px;
  565. width: 888px;
  566. height: var(--h);
  567. z-index: 11;
  568. background-image: url('/Content/Image/ExerciseV2/msg02.png');
  569. .close-icon {
  570. top: 0;
  571. right: -70px;
  572. }
  573. }
  574. .questions-box {
  575. width: 100%;
  576. transform: translate(70px,90px);
  577. height: calc(var(--h) - 140px);
  578. background: #fff;
  579. background: linear-gradient(106.01deg, #F3E1F1 3.44%, #E7ECF5 16.08%, #F1F3FF 45.1%, #D1D9F7 97.06%);
  580. border-radius: 10px;
  581. padding: 10px 15px;
  582. color: #36536D;
  583. .question-header {
  584. width: 100%;
  585. height: 50px;
  586. display: flex;
  587. justify-content: center;
  588. align-items: center;
  589. padding-bottom: 10px
  590. }
  591. .questions {
  592. display: flex;
  593. flex-direction: column;
  594. height: 250px;
  595. overflow-y: auto;
  596. padding: 5px;
  597. .question-item {
  598. display: flex;
  599. flex-direction: column;
  600. .question, .answers {
  601. padding: 6px 2px 6px 35px;
  602. border-bottom: 1px dashed #36536D;
  603. position: relative;
  604. font-size: 14px;
  605. display: flex;
  606. color: #36536D;
  607. &:before {
  608. content: "";
  609. position: absolute;
  610. top: 10px;
  611. left: 2px;
  612. width: 26px;
  613. height: 26px;
  614. }
  615. }
  616. .question {
  617. display: flex;
  618. justify-content: space-between;
  619. align-items: center;
  620. width: 100%;
  621. font-weight: 600;
  622. .btn {
  623. margin: 0 8px;
  624. white-space: nowrap;
  625. padding: 4px 15px;
  626. border-radius: 3px;
  627. }
  628. &:before {
  629. background-image: url('/Content/Image/ExerciseV2/stu-question.png');
  630. }
  631. &.has-answer {
  632. .btn {
  633. background: rgba(204, 224, 248, 0.76);
  634. color: #36536D;
  635. }
  636. }
  637. }
  638. .answers {
  639. flex-direction: column;
  640. .answer {
  641. padding: 4px 0;
  642. &.answer-empty {
  643. color: #aaa;
  644. }
  645. }
  646. &:before {
  647. background-image: url('/Content/Image/ExerciseV2/stu-answer.png');
  648. }
  649. }
  650. }
  651. }
  652. .question-form {
  653. position: relative;
  654. padding-top: 20px;
  655. .question {
  656. display: flex;
  657. font-size: 16px;
  658. font-weight: 600;
  659. padding-bottom: 10px;
  660. img {
  661. width: 42px;
  662. height: 42px;
  663. margin-right: 8px;
  664. }
  665. .text {
  666. display: flex;
  667. align-items: center;
  668. }
  669. }
  670. textarea {
  671. height: 80px;
  672. padding-right: 110px;
  673. }
  674. .send-btn {
  675. margin: 0;
  676. position: absolute;
  677. bottom: 20px;
  678. right: 20px;
  679. }
  680. }
  681. .empty {
  682. width: 100%;
  683. height: 300px;
  684. display: flex;
  685. justify-content: center;
  686. align-items: center;
  687. flex-direction: column;
  688. font-size: 14px;
  689. font-weight: 600;
  690. margin-top: -30px;
  691. img {
  692. width: 80px;
  693. height: 84px;
  694. }
  695. .text {
  696. margin-top: 10px;
  697. color: #aaa;
  698. }
  699. }
  700. }
  701. .new {
  702. width: 840px;
  703. height: 464px;
  704. background-image: url('/Content/Image/ExerciseV2/msg01.png');
  705. animation: 1.5s shake ease-in-out infinite;
  706. }
  707. }
  708. /*@keyframes shine {
  709. 0% {
  710. filter: drop-shadow(0 0 12px #dc3545);
  711. }
  712. 50% {
  713. filter: drop-shadow(0 0 12px #bd2130);
  714. }
  715. 100% {
  716. filter: drop-shadow(0 0 12px #dc3545);
  717. }
  718. }*/
  719. @keyframes flashing {
  720. 0% {
  721. opacity: 1;
  722. transform: scale(1)
  723. }
  724. 50% {
  725. opacity: 0.5;
  726. transform: scale(0.9)
  727. }
  728. 100% {
  729. opacity: 1;
  730. transform: scale(1)
  731. }
  732. }
  733. @keyframes shine {
  734. 0% {
  735. filter: drop-shadow(0 0 5px #c82333);
  736. }
  737. 100% {
  738. filter: drop-shadow(0 0 15px #c82333);
  739. }
  740. }
  741. @keyframes shake {
  742. 0%,100% {
  743. filter: drop-shadow(0 0 5px #457ddd);
  744. }
  745. 10%, 90% {
  746. transform: translate3d(-1px, 0, 0);
  747. }
  748. 20%, 80% {
  749. transform: translate3d(+2px, 0, 0);
  750. }
  751. 30%, 70% {
  752. transform: translate3d(-4px, 0, 0);
  753. }
  754. 40%, 60% {
  755. transform: translate3d(+4px, 0, 0);
  756. }
  757. 50% {
  758. filter: drop-shadow(0 0 15px #457ddd);
  759. transform: translate3d(-4px, 0, 0);
  760. }
  761. }
  762. @keyframes flash {
  763. 0% {
  764. transform: scale(1.0,1.05);
  765. //background-image: linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2))
  766. }
  767. 50% {
  768. transform: scale(0.98,0.85);
  769. //background-image: linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.5))
  770. }
  771. 100% {
  772. transform: scale(1.0,1.05);
  773. //background-image: linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2));
  774. }
  775. }