/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
html {
  overflow-x: clip;
}
body {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  > main {
    flex-grow: 1;
  }
}
.breakout, .breakout-all {
  padding-inline: 10%;
  max-width: calc(10% + 65ch + 10%);
  & > * {
    &:is( table, pre, figure, video, iframe, canvas, img, picture,  .breakout-item, .breakout-item-max ) {
      width: fit-content;
      min-width: 100%;
      max-width: 125%;
      margin-left: 50%;
      transform: translateX(-50%);
    }
    &:is(img, picture) {
      min-width: auto;
    }
    &.breakout-item-max {
      width: 125% !important;
    }
  }
}
.breakout-all > * {
  &:is(h2, h3, h4, h5, h6, hr):not([class]) {
    position: relative;
    &::before {
      content: "";
      display: block;
      position: absolute;
      background: gray;
      opacity: 12.5%;
    }
  }
  &:is(h2, h3, h4, h5, h6):not([class]) {
    &::before {
      width: 10em;
      right: 100%;
      margin-right: 0.8ch;
      height: 0.25em;
      top: 50%;
      transform: translateY(-50%);
      background: linear-gradient(to left, gray, transparent);
    }
    &:where(hr + *) {
      &::before {
        display: none !important;
      }
    }
  }
  &:is(hr) {
    height: 0.5rem;
    border: none;
    overflow: visible;
    &::before {
      width: 100vw;
      left: 50%;
      height: 100%;
      transform: translateX(-50%);
    }
  }
}
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body {
  hyphens: auto;
  a, table {
    hyphens: none;
  }
}
h1, h2, h3, h4, h5, h6 {
  position: relative;
  [data-is-anchor] {
    visibility: hidden;
    position: absolute;
    top: 0;
    right: 100%;
    padding-right: 0.2ch;
    color: silver;
    text-decoration: none;
  }
  &:hover {
    [data-is-anchor] {
      visibility: visible;
    }
  }
}
ul, ol {
  li[data-marker]::marker {
    content: attr(data-marker) " ";
  }
}
a {
  > i {
    display: inline-block;
    font-style: normal;
  }
  &[data-has-favicon] {
    display: inline-block;
    > img {
      max-height: 1.25em;
      margin-top: calc(-0.25em / 2);
      margin-inline-end: 0.375ch;
      display: inline-block;
      margin-bottom: 0;
    }
  }
}
table {
  th {
    hr {
      width: 12ch;
      height: 0;
      margin: 0;
      visibility: hidden;
      &.x2 {
        width: 24ch;
      }
    }
  }
}
table.borderless {
  th, td {
    border: none;
  }
}
table.responsive, .breakout > table:not(.does-not-exist), .breakout-all > table:not(.does-not-exist) {
  margin-left: 50%;
  transform: translateX(-50%);
  width: max-content;
  min-width: auto;
  max-width: 100vw;
  padding-inline: 7.5%;
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  th, td {
    padding-inline-start: 0;
  }
}
pre {
  padding: 1rem 1.5rem;
  padding-inline-end: 2rem;
  @media screen and (max-width: 767px) {
    border-radius: 0;
  }
}
code {
  &[data-caption] {
    &::before {
      content: attr(data-caption);
      display: block;
      margin-bottom: 1rem;
      opacity: 50%;
      font-style: italic;
    }
  }
  &:where(pre > *) {
    padding: 0;
  }
}
.token.treeview-part {
  .entry-line {
    width: 2.5em !important;
    opacity: 25%;
  }
  .entry-name:last-child {
    opacity: 50%;
    &::before {
      display: none !important;
    }
  }
}
[data-jump-to="top"] {
  position: fixed;
  bottom: 0;
  right: 0;
  padding-top: 50vh;
  opacity: 25%;
  &:hover {
    opacity: 75%;
  }
}
[data-is-toc] {
  font-size: 87.5%;
  a {
    text-decoration: none;
  }
  > ul {
    columns: 30ch auto;
  }
}
.columns {
  columns: 20ch auto;
  > * {
    break-inside: avoid;
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    .dark-auto {
      filter: invert(100%) hue-rotate(180deg);
    }
  }
}
.faded {
  opacity: 50%;
  &:hover {
    opacity: 87.5%;
  }
}
.invert {
  ::-webkit-scrollbar {
    filter: invert(1) !important;
  }
}
a {
  &:not([href^="#"]) {
    text-decoration-thickness: 1px;
    &:hover {
      text-decoration-thickness: 2px;
    }
  }
}
h1 {
  font-size: 2.5em;
  margin-bottom: 1rem;
}
hr {
  margin-block: 2em;
}
ul {
  ul {
    font-size: 87.5%;
  }
}
pre {
  small {
    opacity: 75%;
    font-weight: lighter;
  }
}
table {
  th {
    vertical-align: bottom;
    font-weight: bold;
  }
  td {
    vertical-align: top;
  }
  pre {
    margin-bottom: 0.25rem;
  }
}
[data-jump-to="top"] {
  > i {
    display: inline-block;
    padding: 0.25rem;
    margin: 0.5rem;
    font-size: 0.75rem;
    color: black;
    border-color: black;
  }
}
[data-is-toc] {
  > ul > * > a {
    font-weight: 500;
  }
}
.breakout, .breakout-all {
  > img, > figure {
    margin-bottom: 1rem;
  }
}
.faded {
  a {
    text-decoration-style: dotted;
  }
}
:root {
  --brand-color: rgba(255, 255, 255, 75%);
  --brand-primary: white;
  --brand-primary-underline: rgba(255, 255, 255, 50%);
  --brand-bg-gradient: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
  --brand-bg-size: 400% 400%;
  --brand-bg-duration: 15s;
  --brand-bg-animate: brand-bg var(--brand-bg-duration) ease infinite;
}
@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    --pico-primary: rgba(0, 0, 0, 75%);
    --pico-primary-underline: rgba(0, 0, 0, 50%);
  }
}
@keyframes brand-bg {
  0%, 100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
small {
  &:where(:is(a, h1, h2, h3, h4, h5, h6) *) {
    opacity: 50%;
    font-weight: normal;
  }
  &:where(hgroup > *) {
    text-transform: uppercase;
    opacity: 50%;
    letter-spacing: 0.125ch;
  }
}
nav {
  gap: 0.5rem;
  > a[role="button"] {
    flex-grow: 1;
  }
  @media screen and (max-width: 767px) {
    display: block;
  }
}
body {
  > main {
    padding-block: calc(2 * var(--pico-block-spacing-vertical));
  }
  > header, > footer {
    --pico-color: var(--brand-color) !important;
    --pico-h1-color: var(--brand-primary);
    background: var(--brand-bg-gradient);
    background-size: var(--brand-bg-size);
    animation: var(--brand-bg-animate);
    @media (prefers-reduced-motion: reduce) {
      &:not([aria-busy="true"]) {
        animation-duration: var(--brand-bg-duration) !important;
        animation-delay: 0 !important;
        animation-iteration-count: infinite !important;
      }
    }
    a {
      --pico-primary: var(--brand-primary);
      --pico-primary-hover: var(--brand-primary);
      --pico-primary-underline: var(--brand-primary-underline);
      --pico-primary-hover-underline: var(--brand-primary-underline);
    }
  }
  > article {
    padding-block: 0.25rem;
    margin: 0;
    border-radius: 0;
    font-size: 75%;
  }
  > header, > footer, > article {
    text-align: center;
    nav {
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      ul {
        display: inline-flex;
      }
      p {
        display: inline-block;
        margin-block: 0.25rem;
      }
      a:not(p a) {
        padding: 0.25rem 0.5rem;
        border-radius: 0.25rem;
        &[aria-current="page"] {
          border: 1px solid white;
          text-decoration: none;
        }
        &:hover {
          background: rgba(255, 255, 255, 12.5%);
        }
      }
    }
  }
}
sub {
  vertical-align: top;
  bottom: 0;
  line-height: 1.1;
  font-weight: 300;
  color: var(--pico-muted-color);
  display: inline-block;
  width: 100%;
  &:where(h1 *) {
    font-size: 50%;
  }
}
[data-jump-to="top"] {
  > i {
    margin-bottom: 1.5rem;
  }
  &:hover > i {
    border-top: none;
    &::before {
      display: block;
      transform: translateY(-50%);
    }
  }
}
