.single-shell__meta {
  margin: 8px 0 0;
  color: #000000;
}

.single-shell__content {
  text-align: left;
}

.single-shell__content h2,
.single-shell__content h3,
.single-shell__content h4 {
  margin: 34px 0 16px;
  padding: 10px 14px;
  line-height: 1.4;
  text-align: left;
  white-space: normal;
  scroll-margin-top: 18px;
}

.single-shell__content h3:before,
.single-shell__content h3:after {
  content: none;
}

.single-shell__content h2 {
  color: #000000;
  background: #ff0000;
  border: 2px solid #ffffff;
  box-shadow: 6px 6px 0 #550000;
}

.single-shell__content h3 {
  color: #ffffff;
  background: #1b0000;
  border: 2px solid #ff0000;
  box-shadow: 6px 6px 0 #330000;
}

.single-shell__content h4 {
  color: #ffffff;
  background: #140000;
  border: 2px solid #ff0000;
  box-shadow: 6px 6px 0 #330000;
}

.single-shell__main {
  min-width: 0;
}

.single-shell__aside {
  display: none;
}

.single-shell__toc {
  margin: 0 0 24px;
  border: 2px solid #ffffff;
  background: #000000;
  box-shadow: 6px 6px 0 #333333;
  overflow: hidden;
}

.single-shell__toc-heading,
.single-shell__toc-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 10px 14px;
  color: #ffffff;
  background: #1b0000;
  border: 0;
  border-bottom: 2px solid #ff0000;
  font: inherit;
  text-align: left;
  text-transform: uppercase;
  box-sizing: border-box;
}

.single-shell__toc-heading {
  border-bottom: 2px solid #ff0000;
}

.single-shell__toc-toggle:hover,
.single-shell__toc-toggle:focus {
  color: #ffffff;
  background: #320000;
}

.single-shell__toc-label {
  letter-spacing: 0.02em;
}

.single-shell__toc-status {
  min-width: 44px;
  padding: 1px 6px;
  border: 1px solid #ffffff;
  text-align: center;
  background: #000000;
}

.single-shell__toc-panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.18s ease;
}

.single-shell__toc.is-open .single-shell__toc-panel {
  grid-template-rows: 1fr;
}

.single-shell__toc-panel-inner {
  overflow: hidden;
}

.single-shell__toc-body {
  padding: 14px 16px 16px;
}

.single-shell__toc-body nav,
.single-shell__toc-body ul {
  margin: 0;
  padding: 0;
}

.single-shell__toc-body li {
  margin: 0 0 8px;
  line-height: 1.45;
}

.single-shell__toc-body nav > ul > li {
  margin-bottom: 0;
}

.single-shell__toc-body nav > ul > li > ul {
  margin-top: 0;
  margin-left: 0;
  padding-left: 0;
  border-left: 0;
}

.single-shell__toc-body ul ul {
  margin: 8px 0 0 16px;
  padding-left: 12px;
  border-left: 1px solid #555555;
}

.single-shell__toc-body a {
  display: inline-block;
  color: #ffffff;
}

.single-shell__toc-body a:hover,
.single-shell__toc-body a:focus {
  color: #ffffff;
}

.single-shell__author--desktop {
  display: none;
}

.single-shell__author--mobile {
  margin: 0 0 22px;
}

