/* Font Awesome 6.6.0, subset to the icons this repo actually references.
 * ONE file, shared by BOTH sites (roaringsensei.com and packdojo.com).
 * Generated with pyftsubset from the official webfonts.
 *   fa-solid-900   157,192 -> 14,524 bytes (149 glyphs)
 *   fa-brands-400  118,072 ->  1,448 bytes (7 glyphs)
 *   fa-regular-400  25,464 ->  5,124 bytes (35 glyphs)
 *
 * ⚠ REGENERATE FROM THE ORIGINAL TTF, AND PARSE THE GROUPED SELECTORS.
 *   Font Awesome puts ALIASES in one rule —
 *     `.fa-history:before,.fa-clock-rotate-left:before{content:"\f1da"}`
 *   — so a regex that only reads the FIRST class in a selector silently drops
 *   every alias. Done that way the file rebuilt cleanly and lost
 *   clock-rotate-left, which had been working. Map EVERY `.fa-*` in the
 *   selector to the codepoint, then assert afterwards that each fa- token
 *   found in the source resolves into one of the three faces.
 *
 * ⚠ font-display IS swap, NOT Font Awesome's shipped `block` (2026-08-11).
 *   `block` hides an icon for up to 3s while the face loads; Lighthouse costed
 *   it at 140ms of FCP across the three faces. With a private-use codepoint
 *   there is no fallback glyph either way, so `swap` paints the same nothing
 *   and then the icon sooner. All 9 @font-face blocks. Do not restore `block`.
 *
 * ⚠ THE CLASS RULES ARE PRUNED TOO, NOT JUST THE FONTS (2026-08-11).
 *   Aaron: "anything that's not used to be removed." This file used to carry
 *   Font Awesome's FULL class->codepoint map — 2,482 rules for ~187 shipped
 *   glyphs, 97,840 bytes of which 86,675 were icon rules. It now carries the
 *   156 classes some file in this repo actually names: 16,891 bytes.
 *   The old rationale for keeping all of them ("an icon that was missed still
 *   gets its content codepoint") never held — a codepoint with no glyph in the
 *   woff2 paints nothing either way.
 *   REGENERATE by scanning for every bare `fa-*` TOKEN in the repo, not just
 *   `class="..."` — some class names are built in JS — and keeping any
 *   selector that names one. THEN BUMP the ?v= on every <link> (103 of them):
 *   this sheet is 1-month cached, so without the bump nobody refetches it.
 *
 * ⚠ THE FILENAME CARRIES A CONTENT HASH, AND THAT IS NOT TIDINESS.
 *   .htaccess gives every woff2 `max-age=31536000, immutable` on the argument
 *   that a font under a given name is a fixed set of glyph outlines. Then this
 *   subset was REBUILT with two icons added, under the same name — so every
 *   browser that had already loaded the site kept the old glyph set pinned for
 *   a YEAR, and Aaron's phone showed two chips with icons and two without,
 *   after the fix had shipped and been verified on the server. Verified on the
 *   server is not verified in the client's cache.
 *   The hash makes the promise true: new bytes are always a new URL. Re-run the
 *   subset, re-hash, update these src lines, and bump the ?v= on the <link> in
 *   packs.htm — this stylesheet is only 1-month cached, so without that bump
 *   nobody fetches the new src lines either.
 *
 * ⚠ ADDING AN ICON TO A PAGE IS NOT ENOUGH — THE GLYPH HAS TO BE IN HERE.
 *   The class rule below exists for all 2,431 icons, so a missing glyph does
 *   not fail loudly: the element gets its ::before and renders NOTHING. That
 *   is how fa-chart-simple and fa-medal shipped as two blank chips next to two
 *   that worked. After adding an icon, re-run the subset and check the page.
 */
/*!
 * Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2024 Fonticons, Inc.
 */
.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp-solid,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}

