.kg-code-card {
  position: relative;
}
.kg-code-card > .language-badge {
  color: var(--color-contrast);
  font-size: var(--font-x-small);
  opacity: 0.5;
  position: absolute;
  right: 0.5rem;
  top: 0.25rem;
  transition: opacity 0.15s ease;
  z-index: 1;
}
.kg-code-card > .copy:focus-visible ~ .language-badge,
.kg-code-card > .copy:hover ~ .language-badge,
.kg-code-card > pre:hover ~ .language-badge {
  opacity: 0;
}
.kg-code-card > .copy {
  align-items: center;
  background-color: transparent;
  border: 0;
  border-radius: 0.25rem;
  color: var(--color-contrast);
  display: flex;
  height: 1.5rem;
  justify-content: center;
  opacity: 0;
  padding: 0;
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  transition:
    opacity 0.15s ease,
    color 0.15s ease,
    background-color 0.15s ease;
  width: 1.5rem;
  word-break: normal;
  z-index: 2;
}
.kg-code-card > .copy:after {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: inherit;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.kg-code-card > .copy:before {
  background-color: currentcolor;
  content: "";
  display: block;
  height: 1.25rem;
  -webkit-mask-image: url('data:image/svg+xml;charset=utf-8,<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.75 15.25H6c-.69 0-1.25-.56-1.25-1.25V6c0-.69.56-1.25 1.25-1.25h8c.69 0 1.25.56 1.25 1.25v2.75m-5.25 0h8c.69 0 1.25.56 1.25 1.25v8c0 .69-.56 1.25-1.25 1.25h-8c-.69 0-1.25-.56-1.25-1.25v-8c0-.69.56-1.25 1.25-1.25Z" stroke="%23000" stroke-width="1.5"/></svg>');
  mask-image: url('data:image/svg+xml;charset=utf-8,<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.75 15.25H6c-.69 0-1.25-.56-1.25-1.25V6c0-.69.56-1.25 1.25-1.25h8c.69 0 1.25.56 1.25 1.25v2.75m-5.25 0h8c.69 0 1.25.56 1.25 1.25v8c0 .69-.56 1.25-1.25 1.25h-8c-.69 0-1.25-.56-1.25-1.25v-8c0-.69.56-1.25 1.25-1.25Z" stroke="%23000" stroke-width="1.5"/></svg>');
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  width: 1.25rem;
}
.kg-code-card > .copy.success:before {
  -webkit-mask-image: url('data:image/svg+xml;charset=utf-8,<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m17.555 7.833-7.638 7.64L6.444 12" stroke="%23000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  mask-image: url('data:image/svg+xml;charset=utf-8,<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m17.555 7.833-7.638 7.64L6.444 12" stroke="%23000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
.kg-code-card > .copy.error:before {
  -webkit-mask-image: url('data:image/svg+xml;charset=utf-8,<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m16 8-8 8m8 0L8 8" stroke="%23000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  mask-image: url('data:image/svg+xml;charset=utf-8,<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m16 8-8 8m8 0L8 8" stroke="%23000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}
.kg-code-card > .copy > .error,
.kg-code-card > .copy > .success {
  align-items: center;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: inherit;
  border-radius: inherit;
  bottom: 0;
  color: inherit;
  display: flex;
  font-size: 0.75rem;
  margin-right: 0.125rem;
  opacity: 0;
  padding: 0 0.5rem;
  position: absolute;
  right: 100%;
  top: 0;
  transition:
    opacity 0.1s,
    visibility 0.1s;
  visibility: hidden;
  word-break: normal;
}
.kg-code-card > .copy.error > .error,
.kg-code-card > .copy.success > .success {
  opacity: 1;
  visibility: visible;
}
.kg-code-card > .copy.error,
.kg-code-card > .copy.success,
.kg-code-card > .copy:hover {
  background-color: hsla(0, 0%, 50%, 0.2);
}
.kg-code-card > .copy:focus-visible,
.kg-code-card > .copy:hover,
.kg-code-card > pre:hover ~ .copy {
  opacity: 1;
}
.kg-code-card.has-line-numbers > .shiki {
  counter-reset: code-counter;
}
.kg-code-card.has-line-numbers > .shiki > code > span {
  counter-increment: code-counter;
}
.kg-code-card.has-line-numbers > .shiki > code > span:before {
  color: currentcolor;
  content: counter(code-counter);
  display: inline-block;
  margin-right: 0.75rem;
  min-width: 1rem;
  opacity: 0.5;
  text-align: right;
}
[data-color-scheme="dark"] .shiki,
[data-color-scheme="dark"] .shiki span {
  background-color: var(--shiki-dark-bg) !important;
  color: var(--shiki-dark) !important;
}
@media (prefers-color-scheme: dark) {
  [data-color-scheme="system"] .shiki,
  [data-color-scheme="system"] .shiki span {
    background-color: var(--shiki-dark-bg) !important;
    color: var(--shiki-dark) !important;
  }
}
.stop-transition,
.stop-transition * {
  transition-duration: 0s !important;
}
#ghost-comments-root iframe,
#ghost-portal-root iframe,
#sodo-search-root iframe,
.gh-root-frame iframe,
.popup-comments iframe,
.post-comments iframe {
  color-scheme: auto;
}
.page-loader {
  view-transition-name: page-loader;
  box-shadow: 0 1px 0 transparent;
  height: 2px;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 11000;
}
.page-loader:before {
  background-color: var(--ghost-accent-color);
  content: "";
  display: block;
  height: 100%;
  width: var(--loader-progress);
}
.page-loader.loading {
  display: block;
  opacity: 1;
}
.lightbox {
  position: relative;
}
.lightbox,
.lightbox img {
  transition: transform 0.5s cubic-bezier(0.2, 1, 0.2, 1);
}
.lightbox img {
  cursor: zoom-in;
  transform: scale(1);
}
.lightbox-show img {
  cursor: zoom-out;
}
.lightbox-trigger {
  align-items: center;
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  backdrop-filter: blur(16px) saturate(180%);
  background-color: rgba(90, 90, 90, 0.25);
  border: 0;
  border-radius: 0.25rem;
  display: flex;
  height: 1.25rem;
  justify-content: center;
  opacity: 0;
  outline-offset: 2px;
  padding: 0;
  position: absolute;
  right: 1rem;
  top: 1rem;
  transition: opacity 0.2s ease;
  width: 1.25rem;
  z-index: 1;
}
.lightbox-trigger:before {
  background-color: #fff;
  content: "";
  display: block;
  height: 0.75rem;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 0C1.46957 0 0.960859 0.210714 0.585786 0.585786C0.210714 0.960859 0 1.46957 0 2L0 4H1.5V2C1.5 1.86739 1.55268 1.74021 1.64645 1.64645C1.74021 1.55268 1.86739 1.5 2 1.5H4V0H2ZM4 10.5H2C1.86739 10.5 1.74021 10.4473 1.64645 10.3536C1.55268 10.2598 1.5 10.1326 1.5 10V8H0V10C0 10.5304 0.210714 11.0391 0.585786 11.4142C0.960859 11.7893 1.46957 12 2 12H4V10.5ZM8 12V10.5H10C10.1326 10.5 10.2598 10.4473 10.3536 10.3536C10.4473 10.2598 10.5 10.1326 10.5 10V8H12V10C12 10.5304 11.7893 11.0391 11.4142 11.4142C11.0391 11.7893 10.5304 12 10 12H8ZM10 0C10.5304 0 11.0391 0.210714 11.4142 0.585786C11.7893 0.960859 12 1.46957 12 2V4H10.5V2C10.5 1.86739 10.4473 1.74021 10.3536 1.64645C10.2598 1.55268 10.1326 1.5 10 1.5H8V0H10Z" fill="black"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 0C1.46957 0 0.960859 0.210714 0.585786 0.585786C0.210714 0.960859 0 1.46957 0 2L0 4H1.5V2C1.5 1.86739 1.55268 1.74021 1.64645 1.64645C1.74021 1.55268 1.86739 1.5 2 1.5H4V0H2ZM4 10.5H2C1.86739 10.5 1.74021 10.4473 1.64645 10.3536C1.55268 10.2598 1.5 10.1326 1.5 10V8H0V10C0 10.5304 0.210714 11.0391 0.585786 11.4142C0.960859 11.7893 1.46957 12 2 12H4V10.5ZM8 12V10.5H10C10.1326 10.5 10.2598 10.4473 10.3536 10.3536C10.4473 10.2598 10.5 10.1326 10.5 10V8H12V10C12 10.5304 11.7893 11.0391 11.4142 11.4142C11.0391 11.7893 10.5304 12 10 12H8ZM10 0C10.5304 0 11.0391 0.210714 11.4142 0.585786C11.7893 0.960859 12 1.46957 12 2V4H10.5V2C10.5 1.86739 10.4473 1.74021 10.3536 1.64645C10.2598 1.55268 10.1326 1.5 10 1.5H8V0H10Z" fill="black"/></svg>');
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  width: 0.75rem;
}
.lightbox-trigger:focus-visible,
.lightbox:hover .lightbox-trigger {
  opacity: 1;
}
.lightbox.lightbox-hiding .lightbox-trigger,
.lightbox.lightbox-show .lightbox-trigger {
  opacity: 0;
  transition-duration: 0s;
}
.lightbox-overlay {
  background-color: var(--color-background, #fff);
  cursor: zoom-out;
  height: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease;
  visibility: hidden;
  width: 100%;
}
.lightbox-overlay-show {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}
.lightbox-close {
  background-color: transparent;
  border: 0;
  height: 24px;
  opacity: 0;
  padding: 0;
  position: fixed;
  right: var(--spacing-5);
  top: var(--spacing-5);
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease;
  visibility: hidden;
  width: 24px;
  z-index: 10000;
}
.lightbox-close:before {
  background-color: var(--color-contrast, #000);
  content: "";
  display: block;
  height: 100%;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.63603 5.63605L18.364 18.364M5.63603 18.364L18.364 5.63605" stroke="black" stroke-width="1.5"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.63603 5.63605L18.364 18.364M5.63603 18.364L18.364 5.63605" stroke="black" stroke-width="1.5"/></svg>');
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  width: 100%;
}
.lightbox-overlay-show ~ .lightbox-close {
  opacity: 1;
  visibility: visible;
}
.nav-item:has(> .collapse) {
  display: grid;
}
.nav-item:has(> .dropdown) {
  align-items: center;
  display: flex;
  position: relative;
}
.nav-item .dropdown:hover,
.nav-link:hover ~ .dropdown {
  opacity: 1;
  visibility: visible;
}
.nav-item .dropdown-toggle {
  background-color: transparent;
  border: 0;
  padding: 0;
  transition: visibility 0.01s;
  visibility: hidden;
}
.nav-item .dropdown-toggle:before {
  background-color: var(--color-contrast);
  content: "";
  display: block;
  height: 12px;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 5.25L7 8.75L10.5 5.25" stroke="black" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 5.25L7 8.75L10.5 5.25" stroke="black" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  width: 12px;
}
.nav-item .dropdown-toggle:focus-visible,
.nav-item .dropdown-toggle[aria-expanded="true"],
.nav-link:focus-visible ~ .dropdown-toggle {
  visibility: visible;
}
:root {
  --popup--transition: visibility 0.2s ease, opacity 0.2s ease;
  --popup--z-index: 10001;
}
.popup {
  height: 100%;
  left: 0;
  opacity: 0;
  overflow-x: auto;
  overflow-y: hidden;
  overflow: auto hidden;
  position: fixed;
  top: 0;
  transition: var(--popup--transition);
  visibility: hidden;
  width: calc(100% + var(--scrollbar-width, 0px));
  z-index: var(--popup--z-index);
}
.popup-show {
  opacity: 1;
  visibility: visible;
  width: 100%;
}
.popup-hide {
  pointer-events: none;
}
:has(> .collapse) {
  display: grid;
}
.collapse {
  display: grid;
  grid-row: 2;
  grid-template-rows: 0fr;
  margin: 0;
  padding: 0;
  position: static;
  transition:
    grid-template-rows 0.3s ease,
    visibility 0.3s;
}
.collapse,
.collapse > ul {
  overflow: hidden;
}
.collapse-toggle[aria-expanded="false"] ~ .collapse-ready,
.collapse-toggle[aria-expanded="false"]
  ~ .collapse:not(.collapse-ready):not(:has(.nav-link-current)) {
  visibility: hidden;
}
.collapse-toggle[aria-expanded="false"]
  ~ .collapse:not(.collapse-ready):has(.nav-link-current),
.collapse-toggle[aria-expanded="true"] ~ .collapse-ready {
  grid-template-rows: 1fr;
}
.collapse-toggle {
  --collapse--icon: url('data:image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15 5L5 15M5 5L15 15" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></svg>');
  --collapse--icon--size: 14px;
  --collapse--icon--rotate: -45deg;
  --collapse-open--icon--rotate: 0deg;
  cursor: pointer;
  grid-row: 1;
  text-align: inherit;
}
.collapse-toggle:after {
  background-color: currentcolor;
  content: "";
  display: block;
  flex: 0 0 auto;
  height: var(--collapse--icon--size);
  -webkit-mask-image: var(--collapse--icon);
  mask-image: var(--collapse--icon);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  transform: rotate(var(--collapse--icon--rotate));
  transition: transform 0.2s ease;
  width: var(--collapse--icon--size);
}
.collapse-toggle[aria-expanded="false"]:has(
    ~ .collapse:not(.collapse-ready) .nav-link-current
  ):after,
.collapse-toggle[aria-expanded="true"]:has(~ .collapse-ready):after {
  transform: rotate(var(--collapse-open--icon--rotate));
}
.dropdown {
  opacity: 0;
  position: absolute;
  visibility: hidden;
  z-index: 3;
}
.dropdown-toggle:focus-visible ~ .dropdown:not(.dropdown-ready),
.dropdown-toggle:hover ~ .dropdown:not(.dropdown-ready),
.dropdown.show,
.dropdown:not(.dropdown-ready):has(:focus-visible) {
  opacity: 1;
  visibility: visible;
}
.tag-hash-video:has(
    .post-content > .kg-video-card:first-child,
    .post-content
      > .kg-embed-card:first-child:has(
        > iframe:where(
            [src*="youtube.com"],
            [src*="youtube-nocookie.com"],
            [src*="player.vimeo.com"],
            [src*="dailymotion.com"],
            [src*="kickstarter.com"],
            [src*="wistia.com"],
            [src*="wistia.net"],
            [src*="twitch.tv"],
            [src*="clips.twitch.tv"],
            [src*="facebook.com"],
            [src*="tiktok.com"],
            [src*="instagram.com"],
            [src*="soundcloud.com"],
            [src*="iframe.mediadelivery.net"],
            [src*="video.bunnycdn.com"]
          )
      ),
    .post-content
      > iframe:first-child:where(
        [src*="youtube.com"],
        [src*="youtube-nocookie.com"],
        [src*="player.vimeo.com"],
        [src*="kickstarter.com"],
        [src*="dailymotion.com"],
        [src*="wistia.com"],
        [src*="wistia.net"],
        [src*="twitch.tv"],
        [src*="clips.twitch.tv"],
        [src*="facebook.com"],
        [src*="tiktok.com"],
        [src*="instagram.com"],
        [src*="soundcloud.com"],
        [src*="iframe.mediadelivery.net"],
        [src*="video.bunnycdn.com"]
      )
  )
  .post-featured:empty {
  display: block;
}
.tag-hash-video:has(
    .post-content > .kg-video-card:first-child,
    .post-content
      > .kg-embed-card:first-child:has(
        > iframe:where(
            [src*="youtube.com"],
            [src*="youtube-nocookie.com"],
            [src*="player.vimeo.com"],
            [src*="dailymotion.com"],
            [src*="kickstarter.com"],
            [src*="wistia.com"],
            [src*="wistia.net"],
            [src*="twitch.tv"],
            [src*="clips.twitch.tv"],
            [src*="facebook.com"],
            [src*="tiktok.com"],
            [src*="instagram.com"],
            [src*="soundcloud.com"],
            [src*="iframe.mediadelivery.net"],
            [src*="video.bunnycdn.com"]
          )
      ),
    .post-content
      > iframe:first-child:where(
        [src*="youtube.com"],
        [src*="youtube-nocookie.com"],
        [src*="player.vimeo.com"],
        [src*="kickstarter.com"],
        [src*="dailymotion.com"],
        [src*="wistia.com"],
        [src*="wistia.net"],
        [src*="twitch.tv"],
        [src*="clips.twitch.tv"],
        [src*="facebook.com"],
        [src*="tiktok.com"],
        [src*="instagram.com"],
        [src*="soundcloud.com"],
        [src*="iframe.mediadelivery.net"],
        [src*="video.bunnycdn.com"]
      )
  )
  .post-featured:empty:before {
  aspect-ratio: var(--featured-image--aspect-ratio);
  content: "";
  display: block;
  width: 100%;
}
.tag-hash-video
  .post:not(.post-featured-video-ready)
  .post-content
  > .kg-embed-card:first-child:has(
    > iframe:where(
        [src*="youtube.com"],
        [src*="youtube-nocookie.com"],
        [src*="player.vimeo.com"],
        [src*="kickstarter.com"],
        [src*="dailymotion.com"],
        [src*="wistia.com"],
        [src*="wistia.net"],
        [src*="twitch.tv"],
        [src*="clips.twitch.tv"],
        [src*="facebook.com"],
        [src*="tiktok.com"],
        [src*="instagram.com"],
        [src*="soundcloud.com"],
        [src*="iframe.mediadelivery.net"],
        [src*="video.bunnycdn.com"]
      )
  ),
.tag-hash-video
  .post:not(.post-featured-video-ready)
  .post-content
  > .kg-video-card:first-child,
.tag-hash-video
  .post:not(.post-featured-video-ready)
  .post-content
  > iframe:first-child:where(
    [src*="youtube.com"],
    [src*="youtube-nocookie.com"],
    [src*="player.vimeo.com"],
    [src*="kickstarter.com"],
    [src*="dailymotion.com"],
    [src*="wistia.com"],
    [src*="wistia.net"],
    [src*="twitch.tv"],
    [src*="clips.twitch.tv"],
    [src*="facebook.com"],
    [src*="tiktok.com"],
    [src*="instagram.com"],
    [src*="soundcloud.com"],
    [src*="iframe.mediadelivery.net"],
    [src*="video.bunnycdn.com"]
  ) {
  display: none;
}
.post-featured .kg-video-container {
  padding-bottom: 0 !important;
}
.post-featured iframe[src*="player.vimeo.com"] {
  background-color: #000;
}
.pricing-toggle {
  display: none;
  word-break: normal;
}
.pricing-toggle .pricing-toggle-monthly {
  order: -1;
}
.pricing-toggle:has(label + label) {
  display: flex;
}
.pricing-wrapper .pricing-toggle-input {
  border: 0;
  display: none;
  height: 0;
  min-height: auto;
  opacity: 0;
  padding: 0;
  pointer-events: none;
  position: absolute;
  width: 0;
  z-index: -1;
}
.pricing-wrapper:has(.pricing-toggle-monthly + .pricing-toggle-yearly)
  .pricing-toggle-input,
.pricing-wrapper:has(.pricing-toggle-yearly + .pricing-toggle-monthly)
  .pricing-toggle-input {
  display: block;
}
.pricing-toggle-input-monthly:checked
  ~ .pricing-toggle
  > .pricing-toggle-monthly,
.pricing-toggle-input-yearly:checked
  ~ .pricing-toggle
  > .pricing-toggle-yearly {
  cursor: default;
}
.pricing-toggle-input-monthly:focus-visible
  ~ .pricing-toggle
  > .pricing-toggle-monthly,
.pricing-toggle-input-yearly:focus-visible
  ~ .pricing-toggle
  > .pricing-toggle-yearly {
  outline: 5px auto Highlight;
  outline: 5px auto -webkit-focus-ring-color;
}
.pricing-toggle-input-monthly:checked
  ~ .pricing-container
  .pricing-button-yearly,
.pricing-toggle-input-monthly:checked
  ~ .pricing-container
  .pricing-price-yearly,
.pricing-toggle-input-yearly:checked
  ~ .pricing-container
  .pricing-button-monthly,
.pricing-toggle-input-yearly:checked
  ~ .pricing-container
  .pricing-price-monthly {
  display: none;
}
.pricing-discount {
  visibility: hidden;
}
.pricing-discount > span:before {
  content: attr(data-pricing-discount) "%";
}
.pricing-discount:empty,
.pricing-discount:has(> [data-pricing-discount="0"]) {
  display: none;
}
.pricing-toggle-input-yearly:checked ~ .pricing-container .pricing-discount {
  visibility: visible;
}