.single-shell__author {
  --author-glitch-duration: 3.2s;
  position: relative;
  border: 2px solid #ffffff;
  background: #000000;
  box-shadow: 12px 12px 0 #550000;
  overflow: hidden;
  isolation: isolate;
  animation: author-block-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.06) 0,
    rgba(255, 255, 255, 0.06) 1px,
    transparent 1px,
    transparent 4px
  );
  opacity: 0.42;
  pointer-events: none;
  animation: author-block-scan-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.98) 0 1px,
      rgba(255, 255, 255, 0.92) 1px 2px,
      rgba(0, 0, 0, 0.98) 2px 5px,
      rgba(255, 255, 255, 0.88) 5px 6px,
      rgba(0, 0, 0, 0.98) 6px 10px
    ),
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.94) 0 1.1%,
      rgba(0, 0, 0, 0) 1.1% 2.8%,
      rgba(255, 76, 76, 0.5) 2.8% 4.8%,
      rgba(0, 0, 0, 0) 4.8% 6.6%,
      rgba(255, 100, 100, 0.5) 6.6% 9.6%,
      rgba(0, 0, 0, 0) 9.6% 12.4%,
      rgba(255, 109, 109, 0.48) 12.4% 15.2%,
      rgba(0, 0, 0, 0) 15.2% 18.8%,
      rgba(255, 88, 88, 0.44) 18.8% 21.7%,
      rgba(0, 0, 0, 0) 21.7% 25.3%,
      rgba(255, 110, 110, 0.5) 25.3% 28.8%,
      rgba(0, 0, 0, 0) 28.8% 32.6%,
      rgba(255, 255, 255, 0.94) 32.6% 33.6%,
      rgba(0, 0, 0, 0) 33.6% 37.4%,
      rgba(255, 98, 98, 0.46) 37.4% 40.9%,
      rgba(0, 0, 0, 0) 40.9% 45.2%,
      rgba(255, 106, 106, 0.48) 45.2% 49.4%,
      rgba(0, 0, 0, 0) 49.4% 53.8%,
      rgba(255, 108, 108, 0.5) 53.8% 58.2%,
      rgba(0, 0, 0, 0) 58.2% 62.8%,
      rgba(255, 104, 104, 0.48) 62.8% 67.1%,
      rgba(0, 0, 0, 0) 67.1% 72.2%,
      rgba(255, 255, 255, 0.94) 72.2% 73.2%,
      rgba(0, 0, 0, 0) 73.2% 79.8%,
      rgba(255, 93, 93, 0.44) 79.8% 84.5%,
      rgba(0, 0, 0, 0) 84.5% 89.6%,
      rgba(255, 97, 97, 0.5) 89.6% 94.6%,
      rgba(0, 0, 0, 0) 94.6% 98.7%,
      rgba(255, 255, 255, 0.94) 98.7% 100%
    ),
    linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0 4%,
      rgba(255, 255, 255, 0.9) 4% 5.1%,
      rgba(0, 0, 0, 0) 5.1% 9.8%,
      rgba(255, 88, 88, 0.44) 9.8% 13.4%,
      rgba(0, 0, 0, 0) 13.4% 18.1%,
      rgba(255, 104, 104, 0.48) 18.1% 23.1%,
      rgba(0, 0, 0, 0) 23.1% 27.8%,
      rgba(255, 118, 118, 0.46) 27.8% 32.6%,
      rgba(0, 0, 0, 0) 32.6% 38.4%,
      rgba(255, 111, 111, 0.42) 38.4% 42.2%,
      rgba(0, 0, 0, 0) 42.2% 47.6%,
      rgba(255, 100, 100, 0.48) 47.6% 52.8%,
      rgba(0, 0, 0, 0) 52.8% 58.4%,
      rgba(255, 255, 255, 0.92) 58.4% 59.4%,
      rgba(0, 0, 0, 0) 59.4% 66.1%,
      rgba(255, 92, 92, 0.48) 66.1% 70.9%,
      rgba(0, 0, 0, 0) 70.9% 77.2%,
      rgba(255, 97, 97, 0.44) 77.2% 82.4%,
      rgba(0, 0, 0, 0) 82.4% 89.3%,
      rgba(255, 255, 255, 0.9) 89.3% 90.3%,
      rgba(0, 0, 0, 0) 90.3% 100%
    );
  opacity: 0;
  mix-blend-mode: screen;
  pointer-events: none;
  filter: blur(0.2px) saturate(1.8) contrast(1.6);
  background-size: 100% 10px, 132px 100%, 84px 100%;
  background-repeat: repeat-y, repeat, repeat;
  animation: author-block-overlay-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-static {
  position: absolute;
  inset: -2px;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  background-image:
    repeating-linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.98) 0 1px,
      rgba(255, 255, 255, 0.92) 1px 2px,
      rgba(0, 0, 0, 0.98) 2px 5px,
      rgba(244, 38, 38, 0.72) 5px 6px,
      rgba(0, 0, 0, 0.98) 6px 10px
    ),
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.92) 0 1%,
      rgba(0, 0, 0, 0) 1% 5%,
      rgba(242, 44, 44, 0.76) 5% 9%,
      rgba(0, 0, 0, 0) 9% 14%,
      rgba(178, 11, 11, 0.72) 14% 21%,
      rgba(0, 0, 0, 0) 21% 29%,
      rgba(255, 255, 255, 0.88) 29% 30%,
      rgba(0, 0, 0, 0) 30% 39%,
      rgba(210, 20, 20, 0.74) 39% 47%,
      rgba(0, 0, 0, 0) 47% 55%,
      rgba(154, 6, 6, 0.72) 55% 64%,
      rgba(0, 0, 0, 0) 64% 74%,
      rgba(255, 255, 255, 0.88) 74% 75%,
      rgba(0, 0, 0, 0) 75% 85%,
      rgba(240, 47, 47, 0.76) 85% 91%,
      rgba(0, 0, 0, 0) 91% 99%,
      rgba(255, 255, 255, 0.92) 99% 100%
    ),
    linear-gradient(
      180deg,
      transparent 0 11%,
      rgba(255, 255, 255, 0.88) 11% 13%,
      transparent 13% 40%,
      rgba(235, 39, 39, 0.78) 40% 45%,
      transparent 45% 66%,
      rgba(170, 9, 9, 0.72) 66% 72%,
      transparent 72% 87%,
      rgba(255, 255, 255, 0.84) 87% 89%,
      transparent 89% 100%
    );
  background-size: 100% 10px, 170px 100%, 100% 100%;
  background-repeat: repeat-y, repeat, no-repeat;
  filter: blur(0.2px) saturate(2.6) contrast(1.95);
  animation: author-static-rupture var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-static::before,
