├── .gitignore ├── LICENSE ├── README.md ├── bar.jsx ├── common ├── css │ └── all.css └── webfonts │ ├── Roboto Mono for Powerline.ttf │ ├── fa-brands-400.eot │ ├── fa-brands-400.svg │ ├── fa-brands-400.ttf │ ├── fa-brands-400.woff │ ├── fa-brands-400.woff2 │ ├── fa-regular-400.eot │ ├── fa-regular-400.svg │ ├── fa-regular-400.ttf │ ├── fa-regular-400.woff │ ├── fa-regular-400.woff2 │ ├── fa-solid-900.eot │ ├── fa-solid-900.svg │ ├── fa-solid-900.ttf │ ├── fa-solid-900.woff │ └── fa-solid-900.woff2 ├── left.jsx ├── lib ├── Battery │ ├── index.jsx │ └── style.jsx ├── Cpu │ ├── index.jsx │ └── style.jsx ├── DateTime │ ├── index.jsx │ └── style.jsx ├── Desktop │ ├── index.jsx │ └── style.jsx ├── Error │ ├── index.jsx │ └── style.jsx ├── Hdd │ ├── index.jsx │ └── style.jsx ├── Memory │ ├── index.jsx │ └── style.jsx ├── Wifi │ ├── index.jsx │ └── style.jsx ├── parse.jsx └── style.jsx ├── right.jsx ├── screenshot.png ├── status-left.sh ├── status-right.sh └── widget.json /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Runtime data 9 | pids 10 | *.pid 11 | *.seed 12 | *.pid.lock 13 | 14 | # Directory for instrumented libs generated by jscoverage/JSCover 15 | lib-cov 16 | 17 | # Coverage directory used by tools like istanbul 18 | coverage 19 | 20 | # nyc test coverage 21 | .nyc_output 22 | 23 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 24 | .grunt 25 | 26 | # Bower dependency directory (https://bower.io/) 27 | bower_components 28 | 29 | # node-waf configuration 30 | .lock-wscript 31 | 32 | # Compiled binary addons (https://nodejs.org/api/addons.html) 33 | build/Release 34 | 35 | # Dependency directories 36 | node_modules/ 37 | jspm_packages/ 38 | 39 | # TypeScript v1 declaration files 40 | typings/ 41 | 42 | # Optional npm cache directory 43 | .npm 44 | 45 | # Optional eslint cache 46 | .eslintcache 47 | 48 | # Optional REPL history 49 | .node_repl_history 50 | 51 | # Output of 'npm pack' 52 | *.tgz 53 | 54 | # Yarn Integrity file 55 | .yarn-integrity 56 | 57 | # dotenv environment variables file 58 | .env 59 | 60 | # next.js build output 61 | .next 62 | 63 | # OS Files 64 | .DS_Store 65 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Rok Ajdnik 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # powerbar 2 | [Übersicht](https://github.com/felixhageloh/uebersicht) widget status bar in Powerline style with chunkwm support. 3 | 4 | ## Screenshoot 5 | ![img](./screenshot.png) 6 | 7 | ## Installation 8 | 9 | 1. Clone this repo to your Übersicht widgets directory. 10 | 11 | ```bash 12 | $ git clone https://github.com/ajdnik/powerbar $HOME/Library/Application\ Support/Übersicht/widgets/powerbar 13 | ``` 14 | 15 | 2. Make sure you've got [chunkwm](https://koekeishiya.github.io/chunkwm/) installed if you wish to use desktop support. 16 | -------------------------------------------------------------------------------- /bar.jsx: -------------------------------------------------------------------------------- 1 | import { bar } from './lib/style.jsx'; 2 | 3 | export const refreshFrequency = 1000000 4 | 5 | export const render = ({output}) => { 6 | return ( 7 |
8 | 9 |
10 | ) 11 | } 12 | 13 | export default null 14 | -------------------------------------------------------------------------------- /common/css/all.css: -------------------------------------------------------------------------------- 1 | .fa, 2 | .fas, 3 | .far, 4 | .fal, 5 | .fab { 6 | -moz-osx-font-smoothing: grayscale; 7 | -webkit-font-smoothing: antialiased; 8 | display: inline-block; 9 | font-style: normal; 10 | font-variant: normal; 11 | text-rendering: auto; 12 | line-height: 1; } 13 | 14 | .fa-lg { 15 | font-size: 1.33333em; 16 | line-height: 0.75em; 17 | vertical-align: -.0667em; } 18 | 19 | .fa-xs { 20 | font-size: .75em; } 21 | 22 | .fa-sm { 23 | font-size: .875em; } 24 | 25 | .fa-1x { 26 | font-size: 1em; } 27 | 28 | .fa-2x { 29 | font-size: 2em; } 30 | 31 | .fa-3x { 32 | font-size: 3em; } 33 | 34 | .fa-4x { 35 | font-size: 4em; } 36 | 37 | .fa-5x { 38 | font-size: 5em; } 39 | 40 | .fa-6x { 41 | font-size: 6em; } 42 | 43 | .fa-7x { 44 | font-size: 7em; } 45 | 46 | .fa-8x { 47 | font-size: 8em; } 48 | 49 | .fa-9x { 50 | font-size: 9em; } 51 | 52 | .fa-10x { 53 | font-size: 10em; } 54 | 55 | .fa-fw { 56 | text-align: center; 57 | width: 1.25em; } 58 | 59 | .fa-ul { 60 | list-style-type: none; 61 | margin-left: 2.5em; 62 | padding-left: 0; } 63 | .fa-ul > li { 64 | position: relative; } 65 | 66 | .fa-li { 67 | left: -2em; 68 | position: absolute; 69 | text-align: center; 70 | width: 2em; 71 | line-height: inherit; } 72 | 73 | .fa-border { 74 | border: solid 0.08em #eee; 75 | border-radius: .1em; 76 | padding: .2em .25em .15em; } 77 | 78 | .fa-pull-left { 79 | float: left; } 80 | 81 | .fa-pull-right { 82 | float: right; } 83 | 84 | .fa.fa-pull-left, 85 | .fas.fa-pull-left, 86 | .far.fa-pull-left, 87 | .fal.fa-pull-left, 88 | .fab.fa-pull-left { 89 | margin-right: .3em; } 90 | 91 | .fa.fa-pull-right, 92 | .fas.fa-pull-right, 93 | .far.fa-pull-right, 94 | .fal.fa-pull-right, 95 | .fab.fa-pull-right { 96 | margin-left: .3em; } 97 | 98 | .fa-spin { 99 | -webkit-animation: fa-spin 2s infinite linear; 100 | animation: fa-spin 2s infinite linear; } 101 | 102 | .fa-pulse { 103 | -webkit-animation: fa-spin 1s infinite steps(8); 104 | animation: fa-spin 1s infinite steps(8); } 105 | 106 | @-webkit-keyframes fa-spin { 107 | 0% { 108 | -webkit-transform: rotate(0deg); 109 | transform: rotate(0deg); } 110 | 100% { 111 | -webkit-transform: rotate(360deg); 112 | transform: rotate(360deg); } } 113 | 114 | @keyframes fa-spin { 115 | 0% { 116 | -webkit-transform: rotate(0deg); 117 | transform: rotate(0deg); } 118 | 100% { 119 | -webkit-transform: rotate(360deg); 120 | transform: rotate(360deg); } } 121 | 122 | .fa-rotate-90 { 123 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; 124 | -webkit-transform: rotate(90deg); 125 | transform: rotate(90deg); } 126 | 127 | .fa-rotate-180 { 128 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; 129 | -webkit-transform: rotate(180deg); 130 | transform: rotate(180deg); } 131 | 132 | .fa-rotate-270 { 133 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; 134 | -webkit-transform: rotate(270deg); 135 | transform: rotate(270deg); } 136 | 137 | .fa-flip-horizontal { 138 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; 139 | -webkit-transform: scale(-1, 1); 140 | transform: scale(-1, 1); } 141 | 142 | .fa-flip-vertical { 143 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; 144 | -webkit-transform: scale(1, -1); 145 | transform: scale(1, -1); } 146 | 147 | .fa-flip-horizontal.fa-flip-vertical { 148 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; 149 | -webkit-transform: scale(-1, -1); 150 | transform: scale(-1, -1); } 151 | 152 | :root .fa-rotate-90, 153 | :root .fa-rotate-180, 154 | :root .fa-rotate-270, 155 | :root .fa-flip-horizontal, 156 | :root .fa-flip-vertical { 157 | -webkit-filter: none; 158 | filter: none; } 159 | 160 | .fa-stack { 161 | display: inline-block; 162 | height: 2em; 163 | line-height: 2em; 164 | position: relative; 165 | vertical-align: middle; 166 | width: 2.5em; } 167 | 168 | .fa-stack-1x, 169 | .fa-stack-2x { 170 | left: 0; 171 | position: absolute; 172 | text-align: center; 173 | width: 100%; } 174 | 175 | .fa-stack-1x { 176 | line-height: inherit; } 177 | 178 | .fa-stack-2x { 179 | font-size: 2em; } 180 | 181 | .fa-inverse { 182 | color: #fff; } 183 | 184 | /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen 185 | readers do not read off random characters that represent icons */ 186 | .fa-500px:before { 187 | content: "\f26e"; } 188 | 189 | .fa-accessible-icon:before { 190 | content: "\f368"; } 191 | 192 | .fa-accusoft:before { 193 | content: "\f369"; } 194 | 195 | .fa-acquisitions-incorporated:before { 196 | content: "\f6af"; } 197 | 198 | .fa-ad:before { 199 | content: "\f641"; } 200 | 201 | .fa-address-book:before { 202 | content: "\f2b9"; } 203 | 204 | .fa-address-card:before { 205 | content: "\f2bb"; } 206 | 207 | .fa-adjust:before { 208 | content: "\f042"; } 209 | 210 | .fa-adn:before { 211 | content: "\f170"; } 212 | 213 | .fa-adobe:before { 214 | content: "\f778"; } 215 | 216 | .fa-adversal:before { 217 | content: "\f36a"; } 218 | 219 | .fa-affiliatetheme:before { 220 | content: "\f36b"; } 221 | 222 | .fa-air-freshener:before { 223 | content: "\f5d0"; } 224 | 225 | .fa-algolia:before { 226 | content: "\f36c"; } 227 | 228 | .fa-align-center:before { 229 | content: "\f037"; } 230 | 231 | .fa-align-justify:before { 232 | content: "\f039"; } 233 | 234 | .fa-align-left:before { 235 | content: "\f036"; } 236 | 237 | .fa-align-right:before { 238 | content: "\f038"; } 239 | 240 | .fa-alipay:before { 241 | content: "\f642"; } 242 | 243 | .fa-allergies:before { 244 | content: "\f461"; } 245 | 246 | .fa-amazon:before { 247 | content: "\f270"; } 248 | 249 | .fa-amazon-pay:before { 250 | content: "\f42c"; } 251 | 252 | .fa-ambulance:before { 253 | content: "\f0f9"; } 254 | 255 | .fa-american-sign-language-interpreting:before { 256 | content: "\f2a3"; } 257 | 258 | .fa-amilia:before { 259 | content: "\f36d"; } 260 | 261 | .fa-anchor:before { 262 | content: "\f13d"; } 263 | 264 | .fa-android:before { 265 | content: "\f17b"; } 266 | 267 | .fa-angellist:before { 268 | content: "\f209"; } 269 | 270 | .fa-angle-double-down:before { 271 | content: "\f103"; } 272 | 273 | .fa-angle-double-left:before { 274 | content: "\f100"; } 275 | 276 | .fa-angle-double-right:before { 277 | content: "\f101"; } 278 | 279 | .fa-angle-double-up:before { 280 | content: "\f102"; } 281 | 282 | .fa-angle-down:before { 283 | content: "\f107"; } 284 | 285 | .fa-angle-left:before { 286 | content: "\f104"; } 287 | 288 | .fa-angle-right:before { 289 | content: "\f105"; } 290 | 291 | .fa-angle-up:before { 292 | content: "\f106"; } 293 | 294 | .fa-angry:before { 295 | content: "\f556"; } 296 | 297 | .fa-angrycreative:before { 298 | content: "\f36e"; } 299 | 300 | .fa-angular:before { 301 | content: "\f420"; } 302 | 303 | .fa-ankh:before { 304 | content: "\f644"; } 305 | 306 | .fa-app-store:before { 307 | content: "\f36f"; } 308 | 309 | .fa-app-store-ios:before { 310 | content: "\f370"; } 311 | 312 | .fa-apper:before { 313 | content: "\f371"; } 314 | 315 | .fa-apple:before { 316 | content: "\f179"; } 317 | 318 | .fa-apple-alt:before { 319 | content: "\f5d1"; } 320 | 321 | .fa-apple-pay:before { 322 | content: "\f415"; } 323 | 324 | .fa-archive:before { 325 | content: "\f187"; } 326 | 327 | .fa-archway:before { 328 | content: "\f557"; } 329 | 330 | .fa-arrow-alt-circle-down:before { 331 | content: "\f358"; } 332 | 333 | .fa-arrow-alt-circle-left:before { 334 | content: "\f359"; } 335 | 336 | .fa-arrow-alt-circle-right:before { 337 | content: "\f35a"; } 338 | 339 | .fa-arrow-alt-circle-up:before { 340 | content: "\f35b"; } 341 | 342 | .fa-arrow-circle-down:before { 343 | content: "\f0ab"; } 344 | 345 | .fa-arrow-circle-left:before { 346 | content: "\f0a8"; } 347 | 348 | .fa-arrow-circle-right:before { 349 | content: "\f0a9"; } 350 | 351 | .fa-arrow-circle-up:before { 352 | content: "\f0aa"; } 353 | 354 | .fa-arrow-down:before { 355 | content: "\f063"; } 356 | 357 | .fa-arrow-left:before { 358 | content: "\f060"; } 359 | 360 | .fa-arrow-right:before { 361 | content: "\f061"; } 362 | 363 | .fa-arrow-up:before { 364 | content: "\f062"; } 365 | 366 | .fa-arrows-alt:before { 367 | content: "\f0b2"; } 368 | 369 | .fa-arrows-alt-h:before { 370 | content: "\f337"; } 371 | 372 | .fa-arrows-alt-v:before { 373 | content: "\f338"; } 374 | 375 | .fa-artstation:before { 376 | content: "\f77a"; } 377 | 378 | .fa-assistive-listening-systems:before { 379 | content: "\f2a2"; } 380 | 381 | .fa-asterisk:before { 382 | content: "\f069"; } 383 | 384 | .fa-asymmetrik:before { 385 | content: "\f372"; } 386 | 387 | .fa-at:before { 388 | content: "\f1fa"; } 389 | 390 | .fa-atlas:before { 391 | content: "\f558"; } 392 | 393 | .fa-atlassian:before { 394 | content: "\f77b"; } 395 | 396 | .fa-atom:before { 397 | content: "\f5d2"; } 398 | 399 | .fa-audible:before { 400 | content: "\f373"; } 401 | 402 | .fa-audio-description:before { 403 | content: "\f29e"; } 404 | 405 | .fa-autoprefixer:before { 406 | content: "\f41c"; } 407 | 408 | .fa-avianex:before { 409 | content: "\f374"; } 410 | 411 | .fa-aviato:before { 412 | content: "\f421"; } 413 | 414 | .fa-award:before { 415 | content: "\f559"; } 416 | 417 | .fa-aws:before { 418 | content: "\f375"; } 419 | 420 | .fa-baby:before { 421 | content: "\f77c"; } 422 | 423 | .fa-baby-carriage:before { 424 | content: "\f77d"; } 425 | 426 | .fa-backspace:before { 427 | content: "\f55a"; } 428 | 429 | .fa-backward:before { 430 | content: "\f04a"; } 431 | 432 | .fa-balance-scale:before { 433 | content: "\f24e"; } 434 | 435 | .fa-ban:before { 436 | content: "\f05e"; } 437 | 438 | .fa-band-aid:before { 439 | content: "\f462"; } 440 | 441 | .fa-bandcamp:before { 442 | content: "\f2d5"; } 443 | 444 | .fa-barcode:before { 445 | content: "\f02a"; } 446 | 447 | .fa-bars:before { 448 | content: "\f0c9"; } 449 | 450 | .fa-baseball-ball:before { 451 | content: "\f433"; } 452 | 453 | .fa-basketball-ball:before { 454 | content: "\f434"; } 455 | 456 | .fa-bath:before { 457 | content: "\f2cd"; } 458 | 459 | .fa-battery-empty:before { 460 | content: "\f244"; } 461 | 462 | .fa-battery-full:before { 463 | content: "\f240"; } 464 | 465 | .fa-battery-half:before { 466 | content: "\f242"; } 467 | 468 | .fa-battery-quarter:before { 469 | content: "\f243"; } 470 | 471 | .fa-battery-three-quarters:before { 472 | content: "\f241"; } 473 | 474 | .fa-bed:before { 475 | content: "\f236"; } 476 | 477 | .fa-beer:before { 478 | content: "\f0fc"; } 479 | 480 | .fa-behance:before { 481 | content: "\f1b4"; } 482 | 483 | .fa-behance-square:before { 484 | content: "\f1b5"; } 485 | 486 | .fa-bell:before { 487 | content: "\f0f3"; } 488 | 489 | .fa-bell-slash:before { 490 | content: "\f1f6"; } 491 | 492 | .fa-bezier-curve:before { 493 | content: "\f55b"; } 494 | 495 | .fa-bible:before { 496 | content: "\f647"; } 497 | 498 | .fa-bicycle:before { 499 | content: "\f206"; } 500 | 501 | .fa-bimobject:before { 502 | content: "\f378"; } 503 | 504 | .fa-binoculars:before { 505 | content: "\f1e5"; } 506 | 507 | .fa-biohazard:before { 508 | content: "\f780"; } 509 | 510 | .fa-birthday-cake:before { 511 | content: "\f1fd"; } 512 | 513 | .fa-bitbucket:before { 514 | content: "\f171"; } 515 | 516 | .fa-bitcoin:before { 517 | content: "\f379"; } 518 | 519 | .fa-bity:before { 520 | content: "\f37a"; } 521 | 522 | .fa-black-tie:before { 523 | content: "\f27e"; } 524 | 525 | .fa-blackberry:before { 526 | content: "\f37b"; } 527 | 528 | .fa-blender:before { 529 | content: "\f517"; } 530 | 531 | .fa-blender-phone:before { 532 | content: "\f6b6"; } 533 | 534 | .fa-blind:before { 535 | content: "\f29d"; } 536 | 537 | .fa-blog:before { 538 | content: "\f781"; } 539 | 540 | .fa-blogger:before { 541 | content: "\f37c"; } 542 | 543 | .fa-blogger-b:before { 544 | content: "\f37d"; } 545 | 546 | .fa-bluetooth:before { 547 | content: "\f293"; } 548 | 549 | .fa-bluetooth-b:before { 550 | content: "\f294"; } 551 | 552 | .fa-bold:before { 553 | content: "\f032"; } 554 | 555 | .fa-bolt:before { 556 | content: "\f0e7"; } 557 | 558 | .fa-bomb:before { 559 | content: "\f1e2"; } 560 | 561 | .fa-bone:before { 562 | content: "\f5d7"; } 563 | 564 | .fa-bong:before { 565 | content: "\f55c"; } 566 | 567 | .fa-book:before { 568 | content: "\f02d"; } 569 | 570 | .fa-book-dead:before { 571 | content: "\f6b7"; } 572 | 573 | .fa-book-open:before { 574 | content: "\f518"; } 575 | 576 | .fa-book-reader:before { 577 | content: "\f5da"; } 578 | 579 | .fa-bookmark:before { 580 | content: "\f02e"; } 581 | 582 | .fa-bowling-ball:before { 583 | content: "\f436"; } 584 | 585 | .fa-box:before { 586 | content: "\f466"; } 587 | 588 | .fa-box-open:before { 589 | content: "\f49e"; } 590 | 591 | .fa-boxes:before { 592 | content: "\f468"; } 593 | 594 | .fa-braille:before { 595 | content: "\f2a1"; } 596 | 597 | .fa-brain:before { 598 | content: "\f5dc"; } 599 | 600 | .fa-briefcase:before { 601 | content: "\f0b1"; } 602 | 603 | .fa-briefcase-medical:before { 604 | content: "\f469"; } 605 | 606 | .fa-broadcast-tower:before { 607 | content: "\f519"; } 608 | 609 | .fa-broom:before { 610 | content: "\f51a"; } 611 | 612 | .fa-brush:before { 613 | content: "\f55d"; } 614 | 615 | .fa-btc:before { 616 | content: "\f15a"; } 617 | 618 | .fa-bug:before { 619 | content: "\f188"; } 620 | 621 | .fa-building:before { 622 | content: "\f1ad"; } 623 | 624 | .fa-bullhorn:before { 625 | content: "\f0a1"; } 626 | 627 | .fa-bullseye:before { 628 | content: "\f140"; } 629 | 630 | .fa-burn:before { 631 | content: "\f46a"; } 632 | 633 | .fa-buromobelexperte:before { 634 | content: "\f37f"; } 635 | 636 | .fa-bus:before { 637 | content: "\f207"; } 638 | 639 | .fa-bus-alt:before { 640 | content: "\f55e"; } 641 | 642 | .fa-business-time:before { 643 | content: "\f64a"; } 644 | 645 | .fa-buysellads:before { 646 | content: "\f20d"; } 647 | 648 | .fa-calculator:before { 649 | content: "\f1ec"; } 650 | 651 | .fa-calendar:before { 652 | content: "\f133"; } 653 | 654 | .fa-calendar-alt:before { 655 | content: "\f073"; } 656 | 657 | .fa-calendar-check:before { 658 | content: "\f274"; } 659 | 660 | .fa-calendar-day:before { 661 | content: "\f783"; } 662 | 663 | .fa-calendar-minus:before { 664 | content: "\f272"; } 665 | 666 | .fa-calendar-plus:before { 667 | content: "\f271"; } 668 | 669 | .fa-calendar-times:before { 670 | content: "\f273"; } 671 | 672 | .fa-calendar-week:before { 673 | content: "\f784"; } 674 | 675 | .fa-camera:before { 676 | content: "\f030"; } 677 | 678 | .fa-camera-retro:before { 679 | content: "\f083"; } 680 | 681 | .fa-campground:before { 682 | content: "\f6bb"; } 683 | 684 | .fa-canadian-maple-leaf:before { 685 | content: "\f785"; } 686 | 687 | .fa-candy-cane:before { 688 | content: "\f786"; } 689 | 690 | .fa-cannabis:before { 691 | content: "\f55f"; } 692 | 693 | .fa-capsules:before { 694 | content: "\f46b"; } 695 | 696 | .fa-car:before { 697 | content: "\f1b9"; } 698 | 699 | .fa-car-alt:before { 700 | content: "\f5de"; } 701 | 702 | .fa-car-battery:before { 703 | content: "\f5df"; } 704 | 705 | .fa-car-crash:before { 706 | content: "\f5e1"; } 707 | 708 | .fa-car-side:before { 709 | content: "\f5e4"; } 710 | 711 | .fa-caret-down:before { 712 | content: "\f0d7"; } 713 | 714 | .fa-caret-left:before { 715 | content: "\f0d9"; } 716 | 717 | .fa-caret-right:before { 718 | content: "\f0da"; } 719 | 720 | .fa-caret-square-down:before { 721 | content: "\f150"; } 722 | 723 | .fa-caret-square-left:before { 724 | content: "\f191"; } 725 | 726 | .fa-caret-square-right:before { 727 | content: "\f152"; } 728 | 729 | .fa-caret-square-up:before { 730 | content: "\f151"; } 731 | 732 | .fa-caret-up:before { 733 | content: "\f0d8"; } 734 | 735 | .fa-carrot:before { 736 | content: "\f787"; } 737 | 738 | .fa-cart-arrow-down:before { 739 | content: "\f218"; } 740 | 741 | .fa-cart-plus:before { 742 | content: "\f217"; } 743 | 744 | .fa-cash-register:before { 745 | content: "\f788"; } 746 | 747 | .fa-cat:before { 748 | content: "\f6be"; } 749 | 750 | .fa-cc-amazon-pay:before { 751 | content: "\f42d"; } 752 | 753 | .fa-cc-amex:before { 754 | content: "\f1f3"; } 755 | 756 | .fa-cc-apple-pay:before { 757 | content: "\f416"; } 758 | 759 | .fa-cc-diners-club:before { 760 | content: "\f24c"; } 761 | 762 | .fa-cc-discover:before { 763 | content: "\f1f2"; } 764 | 765 | .fa-cc-jcb:before { 766 | content: "\f24b"; } 767 | 768 | .fa-cc-mastercard:before { 769 | content: "\f1f1"; } 770 | 771 | .fa-cc-paypal:before { 772 | content: "\f1f4"; } 773 | 774 | .fa-cc-stripe:before { 775 | content: "\f1f5"; } 776 | 777 | .fa-cc-visa:before { 778 | content: "\f1f0"; } 779 | 780 | .fa-centercode:before { 781 | content: "\f380"; } 782 | 783 | .fa-centos:before { 784 | content: "\f789"; } 785 | 786 | .fa-certificate:before { 787 | content: "\f0a3"; } 788 | 789 | .fa-chair:before { 790 | content: "\f6c0"; } 791 | 792 | .fa-chalkboard:before { 793 | content: "\f51b"; } 794 | 795 | .fa-chalkboard-teacher:before { 796 | content: "\f51c"; } 797 | 798 | .fa-charging-station:before { 799 | content: "\f5e7"; } 800 | 801 | .fa-chart-area:before { 802 | content: "\f1fe"; } 803 | 804 | .fa-chart-bar:before { 805 | content: "\f080"; } 806 | 807 | .fa-chart-line:before { 808 | content: "\f201"; } 809 | 810 | .fa-chart-pie:before { 811 | content: "\f200"; } 812 | 813 | .fa-check:before { 814 | content: "\f00c"; } 815 | 816 | .fa-check-circle:before { 817 | content: "\f058"; } 818 | 819 | .fa-check-double:before { 820 | content: "\f560"; } 821 | 822 | .fa-check-square:before { 823 | content: "\f14a"; } 824 | 825 | .fa-chess:before { 826 | content: "\f439"; } 827 | 828 | .fa-chess-bishop:before { 829 | content: "\f43a"; } 830 | 831 | .fa-chess-board:before { 832 | content: "\f43c"; } 833 | 834 | .fa-chess-king:before { 835 | content: "\f43f"; } 836 | 837 | .fa-chess-knight:before { 838 | content: "\f441"; } 839 | 840 | .fa-chess-pawn:before { 841 | content: "\f443"; } 842 | 843 | .fa-chess-queen:before { 844 | content: "\f445"; } 845 | 846 | .fa-chess-rook:before { 847 | content: "\f447"; } 848 | 849 | .fa-chevron-circle-down:before { 850 | content: "\f13a"; } 851 | 852 | .fa-chevron-circle-left:before { 853 | content: "\f137"; } 854 | 855 | .fa-chevron-circle-right:before { 856 | content: "\f138"; } 857 | 858 | .fa-chevron-circle-up:before { 859 | content: "\f139"; } 860 | 861 | .fa-chevron-down:before { 862 | content: "\f078"; } 863 | 864 | .fa-chevron-left:before { 865 | content: "\f053"; } 866 | 867 | .fa-chevron-right:before { 868 | content: "\f054"; } 869 | 870 | .fa-chevron-up:before { 871 | content: "\f077"; } 872 | 873 | .fa-child:before { 874 | content: "\f1ae"; } 875 | 876 | .fa-chrome:before { 877 | content: "\f268"; } 878 | 879 | .fa-church:before { 880 | content: "\f51d"; } 881 | 882 | .fa-circle:before { 883 | content: "\f111"; } 884 | 885 | .fa-circle-notch:before { 886 | content: "\f1ce"; } 887 | 888 | .fa-city:before { 889 | content: "\f64f"; } 890 | 891 | .fa-clipboard:before { 892 | content: "\f328"; } 893 | 894 | .fa-clipboard-check:before { 895 | content: "\f46c"; } 896 | 897 | .fa-clipboard-list:before { 898 | content: "\f46d"; } 899 | 900 | .fa-clock:before { 901 | content: "\f017"; } 902 | 903 | .fa-clone:before { 904 | content: "\f24d"; } 905 | 906 | .fa-closed-captioning:before { 907 | content: "\f20a"; } 908 | 909 | .fa-cloud:before { 910 | content: "\f0c2"; } 911 | 912 | .fa-cloud-download-alt:before { 913 | content: "\f381"; } 914 | 915 | .fa-cloud-meatball:before { 916 | content: "\f73b"; } 917 | 918 | .fa-cloud-moon:before { 919 | content: "\f6c3"; } 920 | 921 | .fa-cloud-moon-rain:before { 922 | content: "\f73c"; } 923 | 924 | .fa-cloud-rain:before { 925 | content: "\f73d"; } 926 | 927 | .fa-cloud-showers-heavy:before { 928 | content: "\f740"; } 929 | 930 | .fa-cloud-sun:before { 931 | content: "\f6c4"; } 932 | 933 | .fa-cloud-sun-rain:before { 934 | content: "\f743"; } 935 | 936 | .fa-cloud-upload-alt:before { 937 | content: "\f382"; } 938 | 939 | .fa-cloudscale:before { 940 | content: "\f383"; } 941 | 942 | .fa-cloudsmith:before { 943 | content: "\f384"; } 944 | 945 | .fa-cloudversify:before { 946 | content: "\f385"; } 947 | 948 | .fa-cocktail:before { 949 | content: "\f561"; } 950 | 951 | .fa-code:before { 952 | content: "\f121"; } 953 | 954 | .fa-code-branch:before { 955 | content: "\f126"; } 956 | 957 | .fa-codepen:before { 958 | content: "\f1cb"; } 959 | 960 | .fa-codiepie:before { 961 | content: "\f284"; } 962 | 963 | .fa-coffee:before { 964 | content: "\f0f4"; } 965 | 966 | .fa-cog:before { 967 | content: "\f013"; } 968 | 969 | .fa-cogs:before { 970 | content: "\f085"; } 971 | 972 | .fa-coins:before { 973 | content: "\f51e"; } 974 | 975 | .fa-columns:before { 976 | content: "\f0db"; } 977 | 978 | .fa-comment:before { 979 | content: "\f075"; } 980 | 981 | .fa-comment-alt:before { 982 | content: "\f27a"; } 983 | 984 | .fa-comment-dollar:before { 985 | content: "\f651"; } 986 | 987 | .fa-comment-dots:before { 988 | content: "\f4ad"; } 989 | 990 | .fa-comment-slash:before { 991 | content: "\f4b3"; } 992 | 993 | .fa-comments:before { 994 | content: "\f086"; } 995 | 996 | .fa-comments-dollar:before { 997 | content: "\f653"; } 998 | 999 | .fa-compact-disc:before { 1000 | content: "\f51f"; } 1001 | 1002 | .fa-compass:before { 1003 | content: "\f14e"; } 1004 | 1005 | .fa-compress:before { 1006 | content: "\f066"; } 1007 | 1008 | .fa-compress-arrows-alt:before { 1009 | content: "\f78c"; } 1010 | 1011 | .fa-concierge-bell:before { 1012 | content: "\f562"; } 1013 | 1014 | .fa-confluence:before { 1015 | content: "\f78d"; } 1016 | 1017 | .fa-connectdevelop:before { 1018 | content: "\f20e"; } 1019 | 1020 | .fa-contao:before { 1021 | content: "\f26d"; } 1022 | 1023 | .fa-cookie:before { 1024 | content: "\f563"; } 1025 | 1026 | .fa-cookie-bite:before { 1027 | content: "\f564"; } 1028 | 1029 | .fa-copy:before { 1030 | content: "\f0c5"; } 1031 | 1032 | .fa-copyright:before { 1033 | content: "\f1f9"; } 1034 | 1035 | .fa-couch:before { 1036 | content: "\f4b8"; } 1037 | 1038 | .fa-cpanel:before { 1039 | content: "\f388"; } 1040 | 1041 | .fa-creative-commons:before { 1042 | content: "\f25e"; } 1043 | 1044 | .fa-creative-commons-by:before { 1045 | content: "\f4e7"; } 1046 | 1047 | .fa-creative-commons-nc:before { 1048 | content: "\f4e8"; } 1049 | 1050 | .fa-creative-commons-nc-eu:before { 1051 | content: "\f4e9"; } 1052 | 1053 | .fa-creative-commons-nc-jp:before { 1054 | content: "\f4ea"; } 1055 | 1056 | .fa-creative-commons-nd:before { 1057 | content: "\f4eb"; } 1058 | 1059 | .fa-creative-commons-pd:before { 1060 | content: "\f4ec"; } 1061 | 1062 | .fa-creative-commons-pd-alt:before { 1063 | content: "\f4ed"; } 1064 | 1065 | .fa-creative-commons-remix:before { 1066 | content: "\f4ee"; } 1067 | 1068 | .fa-creative-commons-sa:before { 1069 | content: "\f4ef"; } 1070 | 1071 | .fa-creative-commons-sampling:before { 1072 | content: "\f4f0"; } 1073 | 1074 | .fa-creative-commons-sampling-plus:before { 1075 | content: "\f4f1"; } 1076 | 1077 | .fa-creative-commons-share:before { 1078 | content: "\f4f2"; } 1079 | 1080 | .fa-creative-commons-zero:before { 1081 | content: "\f4f3"; } 1082 | 1083 | .fa-credit-card:before { 1084 | content: "\f09d"; } 1085 | 1086 | .fa-critical-role:before { 1087 | content: "\f6c9"; } 1088 | 1089 | .fa-crop:before { 1090 | content: "\f125"; } 1091 | 1092 | .fa-crop-alt:before { 1093 | content: "\f565"; } 1094 | 1095 | .fa-cross:before { 1096 | content: "\f654"; } 1097 | 1098 | .fa-crosshairs:before { 1099 | content: "\f05b"; } 1100 | 1101 | .fa-crow:before { 1102 | content: "\f520"; } 1103 | 1104 | .fa-crown:before { 1105 | content: "\f521"; } 1106 | 1107 | .fa-css3:before { 1108 | content: "\f13c"; } 1109 | 1110 | .fa-css3-alt:before { 1111 | content: "\f38b"; } 1112 | 1113 | .fa-cube:before { 1114 | content: "\f1b2"; } 1115 | 1116 | .fa-cubes:before { 1117 | content: "\f1b3"; } 1118 | 1119 | .fa-cut:before { 1120 | content: "\f0c4"; } 1121 | 1122 | .fa-cuttlefish:before { 1123 | content: "\f38c"; } 1124 | 1125 | .fa-d-and-d:before { 1126 | content: "\f38d"; } 1127 | 1128 | .fa-d-and-d-beyond:before { 1129 | content: "\f6ca"; } 1130 | 1131 | .fa-dashcube:before { 1132 | content: "\f210"; } 1133 | 1134 | .fa-database:before { 1135 | content: "\f1c0"; } 1136 | 1137 | .fa-deaf:before { 1138 | content: "\f2a4"; } 1139 | 1140 | .fa-delicious:before { 1141 | content: "\f1a5"; } 1142 | 1143 | .fa-democrat:before { 1144 | content: "\f747"; } 1145 | 1146 | .fa-deploydog:before { 1147 | content: "\f38e"; } 1148 | 1149 | .fa-deskpro:before { 1150 | content: "\f38f"; } 1151 | 1152 | .fa-desktop:before { 1153 | content: "\f108"; } 1154 | 1155 | .fa-dev:before { 1156 | content: "\f6cc"; } 1157 | 1158 | .fa-deviantart:before { 1159 | content: "\f1bd"; } 1160 | 1161 | .fa-dharmachakra:before { 1162 | content: "\f655"; } 1163 | 1164 | .fa-dhl:before { 1165 | content: "\f790"; } 1166 | 1167 | .fa-diagnoses:before { 1168 | content: "\f470"; } 1169 | 1170 | .fa-diaspora:before { 1171 | content: "\f791"; } 1172 | 1173 | .fa-dice:before { 1174 | content: "\f522"; } 1175 | 1176 | .fa-dice-d20:before { 1177 | content: "\f6cf"; } 1178 | 1179 | .fa-dice-d6:before { 1180 | content: "\f6d1"; } 1181 | 1182 | .fa-dice-five:before { 1183 | content: "\f523"; } 1184 | 1185 | .fa-dice-four:before { 1186 | content: "\f524"; } 1187 | 1188 | .fa-dice-one:before { 1189 | content: "\f525"; } 1190 | 1191 | .fa-dice-six:before { 1192 | content: "\f526"; } 1193 | 1194 | .fa-dice-three:before { 1195 | content: "\f527"; } 1196 | 1197 | .fa-dice-two:before { 1198 | content: "\f528"; } 1199 | 1200 | .fa-digg:before { 1201 | content: "\f1a6"; } 1202 | 1203 | .fa-digital-ocean:before { 1204 | content: "\f391"; } 1205 | 1206 | .fa-digital-tachograph:before { 1207 | content: "\f566"; } 1208 | 1209 | .fa-directions:before { 1210 | content: "\f5eb"; } 1211 | 1212 | .fa-discord:before { 1213 | content: "\f392"; } 1214 | 1215 | .fa-discourse:before { 1216 | content: "\f393"; } 1217 | 1218 | .fa-divide:before { 1219 | content: "\f529"; } 1220 | 1221 | .fa-dizzy:before { 1222 | content: "\f567"; } 1223 | 1224 | .fa-dna:before { 1225 | content: "\f471"; } 1226 | 1227 | .fa-dochub:before { 1228 | content: "\f394"; } 1229 | 1230 | .fa-docker:before { 1231 | content: "\f395"; } 1232 | 1233 | .fa-dog:before { 1234 | content: "\f6d3"; } 1235 | 1236 | .fa-dollar-sign:before { 1237 | content: "\f155"; } 1238 | 1239 | .fa-dolly:before { 1240 | content: "\f472"; } 1241 | 1242 | .fa-dolly-flatbed:before { 1243 | content: "\f474"; } 1244 | 1245 | .fa-donate:before { 1246 | content: "\f4b9"; } 1247 | 1248 | .fa-door-closed:before { 1249 | content: "\f52a"; } 1250 | 1251 | .fa-door-open:before { 1252 | content: "\f52b"; } 1253 | 1254 | .fa-dot-circle:before { 1255 | content: "\f192"; } 1256 | 1257 | .fa-dove:before { 1258 | content: "\f4ba"; } 1259 | 1260 | .fa-download:before { 1261 | content: "\f019"; } 1262 | 1263 | .fa-draft2digital:before { 1264 | content: "\f396"; } 1265 | 1266 | .fa-drafting-compass:before { 1267 | content: "\f568"; } 1268 | 1269 | .fa-dragon:before { 1270 | content: "\f6d5"; } 1271 | 1272 | .fa-draw-polygon:before { 1273 | content: "\f5ee"; } 1274 | 1275 | .fa-dribbble:before { 1276 | content: "\f17d"; } 1277 | 1278 | .fa-dribbble-square:before { 1279 | content: "\f397"; } 1280 | 1281 | .fa-dropbox:before { 1282 | content: "\f16b"; } 1283 | 1284 | .fa-drum:before { 1285 | content: "\f569"; } 1286 | 1287 | .fa-drum-steelpan:before { 1288 | content: "\f56a"; } 1289 | 1290 | .fa-drumstick-bite:before { 1291 | content: "\f6d7"; } 1292 | 1293 | .fa-drupal:before { 1294 | content: "\f1a9"; } 1295 | 1296 | .fa-dumbbell:before { 1297 | content: "\f44b"; } 1298 | 1299 | .fa-dumpster:before { 1300 | content: "\f793"; } 1301 | 1302 | .fa-dumpster-fire:before { 1303 | content: "\f794"; } 1304 | 1305 | .fa-dungeon:before { 1306 | content: "\f6d9"; } 1307 | 1308 | .fa-dyalog:before { 1309 | content: "\f399"; } 1310 | 1311 | .fa-earlybirds:before { 1312 | content: "\f39a"; } 1313 | 1314 | .fa-ebay:before { 1315 | content: "\f4f4"; } 1316 | 1317 | .fa-edge:before { 1318 | content: "\f282"; } 1319 | 1320 | .fa-edit:before { 1321 | content: "\f044"; } 1322 | 1323 | .fa-eject:before { 1324 | content: "\f052"; } 1325 | 1326 | .fa-elementor:before { 1327 | content: "\f430"; } 1328 | 1329 | .fa-ellipsis-h:before { 1330 | content: "\f141"; } 1331 | 1332 | .fa-ellipsis-v:before { 1333 | content: "\f142"; } 1334 | 1335 | .fa-ello:before { 1336 | content: "\f5f1"; } 1337 | 1338 | .fa-ember:before { 1339 | content: "\f423"; } 1340 | 1341 | .fa-empire:before { 1342 | content: "\f1d1"; } 1343 | 1344 | .fa-envelope:before { 1345 | content: "\f0e0"; } 1346 | 1347 | .fa-envelope-open:before { 1348 | content: "\f2b6"; } 1349 | 1350 | .fa-envelope-open-text:before { 1351 | content: "\f658"; } 1352 | 1353 | .fa-envelope-square:before { 1354 | content: "\f199"; } 1355 | 1356 | .fa-envira:before { 1357 | content: "\f299"; } 1358 | 1359 | .fa-equals:before { 1360 | content: "\f52c"; } 1361 | 1362 | .fa-eraser:before { 1363 | content: "\f12d"; } 1364 | 1365 | .fa-erlang:before { 1366 | content: "\f39d"; } 1367 | 1368 | .fa-ethereum:before { 1369 | content: "\f42e"; } 1370 | 1371 | .fa-ethernet:before { 1372 | content: "\f796"; } 1373 | 1374 | .fa-etsy:before { 1375 | content: "\f2d7"; } 1376 | 1377 | .fa-euro-sign:before { 1378 | content: "\f153"; } 1379 | 1380 | .fa-exchange-alt:before { 1381 | content: "\f362"; } 1382 | 1383 | .fa-exclamation:before { 1384 | content: "\f12a"; } 1385 | 1386 | .fa-exclamation-circle:before { 1387 | content: "\f06a"; } 1388 | 1389 | .fa-exclamation-triangle:before { 1390 | content: "\f071"; } 1391 | 1392 | .fa-expand:before { 1393 | content: "\f065"; } 1394 | 1395 | .fa-expand-arrows-alt:before { 1396 | content: "\f31e"; } 1397 | 1398 | .fa-expeditedssl:before { 1399 | content: "\f23e"; } 1400 | 1401 | .fa-external-link-alt:before { 1402 | content: "\f35d"; } 1403 | 1404 | .fa-external-link-square-alt:before { 1405 | content: "\f360"; } 1406 | 1407 | .fa-eye:before { 1408 | content: "\f06e"; } 1409 | 1410 | .fa-eye-dropper:before { 1411 | content: "\f1fb"; } 1412 | 1413 | .fa-eye-slash:before { 1414 | content: "\f070"; } 1415 | 1416 | .fa-facebook:before { 1417 | content: "\f09a"; } 1418 | 1419 | .fa-facebook-f:before { 1420 | content: "\f39e"; } 1421 | 1422 | .fa-facebook-messenger:before { 1423 | content: "\f39f"; } 1424 | 1425 | .fa-facebook-square:before { 1426 | content: "\f082"; } 1427 | 1428 | .fa-fantasy-flight-games:before { 1429 | content: "\f6dc"; } 1430 | 1431 | .fa-fast-backward:before { 1432 | content: "\f049"; } 1433 | 1434 | .fa-fast-forward:before { 1435 | content: "\f050"; } 1436 | 1437 | .fa-fax:before { 1438 | content: "\f1ac"; } 1439 | 1440 | .fa-feather:before { 1441 | content: "\f52d"; } 1442 | 1443 | .fa-feather-alt:before { 1444 | content: "\f56b"; } 1445 | 1446 | .fa-fedex:before { 1447 | content: "\f797"; } 1448 | 1449 | .fa-fedora:before { 1450 | content: "\f798"; } 1451 | 1452 | .fa-female:before { 1453 | content: "\f182"; } 1454 | 1455 | .fa-fighter-jet:before { 1456 | content: "\f0fb"; } 1457 | 1458 | .fa-figma:before { 1459 | content: "\f799"; } 1460 | 1461 | .fa-file:before { 1462 | content: "\f15b"; } 1463 | 1464 | .fa-file-alt:before { 1465 | content: "\f15c"; } 1466 | 1467 | .fa-file-archive:before { 1468 | content: "\f1c6"; } 1469 | 1470 | .fa-file-audio:before { 1471 | content: "\f1c7"; } 1472 | 1473 | .fa-file-code:before { 1474 | content: "\f1c9"; } 1475 | 1476 | .fa-file-contract:before { 1477 | content: "\f56c"; } 1478 | 1479 | .fa-file-csv:before { 1480 | content: "\f6dd"; } 1481 | 1482 | .fa-file-download:before { 1483 | content: "\f56d"; } 1484 | 1485 | .fa-file-excel:before { 1486 | content: "\f1c3"; } 1487 | 1488 | .fa-file-export:before { 1489 | content: "\f56e"; } 1490 | 1491 | .fa-file-image:before { 1492 | content: "\f1c5"; } 1493 | 1494 | .fa-file-import:before { 1495 | content: "\f56f"; } 1496 | 1497 | .fa-file-invoice:before { 1498 | content: "\f570"; } 1499 | 1500 | .fa-file-invoice-dollar:before { 1501 | content: "\f571"; } 1502 | 1503 | .fa-file-medical:before { 1504 | content: "\f477"; } 1505 | 1506 | .fa-file-medical-alt:before { 1507 | content: "\f478"; } 1508 | 1509 | .fa-file-pdf:before { 1510 | content: "\f1c1"; } 1511 | 1512 | .fa-file-powerpoint:before { 1513 | content: "\f1c4"; } 1514 | 1515 | .fa-file-prescription:before { 1516 | content: "\f572"; } 1517 | 1518 | .fa-file-signature:before { 1519 | content: "\f573"; } 1520 | 1521 | .fa-file-upload:before { 1522 | content: "\f574"; } 1523 | 1524 | .fa-file-video:before { 1525 | content: "\f1c8"; } 1526 | 1527 | .fa-file-word:before { 1528 | content: "\f1c2"; } 1529 | 1530 | .fa-fill:before { 1531 | content: "\f575"; } 1532 | 1533 | .fa-fill-drip:before { 1534 | content: "\f576"; } 1535 | 1536 | .fa-film:before { 1537 | content: "\f008"; } 1538 | 1539 | .fa-filter:before { 1540 | content: "\f0b0"; } 1541 | 1542 | .fa-fingerprint:before { 1543 | content: "\f577"; } 1544 | 1545 | .fa-fire:before { 1546 | content: "\f06d"; } 1547 | 1548 | .fa-fire-alt:before { 1549 | content: "\f7e4"; } 1550 | 1551 | .fa-fire-extinguisher:before { 1552 | content: "\f134"; } 1553 | 1554 | .fa-firefox:before { 1555 | content: "\f269"; } 1556 | 1557 | .fa-first-aid:before { 1558 | content: "\f479"; } 1559 | 1560 | .fa-first-order:before { 1561 | content: "\f2b0"; } 1562 | 1563 | .fa-first-order-alt:before { 1564 | content: "\f50a"; } 1565 | 1566 | .fa-firstdraft:before { 1567 | content: "\f3a1"; } 1568 | 1569 | .fa-fish:before { 1570 | content: "\f578"; } 1571 | 1572 | .fa-fist-raised:before { 1573 | content: "\f6de"; } 1574 | 1575 | .fa-flag:before { 1576 | content: "\f024"; } 1577 | 1578 | .fa-flag-checkered:before { 1579 | content: "\f11e"; } 1580 | 1581 | .fa-flag-usa:before { 1582 | content: "\f74d"; } 1583 | 1584 | .fa-flask:before { 1585 | content: "\f0c3"; } 1586 | 1587 | .fa-flickr:before { 1588 | content: "\f16e"; } 1589 | 1590 | .fa-flipboard:before { 1591 | content: "\f44d"; } 1592 | 1593 | .fa-flushed:before { 1594 | content: "\f579"; } 1595 | 1596 | .fa-fly:before { 1597 | content: "\f417"; } 1598 | 1599 | .fa-folder:before { 1600 | content: "\f07b"; } 1601 | 1602 | .fa-folder-minus:before { 1603 | content: "\f65d"; } 1604 | 1605 | .fa-folder-open:before { 1606 | content: "\f07c"; } 1607 | 1608 | .fa-folder-plus:before { 1609 | content: "\f65e"; } 1610 | 1611 | .fa-font:before { 1612 | content: "\f031"; } 1613 | 1614 | .fa-font-awesome:before { 1615 | content: "\f2b4"; } 1616 | 1617 | .fa-font-awesome-alt:before { 1618 | content: "\f35c"; } 1619 | 1620 | .fa-font-awesome-flag:before { 1621 | content: "\f425"; } 1622 | 1623 | .fa-font-awesome-logo-full:before { 1624 | content: "\f4e6"; } 1625 | 1626 | .fa-fonticons:before { 1627 | content: "\f280"; } 1628 | 1629 | .fa-fonticons-fi:before { 1630 | content: "\f3a2"; } 1631 | 1632 | .fa-football-ball:before { 1633 | content: "\f44e"; } 1634 | 1635 | .fa-fort-awesome:before { 1636 | content: "\f286"; } 1637 | 1638 | .fa-fort-awesome-alt:before { 1639 | content: "\f3a3"; } 1640 | 1641 | .fa-forumbee:before { 1642 | content: "\f211"; } 1643 | 1644 | .fa-forward:before { 1645 | content: "\f04e"; } 1646 | 1647 | .fa-foursquare:before { 1648 | content: "\f180"; } 1649 | 1650 | .fa-free-code-camp:before { 1651 | content: "\f2c5"; } 1652 | 1653 | .fa-freebsd:before { 1654 | content: "\f3a4"; } 1655 | 1656 | .fa-frog:before { 1657 | content: "\f52e"; } 1658 | 1659 | .fa-frown:before { 1660 | content: "\f119"; } 1661 | 1662 | .fa-frown-open:before { 1663 | content: "\f57a"; } 1664 | 1665 | .fa-fulcrum:before { 1666 | content: "\f50b"; } 1667 | 1668 | .fa-funnel-dollar:before { 1669 | content: "\f662"; } 1670 | 1671 | .fa-futbol:before { 1672 | content: "\f1e3"; } 1673 | 1674 | .fa-galactic-republic:before { 1675 | content: "\f50c"; } 1676 | 1677 | .fa-galactic-senate:before { 1678 | content: "\f50d"; } 1679 | 1680 | .fa-gamepad:before { 1681 | content: "\f11b"; } 1682 | 1683 | .fa-gas-pump:before { 1684 | content: "\f52f"; } 1685 | 1686 | .fa-gavel:before { 1687 | content: "\f0e3"; } 1688 | 1689 | .fa-gem:before { 1690 | content: "\f3a5"; } 1691 | 1692 | .fa-genderless:before { 1693 | content: "\f22d"; } 1694 | 1695 | .fa-get-pocket:before { 1696 | content: "\f265"; } 1697 | 1698 | .fa-gg:before { 1699 | content: "\f260"; } 1700 | 1701 | .fa-gg-circle:before { 1702 | content: "\f261"; } 1703 | 1704 | .fa-ghost:before { 1705 | content: "\f6e2"; } 1706 | 1707 | .fa-gift:before { 1708 | content: "\f06b"; } 1709 | 1710 | .fa-gifts:before { 1711 | content: "\f79c"; } 1712 | 1713 | .fa-git:before { 1714 | content: "\f1d3"; } 1715 | 1716 | .fa-git-square:before { 1717 | content: "\f1d2"; } 1718 | 1719 | .fa-github:before { 1720 | content: "\f09b"; } 1721 | 1722 | .fa-github-alt:before { 1723 | content: "\f113"; } 1724 | 1725 | .fa-github-square:before { 1726 | content: "\f092"; } 1727 | 1728 | .fa-gitkraken:before { 1729 | content: "\f3a6"; } 1730 | 1731 | .fa-gitlab:before { 1732 | content: "\f296"; } 1733 | 1734 | .fa-gitter:before { 1735 | content: "\f426"; } 1736 | 1737 | .fa-glass-cheers:before { 1738 | content: "\f79f"; } 1739 | 1740 | .fa-glass-martini:before { 1741 | content: "\f000"; } 1742 | 1743 | .fa-glass-martini-alt:before { 1744 | content: "\f57b"; } 1745 | 1746 | .fa-glass-whiskey:before { 1747 | content: "\f7a0"; } 1748 | 1749 | .fa-glasses:before { 1750 | content: "\f530"; } 1751 | 1752 | .fa-glide:before { 1753 | content: "\f2a5"; } 1754 | 1755 | .fa-glide-g:before { 1756 | content: "\f2a6"; } 1757 | 1758 | .fa-globe:before { 1759 | content: "\f0ac"; } 1760 | 1761 | .fa-globe-africa:before { 1762 | content: "\f57c"; } 1763 | 1764 | .fa-globe-americas:before { 1765 | content: "\f57d"; } 1766 | 1767 | .fa-globe-asia:before { 1768 | content: "\f57e"; } 1769 | 1770 | .fa-globe-europe:before { 1771 | content: "\f7a2"; } 1772 | 1773 | .fa-gofore:before { 1774 | content: "\f3a7"; } 1775 | 1776 | .fa-golf-ball:before { 1777 | content: "\f450"; } 1778 | 1779 | .fa-goodreads:before { 1780 | content: "\f3a8"; } 1781 | 1782 | .fa-goodreads-g:before { 1783 | content: "\f3a9"; } 1784 | 1785 | .fa-google:before { 1786 | content: "\f1a0"; } 1787 | 1788 | .fa-google-drive:before { 1789 | content: "\f3aa"; } 1790 | 1791 | .fa-google-play:before { 1792 | content: "\f3ab"; } 1793 | 1794 | .fa-google-plus:before { 1795 | content: "\f2b3"; } 1796 | 1797 | .fa-google-plus-g:before { 1798 | content: "\f0d5"; } 1799 | 1800 | .fa-google-plus-square:before { 1801 | content: "\f0d4"; } 1802 | 1803 | .fa-google-wallet:before { 1804 | content: "\f1ee"; } 1805 | 1806 | .fa-gopuram:before { 1807 | content: "\f664"; } 1808 | 1809 | .fa-graduation-cap:before { 1810 | content: "\f19d"; } 1811 | 1812 | .fa-gratipay:before { 1813 | content: "\f184"; } 1814 | 1815 | .fa-grav:before { 1816 | content: "\f2d6"; } 1817 | 1818 | .fa-greater-than:before { 1819 | content: "\f531"; } 1820 | 1821 | .fa-greater-than-equal:before { 1822 | content: "\f532"; } 1823 | 1824 | .fa-grimace:before { 1825 | content: "\f57f"; } 1826 | 1827 | .fa-grin:before { 1828 | content: "\f580"; } 1829 | 1830 | .fa-grin-alt:before { 1831 | content: "\f581"; } 1832 | 1833 | .fa-grin-beam:before { 1834 | content: "\f582"; } 1835 | 1836 | .fa-grin-beam-sweat:before { 1837 | content: "\f583"; } 1838 | 1839 | .fa-grin-hearts:before { 1840 | content: "\f584"; } 1841 | 1842 | .fa-grin-squint:before { 1843 | content: "\f585"; } 1844 | 1845 | .fa-grin-squint-tears:before { 1846 | content: "\f586"; } 1847 | 1848 | .fa-grin-stars:before { 1849 | content: "\f587"; } 1850 | 1851 | .fa-grin-tears:before { 1852 | content: "\f588"; } 1853 | 1854 | .fa-grin-tongue:before { 1855 | content: "\f589"; } 1856 | 1857 | .fa-grin-tongue-squint:before { 1858 | content: "\f58a"; } 1859 | 1860 | .fa-grin-tongue-wink:before { 1861 | content: "\f58b"; } 1862 | 1863 | .fa-grin-wink:before { 1864 | content: "\f58c"; } 1865 | 1866 | .fa-grip-horizontal:before { 1867 | content: "\f58d"; } 1868 | 1869 | .fa-grip-lines:before { 1870 | content: "\f7a4"; } 1871 | 1872 | .fa-grip-lines-vertical:before { 1873 | content: "\f7a5"; } 1874 | 1875 | .fa-grip-vertical:before { 1876 | content: "\f58e"; } 1877 | 1878 | .fa-gripfire:before { 1879 | content: "\f3ac"; } 1880 | 1881 | .fa-grunt:before { 1882 | content: "\f3ad"; } 1883 | 1884 | .fa-guitar:before { 1885 | content: "\f7a6"; } 1886 | 1887 | .fa-gulp:before { 1888 | content: "\f3ae"; } 1889 | 1890 | .fa-h-square:before { 1891 | content: "\f0fd"; } 1892 | 1893 | .fa-hacker-news:before { 1894 | content: "\f1d4"; } 1895 | 1896 | .fa-hacker-news-square:before { 1897 | content: "\f3af"; } 1898 | 1899 | .fa-hackerrank:before { 1900 | content: "\f5f7"; } 1901 | 1902 | .fa-hammer:before { 1903 | content: "\f6e3"; } 1904 | 1905 | .fa-hamsa:before { 1906 | content: "\f665"; } 1907 | 1908 | .fa-hand-holding:before { 1909 | content: "\f4bd"; } 1910 | 1911 | .fa-hand-holding-heart:before { 1912 | content: "\f4be"; } 1913 | 1914 | .fa-hand-holding-usd:before { 1915 | content: "\f4c0"; } 1916 | 1917 | .fa-hand-lizard:before { 1918 | content: "\f258"; } 1919 | 1920 | .fa-hand-paper:before { 1921 | content: "\f256"; } 1922 | 1923 | .fa-hand-peace:before { 1924 | content: "\f25b"; } 1925 | 1926 | .fa-hand-point-down:before { 1927 | content: "\f0a7"; } 1928 | 1929 | .fa-hand-point-left:before { 1930 | content: "\f0a5"; } 1931 | 1932 | .fa-hand-point-right:before { 1933 | content: "\f0a4"; } 1934 | 1935 | .fa-hand-point-up:before { 1936 | content: "\f0a6"; } 1937 | 1938 | .fa-hand-pointer:before { 1939 | content: "\f25a"; } 1940 | 1941 | .fa-hand-rock:before { 1942 | content: "\f255"; } 1943 | 1944 | .fa-hand-scissors:before { 1945 | content: "\f257"; } 1946 | 1947 | .fa-hand-spock:before { 1948 | content: "\f259"; } 1949 | 1950 | .fa-hands:before { 1951 | content: "\f4c2"; } 1952 | 1953 | .fa-hands-helping:before { 1954 | content: "\f4c4"; } 1955 | 1956 | .fa-handshake:before { 1957 | content: "\f2b5"; } 1958 | 1959 | .fa-hanukiah:before { 1960 | content: "\f6e6"; } 1961 | 1962 | .fa-hashtag:before { 1963 | content: "\f292"; } 1964 | 1965 | .fa-hat-wizard:before { 1966 | content: "\f6e8"; } 1967 | 1968 | .fa-haykal:before { 1969 | content: "\f666"; } 1970 | 1971 | .fa-hdd:before { 1972 | content: "\f0a0"; } 1973 | 1974 | .fa-heading:before { 1975 | content: "\f1dc"; } 1976 | 1977 | .fa-headphones:before { 1978 | content: "\f025"; } 1979 | 1980 | .fa-headphones-alt:before { 1981 | content: "\f58f"; } 1982 | 1983 | .fa-headset:before { 1984 | content: "\f590"; } 1985 | 1986 | .fa-heart:before { 1987 | content: "\f004"; } 1988 | 1989 | .fa-heart-broken:before { 1990 | content: "\f7a9"; } 1991 | 1992 | .fa-heartbeat:before { 1993 | content: "\f21e"; } 1994 | 1995 | .fa-helicopter:before { 1996 | content: "\f533"; } 1997 | 1998 | .fa-highlighter:before { 1999 | content: "\f591"; } 2000 | 2001 | .fa-hiking:before { 2002 | content: "\f6ec"; } 2003 | 2004 | .fa-hippo:before { 2005 | content: "\f6ed"; } 2006 | 2007 | .fa-hips:before { 2008 | content: "\f452"; } 2009 | 2010 | .fa-hire-a-helper:before { 2011 | content: "\f3b0"; } 2012 | 2013 | .fa-history:before { 2014 | content: "\f1da"; } 2015 | 2016 | .fa-hockey-puck:before { 2017 | content: "\f453"; } 2018 | 2019 | .fa-holly-berry:before { 2020 | content: "\f7aa"; } 2021 | 2022 | .fa-home:before { 2023 | content: "\f015"; } 2024 | 2025 | .fa-hooli:before { 2026 | content: "\f427"; } 2027 | 2028 | .fa-hornbill:before { 2029 | content: "\f592"; } 2030 | 2031 | .fa-horse:before { 2032 | content: "\f6f0"; } 2033 | 2034 | .fa-horse-head:before { 2035 | content: "\f7ab"; } 2036 | 2037 | .fa-hospital:before { 2038 | content: "\f0f8"; } 2039 | 2040 | .fa-hospital-alt:before { 2041 | content: "\f47d"; } 2042 | 2043 | .fa-hospital-symbol:before { 2044 | content: "\f47e"; } 2045 | 2046 | .fa-hot-tub:before { 2047 | content: "\f593"; } 2048 | 2049 | .fa-hotel:before { 2050 | content: "\f594"; } 2051 | 2052 | .fa-hotjar:before { 2053 | content: "\f3b1"; } 2054 | 2055 | .fa-hourglass:before { 2056 | content: "\f254"; } 2057 | 2058 | .fa-hourglass-end:before { 2059 | content: "\f253"; } 2060 | 2061 | .fa-hourglass-half:before { 2062 | content: "\f252"; } 2063 | 2064 | .fa-hourglass-start:before { 2065 | content: "\f251"; } 2066 | 2067 | .fa-house-damage:before { 2068 | content: "\f6f1"; } 2069 | 2070 | .fa-houzz:before { 2071 | content: "\f27c"; } 2072 | 2073 | .fa-hryvnia:before { 2074 | content: "\f6f2"; } 2075 | 2076 | .fa-html5:before { 2077 | content: "\f13b"; } 2078 | 2079 | .fa-hubspot:before { 2080 | content: "\f3b2"; } 2081 | 2082 | .fa-i-cursor:before { 2083 | content: "\f246"; } 2084 | 2085 | .fa-icicles:before { 2086 | content: "\f7ad"; } 2087 | 2088 | .fa-id-badge:before { 2089 | content: "\f2c1"; } 2090 | 2091 | .fa-id-card:before { 2092 | content: "\f2c2"; } 2093 | 2094 | .fa-id-card-alt:before { 2095 | content: "\f47f"; } 2096 | 2097 | .fa-igloo:before { 2098 | content: "\f7ae"; } 2099 | 2100 | .fa-image:before { 2101 | content: "\f03e"; } 2102 | 2103 | .fa-images:before { 2104 | content: "\f302"; } 2105 | 2106 | .fa-imdb:before { 2107 | content: "\f2d8"; } 2108 | 2109 | .fa-inbox:before { 2110 | content: "\f01c"; } 2111 | 2112 | .fa-indent:before { 2113 | content: "\f03c"; } 2114 | 2115 | .fa-industry:before { 2116 | content: "\f275"; } 2117 | 2118 | .fa-infinity:before { 2119 | content: "\f534"; } 2120 | 2121 | .fa-info:before { 2122 | content: "\f129"; } 2123 | 2124 | .fa-info-circle:before { 2125 | content: "\f05a"; } 2126 | 2127 | .fa-instagram:before { 2128 | content: "\f16d"; } 2129 | 2130 | .fa-intercom:before { 2131 | content: "\f7af"; } 2132 | 2133 | .fa-internet-explorer:before { 2134 | content: "\f26b"; } 2135 | 2136 | .fa-invision:before { 2137 | content: "\f7b0"; } 2138 | 2139 | .fa-ioxhost:before { 2140 | content: "\f208"; } 2141 | 2142 | .fa-italic:before { 2143 | content: "\f033"; } 2144 | 2145 | .fa-itunes:before { 2146 | content: "\f3b4"; } 2147 | 2148 | .fa-itunes-note:before { 2149 | content: "\f3b5"; } 2150 | 2151 | .fa-java:before { 2152 | content: "\f4e4"; } 2153 | 2154 | .fa-jedi:before { 2155 | content: "\f669"; } 2156 | 2157 | .fa-jedi-order:before { 2158 | content: "\f50e"; } 2159 | 2160 | .fa-jenkins:before { 2161 | content: "\f3b6"; } 2162 | 2163 | .fa-jira:before { 2164 | content: "\f7b1"; } 2165 | 2166 | .fa-joget:before { 2167 | content: "\f3b7"; } 2168 | 2169 | .fa-joint:before { 2170 | content: "\f595"; } 2171 | 2172 | .fa-joomla:before { 2173 | content: "\f1aa"; } 2174 | 2175 | .fa-journal-whills:before { 2176 | content: "\f66a"; } 2177 | 2178 | .fa-js:before { 2179 | content: "\f3b8"; } 2180 | 2181 | .fa-js-square:before { 2182 | content: "\f3b9"; } 2183 | 2184 | .fa-jsfiddle:before { 2185 | content: "\f1cc"; } 2186 | 2187 | .fa-kaaba:before { 2188 | content: "\f66b"; } 2189 | 2190 | .fa-kaggle:before { 2191 | content: "\f5fa"; } 2192 | 2193 | .fa-key:before { 2194 | content: "\f084"; } 2195 | 2196 | .fa-keybase:before { 2197 | content: "\f4f5"; } 2198 | 2199 | .fa-keyboard:before { 2200 | content: "\f11c"; } 2201 | 2202 | .fa-keycdn:before { 2203 | content: "\f3ba"; } 2204 | 2205 | .fa-khanda:before { 2206 | content: "\f66d"; } 2207 | 2208 | .fa-kickstarter:before { 2209 | content: "\f3bb"; } 2210 | 2211 | .fa-kickstarter-k:before { 2212 | content: "\f3bc"; } 2213 | 2214 | .fa-kiss:before { 2215 | content: "\f596"; } 2216 | 2217 | .fa-kiss-beam:before { 2218 | content: "\f597"; } 2219 | 2220 | .fa-kiss-wink-heart:before { 2221 | content: "\f598"; } 2222 | 2223 | .fa-kiwi-bird:before { 2224 | content: "\f535"; } 2225 | 2226 | .fa-korvue:before { 2227 | content: "\f42f"; } 2228 | 2229 | .fa-landmark:before { 2230 | content: "\f66f"; } 2231 | 2232 | .fa-language:before { 2233 | content: "\f1ab"; } 2234 | 2235 | .fa-laptop:before { 2236 | content: "\f109"; } 2237 | 2238 | .fa-laptop-code:before { 2239 | content: "\f5fc"; } 2240 | 2241 | .fa-laravel:before { 2242 | content: "\f3bd"; } 2243 | 2244 | .fa-lastfm:before { 2245 | content: "\f202"; } 2246 | 2247 | .fa-lastfm-square:before { 2248 | content: "\f203"; } 2249 | 2250 | .fa-laugh:before { 2251 | content: "\f599"; } 2252 | 2253 | .fa-laugh-beam:before { 2254 | content: "\f59a"; } 2255 | 2256 | .fa-laugh-squint:before { 2257 | content: "\f59b"; } 2258 | 2259 | .fa-laugh-wink:before { 2260 | content: "\f59c"; } 2261 | 2262 | .fa-layer-group:before { 2263 | content: "\f5fd"; } 2264 | 2265 | .fa-leaf:before { 2266 | content: "\f06c"; } 2267 | 2268 | .fa-leanpub:before { 2269 | content: "\f212"; } 2270 | 2271 | .fa-lemon:before { 2272 | content: "\f094"; } 2273 | 2274 | .fa-less:before { 2275 | content: "\f41d"; } 2276 | 2277 | .fa-less-than:before { 2278 | content: "\f536"; } 2279 | 2280 | .fa-less-than-equal:before { 2281 | content: "\f537"; } 2282 | 2283 | .fa-level-down-alt:before { 2284 | content: "\f3be"; } 2285 | 2286 | .fa-level-up-alt:before { 2287 | content: "\f3bf"; } 2288 | 2289 | .fa-life-ring:before { 2290 | content: "\f1cd"; } 2291 | 2292 | .fa-lightbulb:before { 2293 | content: "\f0eb"; } 2294 | 2295 | .fa-line:before { 2296 | content: "\f3c0"; } 2297 | 2298 | .fa-link:before { 2299 | content: "\f0c1"; } 2300 | 2301 | .fa-linkedin:before { 2302 | content: "\f08c"; } 2303 | 2304 | .fa-linkedin-in:before { 2305 | content: "\f0e1"; } 2306 | 2307 | .fa-linode:before { 2308 | content: "\f2b8"; } 2309 | 2310 | .fa-linux:before { 2311 | content: "\f17c"; } 2312 | 2313 | .fa-lira-sign:before { 2314 | content: "\f195"; } 2315 | 2316 | .fa-list:before { 2317 | content: "\f03a"; } 2318 | 2319 | .fa-list-alt:before { 2320 | content: "\f022"; } 2321 | 2322 | .fa-list-ol:before { 2323 | content: "\f0cb"; } 2324 | 2325 | .fa-list-ul:before { 2326 | content: "\f0ca"; } 2327 | 2328 | .fa-location-arrow:before { 2329 | content: "\f124"; } 2330 | 2331 | .fa-lock:before { 2332 | content: "\f023"; } 2333 | 2334 | .fa-lock-open:before { 2335 | content: "\f3c1"; } 2336 | 2337 | .fa-long-arrow-alt-down:before { 2338 | content: "\f309"; } 2339 | 2340 | .fa-long-arrow-alt-left:before { 2341 | content: "\f30a"; } 2342 | 2343 | .fa-long-arrow-alt-right:before { 2344 | content: "\f30b"; } 2345 | 2346 | .fa-long-arrow-alt-up:before { 2347 | content: "\f30c"; } 2348 | 2349 | .fa-low-vision:before { 2350 | content: "\f2a8"; } 2351 | 2352 | .fa-luggage-cart:before { 2353 | content: "\f59d"; } 2354 | 2355 | .fa-lyft:before { 2356 | content: "\f3c3"; } 2357 | 2358 | .fa-magento:before { 2359 | content: "\f3c4"; } 2360 | 2361 | .fa-magic:before { 2362 | content: "\f0d0"; } 2363 | 2364 | .fa-magnet:before { 2365 | content: "\f076"; } 2366 | 2367 | .fa-mail-bulk:before { 2368 | content: "\f674"; } 2369 | 2370 | .fa-mailchimp:before { 2371 | content: "\f59e"; } 2372 | 2373 | .fa-male:before { 2374 | content: "\f183"; } 2375 | 2376 | .fa-mandalorian:before { 2377 | content: "\f50f"; } 2378 | 2379 | .fa-map:before { 2380 | content: "\f279"; } 2381 | 2382 | .fa-map-marked:before { 2383 | content: "\f59f"; } 2384 | 2385 | .fa-map-marked-alt:before { 2386 | content: "\f5a0"; } 2387 | 2388 | .fa-map-marker:before { 2389 | content: "\f041"; } 2390 | 2391 | .fa-map-marker-alt:before { 2392 | content: "\f3c5"; } 2393 | 2394 | .fa-map-pin:before { 2395 | content: "\f276"; } 2396 | 2397 | .fa-map-signs:before { 2398 | content: "\f277"; } 2399 | 2400 | .fa-markdown:before { 2401 | content: "\f60f"; } 2402 | 2403 | .fa-marker:before { 2404 | content: "\f5a1"; } 2405 | 2406 | .fa-mars:before { 2407 | content: "\f222"; } 2408 | 2409 | .fa-mars-double:before { 2410 | content: "\f227"; } 2411 | 2412 | .fa-mars-stroke:before { 2413 | content: "\f229"; } 2414 | 2415 | .fa-mars-stroke-h:before { 2416 | content: "\f22b"; } 2417 | 2418 | .fa-mars-stroke-v:before { 2419 | content: "\f22a"; } 2420 | 2421 | .fa-mask:before { 2422 | content: "\f6fa"; } 2423 | 2424 | .fa-mastodon:before { 2425 | content: "\f4f6"; } 2426 | 2427 | .fa-maxcdn:before { 2428 | content: "\f136"; } 2429 | 2430 | .fa-medal:before { 2431 | content: "\f5a2"; } 2432 | 2433 | .fa-medapps:before { 2434 | content: "\f3c6"; } 2435 | 2436 | .fa-medium:before { 2437 | content: "\f23a"; } 2438 | 2439 | .fa-medium-m:before { 2440 | content: "\f3c7"; } 2441 | 2442 | .fa-medkit:before { 2443 | content: "\f0fa"; } 2444 | 2445 | .fa-medrt:before { 2446 | content: "\f3c8"; } 2447 | 2448 | .fa-meetup:before { 2449 | content: "\f2e0"; } 2450 | 2451 | .fa-megaport:before { 2452 | content: "\f5a3"; } 2453 | 2454 | .fa-meh:before { 2455 | content: "\f11a"; } 2456 | 2457 | .fa-meh-blank:before { 2458 | content: "\f5a4"; } 2459 | 2460 | .fa-meh-rolling-eyes:before { 2461 | content: "\f5a5"; } 2462 | 2463 | .fa-memory:before { 2464 | content: "\f538"; } 2465 | 2466 | .fa-mendeley:before { 2467 | content: "\f7b3"; } 2468 | 2469 | .fa-menorah:before { 2470 | content: "\f676"; } 2471 | 2472 | .fa-mercury:before { 2473 | content: "\f223"; } 2474 | 2475 | .fa-meteor:before { 2476 | content: "\f753"; } 2477 | 2478 | .fa-microchip:before { 2479 | content: "\f2db"; } 2480 | 2481 | .fa-microphone:before { 2482 | content: "\f130"; } 2483 | 2484 | .fa-microphone-alt:before { 2485 | content: "\f3c9"; } 2486 | 2487 | .fa-microphone-alt-slash:before { 2488 | content: "\f539"; } 2489 | 2490 | .fa-microphone-slash:before { 2491 | content: "\f131"; } 2492 | 2493 | .fa-microscope:before { 2494 | content: "\f610"; } 2495 | 2496 | .fa-microsoft:before { 2497 | content: "\f3ca"; } 2498 | 2499 | .fa-minus:before { 2500 | content: "\f068"; } 2501 | 2502 | .fa-minus-circle:before { 2503 | content: "\f056"; } 2504 | 2505 | .fa-minus-square:before { 2506 | content: "\f146"; } 2507 | 2508 | .fa-mitten:before { 2509 | content: "\f7b5"; } 2510 | 2511 | .fa-mix:before { 2512 | content: "\f3cb"; } 2513 | 2514 | .fa-mixcloud:before { 2515 | content: "\f289"; } 2516 | 2517 | .fa-mizuni:before { 2518 | content: "\f3cc"; } 2519 | 2520 | .fa-mobile:before { 2521 | content: "\f10b"; } 2522 | 2523 | .fa-mobile-alt:before { 2524 | content: "\f3cd"; } 2525 | 2526 | .fa-modx:before { 2527 | content: "\f285"; } 2528 | 2529 | .fa-monero:before { 2530 | content: "\f3d0"; } 2531 | 2532 | .fa-money-bill:before { 2533 | content: "\f0d6"; } 2534 | 2535 | .fa-money-bill-alt:before { 2536 | content: "\f3d1"; } 2537 | 2538 | .fa-money-bill-wave:before { 2539 | content: "\f53a"; } 2540 | 2541 | .fa-money-bill-wave-alt:before { 2542 | content: "\f53b"; } 2543 | 2544 | .fa-money-check:before { 2545 | content: "\f53c"; } 2546 | 2547 | .fa-money-check-alt:before { 2548 | content: "\f53d"; } 2549 | 2550 | .fa-monument:before { 2551 | content: "\f5a6"; } 2552 | 2553 | .fa-moon:before { 2554 | content: "\f186"; } 2555 | 2556 | .fa-mortar-pestle:before { 2557 | content: "\f5a7"; } 2558 | 2559 | .fa-mosque:before { 2560 | content: "\f678"; } 2561 | 2562 | .fa-motorcycle:before { 2563 | content: "\f21c"; } 2564 | 2565 | .fa-mountain:before { 2566 | content: "\f6fc"; } 2567 | 2568 | .fa-mouse-pointer:before { 2569 | content: "\f245"; } 2570 | 2571 | .fa-mug-hot:before { 2572 | content: "\f7b6"; } 2573 | 2574 | .fa-music:before { 2575 | content: "\f001"; } 2576 | 2577 | .fa-napster:before { 2578 | content: "\f3d2"; } 2579 | 2580 | .fa-neos:before { 2581 | content: "\f612"; } 2582 | 2583 | .fa-network-wired:before { 2584 | content: "\f6ff"; } 2585 | 2586 | .fa-neuter:before { 2587 | content: "\f22c"; } 2588 | 2589 | .fa-newspaper:before { 2590 | content: "\f1ea"; } 2591 | 2592 | .fa-nimblr:before { 2593 | content: "\f5a8"; } 2594 | 2595 | .fa-nintendo-switch:before { 2596 | content: "\f418"; } 2597 | 2598 | .fa-node:before { 2599 | content: "\f419"; } 2600 | 2601 | .fa-node-js:before { 2602 | content: "\f3d3"; } 2603 | 2604 | .fa-not-equal:before { 2605 | content: "\f53e"; } 2606 | 2607 | .fa-notes-medical:before { 2608 | content: "\f481"; } 2609 | 2610 | .fa-npm:before { 2611 | content: "\f3d4"; } 2612 | 2613 | .fa-ns8:before { 2614 | content: "\f3d5"; } 2615 | 2616 | .fa-nutritionix:before { 2617 | content: "\f3d6"; } 2618 | 2619 | .fa-object-group:before { 2620 | content: "\f247"; } 2621 | 2622 | .fa-object-ungroup:before { 2623 | content: "\f248"; } 2624 | 2625 | .fa-odnoklassniki:before { 2626 | content: "\f263"; } 2627 | 2628 | .fa-odnoklassniki-square:before { 2629 | content: "\f264"; } 2630 | 2631 | .fa-oil-can:before { 2632 | content: "\f613"; } 2633 | 2634 | .fa-old-republic:before { 2635 | content: "\f510"; } 2636 | 2637 | .fa-om:before { 2638 | content: "\f679"; } 2639 | 2640 | .fa-opencart:before { 2641 | content: "\f23d"; } 2642 | 2643 | .fa-openid:before { 2644 | content: "\f19b"; } 2645 | 2646 | .fa-opera:before { 2647 | content: "\f26a"; } 2648 | 2649 | .fa-optin-monster:before { 2650 | content: "\f23c"; } 2651 | 2652 | .fa-osi:before { 2653 | content: "\f41a"; } 2654 | 2655 | .fa-otter:before { 2656 | content: "\f700"; } 2657 | 2658 | .fa-outdent:before { 2659 | content: "\f03b"; } 2660 | 2661 | .fa-page4:before { 2662 | content: "\f3d7"; } 2663 | 2664 | .fa-pagelines:before { 2665 | content: "\f18c"; } 2666 | 2667 | .fa-paint-brush:before { 2668 | content: "\f1fc"; } 2669 | 2670 | .fa-paint-roller:before { 2671 | content: "\f5aa"; } 2672 | 2673 | .fa-palette:before { 2674 | content: "\f53f"; } 2675 | 2676 | .fa-palfed:before { 2677 | content: "\f3d8"; } 2678 | 2679 | .fa-pallet:before { 2680 | content: "\f482"; } 2681 | 2682 | .fa-paper-plane:before { 2683 | content: "\f1d8"; } 2684 | 2685 | .fa-paperclip:before { 2686 | content: "\f0c6"; } 2687 | 2688 | .fa-parachute-box:before { 2689 | content: "\f4cd"; } 2690 | 2691 | .fa-paragraph:before { 2692 | content: "\f1dd"; } 2693 | 2694 | .fa-parking:before { 2695 | content: "\f540"; } 2696 | 2697 | .fa-passport:before { 2698 | content: "\f5ab"; } 2699 | 2700 | .fa-pastafarianism:before { 2701 | content: "\f67b"; } 2702 | 2703 | .fa-paste:before { 2704 | content: "\f0ea"; } 2705 | 2706 | .fa-patreon:before { 2707 | content: "\f3d9"; } 2708 | 2709 | .fa-pause:before { 2710 | content: "\f04c"; } 2711 | 2712 | .fa-pause-circle:before { 2713 | content: "\f28b"; } 2714 | 2715 | .fa-paw:before { 2716 | content: "\f1b0"; } 2717 | 2718 | .fa-paypal:before { 2719 | content: "\f1ed"; } 2720 | 2721 | .fa-peace:before { 2722 | content: "\f67c"; } 2723 | 2724 | .fa-pen:before { 2725 | content: "\f304"; } 2726 | 2727 | .fa-pen-alt:before { 2728 | content: "\f305"; } 2729 | 2730 | .fa-pen-fancy:before { 2731 | content: "\f5ac"; } 2732 | 2733 | .fa-pen-nib:before { 2734 | content: "\f5ad"; } 2735 | 2736 | .fa-pen-square:before { 2737 | content: "\f14b"; } 2738 | 2739 | .fa-pencil-alt:before { 2740 | content: "\f303"; } 2741 | 2742 | .fa-pencil-ruler:before { 2743 | content: "\f5ae"; } 2744 | 2745 | .fa-penny-arcade:before { 2746 | content: "\f704"; } 2747 | 2748 | .fa-people-carry:before { 2749 | content: "\f4ce"; } 2750 | 2751 | .fa-percent:before { 2752 | content: "\f295"; } 2753 | 2754 | .fa-percentage:before { 2755 | content: "\f541"; } 2756 | 2757 | .fa-periscope:before { 2758 | content: "\f3da"; } 2759 | 2760 | .fa-person-booth:before { 2761 | content: "\f756"; } 2762 | 2763 | .fa-phabricator:before { 2764 | content: "\f3db"; } 2765 | 2766 | .fa-phoenix-framework:before { 2767 | content: "\f3dc"; } 2768 | 2769 | .fa-phoenix-squadron:before { 2770 | content: "\f511"; } 2771 | 2772 | .fa-phone:before { 2773 | content: "\f095"; } 2774 | 2775 | .fa-phone-slash:before { 2776 | content: "\f3dd"; } 2777 | 2778 | .fa-phone-square:before { 2779 | content: "\f098"; } 2780 | 2781 | .fa-phone-volume:before { 2782 | content: "\f2a0"; } 2783 | 2784 | .fa-php:before { 2785 | content: "\f457"; } 2786 | 2787 | .fa-pied-piper:before { 2788 | content: "\f2ae"; } 2789 | 2790 | .fa-pied-piper-alt:before { 2791 | content: "\f1a8"; } 2792 | 2793 | .fa-pied-piper-hat:before { 2794 | content: "\f4e5"; } 2795 | 2796 | .fa-pied-piper-pp:before { 2797 | content: "\f1a7"; } 2798 | 2799 | .fa-piggy-bank:before { 2800 | content: "\f4d3"; } 2801 | 2802 | .fa-pills:before { 2803 | content: "\f484"; } 2804 | 2805 | .fa-pinterest:before { 2806 | content: "\f0d2"; } 2807 | 2808 | .fa-pinterest-p:before { 2809 | content: "\f231"; } 2810 | 2811 | .fa-pinterest-square:before { 2812 | content: "\f0d3"; } 2813 | 2814 | .fa-place-of-worship:before { 2815 | content: "\f67f"; } 2816 | 2817 | .fa-plane:before { 2818 | content: "\f072"; } 2819 | 2820 | .fa-plane-arrival:before { 2821 | content: "\f5af"; } 2822 | 2823 | .fa-plane-departure:before { 2824 | content: "\f5b0"; } 2825 | 2826 | .fa-play:before { 2827 | content: "\f04b"; } 2828 | 2829 | .fa-play-circle:before { 2830 | content: "\f144"; } 2831 | 2832 | .fa-playstation:before { 2833 | content: "\f3df"; } 2834 | 2835 | .fa-plug:before { 2836 | content: "\f1e6"; } 2837 | 2838 | .fa-plus:before { 2839 | content: "\f067"; } 2840 | 2841 | .fa-plus-circle:before { 2842 | content: "\f055"; } 2843 | 2844 | .fa-plus-square:before { 2845 | content: "\f0fe"; } 2846 | 2847 | .fa-podcast:before { 2848 | content: "\f2ce"; } 2849 | 2850 | .fa-poll:before { 2851 | content: "\f681"; } 2852 | 2853 | .fa-poll-h:before { 2854 | content: "\f682"; } 2855 | 2856 | .fa-poo:before { 2857 | content: "\f2fe"; } 2858 | 2859 | .fa-poo-storm:before { 2860 | content: "\f75a"; } 2861 | 2862 | .fa-poop:before { 2863 | content: "\f619"; } 2864 | 2865 | .fa-portrait:before { 2866 | content: "\f3e0"; } 2867 | 2868 | .fa-pound-sign:before { 2869 | content: "\f154"; } 2870 | 2871 | .fa-power-off:before { 2872 | content: "\f011"; } 2873 | 2874 | .fa-pray:before { 2875 | content: "\f683"; } 2876 | 2877 | .fa-praying-hands:before { 2878 | content: "\f684"; } 2879 | 2880 | .fa-prescription:before { 2881 | content: "\f5b1"; } 2882 | 2883 | .fa-prescription-bottle:before { 2884 | content: "\f485"; } 2885 | 2886 | .fa-prescription-bottle-alt:before { 2887 | content: "\f486"; } 2888 | 2889 | .fa-print:before { 2890 | content: "\f02f"; } 2891 | 2892 | .fa-procedures:before { 2893 | content: "\f487"; } 2894 | 2895 | .fa-product-hunt:before { 2896 | content: "\f288"; } 2897 | 2898 | .fa-project-diagram:before { 2899 | content: "\f542"; } 2900 | 2901 | .fa-pushed:before { 2902 | content: "\f3e1"; } 2903 | 2904 | .fa-puzzle-piece:before { 2905 | content: "\f12e"; } 2906 | 2907 | .fa-python:before { 2908 | content: "\f3e2"; } 2909 | 2910 | .fa-qq:before { 2911 | content: "\f1d6"; } 2912 | 2913 | .fa-qrcode:before { 2914 | content: "\f029"; } 2915 | 2916 | .fa-question:before { 2917 | content: "\f128"; } 2918 | 2919 | .fa-question-circle:before { 2920 | content: "\f059"; } 2921 | 2922 | .fa-quidditch:before { 2923 | content: "\f458"; } 2924 | 2925 | .fa-quinscape:before { 2926 | content: "\f459"; } 2927 | 2928 | .fa-quora:before { 2929 | content: "\f2c4"; } 2930 | 2931 | .fa-quote-left:before { 2932 | content: "\f10d"; } 2933 | 2934 | .fa-quote-right:before { 2935 | content: "\f10e"; } 2936 | 2937 | .fa-quran:before { 2938 | content: "\f687"; } 2939 | 2940 | .fa-r-project:before { 2941 | content: "\f4f7"; } 2942 | 2943 | .fa-radiation:before { 2944 | content: "\f7b9"; } 2945 | 2946 | .fa-radiation-alt:before { 2947 | content: "\f7ba"; } 2948 | 2949 | .fa-rainbow:before { 2950 | content: "\f75b"; } 2951 | 2952 | .fa-random:before { 2953 | content: "\f074"; } 2954 | 2955 | .fa-raspberry-pi:before { 2956 | content: "\f7bb"; } 2957 | 2958 | .fa-ravelry:before { 2959 | content: "\f2d9"; } 2960 | 2961 | .fa-react:before { 2962 | content: "\f41b"; } 2963 | 2964 | .fa-reacteurope:before { 2965 | content: "\f75d"; } 2966 | 2967 | .fa-readme:before { 2968 | content: "\f4d5"; } 2969 | 2970 | .fa-rebel:before { 2971 | content: "\f1d0"; } 2972 | 2973 | .fa-receipt:before { 2974 | content: "\f543"; } 2975 | 2976 | .fa-recycle:before { 2977 | content: "\f1b8"; } 2978 | 2979 | .fa-red-river:before { 2980 | content: "\f3e3"; } 2981 | 2982 | .fa-reddit:before { 2983 | content: "\f1a1"; } 2984 | 2985 | .fa-reddit-alien:before { 2986 | content: "\f281"; } 2987 | 2988 | .fa-reddit-square:before { 2989 | content: "\f1a2"; } 2990 | 2991 | .fa-redhat:before { 2992 | content: "\f7bc"; } 2993 | 2994 | .fa-redo:before { 2995 | content: "\f01e"; } 2996 | 2997 | .fa-redo-alt:before { 2998 | content: "\f2f9"; } 2999 | 3000 | .fa-registered:before { 3001 | content: "\f25d"; } 3002 | 3003 | .fa-renren:before { 3004 | content: "\f18b"; } 3005 | 3006 | .fa-reply:before { 3007 | content: "\f3e5"; } 3008 | 3009 | .fa-reply-all:before { 3010 | content: "\f122"; } 3011 | 3012 | .fa-replyd:before { 3013 | content: "\f3e6"; } 3014 | 3015 | .fa-republican:before { 3016 | content: "\f75e"; } 3017 | 3018 | .fa-researchgate:before { 3019 | content: "\f4f8"; } 3020 | 3021 | .fa-resolving:before { 3022 | content: "\f3e7"; } 3023 | 3024 | .fa-restroom:before { 3025 | content: "\f7bd"; } 3026 | 3027 | .fa-retweet:before { 3028 | content: "\f079"; } 3029 | 3030 | .fa-rev:before { 3031 | content: "\f5b2"; } 3032 | 3033 | .fa-ribbon:before { 3034 | content: "\f4d6"; } 3035 | 3036 | .fa-ring:before { 3037 | content: "\f70b"; } 3038 | 3039 | .fa-road:before { 3040 | content: "\f018"; } 3041 | 3042 | .fa-robot:before { 3043 | content: "\f544"; } 3044 | 3045 | .fa-rocket:before { 3046 | content: "\f135"; } 3047 | 3048 | .fa-rocketchat:before { 3049 | content: "\f3e8"; } 3050 | 3051 | .fa-rockrms:before { 3052 | content: "\f3e9"; } 3053 | 3054 | .fa-route:before { 3055 | content: "\f4d7"; } 3056 | 3057 | .fa-rss:before { 3058 | content: "\f09e"; } 3059 | 3060 | .fa-rss-square:before { 3061 | content: "\f143"; } 3062 | 3063 | .fa-ruble-sign:before { 3064 | content: "\f158"; } 3065 | 3066 | .fa-ruler:before { 3067 | content: "\f545"; } 3068 | 3069 | .fa-ruler-combined:before { 3070 | content: "\f546"; } 3071 | 3072 | .fa-ruler-horizontal:before { 3073 | content: "\f547"; } 3074 | 3075 | .fa-ruler-vertical:before { 3076 | content: "\f548"; } 3077 | 3078 | .fa-running:before { 3079 | content: "\f70c"; } 3080 | 3081 | .fa-rupee-sign:before { 3082 | content: "\f156"; } 3083 | 3084 | .fa-sad-cry:before { 3085 | content: "\f5b3"; } 3086 | 3087 | .fa-sad-tear:before { 3088 | content: "\f5b4"; } 3089 | 3090 | .fa-safari:before { 3091 | content: "\f267"; } 3092 | 3093 | .fa-sass:before { 3094 | content: "\f41e"; } 3095 | 3096 | .fa-satellite:before { 3097 | content: "\f7bf"; } 3098 | 3099 | .fa-satellite-dish:before { 3100 | content: "\f7c0"; } 3101 | 3102 | .fa-save:before { 3103 | content: "\f0c7"; } 3104 | 3105 | .fa-schlix:before { 3106 | content: "\f3ea"; } 3107 | 3108 | .fa-school:before { 3109 | content: "\f549"; } 3110 | 3111 | .fa-screwdriver:before { 3112 | content: "\f54a"; } 3113 | 3114 | .fa-scribd:before { 3115 | content: "\f28a"; } 3116 | 3117 | .fa-scroll:before { 3118 | content: "\f70e"; } 3119 | 3120 | .fa-sd-card:before { 3121 | content: "\f7c2"; } 3122 | 3123 | .fa-search:before { 3124 | content: "\f002"; } 3125 | 3126 | .fa-search-dollar:before { 3127 | content: "\f688"; } 3128 | 3129 | .fa-search-location:before { 3130 | content: "\f689"; } 3131 | 3132 | .fa-search-minus:before { 3133 | content: "\f010"; } 3134 | 3135 | .fa-search-plus:before { 3136 | content: "\f00e"; } 3137 | 3138 | .fa-searchengin:before { 3139 | content: "\f3eb"; } 3140 | 3141 | .fa-seedling:before { 3142 | content: "\f4d8"; } 3143 | 3144 | .fa-sellcast:before { 3145 | content: "\f2da"; } 3146 | 3147 | .fa-sellsy:before { 3148 | content: "\f213"; } 3149 | 3150 | .fa-server:before { 3151 | content: "\f233"; } 3152 | 3153 | .fa-servicestack:before { 3154 | content: "\f3ec"; } 3155 | 3156 | .fa-shapes:before { 3157 | content: "\f61f"; } 3158 | 3159 | .fa-share:before { 3160 | content: "\f064"; } 3161 | 3162 | .fa-share-alt:before { 3163 | content: "\f1e0"; } 3164 | 3165 | .fa-share-alt-square:before { 3166 | content: "\f1e1"; } 3167 | 3168 | .fa-share-square:before { 3169 | content: "\f14d"; } 3170 | 3171 | .fa-shekel-sign:before { 3172 | content: "\f20b"; } 3173 | 3174 | .fa-shield-alt:before { 3175 | content: "\f3ed"; } 3176 | 3177 | .fa-ship:before { 3178 | content: "\f21a"; } 3179 | 3180 | .fa-shipping-fast:before { 3181 | content: "\f48b"; } 3182 | 3183 | .fa-shirtsinbulk:before { 3184 | content: "\f214"; } 3185 | 3186 | .fa-shoe-prints:before { 3187 | content: "\f54b"; } 3188 | 3189 | .fa-shopping-bag:before { 3190 | content: "\f290"; } 3191 | 3192 | .fa-shopping-basket:before { 3193 | content: "\f291"; } 3194 | 3195 | .fa-shopping-cart:before { 3196 | content: "\f07a"; } 3197 | 3198 | .fa-shopware:before { 3199 | content: "\f5b5"; } 3200 | 3201 | .fa-shower:before { 3202 | content: "\f2cc"; } 3203 | 3204 | .fa-shuttle-van:before { 3205 | content: "\f5b6"; } 3206 | 3207 | .fa-sign:before { 3208 | content: "\f4d9"; } 3209 | 3210 | .fa-sign-in-alt:before { 3211 | content: "\f2f6"; } 3212 | 3213 | .fa-sign-language:before { 3214 | content: "\f2a7"; } 3215 | 3216 | .fa-sign-out-alt:before { 3217 | content: "\f2f5"; } 3218 | 3219 | .fa-signal:before { 3220 | content: "\f012"; } 3221 | 3222 | .fa-signature:before { 3223 | content: "\f5b7"; } 3224 | 3225 | .fa-sim-card:before { 3226 | content: "\f7c4"; } 3227 | 3228 | .fa-simplybuilt:before { 3229 | content: "\f215"; } 3230 | 3231 | .fa-sistrix:before { 3232 | content: "\f3ee"; } 3233 | 3234 | .fa-sitemap:before { 3235 | content: "\f0e8"; } 3236 | 3237 | .fa-sith:before { 3238 | content: "\f512"; } 3239 | 3240 | .fa-skating:before { 3241 | content: "\f7c5"; } 3242 | 3243 | .fa-sketch:before { 3244 | content: "\f7c6"; } 3245 | 3246 | .fa-skiing:before { 3247 | content: "\f7c9"; } 3248 | 3249 | .fa-skiing-nordic:before { 3250 | content: "\f7ca"; } 3251 | 3252 | .fa-skull:before { 3253 | content: "\f54c"; } 3254 | 3255 | .fa-skull-crossbones:before { 3256 | content: "\f714"; } 3257 | 3258 | .fa-skyatlas:before { 3259 | content: "\f216"; } 3260 | 3261 | .fa-skype:before { 3262 | content: "\f17e"; } 3263 | 3264 | .fa-slack:before { 3265 | content: "\f198"; } 3266 | 3267 | .fa-slack-hash:before { 3268 | content: "\f3ef"; } 3269 | 3270 | .fa-slash:before { 3271 | content: "\f715"; } 3272 | 3273 | .fa-sleigh:before { 3274 | content: "\f7cc"; } 3275 | 3276 | .fa-sliders-h:before { 3277 | content: "\f1de"; } 3278 | 3279 | .fa-slideshare:before { 3280 | content: "\f1e7"; } 3281 | 3282 | .fa-smile:before { 3283 | content: "\f118"; } 3284 | 3285 | .fa-smile-beam:before { 3286 | content: "\f5b8"; } 3287 | 3288 | .fa-smile-wink:before { 3289 | content: "\f4da"; } 3290 | 3291 | .fa-smog:before { 3292 | content: "\f75f"; } 3293 | 3294 | .fa-smoking:before { 3295 | content: "\f48d"; } 3296 | 3297 | .fa-smoking-ban:before { 3298 | content: "\f54d"; } 3299 | 3300 | .fa-sms:before { 3301 | content: "\f7cd"; } 3302 | 3303 | .fa-snapchat:before { 3304 | content: "\f2ab"; } 3305 | 3306 | .fa-snapchat-ghost:before { 3307 | content: "\f2ac"; } 3308 | 3309 | .fa-snapchat-square:before { 3310 | content: "\f2ad"; } 3311 | 3312 | .fa-snowboarding:before { 3313 | content: "\f7ce"; } 3314 | 3315 | .fa-snowflake:before { 3316 | content: "\f2dc"; } 3317 | 3318 | .fa-snowman:before { 3319 | content: "\f7d0"; } 3320 | 3321 | .fa-snowplow:before { 3322 | content: "\f7d2"; } 3323 | 3324 | .fa-socks:before { 3325 | content: "\f696"; } 3326 | 3327 | .fa-solar-panel:before { 3328 | content: "\f5ba"; } 3329 | 3330 | .fa-sort:before { 3331 | content: "\f0dc"; } 3332 | 3333 | .fa-sort-alpha-down:before { 3334 | content: "\f15d"; } 3335 | 3336 | .fa-sort-alpha-up:before { 3337 | content: "\f15e"; } 3338 | 3339 | .fa-sort-amount-down:before { 3340 | content: "\f160"; } 3341 | 3342 | .fa-sort-amount-up:before { 3343 | content: "\f161"; } 3344 | 3345 | .fa-sort-down:before { 3346 | content: "\f0dd"; } 3347 | 3348 | .fa-sort-numeric-down:before { 3349 | content: "\f162"; } 3350 | 3351 | .fa-sort-numeric-up:before { 3352 | content: "\f163"; } 3353 | 3354 | .fa-sort-up:before { 3355 | content: "\f0de"; } 3356 | 3357 | .fa-soundcloud:before { 3358 | content: "\f1be"; } 3359 | 3360 | .fa-sourcetree:before { 3361 | content: "\f7d3"; } 3362 | 3363 | .fa-spa:before { 3364 | content: "\f5bb"; } 3365 | 3366 | .fa-space-shuttle:before { 3367 | content: "\f197"; } 3368 | 3369 | .fa-speakap:before { 3370 | content: "\f3f3"; } 3371 | 3372 | .fa-spider:before { 3373 | content: "\f717"; } 3374 | 3375 | .fa-spinner:before { 3376 | content: "\f110"; } 3377 | 3378 | .fa-splotch:before { 3379 | content: "\f5bc"; } 3380 | 3381 | .fa-spotify:before { 3382 | content: "\f1bc"; } 3383 | 3384 | .fa-spray-can:before { 3385 | content: "\f5bd"; } 3386 | 3387 | .fa-square:before { 3388 | content: "\f0c8"; } 3389 | 3390 | .fa-square-full:before { 3391 | content: "\f45c"; } 3392 | 3393 | .fa-square-root-alt:before { 3394 | content: "\f698"; } 3395 | 3396 | .fa-squarespace:before { 3397 | content: "\f5be"; } 3398 | 3399 | .fa-stack-exchange:before { 3400 | content: "\f18d"; } 3401 | 3402 | .fa-stack-overflow:before { 3403 | content: "\f16c"; } 3404 | 3405 | .fa-stamp:before { 3406 | content: "\f5bf"; } 3407 | 3408 | .fa-star:before { 3409 | content: "\f005"; } 3410 | 3411 | .fa-star-and-crescent:before { 3412 | content: "\f699"; } 3413 | 3414 | .fa-star-half:before { 3415 | content: "\f089"; } 3416 | 3417 | .fa-star-half-alt:before { 3418 | content: "\f5c0"; } 3419 | 3420 | .fa-star-of-david:before { 3421 | content: "\f69a"; } 3422 | 3423 | .fa-star-of-life:before { 3424 | content: "\f621"; } 3425 | 3426 | .fa-staylinked:before { 3427 | content: "\f3f5"; } 3428 | 3429 | .fa-steam:before { 3430 | content: "\f1b6"; } 3431 | 3432 | .fa-steam-square:before { 3433 | content: "\f1b7"; } 3434 | 3435 | .fa-steam-symbol:before { 3436 | content: "\f3f6"; } 3437 | 3438 | .fa-step-backward:before { 3439 | content: "\f048"; } 3440 | 3441 | .fa-step-forward:before { 3442 | content: "\f051"; } 3443 | 3444 | .fa-stethoscope:before { 3445 | content: "\f0f1"; } 3446 | 3447 | .fa-sticker-mule:before { 3448 | content: "\f3f7"; } 3449 | 3450 | .fa-sticky-note:before { 3451 | content: "\f249"; } 3452 | 3453 | .fa-stop:before { 3454 | content: "\f04d"; } 3455 | 3456 | .fa-stop-circle:before { 3457 | content: "\f28d"; } 3458 | 3459 | .fa-stopwatch:before { 3460 | content: "\f2f2"; } 3461 | 3462 | .fa-store:before { 3463 | content: "\f54e"; } 3464 | 3465 | .fa-store-alt:before { 3466 | content: "\f54f"; } 3467 | 3468 | .fa-strava:before { 3469 | content: "\f428"; } 3470 | 3471 | .fa-stream:before { 3472 | content: "\f550"; } 3473 | 3474 | .fa-street-view:before { 3475 | content: "\f21d"; } 3476 | 3477 | .fa-strikethrough:before { 3478 | content: "\f0cc"; } 3479 | 3480 | .fa-stripe:before { 3481 | content: "\f429"; } 3482 | 3483 | .fa-stripe-s:before { 3484 | content: "\f42a"; } 3485 | 3486 | .fa-stroopwafel:before { 3487 | content: "\f551"; } 3488 | 3489 | .fa-studiovinari:before { 3490 | content: "\f3f8"; } 3491 | 3492 | .fa-stumbleupon:before { 3493 | content: "\f1a4"; } 3494 | 3495 | .fa-stumbleupon-circle:before { 3496 | content: "\f1a3"; } 3497 | 3498 | .fa-subscript:before { 3499 | content: "\f12c"; } 3500 | 3501 | .fa-subway:before { 3502 | content: "\f239"; } 3503 | 3504 | .fa-suitcase:before { 3505 | content: "\f0f2"; } 3506 | 3507 | .fa-suitcase-rolling:before { 3508 | content: "\f5c1"; } 3509 | 3510 | .fa-sun:before { 3511 | content: "\f185"; } 3512 | 3513 | .fa-superpowers:before { 3514 | content: "\f2dd"; } 3515 | 3516 | .fa-superscript:before { 3517 | content: "\f12b"; } 3518 | 3519 | .fa-supple:before { 3520 | content: "\f3f9"; } 3521 | 3522 | .fa-surprise:before { 3523 | content: "\f5c2"; } 3524 | 3525 | .fa-suse:before { 3526 | content: "\f7d6"; } 3527 | 3528 | .fa-swatchbook:before { 3529 | content: "\f5c3"; } 3530 | 3531 | .fa-swimmer:before { 3532 | content: "\f5c4"; } 3533 | 3534 | .fa-swimming-pool:before { 3535 | content: "\f5c5"; } 3536 | 3537 | .fa-synagogue:before { 3538 | content: "\f69b"; } 3539 | 3540 | .fa-sync:before { 3541 | content: "\f021"; } 3542 | 3543 | .fa-sync-alt:before { 3544 | content: "\f2f1"; } 3545 | 3546 | .fa-syringe:before { 3547 | content: "\f48e"; } 3548 | 3549 | .fa-table:before { 3550 | content: "\f0ce"; } 3551 | 3552 | .fa-table-tennis:before { 3553 | content: "\f45d"; } 3554 | 3555 | .fa-tablet:before { 3556 | content: "\f10a"; } 3557 | 3558 | .fa-tablet-alt:before { 3559 | content: "\f3fa"; } 3560 | 3561 | .fa-tablets:before { 3562 | content: "\f490"; } 3563 | 3564 | .fa-tachometer-alt:before { 3565 | content: "\f3fd"; } 3566 | 3567 | .fa-tag:before { 3568 | content: "\f02b"; } 3569 | 3570 | .fa-tags:before { 3571 | content: "\f02c"; } 3572 | 3573 | .fa-tape:before { 3574 | content: "\f4db"; } 3575 | 3576 | .fa-tasks:before { 3577 | content: "\f0ae"; } 3578 | 3579 | .fa-taxi:before { 3580 | content: "\f1ba"; } 3581 | 3582 | .fa-teamspeak:before { 3583 | content: "\f4f9"; } 3584 | 3585 | .fa-teeth:before { 3586 | content: "\f62e"; } 3587 | 3588 | .fa-teeth-open:before { 3589 | content: "\f62f"; } 3590 | 3591 | .fa-telegram:before { 3592 | content: "\f2c6"; } 3593 | 3594 | .fa-telegram-plane:before { 3595 | content: "\f3fe"; } 3596 | 3597 | .fa-temperature-high:before { 3598 | content: "\f769"; } 3599 | 3600 | .fa-temperature-low:before { 3601 | content: "\f76b"; } 3602 | 3603 | .fa-tencent-weibo:before { 3604 | content: "\f1d5"; } 3605 | 3606 | .fa-tenge:before { 3607 | content: "\f7d7"; } 3608 | 3609 | .fa-terminal:before { 3610 | content: "\f120"; } 3611 | 3612 | .fa-text-height:before { 3613 | content: "\f034"; } 3614 | 3615 | .fa-text-width:before { 3616 | content: "\f035"; } 3617 | 3618 | .fa-th:before { 3619 | content: "\f00a"; } 3620 | 3621 | .fa-th-large:before { 3622 | content: "\f009"; } 3623 | 3624 | .fa-th-list:before { 3625 | content: "\f00b"; } 3626 | 3627 | .fa-the-red-yeti:before { 3628 | content: "\f69d"; } 3629 | 3630 | .fa-theater-masks:before { 3631 | content: "\f630"; } 3632 | 3633 | .fa-themeco:before { 3634 | content: "\f5c6"; } 3635 | 3636 | .fa-themeisle:before { 3637 | content: "\f2b2"; } 3638 | 3639 | .fa-thermometer:before { 3640 | content: "\f491"; } 3641 | 3642 | .fa-thermometer-empty:before { 3643 | content: "\f2cb"; } 3644 | 3645 | .fa-thermometer-full:before { 3646 | content: "\f2c7"; } 3647 | 3648 | .fa-thermometer-half:before { 3649 | content: "\f2c9"; } 3650 | 3651 | .fa-thermometer-quarter:before { 3652 | content: "\f2ca"; } 3653 | 3654 | .fa-thermometer-three-quarters:before { 3655 | content: "\f2c8"; } 3656 | 3657 | .fa-think-peaks:before { 3658 | content: "\f731"; } 3659 | 3660 | .fa-thumbs-down:before { 3661 | content: "\f165"; } 3662 | 3663 | .fa-thumbs-up:before { 3664 | content: "\f164"; } 3665 | 3666 | .fa-thumbtack:before { 3667 | content: "\f08d"; } 3668 | 3669 | .fa-ticket-alt:before { 3670 | content: "\f3ff"; } 3671 | 3672 | .fa-times:before { 3673 | content: "\f00d"; } 3674 | 3675 | .fa-times-circle:before { 3676 | content: "\f057"; } 3677 | 3678 | .fa-tint:before { 3679 | content: "\f043"; } 3680 | 3681 | .fa-tint-slash:before { 3682 | content: "\f5c7"; } 3683 | 3684 | .fa-tired:before { 3685 | content: "\f5c8"; } 3686 | 3687 | .fa-toggle-off:before { 3688 | content: "\f204"; } 3689 | 3690 | .fa-toggle-on:before { 3691 | content: "\f205"; } 3692 | 3693 | .fa-toilet:before { 3694 | content: "\f7d8"; } 3695 | 3696 | .fa-toilet-paper:before { 3697 | content: "\f71e"; } 3698 | 3699 | .fa-toolbox:before { 3700 | content: "\f552"; } 3701 | 3702 | .fa-tools:before { 3703 | content: "\f7d9"; } 3704 | 3705 | .fa-tooth:before { 3706 | content: "\f5c9"; } 3707 | 3708 | .fa-torah:before { 3709 | content: "\f6a0"; } 3710 | 3711 | .fa-torii-gate:before { 3712 | content: "\f6a1"; } 3713 | 3714 | .fa-tractor:before { 3715 | content: "\f722"; } 3716 | 3717 | .fa-trade-federation:before { 3718 | content: "\f513"; } 3719 | 3720 | .fa-trademark:before { 3721 | content: "\f25c"; } 3722 | 3723 | .fa-traffic-light:before { 3724 | content: "\f637"; } 3725 | 3726 | .fa-train:before { 3727 | content: "\f238"; } 3728 | 3729 | .fa-tram:before { 3730 | content: "\f7da"; } 3731 | 3732 | .fa-transgender:before { 3733 | content: "\f224"; } 3734 | 3735 | .fa-transgender-alt:before { 3736 | content: "\f225"; } 3737 | 3738 | .fa-trash:before { 3739 | content: "\f1f8"; } 3740 | 3741 | .fa-trash-alt:before { 3742 | content: "\f2ed"; } 3743 | 3744 | .fa-tree:before { 3745 | content: "\f1bb"; } 3746 | 3747 | .fa-trello:before { 3748 | content: "\f181"; } 3749 | 3750 | .fa-tripadvisor:before { 3751 | content: "\f262"; } 3752 | 3753 | .fa-trophy:before { 3754 | content: "\f091"; } 3755 | 3756 | .fa-truck:before { 3757 | content: "\f0d1"; } 3758 | 3759 | .fa-truck-loading:before { 3760 | content: "\f4de"; } 3761 | 3762 | .fa-truck-monster:before { 3763 | content: "\f63b"; } 3764 | 3765 | .fa-truck-moving:before { 3766 | content: "\f4df"; } 3767 | 3768 | .fa-truck-pickup:before { 3769 | content: "\f63c"; } 3770 | 3771 | .fa-tshirt:before { 3772 | content: "\f553"; } 3773 | 3774 | .fa-tty:before { 3775 | content: "\f1e4"; } 3776 | 3777 | .fa-tumblr:before { 3778 | content: "\f173"; } 3779 | 3780 | .fa-tumblr-square:before { 3781 | content: "\f174"; } 3782 | 3783 | .fa-tv:before { 3784 | content: "\f26c"; } 3785 | 3786 | .fa-twitch:before { 3787 | content: "\f1e8"; } 3788 | 3789 | .fa-twitter:before { 3790 | content: "\f099"; } 3791 | 3792 | .fa-twitter-square:before { 3793 | content: "\f081"; } 3794 | 3795 | .fa-typo3:before { 3796 | content: "\f42b"; } 3797 | 3798 | .fa-uber:before { 3799 | content: "\f402"; } 3800 | 3801 | .fa-ubuntu:before { 3802 | content: "\f7df"; } 3803 | 3804 | .fa-uikit:before { 3805 | content: "\f403"; } 3806 | 3807 | .fa-umbrella:before { 3808 | content: "\f0e9"; } 3809 | 3810 | .fa-umbrella-beach:before { 3811 | content: "\f5ca"; } 3812 | 3813 | .fa-underline:before { 3814 | content: "\f0cd"; } 3815 | 3816 | .fa-undo:before { 3817 | content: "\f0e2"; } 3818 | 3819 | .fa-undo-alt:before { 3820 | content: "\f2ea"; } 3821 | 3822 | .fa-uniregistry:before { 3823 | content: "\f404"; } 3824 | 3825 | .fa-universal-access:before { 3826 | content: "\f29a"; } 3827 | 3828 | .fa-university:before { 3829 | content: "\f19c"; } 3830 | 3831 | .fa-unlink:before { 3832 | content: "\f127"; } 3833 | 3834 | .fa-unlock:before { 3835 | content: "\f09c"; } 3836 | 3837 | .fa-unlock-alt:before { 3838 | content: "\f13e"; } 3839 | 3840 | .fa-untappd:before { 3841 | content: "\f405"; } 3842 | 3843 | .fa-upload:before { 3844 | content: "\f093"; } 3845 | 3846 | .fa-ups:before { 3847 | content: "\f7e0"; } 3848 | 3849 | .fa-usb:before { 3850 | content: "\f287"; } 3851 | 3852 | .fa-user:before { 3853 | content: "\f007"; } 3854 | 3855 | .fa-user-alt:before { 3856 | content: "\f406"; } 3857 | 3858 | .fa-user-alt-slash:before { 3859 | content: "\f4fa"; } 3860 | 3861 | .fa-user-astronaut:before { 3862 | content: "\f4fb"; } 3863 | 3864 | .fa-user-check:before { 3865 | content: "\f4fc"; } 3866 | 3867 | .fa-user-circle:before { 3868 | content: "\f2bd"; } 3869 | 3870 | .fa-user-clock:before { 3871 | content: "\f4fd"; } 3872 | 3873 | .fa-user-cog:before { 3874 | content: "\f4fe"; } 3875 | 3876 | .fa-user-edit:before { 3877 | content: "\f4ff"; } 3878 | 3879 | .fa-user-friends:before { 3880 | content: "\f500"; } 3881 | 3882 | .fa-user-graduate:before { 3883 | content: "\f501"; } 3884 | 3885 | .fa-user-injured:before { 3886 | content: "\f728"; } 3887 | 3888 | .fa-user-lock:before { 3889 | content: "\f502"; } 3890 | 3891 | .fa-user-md:before { 3892 | content: "\f0f0"; } 3893 | 3894 | .fa-user-minus:before { 3895 | content: "\f503"; } 3896 | 3897 | .fa-user-ninja:before { 3898 | content: "\f504"; } 3899 | 3900 | .fa-user-plus:before { 3901 | content: "\f234"; } 3902 | 3903 | .fa-user-secret:before { 3904 | content: "\f21b"; } 3905 | 3906 | .fa-user-shield:before { 3907 | content: "\f505"; } 3908 | 3909 | .fa-user-slash:before { 3910 | content: "\f506"; } 3911 | 3912 | .fa-user-tag:before { 3913 | content: "\f507"; } 3914 | 3915 | .fa-user-tie:before { 3916 | content: "\f508"; } 3917 | 3918 | .fa-user-times:before { 3919 | content: "\f235"; } 3920 | 3921 | .fa-users:before { 3922 | content: "\f0c0"; } 3923 | 3924 | .fa-users-cog:before { 3925 | content: "\f509"; } 3926 | 3927 | .fa-usps:before { 3928 | content: "\f7e1"; } 3929 | 3930 | .fa-ussunnah:before { 3931 | content: "\f407"; } 3932 | 3933 | .fa-utensil-spoon:before { 3934 | content: "\f2e5"; } 3935 | 3936 | .fa-utensils:before { 3937 | content: "\f2e7"; } 3938 | 3939 | .fa-vaadin:before { 3940 | content: "\f408"; } 3941 | 3942 | .fa-vector-square:before { 3943 | content: "\f5cb"; } 3944 | 3945 | .fa-venus:before { 3946 | content: "\f221"; } 3947 | 3948 | .fa-venus-double:before { 3949 | content: "\f226"; } 3950 | 3951 | .fa-venus-mars:before { 3952 | content: "\f228"; } 3953 | 3954 | .fa-viacoin:before { 3955 | content: "\f237"; } 3956 | 3957 | .fa-viadeo:before { 3958 | content: "\f2a9"; } 3959 | 3960 | .fa-viadeo-square:before { 3961 | content: "\f2aa"; } 3962 | 3963 | .fa-vial:before { 3964 | content: "\f492"; } 3965 | 3966 | .fa-vials:before { 3967 | content: "\f493"; } 3968 | 3969 | .fa-viber:before { 3970 | content: "\f409"; } 3971 | 3972 | .fa-video:before { 3973 | content: "\f03d"; } 3974 | 3975 | .fa-video-slash:before { 3976 | content: "\f4e2"; } 3977 | 3978 | .fa-vihara:before { 3979 | content: "\f6a7"; } 3980 | 3981 | .fa-vimeo:before { 3982 | content: "\f40a"; } 3983 | 3984 | .fa-vimeo-square:before { 3985 | content: "\f194"; } 3986 | 3987 | .fa-vimeo-v:before { 3988 | content: "\f27d"; } 3989 | 3990 | .fa-vine:before { 3991 | content: "\f1ca"; } 3992 | 3993 | .fa-vk:before { 3994 | content: "\f189"; } 3995 | 3996 | .fa-vnv:before { 3997 | content: "\f40b"; } 3998 | 3999 | .fa-volleyball-ball:before { 4000 | content: "\f45f"; } 4001 | 4002 | .fa-volume-down:before { 4003 | content: "\f027"; } 4004 | 4005 | .fa-volume-mute:before { 4006 | content: "\f6a9"; } 4007 | 4008 | .fa-volume-off:before { 4009 | content: "\f026"; } 4010 | 4011 | .fa-volume-up:before { 4012 | content: "\f028"; } 4013 | 4014 | .fa-vote-yea:before { 4015 | content: "\f772"; } 4016 | 4017 | .fa-vr-cardboard:before { 4018 | content: "\f729"; } 4019 | 4020 | .fa-vuejs:before { 4021 | content: "\f41f"; } 4022 | 4023 | .fa-walking:before { 4024 | content: "\f554"; } 4025 | 4026 | .fa-wallet:before { 4027 | content: "\f555"; } 4028 | 4029 | .fa-warehouse:before { 4030 | content: "\f494"; } 4031 | 4032 | .fa-water:before { 4033 | content: "\f773"; } 4034 | 4035 | .fa-weebly:before { 4036 | content: "\f5cc"; } 4037 | 4038 | .fa-weibo:before { 4039 | content: "\f18a"; } 4040 | 4041 | .fa-weight:before { 4042 | content: "\f496"; } 4043 | 4044 | .fa-weight-hanging:before { 4045 | content: "\f5cd"; } 4046 | 4047 | .fa-weixin:before { 4048 | content: "\f1d7"; } 4049 | 4050 | .fa-whatsapp:before { 4051 | content: "\f232"; } 4052 | 4053 | .fa-whatsapp-square:before { 4054 | content: "\f40c"; } 4055 | 4056 | .fa-wheelchair:before { 4057 | content: "\f193"; } 4058 | 4059 | .fa-whmcs:before { 4060 | content: "\f40d"; } 4061 | 4062 | .fa-wifi:before { 4063 | content: "\f1eb"; } 4064 | 4065 | .fa-wikipedia-w:before { 4066 | content: "\f266"; } 4067 | 4068 | .fa-wind:before { 4069 | content: "\f72e"; } 4070 | 4071 | .fa-window-close:before { 4072 | content: "\f410"; } 4073 | 4074 | .fa-window-maximize:before { 4075 | content: "\f2d0"; } 4076 | 4077 | .fa-window-minimize:before { 4078 | content: "\f2d1"; } 4079 | 4080 | .fa-window-restore:before { 4081 | content: "\f2d2"; } 4082 | 4083 | .fa-windows:before { 4084 | content: "\f17a"; } 4085 | 4086 | .fa-wine-bottle:before { 4087 | content: "\f72f"; } 4088 | 4089 | .fa-wine-glass:before { 4090 | content: "\f4e3"; } 4091 | 4092 | .fa-wine-glass-alt:before { 4093 | content: "\f5ce"; } 4094 | 4095 | .fa-wix:before { 4096 | content: "\f5cf"; } 4097 | 4098 | .fa-wizards-of-the-coast:before { 4099 | content: "\f730"; } 4100 | 4101 | .fa-wolf-pack-battalion:before { 4102 | content: "\f514"; } 4103 | 4104 | .fa-won-sign:before { 4105 | content: "\f159"; } 4106 | 4107 | .fa-wordpress:before { 4108 | content: "\f19a"; } 4109 | 4110 | .fa-wordpress-simple:before { 4111 | content: "\f411"; } 4112 | 4113 | .fa-wpbeginner:before { 4114 | content: "\f297"; } 4115 | 4116 | .fa-wpexplorer:before { 4117 | content: "\f2de"; } 4118 | 4119 | .fa-wpforms:before { 4120 | content: "\f298"; } 4121 | 4122 | .fa-wpressr:before { 4123 | content: "\f3e4"; } 4124 | 4125 | .fa-wrench:before { 4126 | content: "\f0ad"; } 4127 | 4128 | .fa-x-ray:before { 4129 | content: "\f497"; } 4130 | 4131 | .fa-xbox:before { 4132 | content: "\f412"; } 4133 | 4134 | .fa-xing:before { 4135 | content: "\f168"; } 4136 | 4137 | .fa-xing-square:before { 4138 | content: "\f169"; } 4139 | 4140 | .fa-y-combinator:before { 4141 | content: "\f23b"; } 4142 | 4143 | .fa-yahoo:before { 4144 | content: "\f19e"; } 4145 | 4146 | .fa-yandex:before { 4147 | content: "\f413"; } 4148 | 4149 | .fa-yandex-international:before { 4150 | content: "\f414"; } 4151 | 4152 | .fa-yarn:before { 4153 | content: "\f7e3"; } 4154 | 4155 | .fa-yelp:before { 4156 | content: "\f1e9"; } 4157 | 4158 | .fa-yen-sign:before { 4159 | content: "\f157"; } 4160 | 4161 | .fa-yin-yang:before { 4162 | content: "\f6ad"; } 4163 | 4164 | .fa-yoast:before { 4165 | content: "\f2b1"; } 4166 | 4167 | .fa-youtube:before { 4168 | content: "\f167"; } 4169 | 4170 | .fa-youtube-square:before { 4171 | content: "\f431"; } 4172 | 4173 | .fa-zhihu:before { 4174 | content: "\f63f"; } 4175 | 4176 | .sr-only { 4177 | border: 0; 4178 | clip: rect(0, 0, 0, 0); 4179 | height: 1px; 4180 | margin: -1px; 4181 | overflow: hidden; 4182 | padding: 0; 4183 | position: absolute; 4184 | width: 1px; } 4185 | 4186 | .sr-only-focusable:active, .sr-only-focusable:focus { 4187 | clip: auto; 4188 | height: auto; 4189 | margin: 0; 4190 | overflow: visible; 4191 | position: static; 4192 | width: auto; } 4193 | @font-face { 4194 | font-family: 'Font Awesome 5 Brands'; 4195 | font-style: normal; 4196 | font-weight: normal; 4197 | src: url("../webfonts/fa-brands-400.eot"); 4198 | src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); } 4199 | 4200 | .fab { 4201 | font-family: 'Font Awesome 5 Brands'; } 4202 | @font-face { 4203 | font-family: 'Font Awesome 5 Free'; 4204 | font-style: normal; 4205 | font-weight: 400; 4206 | src: url("../webfonts/fa-regular-400.eot"); 4207 | src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); } 4208 | 4209 | .far { 4210 | font-family: 'Font Awesome 5 Free'; 4211 | font-weight: 400; } 4212 | @font-face { 4213 | font-family: 'Font Awesome 5 Free'; 4214 | font-style: normal; 4215 | font-weight: 900; 4216 | src: url("../webfonts/fa-solid-900.eot"); 4217 | src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); } 4218 | 4219 | .fa, 4220 | .fas { 4221 | font-family: 'Font Awesome 5 Free'; 4222 | font-weight: 900; } 4223 | 4224 | @font-face { 4225 | font-family: 'Roboto Mono for Powerline'; 4226 | font-style: normal; 4227 | src: url("../webfonts/Roboto Mono for Powerline.ttf") format("truetype"); } 4228 | 4229 | -------------------------------------------------------------------------------- /common/webfonts/Roboto Mono for Powerline.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/Roboto Mono for Powerline.ttf -------------------------------------------------------------------------------- /common/webfonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-brands-400.eot -------------------------------------------------------------------------------- /common/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /common/webfonts/fa-brands-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-brands-400.woff -------------------------------------------------------------------------------- /common/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /common/webfonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-regular-400.eot -------------------------------------------------------------------------------- /common/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /common/webfonts/fa-regular-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-regular-400.woff -------------------------------------------------------------------------------- /common/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /common/webfonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-solid-900.eot -------------------------------------------------------------------------------- /common/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /common/webfonts/fa-solid-900.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-solid-900.woff -------------------------------------------------------------------------------- /common/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/common/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /left.jsx: -------------------------------------------------------------------------------- 1 | import Desktop from './lib/Desktop/index.jsx'; 2 | import Error from './lib/Error/index.jsx'; 3 | import { leftSide } from './lib/style.jsx'; 4 | import parse from './lib/parse.jsx'; 5 | 6 | export const refreshFrequency = 500 7 | 8 | export const command = './powerbar/status-left.sh' 9 | 10 | export const render = ({output}) => { 11 | console.log(`Left bar output: ${output}`); 12 | const data = parse(output); 13 | if (typeof data === 'undefined') { 14 | return ( 15 |
16 | 17 |
18 | ) 19 | } 20 | if (typeof data.error !== 'undefined') { 21 | return ( 22 |
23 | 24 |
25 | ) 26 | } 27 | return ( 28 |
29 | 30 |
31 | ) 32 | } 33 | 34 | export default null 35 | -------------------------------------------------------------------------------- /lib/Battery/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, content } from './style.jsx'; 2 | 3 | const displayIcon = (batteryPercentage, isCharging) => { 4 | if (isCharging === true) { 5 | return 'fa-bolt'; 6 | } else if (batteryPercentage < 20) { 7 | return 'fa-battery-empty'; 8 | } else if (batteryPercentage < 40) { 9 | return 'fa-battery-quarter'; 10 | } else if (batteryPercentage < 60) { 11 | return 'fa-battery-half'; 12 | } else if (batteryPercentage < 80) { 13 | return 'fa-battery-three-quarters'; 14 | } else { 15 | return 'fa-battery-full'; 16 | } 17 | } 18 | 19 | const updateStyling = (batteryPercentage, isCharging) => { 20 | let contentStyle = JSON.parse(JSON.stringify(content)); 21 | let arrowStyle = JSON.parse(JSON.stringify(arrow)); 22 | if (isCharging === true) { 23 | contentStyle.background = 'rgba(163, 189, 140, 1)'; 24 | contentStyle.color = 'rgba(76, 86, 106, 1)'; 25 | arrowStyle.borderRight = '10px solid rgba(163, 189, 140, 1)'; 26 | } else if (batteryPercentage < 60) { 27 | contentStyle.background = 'rgba(235, 203, 139, 1)'; 28 | contentStyle.color = 'rgba(76, 86, 106, 1)'; 29 | arrowStyle.borderRight = '10px solid rgba(235, 203, 139, 1)'; 30 | } else if (batteryPercentage < 40) { 31 | contentStyle.background = 'rgba(208, 135, 113, 1)'; 32 | contentStyle.color = 'rgba(76, 86, 106, 1)'; 33 | arrowStyle.borderRight = '10px solid rgba(208, 135, 113, 1)'; 34 | } else if (batteryPercentage < 20) { 35 | contentStyle.background = 'rgba(191, 97, 106, 1)'; 36 | contentStyle.color = 'rgba(76, 86, 106, 1)'; 37 | arrowStyle.borderRight = '10px solid rgba(191, 97, 106, 1)'; 38 | } 39 | return { contentStyle, arrowStyle }; 40 | } 41 | 42 | const render = ({output}) => { 43 | if (typeof output === 'undefined') return null; 44 | const batteryIcon = displayIcon(output.percentage, output.charging); 45 | const iconClasses = `fas ${batteryIcon}`; 46 | const { contentStyle, arrowStyle } = updateStyling(output.percentage, output.charging); 47 | return ( 48 |
49 |
50 |
51 |  {output.percentage}% 52 |
53 |
54 | ) 55 | } 56 | 57 | export default render 58 | -------------------------------------------------------------------------------- /lib/Battery/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '85px', 4 | position: 'absolute', 5 | right: '185px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderRight:'10px solid rgba(76, 86, 106, 1)', 15 | position: 'absolute', 16 | left: '0px' 17 | } 18 | 19 | export const content = { 20 | height: '100%', 21 | width: '75px', 22 | background: 'rgba(76, 86, 106, 1)', 23 | textAlign: 'left', 24 | color: 'rgba(235, 239, 243, 1)', 25 | position: 'absolute', 26 | right: '-10px', 27 | paddingLeft: '10px' 28 | } 29 | 30 | export default null 31 | -------------------------------------------------------------------------------- /lib/Cpu/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, content } from './style.jsx'; 2 | 3 | const render = ({output}) => { 4 | if (typeof output === 'undefined') return null; 5 | return ( 6 |
7 |
8 |
9 |  {output.loadAverage} 10 |
11 |
12 | ) 13 | } 14 | 15 | export default render 16 | -------------------------------------------------------------------------------- /lib/Cpu/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '80px', 4 | position: 'absolute', 5 | right: '260px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderRight:'10px solid rgba(235, 239, 243, 1)', 15 | position: 'absolute', 16 | left: '0px' 17 | } 18 | 19 | export const content = { 20 | height: '100%', 21 | width: '70px', 22 | background: 'rgba(235, 239, 243, 1)', 23 | textAlign: 'left', 24 | color: 'rgba(76, 86, 106, 1)', 25 | position: 'absolute', 26 | right: '-10px', 27 | paddingLeft: '10px' 28 | } 29 | 30 | export default null 31 | -------------------------------------------------------------------------------- /lib/DateTime/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, content } from './style.jsx'; 2 | 3 | const render = ({output}) => { 4 | if (typeof output === 'undefined') return null; 5 | return ( 6 |
7 |
8 |
9 |  {output.date}  10 |  {output.time} 11 |
12 |
13 | ) 14 | } 15 | 16 | export default render 17 | -------------------------------------------------------------------------------- /lib/DateTime/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '195px', 4 | position: 'absolute', 5 | right: '0px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderRight:'10px solid rgba(235, 239, 243, 1)', 15 | position: 'absolute', 16 | left: '0px' 17 | } 18 | 19 | export const content = { 20 | height: '100%', 21 | width: '185px', 22 | background: 'rgba(235, 239, 243, 1)', 23 | textAlign: 'left', 24 | color: 'rgba(76, 86, 106, 1)', 25 | position: 'absolute', 26 | right: '-10px', 27 | paddingLeft: '10px' 28 | } 29 | 30 | export default null 31 | -------------------------------------------------------------------------------- /lib/Desktop/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, arrowLight, content } from './style.jsx'; 2 | 3 | const renderDesktop = (index, desktop, active) => { 4 | let contentStyle = JSON.parse(JSON.stringify(content)); 5 | contentStyle.left = (index * 35 - 45) + 'px'; 6 | let arrowStyle = JSON.parse(JSON.stringify(arrow)); 7 | arrowStyle.left = (index * 35 - 10) + 'px'; 8 | let arrowLightStyle = JSON.parse(JSON.stringify(arrowLight)); 9 | arrowLightStyle.left = (index * 35 - 9) + 'px'; 10 | if (desktop === active) { 11 | contentStyle.background = 'rgba(235, 239, 243, 1)'; 12 | contentStyle.color = 'rgba(76, 86, 106, 1)'; 13 | arrowStyle.borderLeft = '10px solid rgba(235, 239, 243, 1)'; 14 | } 15 | return ( 16 | 17 |
18 | {desktop} 19 |
20 |
21 |
22 | 23 | ) 24 | } 25 | 26 | const render = ({output}) => { 27 | if (typeof output === 'undefined') return null; 28 | 29 | const desktops = []; 30 | for (let num = output.end; num >= output.start; --num) { 31 | desktops.push(renderDesktop(num - output.start + 1, num, output.active)); 32 | } 33 | 34 | return ( 35 |
36 | {desktops} 37 |
38 | ) 39 | } 40 | 41 | export default render 42 | -------------------------------------------------------------------------------- /lib/Desktop/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '305px', 4 | position: 'absolute', 5 | left: '0px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderLeft:'10px solid rgba(76, 86, 106, 1)', 15 | position: 'absolute', 16 | left: '25px' 17 | } 18 | 19 | export const arrowLight = { 20 | height: '0', 21 | width: '0', 22 | borderTop: '10px solid transparent', 23 | borderBottom: '10px solid transparent', 24 | borderLeft:'10px solid rgba(235, 239, 243, 1)', 25 | position: 'absolute', 26 | left: '26px' 27 | } 28 | 29 | export const content = { 30 | height: '100%', 31 | width: '30px', 32 | fontWeight: 'bold', 33 | background: 'rgba(76, 86, 106, 1)', 34 | textAlign: 'center', 35 | color: 'rgba(235, 239, 243, 1)', 36 | position: 'absolute', 37 | paddingLeft: '7px', 38 | left: '-10px' 39 | } 40 | 41 | export default null 42 | -------------------------------------------------------------------------------- /lib/Error/index.jsx: -------------------------------------------------------------------------------- 1 | import { containerLeft, containerRight, arrowLeft, arrowRight, contentLeft, contentRight } from './style.jsx'; 2 | 3 | const render = ({msg, side}) => { 4 | if (typeof msg === 'undefined') return null; 5 | if (side === 'left' || typeof side === 'undefined') { 6 | return ( 7 |
8 |
9 |  {msg} 10 |
11 |
12 |
13 | ) 14 | } 15 | return ( 16 |
17 |
18 |
19 |  {msg} 20 |
21 |
22 | ) 23 | } 24 | 25 | export default render 26 | -------------------------------------------------------------------------------- /lib/Error/style.jsx: -------------------------------------------------------------------------------- 1 | export const containerLeft = { 2 | height: '100%', 3 | width: '305px', 4 | position: 'absolute', 5 | left: '0px', 6 | top: '0px' 7 | } 8 | 9 | export const containerRight = { 10 | height: '100%', 11 | width: '305px', 12 | position: 'absolute', 13 | right: '0px', 14 | top: '0px' 15 | } 16 | 17 | export const arrowLeft = { 18 | height: '0', 19 | width: '0', 20 | borderTop: '10px solid transparent', 21 | borderBottom: '10px solid transparent', 22 | borderLeft:'10px solid rgba(191, 97, 106, 1)', 23 | position: 'absolute', 24 | left: '260px' 25 | } 26 | 27 | export const arrowRight = { 28 | height: '0', 29 | width: '0', 30 | borderTop: '10px solid transparent', 31 | borderBottom: '10px solid transparent', 32 | borderRight:'10px solid rgba(191, 97, 106, 1)', 33 | position: 'absolute', 34 | right: '260px' 35 | } 36 | 37 | export const contentLeft = { 38 | height: '100%', 39 | width: '255px', 40 | fontWeight: 'bold', 41 | background: 'rgba(191, 97, 106, 1)', 42 | textAlign: 'left', 43 | color: 'rgba(76, 86, 106, 1)', 44 | position: 'absolute', 45 | paddingLeft: '17px', 46 | left: '-10px' 47 | } 48 | 49 | export const contentRight = { 50 | height: '100%', 51 | right: '-10px', 52 | width: '255px', 53 | fontWeight: 'bold', 54 | background: 'rgba(191, 97, 106, 1)', 55 | textAlign: 'left', 56 | color: 'rgba(76, 86, 106, 1)', 57 | position: 'absolute', 58 | paddingLeft: '17px' 59 | } 60 | 61 | export default null 62 | -------------------------------------------------------------------------------- /lib/Hdd/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, content } from './style.jsx'; 2 | 3 | const render = ({output}) => { 4 | if (typeof output === 'undefined') return null; 5 | const total = output.totalBytes * 512 / 1024 / 1024 / 1024; 6 | const free = output.freeBytes * 512 / 1024 / 1024 / 1024; 7 | const used = total - free; 8 | return ( 9 |
10 |
11 |
12 |  {Math.round(used)}Gi/{Math.round(total)}Gi 13 |
14 |
15 | ) 16 | } 17 | 18 | export default render 19 | -------------------------------------------------------------------------------- /lib/Hdd/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '125px', 4 | position: 'absolute', 5 | right: '405px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderRight:'10px solid rgba(235, 239, 243, 1)', 15 | position: 'absolute', 16 | left: '0px' 17 | } 18 | 19 | export const content = { 20 | height: '100%', 21 | width: '115px', 22 | background: 'rgba(235, 239, 243, 1)', 23 | textAlign: 'left', 24 | color: 'rgba(76, 86, 106, 1)', 25 | position: 'absolute', 26 | right: '-10px', 27 | paddingLeft: '10px' 28 | } 29 | 30 | export default null 31 | -------------------------------------------------------------------------------- /lib/Memory/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, content } from './style.jsx'; 2 | 3 | const render = ({output}) => { 4 | if (typeof output === 'undefined') return null; 5 | const usedMemory = output.total - output.free; 6 | const memoryConsumption = Math.round(output.free / output.total * 100.0); 7 | return ( 8 |
9 |
10 |
11 |  {memoryConsumption}% 12 |
13 |
14 | ) 15 | } 16 | 17 | export default render 18 | -------------------------------------------------------------------------------- /lib/Memory/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '85px', 4 | position: 'absolute', 5 | right: '330px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderRight:'10px solid rgba(76, 86, 106, 1)', 15 | position: 'absolute', 16 | left: '0px' 17 | } 18 | 19 | export const content = { 20 | height: '100%', 21 | width: '75px', 22 | background: 'rgba(76, 86, 106, 1)', 23 | textAlign: 'left', 24 | color: 'rgba(235, 239, 243, 1)', 25 | position: 'absolute', 26 | right: '-10px', 27 | paddingLeft: '10px' 28 | } 29 | 30 | export default null 31 | -------------------------------------------------------------------------------- /lib/Wifi/index.jsx: -------------------------------------------------------------------------------- 1 | import { container, arrow, content } from './style.jsx'; 2 | 3 | const render = ({output}) => { 4 | if (typeof output === 'undefined') return null; 5 | return ( 6 |
7 |
8 |
9 |  {output.ssid} 10 |
11 |
12 | ) 13 | } 14 | 15 | export default render 16 | -------------------------------------------------------------------------------- /lib/Wifi/style.jsx: -------------------------------------------------------------------------------- 1 | export const container = { 2 | height: '100%', 3 | width: '125px', 4 | position: 'absolute', 5 | right: '515px', 6 | top: '0px' 7 | } 8 | 9 | export const arrow = { 10 | height: '0', 11 | width: '0', 12 | borderTop: '10px solid transparent', 13 | borderBottom: '10px solid transparent', 14 | borderRight:'10px solid rgba(76, 86, 106, 1)', 15 | position: 'absolute', 16 | left: '0px' 17 | } 18 | 19 | export const content = { 20 | height: '100%', 21 | width: '115px', 22 | background: 'rgba(76, 86, 106, 1)', 23 | textAlign: 'left', 24 | color: 'rgba(235, 239, 243, 1)', 25 | position: 'absolute', 26 | right: '-10px', 27 | paddingLeft: '10px' 28 | } 29 | 30 | export default null 31 | -------------------------------------------------------------------------------- /lib/parse.jsx: -------------------------------------------------------------------------------- 1 | const parse = (data) => { 2 | try { 3 | return JSON.parse(data) 4 | } catch (e) { 5 | return undefined; 6 | } 7 | } 8 | 9 | export default parse 10 | -------------------------------------------------------------------------------- /lib/style.jsx: -------------------------------------------------------------------------------- 1 | export const bar = { 2 | background: 'rgba(46, 51, 64, 0.5)', 3 | zIndex: '-1', 4 | width: '100%', 5 | height: '20px', 6 | position: 'fixed', 7 | display: 'flex', 8 | overflow: 'hidden', 9 | top: '0px', 10 | right: '0px', 11 | left: '0px', 12 | WebkitBackdropFilter: 'blur(15px)' 13 | } 14 | 15 | export const leftSide = { 16 | height: '20px', 17 | width: '50%', 18 | position: 'fixed', 19 | display: 'flex', 20 | overflow: 'hidden', 21 | left: '0px', 22 | top: '0px', 23 | fontFamily: 'Roboto Mono For Powerline', 24 | fontSize: '8pt', 25 | lineHeight: '20px', 26 | color: 'rgba(216, 222, 232, 1)' 27 | } 28 | 29 | export const rightSide = { 30 | height: '20px', 31 | width: '50%', 32 | position: 'fixed', 33 | display: 'flex', 34 | overflow: 'hidden', 35 | right: '0px', 36 | top: '0px', 37 | fontFamily: 'Roboto Mono For Powerline', 38 | fontSize: '8pt', 39 | lineHeight: '20px', 40 | color: 'rgba(216, 222, 232, 1)' 41 | } 42 | -------------------------------------------------------------------------------- /right.jsx: -------------------------------------------------------------------------------- 1 | import DateTime from './lib/DateTime/index.jsx'; 2 | import Battery from './lib/Battery/index.jsx'; 3 | import Cpu from './lib/Cpu/index.jsx'; 4 | import Memory from './lib/Memory/index.jsx'; 5 | import Hdd from './lib/Hdd/index.jsx'; 6 | import Wifi from './lib/Wifi/index.jsx'; 7 | import Error from './lib/Error/index.jsx'; 8 | import { rightSide } from './lib/style.jsx'; 9 | import parse from './lib/parse.jsx'; 10 | 11 | export const refreshFrequency = 15000 12 | 13 | export const command = './powerbar/status-right.sh' 14 | 15 | export const render = ({output}) => { 16 | console.log(`Right bar output: ${output}`); 17 | const data = parse(output); 18 | if (typeof data === 'undefined') { 19 | return ( 20 |
21 | 22 |
23 | ) 24 | } 25 | return ( 26 |
27 | 28 | 29 | 30 | 31 | 32 | 33 |
34 | ) 35 | } 36 | 37 | export default null 38 | -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajdnik/powerbar/ac1031c6eeafc89bf3eb698865d7312a9bef500c/screenshot.png -------------------------------------------------------------------------------- /status-left.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Check if chunkc exists 4 | if ! [ -x "$(command -v chunkc)" ]; then 5 | echo "{\"error\":\"chunkc binary not found\"}" 6 | exit 1 7 | fi 8 | 9 | CURRENT_DESKTOP=$(chunkc tiling:query -m id) 10 | DESKTOP_ACTIVE=$(chunkc tiling::query -d id) 11 | DESKTOP_START=$(chunkc tiling::query -D $CURRENT_DESKTOP | head -c 1) 12 | DESKTOP_END=$(chunkc tiling::query -D $CURRENT_DESKTOP | tail -c 1) 13 | 14 | echo $(cat <<-EOF 15 | { 16 | "desktop": { 17 | "active": $DESKTOP_ACTIVE, 18 | "start": $DESKTOP_START, 19 | "end": $DESKTOP_END 20 | } 21 | } 22 | EOF 23 | ) 24 | -------------------------------------------------------------------------------- /status-right.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Check if date exists 4 | if ! [ -x "$(command -v date)" ]; then 5 | echo "{\"error\":\"date binary not found\"}" 6 | exit 1 7 | fi 8 | 9 | # Check if pmset exists 10 | if ! [ -x "$(command -v pmset)" ]; then 11 | echo "{\"error\":\"pmset binary not found\"}" 12 | exit 1 13 | fi 14 | 15 | # Check if egrep exists 16 | if ! [ -x "$(command -v egrep)" ]; then 17 | echo "{\"error\":\"egrep binary not found\"}" 18 | exit 1 19 | fi 20 | 21 | # Check if cut exists 22 | if ! [ -x "$(command -v cut)" ]; then 23 | echo "{\"error\":\"cut binary not found\"}" 24 | exit 1 25 | fi 26 | 27 | # Check if memory_pressure exists 28 | if ! [ -x "$(command -v memory_pressure)" ]; then 29 | echo "{\"error\":\"memory_pressure binary not found\"}" 30 | exit 1 31 | fi 32 | 33 | # Check if sysctl exists 34 | if ! [ -x "$(command -v sysctl)" ]; then 35 | echo "{\"error\":\"sysctl binary not found\"}" 36 | exit 1 37 | fi 38 | 39 | # Check if osascript exists 40 | if ! [ -x "$(command -v osascript)" ]; then 41 | echo "{\"error\":\"osascript binary not found\"}" 42 | exit 1 43 | fi 44 | 45 | # Check if df exists 46 | if ! [ -x "$(command -v df)" ]; then 47 | echo "{\"error\":\"df binary not found\"}" 48 | exit 1 49 | fi 50 | 51 | # Check if grep exists 52 | if ! [ -x "$(command -v grep)" ]; then 53 | echo "{\"error\":\"grep binary not found\"}" 54 | exit 1 55 | fi 56 | 57 | # Check if awk exists 58 | if ! [ -x "$(command -v awk)" ]; then 59 | echo "{\"error\":\"awk binary not found\"}" 60 | exit 1 61 | fi 62 | 63 | # Check if networksetup exists 64 | if ! [ -x "$(command -v networksetup)" ]; then 65 | echo "{\"error\":\"networksetup binary not found\"}" 66 | exit 1 67 | fi 68 | 69 | export LC_TIME="en_US.UTF-8" 70 | TIME=$(date +"%H:%M") 71 | DATE=$(date +"%a %d/%m/%Y") 72 | 73 | BATTERY_PERCENTAGE=$(pmset -g batt | egrep '([0-9]+\%).*' -o --colour=auto | cut -f1 -d'%') 74 | 75 | BATTERY_STATUS=$(pmset -g batt | grep "'.*'" | sed "s/'//g" | cut -c 18-19) 76 | 77 | BATTERY_CHARGING="" 78 | if [ "$BATTERY_STATUS" == "Ba" ]; then 79 | BATTERY_CHARGING="false" 80 | elif [ "$BATTERY_STATUS" == "AC" ]; then 81 | BATTERY_CHARGING="true" 82 | fi 83 | 84 | LOAD_AVERAGE=$(sysctl -n vm.loadavg | awk '{print $2}') 85 | 86 | VOLUME=$(osascript -e 'output volume of (get volume settings)') 87 | IS_MUTED=$(osascript -e 'output muted of (get volume settings)') 88 | 89 | HDD_TOTAL_BYTES=$(df | grep -m 1 /disk1 | awk -F" " '{print $2}') 90 | HDD_FREE_BYTES=$(df | grep -m 1 /disk1 | awk -F" " '{print $4}') 91 | 92 | MEMORY_FREE=$(memory_pressure | grep "Pages free" | grep -o -E '[0-9]+') 93 | MEMORY_TOTAL=$(memory_pressure | grep system | awk -F" " '{print $5}' | grep -o -E '[0-9]+') 94 | 95 | WIFI_SSID=$(networksetup -getairportnetwork en0 | cut -c 24-) 96 | 97 | echo $(cat <<-EOF 98 | { 99 | "datetime": { 100 | "time": "$TIME", 101 | "date": "$DATE" 102 | }, 103 | "battery": { 104 | "percentage": $BATTERY_PERCENTAGE, 105 | "charging": $BATTERY_CHARGING 106 | }, 107 | "cpu": { 108 | "loadAverage": $LOAD_AVERAGE 109 | }, 110 | "volume": { 111 | "volume": $VOLUME, 112 | "muted": $IS_MUTED 113 | }, 114 | "hdd": { 115 | "freeBytes": $HDD_FREE_BYTES, 116 | "totalBytes": $HDD_TOTAL_BYTES 117 | }, 118 | "memory": { 119 | "total": $MEMORY_TOTAL, 120 | "free": $MEMORY_FREE 121 | }, 122 | "wifi": { 123 | "ssid": "$WIFI_SSID" 124 | } 125 | } 126 | EOF 127 | ) 128 | -------------------------------------------------------------------------------- /widget.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Powerline Bar", 3 | "description": "Displays a bar at the top of the screen with system stats.", 4 | "author": "Rok Ajdnik", 5 | "email": "r.ajdnik@gmail.com" 6 | } 7 | --------------------------------------------------------------------------------