.fa-trash-can:before{content:"\f2ed"}.fa-forward-step:before{content:"\f051"}.fa-football:before{content:"\f44e"}.fa-users-rectangle:before{content:"\e594"}.fa-record-vinyl:before{content:"\f8d9"}.fa-comments:before{content:"\f086"}.fa-paste:before{content:"\f0ea"}.fa-user-check:before{content:"\f4fc"}.fa-scissors:before{content:"\f0c4"}.fa-table:before{content:"\f0ce"}.fa-reply:before{content:"\f3e5"}.fa-people-group:before{content:"\e533"}.fa-film:before{content:"\f008"}.fa-lightbulb:before{content:"\f0eb"}.fa-circle-dollar-to-slot:before{content:"\f4b9"}.fa-compress:before{content:"\f066"}.fa-square-check:before{content:"\f14a"}.fa-list:before{content:"\f03a"}.fa-gamepad:before{content:"\f11b"}.fa-futbol:before{content:"\f1e3"}.fa-lock:before{content:"\f023"}.fa-share-nodes:before{content:"\f1e0"}.fa-eye-slash:before{content:"\f070"}.fa-chevron-up:before{content:"\f077"}.fa-stamp:before{content:"\f5bf"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-chart-simple:before{content:"\e473"}.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-user:before{content:"\f007"}.fa-key:before{content:"\f084"}.fa-globe:before{content:"\f0ac"}.fa-ban:before{content:"\f05e"}.fa-star:before{content:"\f005"}.fa-box:before{content:"\f466"}.fa-shapes:before{content:"\f61f"}.fa-shuffle:before{content:"\f074"}.fa-arrow-right-to-bracket:before{content:"\f090"}.fa-fire:before{content:"\f06d"}.fa-folder-open:before{content:"\f07c"}.fa-file-arrow-up:before{content:"\f574"}.fa-gift:before{content:"\f06b"}.fa-image:before{content:"\f03e"}.fa-microphone:before{content:"\f130"}.fa-rotate-left:before{content:"\f2ea"}.fa-handshake:before{content:"\f2b5"}.fa-circle-check:before{content:"\f058"}.fa-id-badge:before{content:"\f2c1"}.fa-marker:before{content:"\f5a1"}.fa-user-tie:before{content:"\f508"}.fa-certificate:before{content:"\f0a3"}.fa-camera-retro:before{content:"\f083"}.fa-box-open:before{content:"\f49e"}.fa-pause:before{content:"\f04c"}.fa-burst:before{content:"\e4dc"}.fa-cloud-arrow-up:before{content:"\f0ee"}.fa-shield-halved:before{content:"\f3ed"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-file-zipper:before{content:"\f1c6"}.fa-snowflake:before{content:"\f2dc"}.fa-code:before{content:"\f121"}.fa-arrow-up-right-from-square:before{content:"\f08e"}.fa-object-group:before{content:"\f247"}.fa-screwdriver-wrench:before{content:"\f7d9"}.fa-heart:before{content:"\f004"}.fa-circle:before{content:"\f111"}.fa-basketball:before{content:"\f434"}.fa-volume-high:before{content:"\f028"}.fa-file-audio:before{content:"\f1c7"}.fa-file-image:before{content:"\f1c5"}.fa-cat:before{content:"\f6be"}.fa-tags:before{content:"\f02c"}.fa-eye:before{content:"\f06e"}.fa-user-slash:before{content:"\f506"}.fa-pen:before{content:"\f304"}.fa-face-frown:before{content:"\f119"}.fa-scale-unbalanced:before{content:"\f515"}.fa-comment-dots:before{content:"\f4ad"}.fa-redo:before{content:"\f01e"}.fa-trash:before{content:"\f1f8"}.fa-headphones:before{content:"\f025"}.fa-file-pdf:before{content:"\f1c1"}.fa-table-cells-large:before{content:"\f009"}.fa-tag:before{content:"\f02b"}.fa-comment:before{content:"\f075"}.fa-envelope:before{content:"\f0e0"}.fa-circle-info:before{content:"\f05a"}.fa-camera:before{content:"\f030"}.fa-undo:before{content:"\f0e2"}.fa-minus:before{content:"\f068"}.fa-cart-shopping:before{content:"\f07a"}.fa-clock:before{content:"\f017"}.fa-backward-step:before{content:"\f048"}.fa-coins:before{content:"\f51e"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-images:before{content:"\f302"}.fa-ship:before{content:"\f21a"}.fa-download:before{content:"\f019"}.fa-house:before{content:"\f015"}.fa-rotate-right:before{content:"\f2f9"}.fa-tower-broadcast:before{content:"\f519"}.fa-stop:before{content:"\f04d"}.fa-bolt:before{content:"\f0e7"}.fa-bug:before{content:"\f188"}.fa-mountain-sun:before{content:"\e52f"}.fa-medal:before{content:"\f5a2"}.fa-bell:before{content:"\f0f3"}.fa-arrow-down:before{content:"\f063"}.fa-eraser:before{content:"\f12d"}.fa-envelope-open-text:before{content:"\f658"}.fa-bars-staggered:before{content:"\f550"}.fa-link:before{content:"\f0c1"}.fa-play:before{content:"\f04b"}.fa-font:before{content:"\f031"}.fa-receipt:before{content:"\f543"}.fa-chevron-down:before{content:"\f078"}.fa-arrow-up:before{content:"\f062"}.fa-tv:before{content:"\f26c"}.fa-clapperboard:before{content:"\e131"}.fa-baseball:before{content:"\f433"}.fa-copy:before{content:"\f0c5"}.fa-plus:before{content:"\2b"}.fa-expand:before{content:"\f065"}.fa-xmark:before{content:"\f00d"}.fa-store:before{content:"\f54e"}.fa-bezier-curve:before{content:"\f55b"}.fa-face-smile:before{content:"\f118"}.fa-trophy:before{content:"\f091"}.fa-rotate:before{content:"\f2f1"}.fa-spinner:before{content:"\f110"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-award:before{content:"\f559"}.fa-qrcode:before{content:"\f029"}.fa-clock-rotate-left:before{content:"\f1da"}.fa-shield:before{content:"\f132"}.fa-yin-yang:before{content:"\f6ad"}.fa-music:before{content:"\f001"}.fa-broom:before{content:"\f51a"}.fa-check:before{content:"\f00c"}.fa-fist-raised:before{content:"\f6de"}.fa-paper-plane:before{content:"\f1d8"}.fa-calendar-day:before{content:"\f783"}.fa-dice:before{content:"\f522"}.fa-brain:before{content:"\f5dc"}.fa-magnifying-glass-plus:before{content:"\f00e"}.fa-thumbs-up:before{content:"\f164"}.fa-user-large:before{content:"\f406"}.fa-arrows-spin:before{content:"\e4bb"}.fa-video:before{content:"\f03d"}.fa-graduation-cap:before{content:"\f19d"}
.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:swap;src:url(fa-brands-400.2076bee0.woff2) format("woff2")}.fa-brands,.fab{font-weight:400}.fa-stripe:before{content:"\f429"}.fa-x-twitter:before{content:"\e61b"}.fa-tiktok:before{content:"\e07b"}.fa-twitch:before{content:"\f1e8"}.fa-instagram:before{content:"\f16d"}.fa-youtube:before{content:"\f167"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:swap;src:url(fa-regular-400.55fa8173.woff2) format("woff2")}.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:swap;src:url(fa-solid-900.d8500682.woff2) format("woff2")}.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:swap;font-weight:400;src:url(fa-brands-400.2076bee0.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:swap;font-weight:900;src:url(fa-solid-900.d8500682.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:swap;font-weight:400;src:url(fa-regular-400.55fa8173.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:swap;src:url(fa-solid-900.d8500682.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:swap;src:url(fa-brands-400.2076bee0.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:swap;src:url(fa-regular-400.55fa8173.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}