spectre-icons.css 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597
  1. /*! Spectre.css Icons v0.5.9 | MIT License | github.com/picturepan2/spectre */
  2. .icon {
  3. box-sizing: border-box;
  4. display: inline-block;
  5. font-size: inherit;
  6. font-style: normal;
  7. height: 1em;
  8. position: relative;
  9. text-indent: -9999px;
  10. vertical-align: middle;
  11. width: 1em;
  12. }
  13. .icon::before,
  14. .icon::after {
  15. content: "";
  16. display: block;
  17. left: 50%;
  18. position: absolute;
  19. top: 50%;
  20. transform: translate(-50%, -50%);
  21. }
  22. .icon.icon-2x {
  23. font-size: 1.6rem;
  24. }
  25. .icon.icon-3x {
  26. font-size: 2.4rem;
  27. }
  28. .icon.icon-4x {
  29. font-size: 3.2rem;
  30. }
  31. .accordion .icon,
  32. .btn .icon,
  33. .toast .icon,
  34. .menu .icon {
  35. vertical-align: -10%;
  36. }
  37. .btn-lg .icon {
  38. vertical-align: -15%;
  39. }
  40. .icon-arrow-down::before,
  41. .icon-arrow-left::before,
  42. .icon-arrow-right::before,
  43. .icon-arrow-up::before,
  44. .icon-downward::before,
  45. .icon-back::before,
  46. .icon-forward::before,
  47. .icon-upward::before {
  48. border: .1rem solid currentColor;
  49. border-bottom: 0;
  50. border-right: 0;
  51. height: .65em;
  52. width: .65em;
  53. }
  54. .icon-arrow-down::before {
  55. transform: translate(-50%, -75%) rotate(225deg);
  56. }
  57. .icon-arrow-left::before {
  58. transform: translate(-25%, -50%) rotate(-45deg);
  59. }
  60. .icon-arrow-right::before {
  61. transform: translate(-75%, -50%) rotate(135deg);
  62. }
  63. .icon-arrow-up::before {
  64. transform: translate(-50%, -25%) rotate(45deg);
  65. }
  66. .icon-back::after,
  67. .icon-forward::after {
  68. background: currentColor;
  69. height: .1rem;
  70. width: .8em;
  71. }
  72. .icon-downward::after,
  73. .icon-upward::after {
  74. background: currentColor;
  75. height: .8em;
  76. width: .1rem;
  77. }
  78. .icon-back::after {
  79. left: 55%;
  80. }
  81. .icon-back::before {
  82. transform: translate(-50%, -50%) rotate(-45deg);
  83. }
  84. .icon-downward::after {
  85. top: 45%;
  86. }
  87. .icon-downward::before {
  88. transform: translate(-50%, -50%) rotate(-135deg);
  89. }
  90. .icon-forward::after {
  91. left: 45%;
  92. }
  93. .icon-forward::before {
  94. transform: translate(-50%, -50%) rotate(135deg);
  95. }
  96. .icon-upward::after {
  97. top: 55%;
  98. }
  99. .icon-upward::before {
  100. transform: translate(-50%, -50%) rotate(45deg);
  101. }
  102. .icon-caret::before {
  103. border-left: .3em solid transparent;
  104. border-right: .3em solid transparent;
  105. border-top: .3em solid currentColor;
  106. height: 0;
  107. transform: translate(-50%, -25%);
  108. width: 0;
  109. }
  110. .icon-menu::before {
  111. background: currentColor;
  112. box-shadow: 0 -.35em, 0 .35em;
  113. height: .1rem;
  114. width: 100%;
  115. }
  116. .icon-apps::before {
  117. background: currentColor;
  118. box-shadow: -.35em -.35em, -.35em 0, -.35em .35em, 0 -.35em, 0 .35em, .35em -.35em, .35em 0, .35em .35em;
  119. height: 3px;
  120. width: 3px;
  121. }
  122. .icon-resize-horiz::before,
  123. .icon-resize-horiz::after,
  124. .icon-resize-vert::before,
  125. .icon-resize-vert::after {
  126. border: .1rem solid currentColor;
  127. border-bottom: 0;
  128. border-right: 0;
  129. height: .45em;
  130. width: .45em;
  131. }
  132. .icon-resize-horiz::before,
  133. .icon-resize-vert::before {
  134. transform: translate(-50%, -90%) rotate(45deg);
  135. }
  136. .icon-resize-horiz::after,
  137. .icon-resize-vert::after {
  138. transform: translate(-50%, -10%) rotate(225deg);
  139. }
  140. .icon-resize-horiz::before {
  141. transform: translate(-90%, -50%) rotate(-45deg);
  142. }
  143. .icon-resize-horiz::after {
  144. transform: translate(-10%, -50%) rotate(135deg);
  145. }
  146. .icon-more-horiz::before,
  147. .icon-more-vert::before {
  148. background: currentColor;
  149. border-radius: 50%;
  150. box-shadow: -.4em 0, .4em 0;
  151. height: 3px;
  152. width: 3px;
  153. }
  154. .icon-more-vert::before {
  155. box-shadow: 0 -.4em, 0 .4em;
  156. }
  157. .icon-plus::before,
  158. .icon-minus::before,
  159. .icon-cross::before {
  160. background: currentColor;
  161. height: .1rem;
  162. width: 100%;
  163. }
  164. .icon-plus::after,
  165. .icon-cross::after {
  166. background: currentColor;
  167. height: 100%;
  168. width: .1rem;
  169. }
  170. .icon-cross::before {
  171. width: 100%;
  172. }
  173. .icon-cross::after {
  174. height: 100%;
  175. }
  176. .icon-cross::before,
  177. .icon-cross::after {
  178. transform: translate(-50%, -50%) rotate(45deg);
  179. }
  180. .icon-check::before {
  181. border: .1rem solid currentColor;
  182. border-right: 0;
  183. border-top: 0;
  184. height: .5em;
  185. transform: translate(-50%, -75%) rotate(-45deg);
  186. width: .9em;
  187. }
  188. .icon-stop {
  189. border: .1rem solid currentColor;
  190. border-radius: 50%;
  191. }
  192. .icon-stop::before {
  193. background: currentColor;
  194. height: .1rem;
  195. transform: translate(-50%, -50%) rotate(45deg);
  196. width: 1em;
  197. }
  198. .icon-shutdown {
  199. border: .1rem solid currentColor;
  200. border-radius: 50%;
  201. border-top-color: transparent;
  202. }
  203. .icon-shutdown::before {
  204. background: currentColor;
  205. content: "";
  206. height: .5em;
  207. top: .1em;
  208. width: .1rem;
  209. }
  210. .icon-refresh::before {
  211. border: .1rem solid currentColor;
  212. border-radius: 50%;
  213. border-right-color: transparent;
  214. height: 1em;
  215. width: 1em;
  216. }
  217. .icon-refresh::after {
  218. border: .2em solid currentColor;
  219. border-left-color: transparent;
  220. border-top-color: transparent;
  221. height: 0;
  222. left: 80%;
  223. top: 20%;
  224. width: 0;
  225. }
  226. .icon-search::before {
  227. border: .1rem solid currentColor;
  228. border-radius: 50%;
  229. height: .75em;
  230. left: 5%;
  231. top: 5%;
  232. transform: translate(0, 0) rotate(45deg);
  233. width: .75em;
  234. }
  235. .icon-search::after {
  236. background: currentColor;
  237. height: .1rem;
  238. left: 80%;
  239. top: 80%;
  240. transform: translate(-50%, -50%) rotate(45deg);
  241. width: .4em;
  242. }
  243. .icon-edit::before {
  244. border: .1rem solid currentColor;
  245. height: .4em;
  246. transform: translate(-40%, -60%) rotate(-45deg);
  247. width: .85em;
  248. }
  249. .icon-edit::after {
  250. border: .15em solid currentColor;
  251. border-right-color: transparent;
  252. border-top-color: transparent;
  253. height: 0;
  254. left: 5%;
  255. top: 95%;
  256. transform: translate(0, -100%);
  257. width: 0;
  258. }
  259. .icon-delete::before {
  260. border: .1rem solid currentColor;
  261. border-bottom-left-radius: .1rem;
  262. border-bottom-right-radius: .1rem;
  263. border-top: 0;
  264. height: .75em;
  265. top: 60%;
  266. width: .75em;
  267. }
  268. .icon-delete::after {
  269. background: currentColor;
  270. box-shadow: -.25em .2em, .25em .2em;
  271. height: .1rem;
  272. top: .05rem;
  273. width: .5em;
  274. }
  275. .icon-share {
  276. border: .1rem solid currentColor;
  277. border-radius: .1rem;
  278. border-right: 0;
  279. border-top: 0;
  280. }
  281. .icon-share::before {
  282. border: .1rem solid currentColor;
  283. border-left: 0;
  284. border-top: 0;
  285. height: .4em;
  286. left: 100%;
  287. top: .25em;
  288. transform: translate(-125%, -50%) rotate(-45deg);
  289. width: .4em;
  290. }
  291. .icon-share::after {
  292. border: .1rem solid currentColor;
  293. border-bottom: 0;
  294. border-radius: 75% 0;
  295. border-right: 0;
  296. height: .5em;
  297. width: .6em;
  298. }
  299. .icon-flag::before {
  300. background: currentColor;
  301. height: 1em;
  302. left: 15%;
  303. width: .1rem;
  304. }
  305. .icon-flag::after {
  306. border: .1rem solid currentColor;
  307. border-bottom-right-radius: .1rem;
  308. border-left: 0;
  309. border-top-right-radius: .1rem;
  310. height: .65em;
  311. left: 60%;
  312. top: 35%;
  313. width: .8em;
  314. }
  315. .icon-bookmark::before {
  316. border: .1rem solid currentColor;
  317. border-bottom: 0;
  318. border-top-left-radius: .1rem;
  319. border-top-right-radius: .1rem;
  320. height: .9em;
  321. width: .8em;
  322. }
  323. .icon-bookmark::after {
  324. border: .1rem solid currentColor;
  325. border-bottom: 0;
  326. border-left: 0;
  327. border-radius: .1rem;
  328. height: .5em;
  329. transform: translate(-50%, 35%) rotate(-45deg) skew(15deg, 15deg);
  330. width: .5em;
  331. }
  332. .icon-download,
  333. .icon-upload {
  334. border-bottom: .1rem solid currentColor;
  335. }
  336. .icon-download::before,
  337. .icon-upload::before {
  338. border: .1rem solid currentColor;
  339. border-bottom: 0;
  340. border-right: 0;
  341. height: .5em;
  342. transform: translate(-50%, -60%) rotate(-135deg);
  343. width: .5em;
  344. }
  345. .icon-download::after,
  346. .icon-upload::after {
  347. background: currentColor;
  348. height: .6em;
  349. top: 40%;
  350. width: .1rem;
  351. }
  352. .icon-upload::before {
  353. transform: translate(-50%, -60%) rotate(45deg);
  354. }
  355. .icon-upload::after {
  356. top: 50%;
  357. }
  358. .icon-copy::before {
  359. border: .1rem solid currentColor;
  360. border-bottom: 0;
  361. border-radius: .1rem;
  362. border-right: 0;
  363. height: .8em;
  364. left: 40%;
  365. top: 35%;
  366. width: .8em;
  367. }
  368. .icon-copy::after {
  369. border: .1rem solid currentColor;
  370. border-radius: .1rem;
  371. height: .8em;
  372. left: 60%;
  373. top: 60%;
  374. width: .8em;
  375. }
  376. .icon-time {
  377. border: .1rem solid currentColor;
  378. border-radius: 50%;
  379. }
  380. .icon-time::before {
  381. background: currentColor;
  382. height: .4em;
  383. transform: translate(-50%, -75%);
  384. width: .1rem;
  385. }
  386. .icon-time::after {
  387. background: currentColor;
  388. height: .3em;
  389. transform: translate(-50%, -75%) rotate(90deg);
  390. transform-origin: 50% 90%;
  391. width: .1rem;
  392. }
  393. .icon-mail::before {
  394. border: .1rem solid currentColor;
  395. border-radius: .1rem;
  396. height: .8em;
  397. width: 1em;
  398. }
  399. .icon-mail::after {
  400. border: .1rem solid currentColor;
  401. border-right: 0;
  402. border-top: 0;
  403. height: .5em;
  404. transform: translate(-50%, -90%) rotate(-45deg) skew(10deg, 10deg);
  405. width: .5em;
  406. }
  407. .icon-people::before {
  408. border: .1rem solid currentColor;
  409. border-radius: 50%;
  410. height: .45em;
  411. top: 25%;
  412. width: .45em;
  413. }
  414. .icon-people::after {
  415. border: .1rem solid currentColor;
  416. border-radius: 50% 50% 0 0;
  417. height: .4em;
  418. top: 75%;
  419. width: .9em;
  420. }
  421. .icon-message {
  422. border: .1rem solid currentColor;
  423. border-bottom: 0;
  424. border-radius: .1rem;
  425. border-right: 0;
  426. }
  427. .icon-message::before {
  428. border: .1rem solid currentColor;
  429. border-bottom-right-radius: .1rem;
  430. border-left: 0;
  431. border-top: 0;
  432. height: .8em;
  433. left: 65%;
  434. top: 40%;
  435. width: .7em;
  436. }
  437. .icon-message::after {
  438. background: currentColor;
  439. border-radius: .1rem;
  440. height: .3em;
  441. left: 10%;
  442. top: 100%;
  443. transform: translate(0, -90%) rotate(45deg);
  444. width: .1rem;
  445. }
  446. .icon-photo {
  447. border: .1rem solid currentColor;
  448. border-radius: .1rem;
  449. }
  450. .icon-photo::before {
  451. border: .1rem solid currentColor;
  452. border-radius: 50%;
  453. height: .25em;
  454. left: 35%;
  455. top: 35%;
  456. width: .25em;
  457. }
  458. .icon-photo::after {
  459. border: .1rem solid currentColor;
  460. border-bottom: 0;
  461. border-left: 0;
  462. height: .5em;
  463. left: 60%;
  464. transform: translate(-50%, 25%) rotate(-45deg);
  465. width: .5em;
  466. }
  467. .icon-link::before,
  468. .icon-link::after {
  469. border: .1rem solid currentColor;
  470. border-radius: 5em 0 0 5em;
  471. border-right: 0;
  472. height: .5em;
  473. width: .75em;
  474. }
  475. .icon-link::before {
  476. transform: translate(-70%, -45%) rotate(-45deg);
  477. }
  478. .icon-link::after {
  479. transform: translate(-30%, -55%) rotate(135deg);
  480. }
  481. .icon-location::before {
  482. border: .1rem solid currentColor;
  483. border-radius: 50% 50% 50% 0;
  484. height: .8em;
  485. transform: translate(-50%, -60%) rotate(-45deg);
  486. width: .8em;
  487. }
  488. .icon-location::after {
  489. border: .1rem solid currentColor;
  490. border-radius: 50%;
  491. height: .2em;
  492. transform: translate(-50%, -80%);
  493. width: .2em;
  494. }
  495. .icon-emoji {
  496. border: .1rem solid currentColor;
  497. border-radius: 50%;
  498. }
  499. .icon-emoji::before {
  500. border-radius: 50%;
  501. box-shadow: -.17em -.1em, .17em -.1em;
  502. height: .15em;
  503. width: .15em;
  504. }
  505. .icon-emoji::after {
  506. border: .1rem solid currentColor;
  507. border-bottom-color: transparent;
  508. border-radius: 50%;
  509. border-right-color: transparent;
  510. height: .5em;
  511. transform: translate(-50%, -40%) rotate(-135deg);
  512. width: .5em;
  513. }