:root:active-view-transition-type(master-navigation) .ui-header:not([data-variant="stickable"]) {
  view-transition-name: master-header;
  view-transition-class: master-navigation-chrome;
}

:root:active-view-transition-type(master-navigation) #sidebar.ui-sidebar {
  view-transition-name: master-sidebar;
  view-transition-class: master-navigation-chrome;
}

:root:active-view-transition-type(master-navigation) .ui-docs-body .ui-toc[data-rail] {
  view-transition-name: master-contents;
  view-transition-class: master-navigation-chrome;
}

:root:active-view-transition-type(master-navigation)::view-transition {
  pointer-events: none;
}

:root:active-view-transition-type(master-navigation)::view-transition-group(root) {
  animation-duration: var(--ui-duration-quick);
}

:root:active-view-transition-type(master-navigation)::view-transition-group(.master-navigation-chrome) {
  animation: none;
}

:root:active-view-transition-type(master-navigation)::view-transition-old(.master-navigation-chrome) {
  opacity: 0;
  animation: none;
}

:root:active-view-transition-type(master-navigation)::view-transition-new(.master-navigation-chrome) {
  mix-blend-mode: normal;
  animation: none;
}

:root:active-view-transition-type(master-navigation)::view-transition-old(.master-navigation-chrome):only-child {
  animation-name: master-navigation-chrome-out;
  animation-duration: var(--ui-duration-quick);
  animation-fill-mode: both;
}

:root:active-view-transition-type(master-navigation)::view-transition-new(.master-navigation-chrome):only-child {
  animation-name: master-navigation-chrome-in;
  animation-duration: var(--ui-duration-quick);
  animation-fill-mode: both;
}

@keyframes master-navigation-chrome-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes master-navigation-chrome-out {
  from { opacity: 1; }
  to { opacity: 0; }
}