.single-shell__author-static::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.single-shell__author-static::before {
  background-image:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.88) 0 1%,
      rgba(0, 0, 0, 0) 1% 6%,
      rgba(244, 45, 45, 0.74) 6% 12%,
      rgba(0, 0, 0, 0) 12% 20%,
      rgba(170, 10, 10, 0.7) 20% 29%,
      rgba(0, 0, 0, 0) 29% 38%,
      rgba(255, 255, 255, 0.86) 38% 39%,
      rgba(0, 0, 0, 0) 39% 51%,
      rgba(222, 27, 27, 0.72) 51% 61%,
      rgba(0, 0, 0, 0) 61% 73%,
      rgba(163, 8, 8, 0.68) 73% 81%,
      rgba(0, 0, 0, 0) 81% 100%
    ),
    linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0 5%,
      rgba(255, 255, 255, 0.86) 5% 6%,
      rgba(0, 0, 0, 0) 6% 15%,
      rgba(236, 38, 38, 0.68) 15% 22%,
      rgba(0, 0, 0, 0) 22% 33%,
      rgba(172, 11, 11, 0.66) 33% 41%,
      rgba(0, 0, 0, 0) 41% 54%,
      rgba(255, 255, 255, 0.86) 54% 55%,
      rgba(0, 0, 0, 0) 55% 69%,
      rgba(216, 24, 24, 0.68) 69% 77%,
      rgba(0, 0, 0, 0) 77% 91%,
      rgba(152, 6, 6, 0.64) 91% 100%
    ),
    repeating-linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.98) 0 1px,
      rgba(255, 255, 255, 0.9) 1px 2px,
      rgba(0, 0, 0, 0.98) 2px 4px,
      rgba(0, 0, 0, 0.98) 4px 6px,
      rgba(255, 255, 255, 0.82) 6px 7px,
      rgba(0, 0, 0, 0.98) 7px 10px
    );
  background-size: 142px 100%, 86px 100%, 100% 8px;
  background-repeat: repeat, repeat, repeat-y;
  mix-blend-mode: screen;
  opacity: 0;
  filter: blur(0.4px) saturate(2.8) contrast(2);
  animation: author-static-noise var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-static::after {
  background:
    linear-gradient(180deg, transparent 0 14%, rgba(255, 255, 255, 0.9) 14% 18%, transparent 18% 100%),
    linear-gradient(180deg, transparent 0 31%, rgba(234, 38, 38, 0.84) 31% 36%, transparent 36% 100%),
    linear-gradient(180deg, transparent 0 48%, rgba(174, 10, 10, 0.78) 48% 54%, transparent 54% 100%),
    linear-gradient(180deg, transparent 0 66%, rgba(255, 112, 112, 0.78) 66% 72%, transparent 72% 100%),
    linear-gradient(180deg, transparent 0 82%, rgba(150, 0, 0, 0.76) 82% 88%, transparent 88% 100%);
  opacity: 0;
  filter: blur(0.95px) brightness(1.3) saturate(3.4);
  mix-blend-mode: screen;
  animation: author-static-bars var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-heading {
  position: relative;
  z-index: 1;
  padding: 10px 14px;
  color: #ffffff;
  background: #1b0000;
  border-bottom: 2px solid #ff0000;
  text-transform: uppercase;
  text-shadow: 4px 0 #550000;
  animation: author-block-content-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-card {
  position: relative;
  z-index: 1;
  padding: 16px 16px 18px;
  background: linear-gradient(180deg, rgba(255, 0, 0, 0.08) 0, rgba(0, 0, 0, 0) 42%), #000000;
  animation: author-block-content-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-photo-link,
.single-shell__author-name-link {
  display: block;
  color: inherit;
}

.single-shell__author-photo-shell {
  position: relative;
  padding: 6px;
  border: 2px solid #ffffff;
  background: #000000;
  box-shadow: 6px 6px 0 #550000;
  animation: author-card-frame-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-photo {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
}

.single-shell__author-body {
  margin-top: 16px;
  animation: author-block-text-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-name {
  position: relative;
  display: inline-block;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.3;
  text-transform: uppercase;
}

.single-shell__author-name::before,
.single-shell__author-name::after {
  content: attr(data-text);
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}

.single-shell__author-name::before {
  color: #ff6b6b;
  text-shadow: -1px 0 #aa0000;
  animation: author-name-glitch-before var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-name::after {
  color: #ff9999;
  text-shadow: 1px 0 #cc0000;
  animation: author-name-glitch-after var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__author-title {
  margin: 10px 0 0;
  color: #bbbbbb;
  font-size: 15px;
  line-height: 1.5;
  animation: author-block-text-glitch var(--author-glitch-duration) infinite steps(1, end);
}

.single-shell__scroll-top {
  display: none;
}

.single-shell__content .highlight {
  margin: 0 0 22px;
  border: 2px solid #ff0000;
  background: #000000;
  box-shadow: 6px 6px 0 #330000;
  overflow: hidden;
}

.single-shell__content pre {
  margin: 0 0 22px;
  padding: 14px 16px;
  border: 2px solid #ff0000;
  background: #000000 !important;
  color: #f5f5f5 !important;
  box-shadow: 6px 6px 0 #330000;
  font-family: "Fixedsys500c", monospace;
  font-size: 13px;
  line-height: 1.55;
  overflow-x: auto;
  overflow-y: hidden;
  word-break: normal;
  word-wrap: normal;
  white-space: pre;
  tab-size: 2;
}

.single-shell__content .highlight pre {
  margin: 0;
  border: 0;
  box-shadow: none;
}

.single-shell__content pre code {
  display: block;
  color: inherit !important;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  white-space: inherit;
}

.single-shell__content .highlight span[style*="background-color"] {
  background-color: transparent !important;
}

.single-shell__content :not(pre) > code {
  padding: 2px 6px;
  border: 1px solid #aa0000;
  background: #0a0000;
  color: #ffb3b3;
  font-family: "Fixedsys500c", monospace;
  font-size: 0.88em;
}

@keyframes author-card-frame-glitch {
  0%,
  75%,
  100% {
    box-shadow: 6px 6px 0 #550000;
    transform: translate(0, 0);
  }
  80% {
    box-shadow: 8px 4px 0 rgba(170, 0, 0, 0.5), -3px 7px 0 rgba(118, 0, 0, 0.38);
    transform: translate(1px, 0);
  }
  85% {
    box-shadow: -5px 7px 0 rgba(170, 0, 0, 0.5), 7px -1px 0 rgba(118, 0, 0, 0.38);
    transform: translate(-1px, 1px);
  }
  89% {
    box-shadow: 8px 5px 0 rgba(170, 0, 0, 0.5), -4px 8px 0 rgba(118, 0, 0, 0.38);
    transform: translate(1px, 0);
  }
  93% {
    box-shadow: -6px 7px 0 rgba(170, 0, 0, 0.4), 7px -1px 0 rgba(112, 0, 0, 0.3);
    transform: translate(0, 1px);
  }
  96% {
    box-shadow: 6px 6px 0 rgba(85, 0, 0, 0.8);
    transform: translate(0, 0);
  }
}

@keyframes author-block-glitch {
  0%,
  75%,
  100% {
    transform: translate(0, 0);
    box-shadow: 12px 12px 0 #550000;
  }
  78% {
    transform: translate(2px, -1px);
    box-shadow: 14px 10px 0 rgba(170, 0, 0, 0.6), -5px 12px 0 rgba(105, 0, 0, 0.4);
  }
  82% {
    transform: translate(-2px, 1px);
    box-shadow: -10px 13px 0 rgba(122, 0, 0, 0.45), 8px -2px 0 rgba(85, 0, 0, 0.5);
  }
  86% {
    transform: translate(2px, 1px);
    box-shadow: 14px 13px 0 rgba(170, 0, 0, 0.5), -5px 14px 0 rgba(122, 0, 0, 0.4);
  }
  90% {
    transform: translate(-2px, 0);
    box-shadow: -10px 12px 0 rgba(170, 0, 0, 0.5), 10px -2px 0 rgba(122, 0, 0, 0.4);
  }
  94% {
    transform: translate(1px, 1px);
    box-shadow: 13px 13px 0 rgba(170, 0, 0, 0.4), -4px 12px 0 rgba(118, 0, 0, 0.3);
  }
  97% {
    transform: translate(0, 0);
    box-shadow: 12px 12px 0 rgba(85, 0, 0, 0.8);
  }
}

@keyframes author-block-scan-glitch {
  0%,
  75%,
  100% {
    opacity: 0.26;
    transform: translate(0, 0);
  }
  80% {
    opacity: 0.42;
    transform: translateX(-2px);
  }
  85% {
    opacity: 0.38;
    transform: translateX(2px);
  }
  89% {
    opacity: 0.45;
    transform: translateX(-2px);
  }
  93% {
    opacity: 0.4;
    transform: translateX(2px);
  }
  96% {
    opacity: 0.48;
    transform: translateX(-1px);
  }
}

@keyframes author-block-overlay-glitch {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: translate(0, 0);
  }
  78% {
    opacity: 0.5;
    transform: translate(-2px, 0);
  }
  82% {
    opacity: 0.6;
    transform: translate(2px, 0);
  }
  86% {
    opacity: 0.45;
    transform: translate(-2px, 1px);
  }
  90% {
    opacity: 0.55;
    transform: translate(2px, -1px);
  }
  94% {
    opacity: 0.4;
    transform: translate(-1px, 1px);
  }
  97% {
    opacity: 0;
    transform: translate(0, 0);
  }
}

@keyframes author-block-content-glitch {
  0%,
  75%,
  100% {
    transform: translate(0, 0);
    filter: none;
  }
  80% {
    transform: translate(-2px, 0);
    filter: drop-shadow(-2px 0 rgba(236, 42, 42, 0.3)) drop-shadow(2px 0 rgba(112, 4, 4, 0.3));
  }
  84% {
    transform: translate(2px, 0);
    filter: drop-shadow(2px 0 rgba(242, 48, 48, 0.4)) drop-shadow(-2px 0 rgba(124, 6, 6, 0.4));
  }
  88% {
    transform: translate(-2px, 1px);
    filter: drop-shadow(-2px 0 rgba(236, 42, 42, 0.3)) drop-shadow(2px 0 rgba(112, 4, 4, 0.3));
  }
  92% {
    transform: translate(2px, -1px);
    filter: drop-shadow(2px 0 rgba(236, 42, 42, 0.3)) drop-shadow(-2px 0 rgba(112, 4, 4, 0.3));
  }
  95% {
    transform: translate(-1px, 1px);
    filter: drop-shadow(-2px 0 rgba(232, 36, 36, 0.2)) drop-shadow(2px 0 rgba(104, 4, 4, 0.2));
  }
  98% {
    transform: translate(0, 0);
    filter: none;
  }
}

@keyframes author-block-text-glitch {
  0%,
  75%,
  100% {
    transform: translate(0, 0);
    text-shadow: none;
  }
  80% {
    transform: translate(-2px, 0);
    text-shadow: -2px 0 rgba(236, 42, 42, 0.3), 2px 0 rgba(112, 4, 4, 0.3);
  }
  84% {
    transform: translate(2px, 0);
    text-shadow: 2px 0 rgba(242, 48, 48, 0.4), -2px 0 rgba(124, 6, 6, 0.4);
  }
  88% {
    transform: translate(-1px, 1px);
    text-shadow: -2px 0 rgba(236, 42, 42, 0.3), 2px 0 rgba(112, 4, 4, 0.3);
  }
  92% {
    transform: translate(1px, -1px);
    text-shadow: 2px 0 rgba(236, 42, 42, 0.3), -2px 0 rgba(112, 4, 4, 0.3);
  }
  95% {
    transform: translate(-1px, 1px);
    text-shadow: -1px 0 rgba(232, 36, 36, 0.2), 1px 0 rgba(104, 4, 4, 0.2);
  }
  98% {
    transform: translate(0, 0);
    text-shadow: none;
  }
}

@keyframes author-name-glitch-before {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: translate(0, 0);
    clip-path: inset(0 0 0 0);
  }
  80% {
    opacity: 0.5;
    transform: translate(-1px, 0);
    clip-path: inset(10% 0 52% 0);
  }
  86% {
    opacity: 0.55;
    transform: translate(1px, 0);
    clip-path: inset(62% 0 10% 0);
  }
  92% {
    opacity: 0.5;
    transform: translate(-1px, 0);
    clip-path: inset(22% 0 36% 0);
  }
  97% {
    opacity: 0;
    transform: translate(0, 0);
    clip-path: inset(0 0 0 0);
  }
}

@keyframes author-name-glitch-after {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: translate(0, 0);
    clip-path: inset(0 0 0 0);
  }
  82% {
    opacity: 0.45;
    transform: translate(1px, 0);
    clip-path: inset(48% 0 18% 0);
  }
  88% {
    opacity: 0.5;
    transform: translate(-1px, 0);
    clip-path: inset(4% 0 68% 0);
  }
  94% {
    opacity: 0.45;
    transform: translate(1px, 0);
    clip-path: inset(30% 0 30% 0);
  }
  98% {
    opacity: 0;
    transform: translate(0, 0);
    clip-path: inset(0 0 0 0);
  }
}

@keyframes author-static-rupture {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: translate(0, 0) scale(1, 1);
    background-position: 0 0, 0 0, 0 0, 0 0, 0 0;
  }
  78% {
    opacity: 0.45;
    transform: translate(-2px, 0) scale(1.01, 0.98);
    background-position: 0 -3px, -12px 0, 9px 0, -17px 0, 0 -4px;
  }
  82% {
    opacity: 0.55;
    transform: translate(3px, -1px) scale(1.02, 0.96);
    background-position: 0 4px, 15px 0, -10px 0, 8px 0, 0 5px;
  }
  86% {
    opacity: 0.5;
    transform: translate(-3px, 2px) scale(1.02, 1.04);
    background-position: 0 -5px, -17px 0, 12px 0, -13px 0, 0 -6px;
  }
  90% {
    opacity: 0.4;
    transform: translate(2px, -1px) scale(1.01, 0.98);
    background-position: 0 2px, 10px 0, -7px 0, 5px 0, 0 3px;
  }
  94% {
    opacity: 0;
    transform: translate(0, 0) scale(1, 1);
    background-position: 0 0, 0 0, 0 0, 0 0, 0 0;
  }
}

@keyframes author-static-noise {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: translateX(0);
    background-position: 0 0, 0 0, 0 0;
  }
  80% {
    opacity: 0.45;
    transform: translateX(-4px);
    background-position: -12px 0, 9px 0, 0 -3px;
  }
  84% {
    opacity: 0.55;
    transform: translateX(5px);
    background-position: 15px 0, -8px 0, 0 4px;
  }
  88% {
    opacity: 0.5;
    transform: translateX(-3px);
    background-position: -10px 0, 11px 0, 0 -5px;
  }
  92% {
    opacity: 0.4;
    transform: translateX(3px);
    background-position: 8px 0, -5px 0, 0 2px;
  }
  96% {
    opacity: 0;
    transform: translateX(0);
    background-position: 0 0, 0 0, 0 0;
  }
}

@keyframes author-static-bars {
  0%,
  75%,
  100% {
    opacity: 0;
    transform: translateY(0);
  }
  80% {
    opacity: 0.4;
    transform: translateY(-2px);
  }
  84% {
    opacity: 0.5;
    transform: translateY(3px);
  }
  88% {
    opacity: 0.45;
    transform: translateY(-2px);
  }
  92% {
    opacity: 0.35;
    transform: translateY(1px);
  }
  96% {
    opacity: 0;
    transform: translateY(0);
  }
}

@media (min-width: 980px) {
  .single-shell__body--with-toc {
    display: flex;
    align-items: flex-start;
    gap: 28px;
  }

  .single-shell__body--with-toc .single-shell__main {
    flex: 1 1 auto;
  }

  .single-shell__body--with-toc .single-shell__aside {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 270px;
    flex: 0 0 270px;
    position: relative;
    align-self: flex-start;
  }

  .single-shell__toc--mobile {
    display: none;
  }

  .single-shell__toc--desktop {
    display: block;
  }

  .single-shell__toc--desktop .single-shell__toc-body {
    max-height: none;
    overflow: visible;
  }

  .single-shell__author--mobile {
    display: none;
  }

  .single-shell__author--desktop {
    display: block;
  }
}

@media (max-width: 767px) {
  .single-shell {
    padding-bottom: 24px;
  }

  .single-shell .navmargin {
    margin-top: 18px;
  }

  .single-shell__header {
    margin: 14px 0 18px;
    padding: 14px;
  }

  .single-shell__title {
    line-height: 1.3;
    text-transform: none;
    white-space: normal;
    word-break: break-word;
  }

  .single-shell__meta {
    font-size: 15px;
    line-height: 1.45;
  }

  .single-shell__lead {
    margin: 0 0 18px;
    padding: 10px 12px;
  }

  .single-shell__content {
    text-align: left;
  }

  .single-shell__content p,
  .single-shell__content li,
  .single-shell__content blockquote,
  .single-shell__content ul,
  .single-shell__content ol {
    font-size: 16px;
    line-height: 1.7;
    text-align: left;
  }

  .single-shell__content h2,
  .single-shell__content h3,
  .single-shell__content h4 {
    margin: 24px 0 12px;
    line-height: 1.4;
    text-align: left;
    white-space: normal;
  }

  .single-shell__content img,
  .single-shell__content img[width],
  .single-shell__content img[style*="width"] {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto;
    padding: 4px;
    border: 2px solid #ffffff;
    background: #000000;
    box-sizing: border-box;
  }

  .single-shell--blogs .single-shell__content img {
    cursor: zoom-in;
  }

  .single-shell__content div[style*="text-align: center"],
  .single-shell__content div[style*="text-align:center"],
  .single-shell__content [style*="text-align: center"],
  .single-shell__content [style*="text-align:center"],
  .single-shell__content div[align="center"] {
    margin: 18px 0;
    text-align: left !important;
  }

  .single-shell__content div[style*="text-align: center"] > img,
  .single-shell__content div[style*="text-align:center"] > img,
  .single-shell__content [style*="text-align: center"] > img,
  .single-shell__content [style*="text-align:center"] > img,
  .single-shell__content div[align="center"] > img {
    margin: 0 auto;
  }

  .single-shell__author--mobile {
    margin: 0 0 20px;
    box-shadow: 10px 10px 0 #550000;
  }

  .single-shell__author-card {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .single-shell__author-photo-link {
    width: 88px;
  }

  .single-shell__author-photo-shell {
    box-shadow: 4px 4px 0 #550000;
  }

  .single-shell__author-body {
    margin-top: 0;
  }

  .single-shell__author-title {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.45;
  }

  .single-shell__content .highlight {
    margin-bottom: 18px;
    box-shadow: 4px 4px 0 #330000;
  }

  .single-shell__content pre {
    margin: 0 0 18px;
    padding: 12px 12px 13px;
    box-shadow: 4px 4px 0 #330000;
    font-size: 12px;
    line-height: 1.5;
  }

  .single-shell__content code {
    white-space: normal;
    word-break: break-word;
  }

  .single-shell__content pre code {
    white-space: pre;
    word-break: normal;
  }

  .single-shell__back {
    margin-top: 22px;
  }

  .single-shell__back a {
    display: block;
    padding: 10px 12px;
    border: 2px solid #ff0000;
    text-align: center;
  }

  .single-shell__toc {
    margin-bottom: 20px;
    box-shadow: 4px 4px 0 #333333;
  }

  .single-shell__toc--desktop {
    display: none;
  }

  .single-shell__toc-toggle,
  .single-shell__toc-body {
    padding-left: 12px;
    padding-right: 12px;
  }

  .single-shell__toc-body li {
    font-size: 15px;
  }

  .mobile-image-lightbox {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(0, 0, 0, 0.94);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 9999;
    transition: opacity 0.16s ease, visibility 0.16s ease;
  }

  .mobile-image-lightbox.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .mobile-image-lightbox__image {
    display: block;
    max-width: 100%;
    max-height: 86vh;
    width: auto;
    height: auto;
    padding: 4px;
    border: 2px solid #ffffff;
    background: #000000;
    box-sizing: border-box;
    box-shadow: 8px 8px 0 #550000;
  }

  .mobile-image-lightbox__hint {
    position: absolute;
    right: 18px;
    bottom: 18px;
    margin: 0;
    padding: 5px 8px;
    color: #ffffff;
    background: rgba(0, 0, 0, 0.72);
    border: 1px solid #ffffff;
    font-size: 14px;
    line-height: 1.4;
  }

  body.mobile-image-lightbox-open {
    overflow: hidden;
  }

  .single-shell__scroll-top {
    position: fixed;
    right: 18px;
    bottom: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    padding: 0;
    border: 2px solid #ffffff;
    border-radius: 999px;
    background: #1b0000;
    color: #ffffff;
    box-shadow: 5px 5px 0 #550000;
    font: inherit;
    font-size: 24px;
    line-height: 1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease, background 0.16s ease;
    z-index: 9500;
  }

  .single-shell__scroll-top.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .single-shell__scroll-top:hover,
  .single-shell__scroll-top:focus {
    background: #330000;
    color: #ffffff;
  }
}

@media (max-width: 480px) {
  .single-shell__header {
    padding: 12px;
  }

  .single-shell__title {
    font-size: 17px;
  }

  .single-shell__meta {
    font-size: 14px;
  }

  .single-shell__content p,
  .single-shell__content li,
  .single-shell__content blockquote,
  .single-shell__content ul,
  .single-shell__content ol {
    font-size: 15px;
  }

  .single-shell__content pre {
    font-size: 11px;
    padding: 11px 10px 12px;
  }

  .single-shell__content h2,
  .single-shell__content h3,
  .single-shell__content h4 {
    padding: 9px 11px;
  }

  .single-shell__content h2 {
    box-shadow: 4px 4px 0 #550000;
  }

  .single-shell__content h3 {
    box-shadow: 4px 4px 0 #330000;
  }

  .single-shell__content h4 {
    box-shadow: 4px 4px 0 #330000;
  }

  .mobile-image-lightbox {
    padding: 14px;
  }

  .mobile-image-lightbox__image {
    max-height: 82vh;
    box-shadow: 6px 6px 0 #550000;
  }

  .mobile-image-lightbox__hint {
    right: 14px;
    bottom: 14px;
    font-size: 13px;
  }

  .single-shell__scroll-top {
    right: 14px;
    bottom: 14px;
    width: 50px;
    height: 50px;
    font-size: 22px;
  }

  .single-shell__author-card {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 12px;
  }

  .single-shell__author-photo-link {
    width: 76px;
  }

  .single-shell__author-name {
    font-size: 16px;
  }

  .single-shell__author-title {
    font-size: 13px;
  }
}
