styles.scss 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784
  1. $responsiveWidth: 768px;
  2. ::selection {
  3. background-color: var(--ac-color);
  4. color: var(--act-color);
  5. }
  6. ::-webkit-scrollbar {
  7. width: 4px;
  8. height: 4px;
  9. border-radius: 4px;
  10. background-color: var(--bg-dark-color);
  11. }
  12. ::-webkit-scrollbar-thumb {
  13. border-radius: 4px;
  14. background-color: var(--fg-light-color);
  15. &:hover {
  16. background-color: var(--fg-color);
  17. }
  18. }
  19. ::placeholder {
  20. color: var(--fg-light-color);
  21. opacity: 0.3;
  22. }
  23. * {
  24. box-sizing: border-box;
  25. outline: 0;
  26. border: 0;
  27. }
  28. html,
  29. body {
  30. background-color: var(--bg-color);
  31. color: var(--fg-color);
  32. font-weight: 500;
  33. font-size: 14px;
  34. font-family: "Poppins", "Roboto", "Noto", sans-serif;
  35. line-height: 1.5;
  36. -webkit-tap-highlight-color: transparent;
  37. -webkit-touch-callout: none;
  38. user-select: none;
  39. padding: 0;
  40. margin: 0;
  41. scroll-behavior: smooth;
  42. transition: all 0.2s ease-in-out;
  43. }
  44. body.afterLoad {
  45. transition: background-color 0.2s ease-in-out;
  46. }
  47. body.sticky-footer footer {
  48. opacity: 0.25;
  49. }
  50. a {
  51. display: inline-flex;
  52. color: inherit;
  53. text-decoration: none;
  54. transition: all 0.2s ease-in-out;
  55. &.link {
  56. color: var(--ac-color);
  57. }
  58. }
  59. header,
  60. footer {
  61. & > div {
  62. display: flex;
  63. padding: 16px 8px;
  64. width: 100%;
  65. align-items: center;
  66. justify-content: space-between;
  67. }
  68. }
  69. .page-enter-active,
  70. .page-leave-active,
  71. .layout-enter-active,
  72. .layout-leave-active {
  73. transition: opacity 0.2s;
  74. }
  75. .page-enter,
  76. .page-leave-active,
  77. .layout-enter,
  78. .layout-leave-active {
  79. opacity: 0;
  80. }
  81. .wrapper {
  82. min-height: 100vh;
  83. display: flex;
  84. flex-flow: column nowrap;
  85. }
  86. .wrapper .page {
  87. min-height: calc(100vh - 153px);
  88. }
  89. .header,
  90. .content,
  91. .columns,
  92. .footer {
  93. display: flex;
  94. flex: 1;
  95. }
  96. .nav-first,
  97. .sticky-inner {
  98. display: flex;
  99. order: 1;
  100. flex-flow: column;
  101. position: sticky;
  102. top: 0;
  103. align-self: flex-start;
  104. }
  105. .main {
  106. display: flex;
  107. flex-flow: column;
  108. flex: 1;
  109. order: 2;
  110. position: relative;
  111. padding: 0 16px;
  112. }
  113. h1,
  114. h2,
  115. h3,
  116. h4 {
  117. display: flex;
  118. align-items: center;
  119. margin: 0;
  120. font-weight: 700;
  121. }
  122. h3.title {
  123. margin: 4px;
  124. }
  125. p {
  126. transition: all 0.2s ease-in-out;
  127. }
  128. hr {
  129. border-bottom: 1px dashed var(--brd-color);
  130. margin: 16px 0;
  131. }
  132. .tooltip {
  133. $bgcolor: var(--tt-color);
  134. $fgcolor: var(--fg-color);
  135. display: block !important;
  136. z-index: 10000;
  137. transition: all 0.2s ease-in-out;
  138. .tooltip-inner {
  139. background: $bgcolor;
  140. color: $fgcolor;
  141. border-radius: 8px;
  142. padding: 8px 16px;
  143. font-size: 12px;
  144. font-weight: 500;
  145. box-shadow: 0 4px 24px rgba(black, 0.1);
  146. }
  147. .tooltip-arrow {
  148. width: 0;
  149. height: 0;
  150. border-style: solid;
  151. position: absolute;
  152. margin: 5px;
  153. border-color: $bgcolor;
  154. z-index: 1;
  155. }
  156. &[x-placement^="top"] {
  157. margin-bottom: 5px;
  158. .tooltip-arrow {
  159. border-width: 5px 5px 0 5px;
  160. border-left-color: transparent !important;
  161. border-right-color: transparent !important;
  162. border-bottom-color: transparent !important;
  163. bottom: -5px;
  164. left: calc(50% - 5px);
  165. margin-top: 0;
  166. margin-bottom: 0;
  167. }
  168. }
  169. &[x-placement^="bottom"] {
  170. margin-top: 5px;
  171. .tooltip-arrow {
  172. border-width: 0 5px 5px 5px;
  173. border-left-color: transparent !important;
  174. border-right-color: transparent !important;
  175. border-top-color: transparent !important;
  176. top: -5px;
  177. left: calc(50% - 5px);
  178. margin-top: 0;
  179. margin-bottom: 0;
  180. }
  181. }
  182. &[x-placement^="right"] {
  183. margin-left: 5px;
  184. .tooltip-arrow {
  185. border-width: 5px 5px 5px 0;
  186. border-left-color: transparent !important;
  187. border-top-color: transparent !important;
  188. border-bottom-color: transparent !important;
  189. left: -5px;
  190. top: calc(50% - 5px);
  191. margin-left: 0;
  192. margin-right: 0;
  193. }
  194. }
  195. &[x-placement^="left"] {
  196. margin-right: 5px;
  197. .tooltip-arrow {
  198. border-width: 5px 0 5px 5px;
  199. border-top-color: transparent !important;
  200. border-right-color: transparent !important;
  201. border-bottom-color: transparent !important;
  202. right: -5px;
  203. top: calc(50% - 5px);
  204. margin-left: 0;
  205. margin-right: 0;
  206. }
  207. }
  208. &.popover {
  209. .wrapper {
  210. min-height: auto;
  211. }
  212. .popover-inner {
  213. background: $bgcolor;
  214. color: $fgcolor;
  215. padding: 4px;
  216. border-radius: 8px;
  217. box-shadow: 0 5px 30px rgba(black, 0.1);
  218. max-height: 256px;
  219. overflow: auto;
  220. div {
  221. display: flex;
  222. align-items: stretch;
  223. flex-direction: column;
  224. }
  225. button {
  226. justify-content: start;
  227. }
  228. }
  229. .popover-arrow {
  230. border-color: $bgcolor;
  231. }
  232. }
  233. &[aria-hidden="true"] {
  234. visibility: hidden;
  235. opacity: 0;
  236. transition: opacity 0.15s, visibility 0.15s;
  237. }
  238. &[aria-hidden="false"] {
  239. visibility: visible;
  240. opacity: 1;
  241. transition: opacity 0.15s;
  242. }
  243. }
  244. .info:not(.toasted) {
  245. margin-left: 4px;
  246. color: var(--fg-light-color);
  247. .material-icons {
  248. vertical-align: middle;
  249. margin-right: 8px;
  250. }
  251. }
  252. .bg-color {
  253. background-color: transparent;
  254. }
  255. button {
  256. display: inline-flex;
  257. align-items: center;
  258. justify-content: center;
  259. margin: 4px;
  260. padding: 6px 16px;
  261. border-radius: 8px;
  262. background-color: var(--ac-color);
  263. color: var(--act-color);
  264. font-size: 16px;
  265. font-family: "Poppins", "Roboto", "Noto", sans-serif;
  266. font-weight: 700;
  267. transition: all 0.2s ease-in-out;
  268. fill: var(--act-color);
  269. cursor: pointer;
  270. span {
  271. display: inline-flex;
  272. margin-left: 8px;
  273. text-align: left;
  274. }
  275. &:not([disabled]):hover,
  276. &:not([disabled]):active,
  277. &:not([disabled]):focus {
  278. color: var(--act-color);
  279. fill: var(--act-color);
  280. box-shadow: inset 0 0 0 2px var(--fg-color);
  281. }
  282. &.icon {
  283. background-color: transparent;
  284. color: var(--fg-light-color);
  285. fill: var(--fg-light-color);
  286. border-radius: 8px;
  287. &:not([disabled]):hover,
  288. &:not([disabled]):active,
  289. &:not([disabled]):focus {
  290. color: var(--fg-color);
  291. fill: var(--fg-color);
  292. box-shadow: none;
  293. }
  294. }
  295. &.primary {
  296. color: var(--ac-color);
  297. &:not([disabled]):hover,
  298. &:not([disabled]):active,
  299. &:not([disabled]):focus {
  300. background-color: var(--ac-color);
  301. color: var(--act-color);
  302. }
  303. }
  304. }
  305. @keyframes beat {
  306. 30% {
  307. transform: scale(1.1);
  308. }
  309. 50% {
  310. transform: scale(0.9);
  311. }
  312. 100% {
  313. transform: scale(1);
  314. }
  315. }
  316. .material-icons:active {
  317. animation: beat 0.5s forwards 1;
  318. }
  319. fieldset:target,
  320. section:target {
  321. animation: highlight 2s ease;
  322. }
  323. @keyframes highlight {
  324. 50% {
  325. box-shadow: 0 0 0 2px var(--ac-color);
  326. }
  327. }
  328. input[type="file"],
  329. input[type="radio"],
  330. #installPWA,
  331. .hidden {
  332. display: none;
  333. }
  334. .show-on-large-screen {
  335. display: flex;
  336. flex: 1;
  337. }
  338. .method,
  339. .url-field,
  340. kbd,
  341. select,
  342. input,
  343. textarea,
  344. pre,
  345. code {
  346. display: inline-flex;
  347. margin: 4px;
  348. padding: 8px;
  349. border-radius: 8px;
  350. background-color: var(--bg-dark-color);
  351. color: var(--fg-color);
  352. font-size: 16px;
  353. font-family: "Roboto Mono", monospace;
  354. font-weight: 400;
  355. line-height: 1.25;
  356. transition: all 0.2s ease-in-out;
  357. user-select: text;
  358. width: calc(100% - 8px);
  359. resize: vertical;
  360. text-overflow: ellipsis;
  361. &:not([readonly]):not(.ace_editor):hover,
  362. &:not([readonly]):not(.ace_editor):active,
  363. &:not([readonly]):not(.ace_editor):focus {
  364. box-shadow: inset 0 0 0 2px var(--fg-light-color);
  365. }
  366. }
  367. .method {
  368. cursor: pointer;
  369. &:hover,
  370. &:active,
  371. &:focus {
  372. box-shadow: inset 0 0 0 2px var(--fg-light-color);
  373. }
  374. }
  375. pre {
  376. display: grid;
  377. }
  378. pre.ace_editor {
  379. font-family: "Roboto Mono", monospace;
  380. font-weight: 400;
  381. z-index: 0;
  382. }
  383. kbd,
  384. code,
  385. pre {
  386. width: auto;
  387. }
  388. .select-wrapper {
  389. position: relative;
  390. input {
  391. text-transform: uppercase;
  392. min-width: 128px;
  393. }
  394. .trigger {
  395. width: 100%;
  396. }
  397. &:after {
  398. display: inline-block;
  399. position: absolute;
  400. pointer-events: none;
  401. content: "\e313";
  402. font-family: "Material Icons";
  403. top: 14px;
  404. right: 14px;
  405. }
  406. }
  407. select {
  408. height: 37px;
  409. cursor: pointer;
  410. -webkit-appearance: none;
  411. -moz-appearance: none;
  412. appearance: none;
  413. &::-ms-expand {
  414. display: none;
  415. }
  416. }
  417. option {
  418. background-color: var(--bg-color);
  419. }
  420. input[type="checkbox"] {
  421. display: none;
  422. &,
  423. & + label {
  424. vertical-align: middle;
  425. cursor: pointer;
  426. &:before {
  427. content: "\2714";
  428. border: 1px solid var(--fg-color);
  429. border-radius: 8px;
  430. display: inline-flex;
  431. height: 16px;
  432. width: 16px;
  433. align-items: center;
  434. justify-content: center;
  435. margin: 8px 8px 8px 0;
  436. color: transparent;
  437. transition: all 0.2s ease-in-out;
  438. }
  439. }
  440. &:checked + label:before {
  441. background-color: var(--ac-color);
  442. border-color: var(--ac-color);
  443. color: var(--act-color);
  444. }
  445. }
  446. .error:not(input),
  447. .disabled:not(input),
  448. [disabled] {
  449. background-color: var(--err-color);
  450. color: var(--fg-light-color);
  451. fill: var(--fg-light-color);
  452. cursor: not-allowed;
  453. &.icon {
  454. color: var(--err-color);
  455. fill: var(--err-color);
  456. }
  457. }
  458. label {
  459. padding: 4px;
  460. color: var(--fg-light-color);
  461. transition: all 0.2s ease-in-out;
  462. }
  463. ul,
  464. ol {
  465. display: flex;
  466. margin: 4px 0 4px;
  467. padding: 0;
  468. list-style-type: none;
  469. ul,
  470. ol {
  471. margin: 0;
  472. }
  473. }
  474. ul li,
  475. ol li {
  476. display: inline-flex;
  477. flex-flow: column nowrap;
  478. flex: 1;
  479. justify-content: center;
  480. &.shrink {
  481. flex-grow: 0;
  482. }
  483. }
  484. .flex-wrap {
  485. display: flex;
  486. align-items: center;
  487. justify-content: space-between;
  488. flex-grow: 1;
  489. flex-direction: row;
  490. * {
  491. display: inline-flex;
  492. flex-flow: row nowrap;
  493. align-items: center;
  494. justify-content: center;
  495. }
  496. }
  497. .info-response {
  498. color: #ffeb3b;
  499. }
  500. .success-response {
  501. color: #4bb543;
  502. }
  503. .redir-response {
  504. color: #ff5722;
  505. }
  506. .cl-error-response {
  507. color: #a63232;
  508. }
  509. .sv-error-response {
  510. color: #b71c1c;
  511. }
  512. .missing-data-response {
  513. background-color: var(--err-color);
  514. }
  515. .align-left {
  516. text-align: left;
  517. }
  518. .align-center {
  519. text-align: center;
  520. }
  521. .align-right {
  522. text-align: right;
  523. }
  524. .mono {
  525. font-family: "Roboto Mono", monospace;
  526. font-weight: 400;
  527. }
  528. #response-details-wrapper {
  529. position: relative;
  530. overflow: hidden;
  531. border-radius: 8px;
  532. textarea {
  533. margin: 0;
  534. width: 100%;
  535. line-height: 1;
  536. }
  537. .covers-response {
  538. position: absolute;
  539. top: 0;
  540. left: 0;
  541. right: 0;
  542. bottom: 0;
  543. background-color: white;
  544. height: 100%;
  545. width: 100%;
  546. }
  547. }
  548. #send {
  549. white-space: nowrap;
  550. &.show {
  551. display: flex;
  552. position: fixed;
  553. bottom: 86px;
  554. left: 50%;
  555. z-index: 10001;
  556. transform: translateX(-50%);
  557. box-shadow: 0 4px 24px rgba(black, 0.2);
  558. transition: all 0.2s ease-in-out;
  559. }
  560. }
  561. section {
  562. display: flex;
  563. flex-wrap: wrap;
  564. border-radius: 8px;
  565. }
  566. .toasted-container .toasted {
  567. justify-content: space-between !important;
  568. }
  569. .toasted.info {
  570. background-color: var(--ac-color) !important;
  571. color: var(--act-color) !important;
  572. font-weight: 700 !important;
  573. }
  574. .toasted.bubble .action {
  575. color: inherit !important;
  576. }
  577. .toasted .action {
  578. margin-left: auto !important;
  579. }
  580. .page-columns {
  581. display: flex;
  582. flex: 1;
  583. flex-flow: column;
  584. }
  585. .inner-left {
  586. display: flex;
  587. order: 1;
  588. }
  589. .inner-right {
  590. display: flex;
  591. width: 30%;
  592. order: 2;
  593. margin-left: 16px;
  594. }
  595. @media (max-width: $responsiveWidth) {
  596. .content,
  597. .columns {
  598. flex-flow: column;
  599. }
  600. .main {
  601. padding: 0 8px 68px;
  602. }
  603. ul,
  604. ol {
  605. flex-flow: column nowrap;
  606. }
  607. ul li,
  608. ol li {
  609. display: flex;
  610. }
  611. .hide-on-small-screen {
  612. display: none;
  613. }
  614. .sticky-inner {
  615. position: relative;
  616. width: 100%;
  617. }
  618. .inner-left {
  619. order: 0;
  620. }
  621. .inner-right {
  622. margin-left: 0;
  623. }
  624. .toasted-container {
  625. margin-bottom: 68px;
  626. }
  627. }
  628. .toasted-ad {
  629. background-color: #fefefe;
  630. color: #121212;
  631. padding: 16px !important;
  632. font-weight: 700;
  633. font-size: 16px;
  634. border-radius: 8px;
  635. box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  636. .action {
  637. text-transform: none !important;
  638. background-color: #121212;
  639. color: #fefefe;
  640. padding: 12px 16px !important;
  641. font-weight: 500 !important;
  642. font-size: 16px !important;
  643. border-radius: 8px;
  644. margin: 0 !important;
  645. margin-left: 8px !important;
  646. }
  647. }
  648. .virtual-list {
  649. overflow: auto;
  650. }
  651. .truncate {
  652. overflow: hidden;
  653. text-overflow: ellipsis;
  654. white-space: nowrap;
  655. overflow-wrap: break-word;
  656. word-break: break-all;
  657. }
  658. .github-sponsor {
  659. margin-right: 4px;
  660. max-width: 64px;
  661. max-height: 64px;
  662. border-radius: 100%;
  663. }