@layer components {
  .ui-app {
    background: var(--ui-surface-canvas);
    min-height: 100dvh;
    color: var(--ui-text-body);
  }

  .ui-header {
    z-index: 40;
    align-items: center;
    gap: var(--ui-space-lg);
    height: 3.75rem;
    padding: 0 var(--ui-space-lg);
    background: color-mix(in oklab, var(--ui-surface-canvas) 82%, transparent);
    backdrop-filter: blur(16px) saturate(1.3);
    box-shadow: inset 0 -1px 0 var(--ui-line-hair);
    display: flex;
    position: sticky;
    top: 0;
  }

  .ui-header-brand {
    align-items: center;
    gap: var(--ui-space-xs);
    color: var(--ui-text-strong);
    font-weight: var(--ui-weight-medium);
    letter-spacing: -.02em;
    white-space: nowrap;
    font-size: 1.0625rem;
    text-decoration: none;
    display: inline-flex;
  }

  .ui-header-nav {
    align-items: center;
    gap: var(--ui-space-3xs);
    display: flex;
  }

  .ui-header-nav > a {
    border-radius: var(--ui-radius-md);
    height: 2.25rem;
    color: var(--ui-text-body);
    font-size: var(--ui-text-small);
    font-weight: var(--ui-weight-regular);
    transition: color var(--ui-duration-quick);
    align-items: center;
    padding: 0 .75rem;
    text-decoration: none;
    display: inline-flex;
  }

  .ui-header-nav > a:hover {
    color: var(--ui-text-strong);
  }

  .ui-header-nav > a:is([aria-current="page"], [aria-current="true"]) {
    color: var(--ui-text-strong);
    font-weight: var(--ui-weight-medium);
  }

  .ui-header-nav>a:focus-visible{outline:2px solid var(--ui-focus);outline-offset:0}

  .ui-header-nav > a > small {
    margin-left: var(--ui-space-2xs);
    border-radius: var(--ui-radius-xs);
    background: var(--ui-surface-chip);
    color: var(--ui-text-muted);
    box-shadow: inset 0 0 0 1px var(--ui-line-hair);
    font: var(--ui-weight-medium) .6875rem/1.4 var(--font-family-sans);
    letter-spacing: .02em;
    padding: 1px 5px;
  }

  .ui-header-end {
    align-items: center;
    gap: var(--ui-space-3xs);
    margin-left: auto;
    display: flex;
  }

  .ui-header-divider {
    width: 1px;
    height: 1rem;
    margin-inline: var(--ui-space-xs);
    background: var(--ui-line-divider);
  }

  .ui-version {
    align-items: center;
    gap: var(--ui-space-3xs);
    border-radius: var(--ui-radius-md);
    height: 2.25rem;
    color: var(--ui-text-body);
    font: var(--ui-weight-regular) var(--ui-text-small)/1 var(--font-family-sans);
    font-variant-numeric: tabular-nums;
    padding: 0 .375rem;
    display: inline-flex;
  }

  .ui-header, .ui-mobile-menu-bar {
    --ui-header-target: 2.25rem;
    --ui-header-icon: 1.125rem;
    --ui-header-control-gap: .5rem;
  }

  .ui-header .ui-button.ui-header-control[data-shape="icon"], .ui-mobile-menu-bar .ui-button.ui-header-control[data-shape="icon"] {
    box-sizing: border-box;
    flex: 0 0 var(--ui-header-target);
    width: var(--ui-header-target);
    min-width: var(--ui-header-target);
    height: var(--ui-header-target);
    min-height: var(--ui-header-target);
    border-radius: var(--ui-radius-md);
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    line-height: 1;
    position: relative;
  }

  .ui-header-control.ui-button[data-variant="quiet"]:not(:disabled) {
    box-shadow: none;
    color: var(--ui-text-muted);
    background: none;
    translate: none;
  }

  .ui-header-control.ui-button[data-variant="quiet"]:where(:hover, :active, :focus-visible, :has(select:focus-visible)):not(:disabled) {
    color: var(--ui-text-strong);
  }

  .ui-header-control.ui-button > svg:not(.ui-header-external) {
    width: var(--ui-header-icon);
    height: var(--ui-header-icon);
    flex: none;
  }

  .ui-header .ui-header-end, .ui-header .ui-header-nav {
    align-items: center;
    gap: var(--ui-header-control-gap);
  }

  .ui-header .ui-header-divider {
    height: var(--ui-header-icon);
    flex: none;
    margin: 0 .25rem;
  }

  .ui-header .ui-header-nav > a, .ui-header .ui-version {
    height: var(--ui-header-target);
  }

  .ui-header {
    padding-top: env(safe-area-inset-top);
    padding-inline: max(var(--ui-space-xl), env(safe-area-inset-left)) max(var(--ui-space-xl), env(safe-area-inset-right));
    height: calc(3.75rem + env(safe-area-inset-top));
    box-sizing: border-box;
  }

  .ui-header[data-variant="stickable"] {
    width: 100%;
    transition: translate var(--ui-duration-base) var(--ui-ease), background-color var(--ui-duration-base), box-shadow var(--ui-duration-base);
    position: fixed;
    inset: 0 0 auto;
  }

  .ui-header[data-tucked] {
    translate: 0 -100%;
  }

  .ui-header:focus-within {
    transition-duration: 0s;
    translate: none;
  }

  .ui-header[data-background="transparent"] {
    box-shadow: none;
    backdrop-filter: none;
    background: none;
  }

  @media (scripting: none) {
    .ui-header[data-background="transparent"] {
      position: absolute;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ui-header, .ui-header[data-variant="stickable"] {
      transition: none;
    }
  }

  @media print {
    .ui-header {
      display: none;
    }
  }

  .ui-header-brand {
    min-height: var(--ui-header-target);
    border-radius: var(--ui-radius-sm);
    align-items: center;
    display: inline-flex;
  }

  .ui-header-brand:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}

  .ui-header .ui-version {
    cursor: pointer;
    position: relative;
  }

  .ui-header .ui-version > svg {
    width: 12px;
    height: 12px;
    color: var(--ui-text-muted);
  }

  .ui-header .ui-version:hover {
    color: var(--ui-text-strong);
  }

  .ui-header-nav > a > .ui-badge {
    margin-left: var(--ui-space-2xs);
  }

  .ui-header-nav > a:has(.ui-header-external) {
    padding-right: 1.125rem;
    position: relative;
  }

  .ui-header-nav > a > .ui-header-external, .ui-header-end > .ui-button > .ui-header-external {
    pointer-events: none;
    width: .625rem;
    height: .625rem;
    position: absolute;
    top: .375rem;
    right: .125rem;
  }

  .ui-header-end > .ui-button > .ui-header-external {
    top: calc(50% - .875rem);
    right: calc(50% - 1rem);
  }

  .ui-header-end > .ui-button[data-disabled] {
    color: var(--ui-text-disabled);
    pointer-events: none;
  }

  .ui-header-end > :is(a, button, label) {
    position: relative;
  }

  .ui-header-end > * > .ui-tooltip {
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--ui-duration-quick), visibility 0s linear var(--ui-duration-quick);
    top: calc(100% + 8px);
    left: 50%;
    translate: -50%;
  }

  .ui-header-end > :is(:hover, :focus-visible, :has(:focus-visible)) > .ui-tooltip {
    opacity: 1;
    visibility: visible;
    transition-delay: .4s, .4s;
  }

  .ui-header-end > :last-child > .ui-tooltip {
    left: auto;
    right: 0;
    translate: none;
  }

  .ui-header-end > :last-child > .ui-tooltip:before {
    left: auto;
    right: calc(1rem - 4px);
    translate: none;
  }

  @media (hover: none) {
    .ui-header-end > * > .ui-tooltip {
      display: none;
    }
  }

  .ui-header-search {
    appearance: none;
    box-sizing: border-box;
    border-radius: var(--ui-radius-pill);
    height: 1.875rem;
    color: var(--ui-text-muted);
    box-shadow: inset 0 0 0 1px var(--ui-line-contour);
    font: var(--ui-weight-regular) .75rem/1 var(--font-family-sans);
    cursor: pointer;
    transition: color var(--ui-duration-quick), box-shadow var(--ui-duration-quick), background-color var(--ui-duration-quick);
    background: none;
    border: 0;
    flex: none;
    align-items: center;
    gap: .4375rem;
    margin: 0;
    padding: 0 .8125rem 0 .6875rem;
    display: inline-flex;
  }

  .ui-header-search:hover {
    color: var(--ui-text-strong);
    background: var(--ui-surface-chip);
    box-shadow: inset 0 0 0 1px var(--ui-line-strong);
  }

  .ui-header-search:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}

  .ui-header-search > svg {
    flex: none;
    width: 1rem;
    height: 1rem;
  }

  .ui-header-search > .ui-kbd {
    min-width: 0;
    height: auto;
    color: inherit;
    box-shadow: none;
    font: var(--ui-weight-regular) .6875rem/1 var(--font-family-sans);
    letter-spacing: .04em;
    background: none;
    padding: 0;
  }

  .ui-header .ui-header-menu {
    display: none;
  }

  @media (width < 64rem) {
    .ui-header, .ui-mobile-menu-bar {
      --ui-header-target: 2.75rem;
    }

    .ui-header {
      gap: var(--ui-space-xs);
      padding-inline: max(var(--ui-space-xs), env(safe-area-inset-left)) max(var(--ui-space-xs), env(safe-area-inset-right));
    }

    .ui-header .ui-header-menu {
      display: inline-flex;
    }

    .ui-header-brand {
      margin-inline: auto;
    }

    .ui-header > :is(.ui-version, .ui-header-nav), .ui-header-end > :not(.ui-header-search) {
      display: none;
    }

    .ui-header-end {
      margin-left: 0;
    }

    .ui-header-search {
      width: var(--ui-header-target);
      height: var(--ui-header-target);
      border-radius: var(--ui-radius-md);
      box-shadow: none;
      justify-content: center;
      padding: 0;
    }

    .ui-header-search:hover {
      box-shadow: none;
      background: none;
    }

    .ui-header-search > svg {
      width: var(--ui-header-icon);
      height: var(--ui-header-icon);
    }

    .ui-header-search > .ui-kbd {
      display: none;
    }

    .ui-header-end > * > .ui-tooltip {
      left: auto;
      right: 0;
      translate: none;
    }

    .ui-header-end > * > .ui-tooltip:before {
      left: auto;
      right: calc(var(--ui-header-target) / 2 - 4px);
      translate: none;
    }

    .ui-header .ui-header-end {
      width: var(--ui-header-target);
    }
  }

  @media (width >= 64rem) {
    .ui-header-search[data-compact] {
      display: none;
    }
  }
}

