index.module.css 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434
  1. .pageHeader {
  2. @apply px-16 flex justify-between items-center;
  3. position: sticky;
  4. top: 0;
  5. left: 0;
  6. padding-top: 42px;
  7. padding-bottom: 12px;
  8. background-color: #fff;
  9. font-weight: 600;
  10. font-size: 18px;
  11. line-height: 28px;
  12. color: #101828;
  13. z-index: 10;
  14. }
  15. .form {
  16. @apply px-16 pb-8;
  17. }
  18. .form .label {
  19. @apply pt-6 pb-2;
  20. font-weight: 500;
  21. font-size: 16px;
  22. line-height: 24px;
  23. color: #344054;
  24. }
  25. .segmentationItem {
  26. min-height: 68px;
  27. }
  28. .indexItem {
  29. min-height: 146px;
  30. }
  31. .indexItem .disableMask {
  32. position: absolute;
  33. top: 0;
  34. left: 0;
  35. width: 100%;
  36. height: 100%;
  37. background-color: rgba(255, 255, 255, 0.5);
  38. border-radius: 12px;
  39. z-index: 2;
  40. }
  41. .indexItem .warningTip {
  42. position: absolute;
  43. bottom: 0;
  44. left: 0;
  45. width: 100%;
  46. padding: 8px 20px 8px 40px;
  47. background: #FFFAEB;
  48. border-top: 0.5px solid #FEF0C7;
  49. border-radius: 12px;
  50. font-size: 12px;
  51. line-height: 18px;
  52. color: #344054;
  53. z-index: 3;
  54. }
  55. .indexItem .warningTip::before {
  56. content: '';
  57. position: absolute;
  58. top: 11px;
  59. left: 20px;
  60. width: 12px;
  61. height: 12px;
  62. background: center no-repeat url(../assets/alert-triangle.svg);
  63. background-size: 12px;
  64. }
  65. .indexItem .warningTip .click {
  66. color: #155EEF;
  67. cursor: pointer;
  68. }
  69. .indexItem.disabled:hover {
  70. background-color: #fcfcfd;
  71. border-color: #f2f4f7;
  72. box-shadow: none;
  73. cursor: default;
  74. }
  75. .indexItem.disabled:hover .radio {
  76. @apply w-4 h-4 border-[2px] border-gray-200 rounded-full;
  77. }
  78. .radioItem {
  79. @apply relative mb-2 rounded-xl border border-gray-100 cursor-pointer;
  80. background-color: #fcfcfd;
  81. }
  82. .radioItem.segmentationItem.custom {
  83. height: auto;
  84. }
  85. .radioItem.segmentationItem.custom .typeHeader {
  86. /* height: 65px; */
  87. }
  88. .radioItem.indexItem .typeHeader {
  89. @apply py-4 pr-5;
  90. }
  91. .radioItem.indexItem.active .typeHeader {
  92. padding: 15.5px 19.5px 15.5px 63.5px;
  93. }
  94. .radioItem.indexItem .radio {
  95. top: 16px;
  96. right: 20px;
  97. }
  98. .radioItem.indexItem.active .radio {
  99. top: 16px;
  100. right: 19.5px;
  101. }
  102. .radioItem.indexItem .typeHeader .title {
  103. @apply pb-1;
  104. }
  105. .radioItem.indexItem .typeHeader .tip {
  106. @apply pb-3;
  107. }
  108. .radioItem .typeIcon {
  109. position: absolute;
  110. top: 18px;
  111. left: 20px;
  112. width: 32px;
  113. height: 32px;
  114. background: #EEF4FF center no-repeat;
  115. border-radius: 8px;
  116. }
  117. .typeIcon.auto {
  118. background-color: #F5F3FF;
  119. background-image: url(../assets/zap-fast.svg);
  120. }
  121. .typeIcon.customize {
  122. background-image: url(../assets/sliders-02.svg);
  123. }
  124. .typeIcon.qualified {
  125. background-color: #FFF6ED;
  126. background-image: url(../assets/star-07.svg);
  127. }
  128. .typeIcon.economical {
  129. background-image: url(../assets/piggy-bank-01.svg);
  130. }
  131. .radioItem .radio {
  132. @apply w-4 h-4 border-[2px] border-gray-200 rounded-full;
  133. position: absolute;
  134. top: 26px;
  135. right: 20px;
  136. }
  137. .radioItem:hover {
  138. background-color: #ffffff;
  139. border-color: #B2CCFF;
  140. box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03);
  141. }
  142. .radioItem:hover .radio {
  143. border-color: #155eef;
  144. }
  145. .radioItem.active {
  146. border-width: 1.5px;
  147. border-color: #528BFF;
  148. box-shadow: 0px 1px 3px rgba(16, 24, 40, 0.1), 0px 1px 2px rgba(16, 24, 40, 0.06);
  149. }
  150. .radioItem.active .radio {
  151. top: 25.5px;
  152. right: 19.5px;
  153. border-width: 5px;
  154. border-color: #155EEF;
  155. }
  156. .radioItem.active:hover {
  157. border-width: 1.5px;
  158. border-color: #528BFF;
  159. box-shadow: 0px 1px 3px rgba(16, 24, 40, 0.1), 0px 1px 2px rgba(16, 24, 40, 0.06);
  160. }
  161. .radioItem.active .typeIcon {
  162. top: 17.5px;
  163. left: 19.5px;
  164. }
  165. .radioItem.active .typeHeader {
  166. padding: 11.5px 63.5px;
  167. }
  168. .typeHeader {
  169. @apply flex flex-col px-16 py-3 justify-center;
  170. }
  171. .typeHeader .title {
  172. display: flex;
  173. align-items: center;
  174. padding-bottom: 2px;
  175. font-weight: 500;
  176. font-size: 16px;
  177. line-height: 24px;
  178. color: #101828;
  179. }
  180. .typeHeader .tip {
  181. font-weight: 400;
  182. font-size: 13px;
  183. line-height: 18px;
  184. color: #667085;
  185. }
  186. .recommendTag {
  187. display: inline-flex;
  188. justify-content: center;
  189. align-items: center;
  190. padding: 0 6px;
  191. margin-left: 4px;
  192. border: 1px solid #E0EAFF;
  193. border-radius: 6px;
  194. font-weight: 500;
  195. font-size: 12px;
  196. line-height: 20px;
  197. color: #444CE7;
  198. }
  199. .typeFormBody {
  200. @apply px-16;
  201. border-top: 1px solid #F2F4F7;
  202. }
  203. .formRow {
  204. @apply flex justify-between mt-6;
  205. }
  206. .formRow .label {
  207. @apply mb-2 p-0;
  208. font-weight: 500;
  209. font-size: 14px;
  210. line-height: 20px;
  211. color: #101828;
  212. }
  213. .ruleItem {
  214. @apply flex items-center;
  215. }
  216. .formFooter {
  217. padding: 16px 0 28px;
  218. }
  219. .formFooter .button {
  220. font-size: 13px;
  221. line-height: 18px;
  222. }
  223. .input {
  224. @apply inline-flex h-9 w-full py-1 px-2 rounded-lg text-xs leading-normal;
  225. @apply bg-gray-100 caret-primary-600 hover:bg-gray-100 focus:ring-1 focus:ring-inset focus:ring-gray-200 focus-visible:outline-none focus:bg-white placeholder:text-gray-400;
  226. }
  227. .source {
  228. @apply flex justify-between items-center mt-8 px-6 py-4 rounded-xl bg-gray-50 border border-gray-100;
  229. }
  230. .source .divider {
  231. @apply shrink-0 mx-4 w-px bg-gray-200;
  232. height: 42px;
  233. }
  234. .fileIcon {
  235. @apply inline-flex mr-1 w-6 h-6 bg-center bg-no-repeat;
  236. background-image: url(../assets/pdf.svg);
  237. background-size: 24px;
  238. }
  239. .fileIcon.pdf {
  240. background-image: url(../assets/pdf.svg);
  241. }
  242. .fileIcon.csv {
  243. background-image: url(../assets/csv.svg);
  244. }
  245. .fileIcon.docx {
  246. background-image: url(../assets/docx.svg);
  247. }
  248. .fileIcon.xlsx,
  249. .fileIcon.xls {
  250. background-image: url(../assets/xlsx.svg);
  251. }
  252. .fileIcon.html,
  253. .fileIcon.htm {
  254. background-image: url(../assets/html.svg);
  255. }
  256. .fileIcon.md,
  257. .fileIcon.markdown {
  258. background-image: url(../assets/md.svg);
  259. }
  260. .fileIcon.txt {
  261. background-image: url(../assets/txt.svg);
  262. }
  263. .fileIcon.json {
  264. background-image: url(../assets/json.svg);
  265. }
  266. .sourceContent {
  267. flex: 1 1 auto;
  268. }
  269. .sourceCount {
  270. @apply shrink-0 ml-1;
  271. font-weight: 500;
  272. font-size: 13px;
  273. line-height: 18px;
  274. color: #667085;
  275. }
  276. .segmentCount {
  277. flex: 1 1 30%;
  278. max-width: 120px;
  279. }
  280. .divider {
  281. @apply mx-3 w-px h-4 bg-gray-200;
  282. }
  283. .calculating {
  284. color: #98A2B3;
  285. font-size: 12px;
  286. line-height: 18px;
  287. }
  288. .sideTip {
  289. @apply flex flex-col items-center shrink-0;
  290. padding-top: 108px;
  291. width: 524px;
  292. border-left: 0.5px solid #F2F4F7;
  293. }
  294. .tipCard {
  295. @apply flex flex-col items-start p-6;
  296. width: 320px;
  297. background-color: #F9FAFB;
  298. box-shadow: 0px 1px 2px rgba(16, 24, 40, 0.05);
  299. border-radius: 12px;
  300. }
  301. .tipCard .icon {
  302. width: 32px;
  303. height: 32px;
  304. border: 1px solid #EAECF0;
  305. border-radius: 6px;
  306. background: center no-repeat url(../assets/book-open-01.svg);
  307. background-size: 16px;
  308. }
  309. .tipCard .title {
  310. margin: 12px 0;
  311. font-weight: 500;
  312. font-size: 16px;
  313. line-height: 24px;
  314. color: #344054;
  315. }
  316. .tipCard .content {
  317. font-weight: 400;
  318. font-size: 14px;
  319. line-height: 20px;
  320. color: #344054;
  321. }
  322. .previewWrap {
  323. flex-shrink: 0;
  324. width: 524px;
  325. }
  326. .previewWrap.isMobile {
  327. max-width: 524px;
  328. }
  329. .previewHeader {
  330. position: sticky;
  331. top: 0;
  332. left: 0;
  333. padding-top: 42px;
  334. background-color: #fff;
  335. font-weight: 600;
  336. font-size: 18px;
  337. line-height: 28px;
  338. color: #101828;
  339. z-index: 10;
  340. }
  341. /*
  342. * `fixed` must under `previewHeader` because of style override would not work
  343. */
  344. .fixed {
  345. padding-top: 12px;
  346. font-size: 12px;
  347. line-height: 18px;
  348. background: rgba(255, 255, 255, 0.9);
  349. border-bottom: 0.5px solid #EAECF0;
  350. backdrop-filter: blur(4px);
  351. animation: fix 0.5s;
  352. }
  353. @keyframes fix {
  354. from {
  355. padding-top: 42px;
  356. font-size: 18px;
  357. line-height: 28px;
  358. }
  359. to {
  360. padding-top: 12px;
  361. font-size: 12px;
  362. line-height: 18px;
  363. }
  364. }