@layer theme{:root,:host{--color-zinc-0:oklch(98.6% .0008 265);--color-zinc-95:oklch(19.4% .0019 265)}:root,:host{--font-family-sans:var(--font-sans, ui-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root,:host{--color-code-function:var(--ui-code-function);--color-code-keyword:var(--ui-code-keyword);--color-code-number:var(--ui-code-number);--color-code-property:var(--ui-code-property);--color-code-string:var(--ui-code-string);--color-code-surface:light-dark(var(--color-zinc-0), var(--color-zinc-95))}:root,:host{--font-sans:"Geist", "Noto Sans TC"}}@layer components {
  .app-wrapper {
    margin-inline: auto;
    padding-inline: 1.25rem;

    @media (width >= 52.125rem){
      padding-inline: 2.5rem;
    }
  }
}

@layer theme{:root,:host{--color-zinc-0:oklch(98.6% .0008 265);--color-zinc-95:oklch(19.4% .0019 265)}:root,:host{--color-code-function:var(--ui-code-function);--color-code-keyword:var(--ui-code-keyword);--color-code-number:var(--ui-code-number);--color-code-property:var(--ui-code-property);--color-code-string:var(--ui-code-string);--color-code-surface:light-dark(var(--color-zinc-0), var(--color-zinc-95))}}@layer components {
  html:has(.ui-mobile-menu[open]) {
    scrollbar-gutter: stable;
    overflow: hidden;
  }

  .ui-menu-glyph > path {
    transform-box: fill-box;
    transform-origin: center;
    transition: transform .32s cubic-bezier(.22, 1, .36, 1);
  }

  .ui-menu-glyph[data-open="true"] > path {
    transform: translateY(4px) rotate(45deg) scaleX(1.06066);
  }

  .ui-menu-glyph[data-open="true"] > path + path {
    transform: translateY(-4px) rotate(-45deg) scaleX(1.06066);
  }

  .ui-dialog.ui-mobile-menu {
    overscroll-behavior: contain;
    background: var(--ui-surface-canvas);
    width: 100%;
    max-width: 100%;
    height: 100dvh;
    max-height: 100dvh;
    box-shadow: none;
    opacity: 0;
    border-radius: 0;
    margin: 0;
    padding: 0;
    transition: opacity .18s ease-out;
    position: fixed;
    inset: 0;
    overflow-y: auto;
  }

  .ui-dialog.ui-mobile-menu[open] {
    flex-direction: column;
    display: flex;
  }

  .ui-dialog.ui-mobile-menu[data-open="true"] {
    opacity: 1;
    transition-duration: .32s;
  }

  .ui-dialog.ui-mobile-menu::backdrop {
    backdrop-filter: none;
    background: none;
  }

  .ui-mobile-menu-bar {
    z-index: 1;
    grid-template-columns: var(--ui-header-target) minmax(0, 1fr) var(--ui-header-target);
    height: calc(3.75rem + env(safe-area-inset-top));
    padding: env(safe-area-inset-top) max(var(--ui-space-xs), env(safe-area-inset-right)) 0 max(var(--ui-space-xs), env(safe-area-inset-left));
    background: var(--ui-surface-canvas);
    flex: none;
    align-items: center;
    display: grid;
    position: sticky;
    top: 0;
  }

  .ui-mobile-menu-bar > .ui-header-brand {
    justify-self: center;
    margin: 0;
  }

  .ui-mobile-menu-body {
    width: 100%;
    max-width: 48rem;
    padding: clamp(3rem, 10dvh, 6rem) max(clamp(1.5rem, 6vw, 3rem), env(safe-area-inset-right)) max(1.5rem, env(safe-area-inset-bottom)) max(clamp(1.5rem, 6vw, 3rem), env(safe-area-inset-left));
    flex-direction: column;
    flex: 1;
    gap: 4rem;
    margin-inline: auto;
    transition: transform .18s ease-out;
    display: flex;
    transform: translateY(-8px);
  }

  .ui-mobile-menu[data-open="true"] .ui-mobile-menu-body {
    transition: transform .32s cubic-bezier(.22, 1, .36, 1);
    transform: translateY(0);
  }

  .ui-mobile-menu-nav {
    gap: .5rem;
    display: grid;
  }

  .ui-mobile-menu-link {
    width: fit-content;
    max-width: 100%;
    min-height: 2.75rem;
    color: var(--ui-text-strong);
    font: 500 clamp(2.25rem, 11vw, 3.5rem)/1.3 var(--font-family-sans);
    letter-spacing: -.045em;
    overflow-wrap: anywhere;
    opacity: 0;
    transition: opacity .18s ease-out, transform .18s ease-out, color var(--ui-duration-quick);
    background: none;
    border: 0;
    align-items: baseline;
    gap: .5rem;
    padding-block: .375rem;
    text-decoration: none;
    display: flex;
    transform: translateY(10px);
  }

  .ui-mobile-menu-link > span {
    min-width: 0;
  }

  .ui-mobile-menu-link > svg {
    color: var(--ui-text-muted);
    flex: none;
    align-self: flex-start;
    margin-top: .65em;
  }

  .ui-mobile-menu[data-open="true"] .ui-mobile-menu-link {
    opacity: 1;
    transition: opacity .32s ease-out, transform .32s cubic-bezier(.22, 1, .36, 1), color var(--ui-duration-quick);
    transition-delay: calc(var(--menu-order) * 40ms), calc(var(--menu-order) * 40ms), 0s;
    transform: translateY(0);
  }

  .ui-mobile-menu-link[aria-current] > span {
    text-underline-offset: .2em;
    text-decoration: underline 1px;
    text-decoration-color: var(--ui-line-mark);
  }

  :is(.ui-mobile-menu-link:focus-visible,.ui-mobile-menu-community>a:focus-visible){outline:2px solid var(--ui-focus)}.ui-mobile-menu-link:focus-visible,.ui-mobile-menu-community>a:focus-visible{outline-offset:5px;border-radius:var(--ui-radius-sm)}

  .ui-mobile-menu-footer {
    gap: 1rem;
    margin-top: auto;
    display: grid;
  }

  .ui-mobile-menu-community {
    flex-wrap: wrap;
    gap: .5rem;
    margin-left: -.75rem;
    display: flex;
  }

  .ui-mobile-menu-community > a {
    min-width: 2.75rem;
    min-height: 2.75rem;
    color: var(--ui-text-muted);
    transition: color var(--ui-duration-quick);
    justify-content: center;
    align-items: center;
    padding: .5rem .75rem;
    text-decoration: none;
    display: inline-flex;
    position: relative;
  }

  .ui-mobile-menu-community > a > .ui-menu-external {
    pointer-events: none;
    width: .625rem;
    height: .625rem;
    position: absolute;
    top: calc(50% - .875rem);
    right: calc(50% - 1rem);
  }

  .ui-mobile-menu-preferences {
    border-top: 1px solid var(--ui-line-hair);
    flex-wrap: wrap;
    align-items: center;
    gap: .25rem .75rem;
    padding-top: 1rem;
    display: flex;
  }

  .ui-mobile-menu-preferences > .ui-select {
    border-radius: var(--ui-radius-sm);
    width: auto;
    max-width: 100%;
    min-height: 2.75rem;
    box-shadow: none;
    color: var(--ui-text-muted);
    background-color: #0000;
    background-position: right .125rem center;
    padding-left: 0;
    padding-right: 1.5rem;
    font-size: .8125rem;
  }

  .ui-mobile-menu-preferences>.ui-select:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}

  @media (hover: hover) {
    .ui-mobile-menu-link:hover, .ui-mobile-menu-community > a:hover {
      color: var(--ui-text-body);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ui-dialog.ui-mobile-menu[data-open], .ui-mobile-menu-body, .ui-mobile-menu-link, .ui-menu-glyph[data-open] > path, .ui-mobile-menu[data-open="true"] .ui-mobile-menu-body, .ui-mobile-menu[data-open="true"] .ui-mobile-menu-link {
      transition: none;
    }

    .ui-mobile-menu-body, .ui-mobile-menu-link {
      transform: none;
    }
  }
}

@layer theme{:root,:host{--color-zinc-0:oklch(98.6% .0008 265);--color-zinc-95:oklch(19.4% .0019 265)}:root,:host{--font-family-sans:var(--font-sans, ui-sans-serif), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root,:host{--color-code-function:var(--ui-code-function);--color-code-keyword:var(--ui-code-keyword);--color-code-number:var(--ui-code-number);--color-code-property:var(--ui-code-property);--color-code-string:var(--ui-code-string);--color-code-surface:light-dark(var(--color-zinc-0), var(--color-zinc-95))}:root,:host{--font-sans:"Geist", "Noto Sans TC"}}
