/* Keep DocFX's built-in default + modern templates and only refine PublisherStudio typography and print output. */
:root {
  --bs-font-sans-serif: "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --bs-link-color-rgb: 0, 103, 184;
  --bs-primary-rgb: 0, 120, 212;
}

[data-bs-theme="dark"] {
  --bs-link-color-rgb: 117, 200, 255;
  --bs-primary-rgb: 96, 205, 255;
}

body {
  font-family: var(--bs-font-sans-serif);
  line-height: 1.55;
}

article {
  max-width: 92ch;
}

article h1,
article h2,
article h3,
article h4 {
  scroll-margin-top: 5rem;
}

article pre,
article code {
  font-family: "Cascadia Code", "Cascadia Mono", Consolas, monospace;
}

article pre {
  border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
  border-radius: .25rem;
}

article table {
  font-size: .94rem;
}

article th {
  white-space: nowrap;
}

@page {
  size: A4 landscape;
  margin: 9mm 10mm 11mm;
}

@media print {
  html,
  body {
    background: #fff !important;
    color: #242424 !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: 9.35pt;
    line-height: 1.36;
  }

  .navbar,
  .toc-offcanvas,
  .affix,
  .contribution,
  .pagination,
  .action-list,
  .tabGroup > ul,
  button {
    display: none !important;
  }

  main,
  article,
  .content,
  .markdown {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  article h1 {
    font-size: 20pt;
    line-height: 1.15;
    margin: 0 0 9pt;
  }

  article h2 {
    font-size: 15pt;
    line-height: 1.2;
    margin: 14pt 0 6pt;
  }

  article h3 {
    font-size: 11.5pt;
    line-height: 1.25;
    margin: 11pt 0 5pt;
  }

  article h4,
  article h5 {
    font-size: 9.8pt;
    margin: 9pt 0 4pt;
  }

  article h1,
  article h2,
  article h3,
  article h4 {
    break-after: avoid;
    page-break-after: avoid;
  }

  article p,
  article ul,
  article ol,
  article dl {
    margin-top: 4pt;
    margin-bottom: 6pt;
  }

  article dl {
    column-gap: 9pt;
    display: grid;
    grid-template-columns: minmax(9rem, 18%) 1fr;
    row-gap: 3pt;
  }

  article dt {
    break-after: avoid;
    color: #0067b8;
    font-weight: 650;
  }

  article dd {
    margin: 0;
    min-width: 0;
  }

  article p,
  article li {
    orphans: 3;
    widows: 3;
  }

  article li {
    margin: 1.5pt 0;
  }

  article pre,
  article code {
    white-space: pre-wrap !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  article pre {
    background: #f6f6f6 !important;
    border: 1px solid #e0e0e0;
    border-radius: 0;
    break-inside: auto;
    font-size: 7.8pt;
    line-height: 1.28;
    margin: 6pt 0 8pt;
    padding: 6pt 7pt !important;
  }

  article code {
    font-size: .92em;
  }

  article table {
    border-collapse: collapse;
    break-inside: auto;
    font-size: 8.3pt;
    table-layout: auto;
    width: 100% !important;
  }

  article thead {
    display: table-header-group;
  }

  article th,
  article td {
    border: 1px solid #dedede;
    padding: 3pt 4pt !important;
    vertical-align: top;
    white-space: normal;
  }

  article tr,
  article img,
  article blockquote {
    break-inside: avoid;
  }

  article img {
    height: auto !important;
    max-height: 176mm !important;
    max-width: 100% !important;
    object-fit: contain;
  }

  article a {
    color: #0065b3 !important;
    overflow-wrap: anywhere;
    text-decoration: none;
  }

  article a::after {
    content: none !important;
  }

  details,
  details > *,
  .tabGroup > section {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}



/* Microsoft Learn-style API section treatment without separating every member into
   its own HTML document. A class remains a single readable page, while its major
   member categories are visually distinct and addressable from the left TOC. */
article h2#constructors,
article h2#fields,
article h2#properties,
article h2#methods,
article h2#events,
article h2#operators,
article h2#explicit-interface-implementations,
article h2#extension-methods {
  border-bottom: 1px solid var(--bs-border-color, #d1d1d1);
  border-left: .25rem solid rgb(var(--bs-primary-rgb));
  margin-top: 2rem;
  padding: .35rem 0 .45rem .75rem;
}

article h2#constructors + .table-responsive,
article h2#fields + .table-responsive,
article h2#properties + .table-responsive,
article h2#methods + .table-responsive,
article h2#events + .table-responsive,
article h2#operators + .table-responsive {
  margin-top: .75rem;
}

article .table-responsive > table {
  border: 1px solid var(--bs-border-color, #d1d1d1);
}

article .table-responsive > table > thead > tr > th {
  background: var(--bs-tertiary-bg, #f3f2f1);
  font-weight: 600;
}

/* Detailed API navigation: keep DocFX's nested namespace/type tree and add the
   same-page member groups that Microsoft Learn exposes as Properties, Methods,
   Events, and related sections. The build script inserts these links into the
   generated api/toc.html after DocFX renders the site. */
.publisherstudio-api-member-groups {
  border-left: 1px solid var(--bs-border-color, #d1d1d1);
  margin: .1rem 0 .35rem .75rem;
  padding-left: .5rem;
}

.publisherstudio-api-member-groups .nav-link {
  color: var(--bs-secondary-color, #605e5c);
  font-size: .78rem;
  line-height: 1.2;
  padding: .16rem .35rem;
}

.publisherstudio-api-member-groups .nav-link:hover,
.publisherstudio-api-member-groups .nav-link:focus {
  color: rgb(var(--bs-link-color-rgb));
  text-decoration: underline;
}

@media print {
  .publisherstudio-api-member-groups {
    display: none !important;
  }

  article h1 {
    border-bottom: 1px solid #d2d0ce;
    padding-bottom: 6pt;
  }

  article h2 {
    border-left: 3px solid #0067b8;
    padding-left: 7pt;
  }

  article pre {
    border-left: 4px solid #0078d4;
  }

  article thead th {
    background: #f3f2f1 !important;
  }

  article tbody tr:nth-child(even) {
    background: #faf9f8 !important;
  }
}

/* PublisherStudio 2026 API cards ---------------------------------------------------
   Keep DocFX's Microsoft Learn information architecture, but make same-page
   member groups easier to scan. Icons are presentation-only and never alter
   compiler XML comments, signatures, or generated API text. */
article .publisherstudio-api-member-panel {
  --publisherstudio-api-accent: #0f6cbd;
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--publisherstudio-api-accent) 4%, var(--bs-body-bg, #fff)) 0,
      var(--bs-body-bg, #fff) 5.25rem);
  border: 1px solid color-mix(in srgb, var(--publisherstudio-api-accent) 24%, var(--bs-border-color, #d1d1d1));
  border-radius: 1rem;
  box-shadow:
    0 .15rem .45rem color-mix(in srgb, var(--publisherstudio-api-accent) 7%, transparent),
    0 .75rem 1.8rem color-mix(in srgb, #111827 7%, transparent);
  isolation: isolate;
  margin: 1.6rem 0;
  overflow: hidden;
  position: relative;
}

article .publisherstudio-api-member-panel::before {
  background: linear-gradient(90deg,
    var(--publisherstudio-api-accent),
    color-mix(in srgb, var(--publisherstudio-api-accent) 42%, #fff),
    transparent 88%);
  content: "";
  height: .22rem;
  inset: 0 0 auto;
  position: absolute;
  z-index: 2;
}

article .publisherstudio-api-member-panel > h2 {
  align-items: center;
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--publisherstudio-api-accent) 12%, var(--bs-body-bg, #fff)),
    color-mix(in srgb, var(--publisherstudio-api-accent) 3%, var(--bs-body-bg, #fff)) 70%);
  border: 0 !important;
  display: flex;
  gap: .7rem;
  line-height: 1.2;
  margin: 0 !important;
  padding: 1rem 1.1rem .9rem !important;
}

article .publisherstudio-api-member-icon {
  align-items: center;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .85), transparent 45%),
    color-mix(in srgb, var(--publisherstudio-api-accent) 17%, var(--bs-body-bg, #fff));
  border: 1px solid color-mix(in srgb, var(--publisherstudio-api-accent) 34%, transparent);
  border-radius: .72rem;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .55),
    0 .2rem .55rem color-mix(in srgb, var(--publisherstudio-api-accent) 16%, transparent);
  display: inline-flex;
  flex: 0 0 auto;
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  font-size: 1.05rem;
  height: 2.15rem;
  justify-content: center;
  width: 2.15rem;
}

article .publisherstudio-api-member-count {
  background: color-mix(in srgb, var(--bs-body-bg, #fff) 88%, var(--publisherstudio-api-accent));
  border: 1px solid color-mix(in srgb, var(--publisherstudio-api-accent) 25%, var(--bs-border-color, #d1d1d1));
  border-radius: 999px;
  color: color-mix(in srgb, var(--publisherstudio-api-accent) 75%, var(--bs-body-color, #242424));
  font-size: .72rem;
  font-weight: 700;
  line-height: 1;
  margin-left: auto;
  min-width: 1.75rem;
  padding: .38rem .55rem;
  text-align: center;
}

article .publisherstudio-api-member-panel-body {
  padding: .35rem 1.05rem 1rem;
}

article .publisherstudio-api-member-item {
  background: color-mix(in srgb, var(--bs-body-bg, #fff) 96%, var(--publisherstudio-api-accent));
  border: 1px solid transparent;
  border-radius: .78rem;
  margin: .65rem 0;
  padding: .78rem .88rem .68rem;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

article .publisherstudio-api-member-item:hover {
  border-color: color-mix(in srgb, var(--publisherstudio-api-accent) 23%, transparent);
  box-shadow: 0 .35rem .9rem color-mix(in srgb, var(--publisherstudio-api-accent) 9%, transparent);
  transform: translateY(-1px);
}

article .publisherstudio-api-member-item > h3 {
  color: color-mix(in srgb, var(--publisherstudio-api-accent) 78%, var(--bs-body-color, #242424));
  font-size: 1.06rem;
  margin: 0 0 .6rem;
  padding: 0;
}

article .publisherstudio-api-member-item-body > :first-child {
  margin-top: 0;
}

article .publisherstudio-api-member-item-body > :last-child {
  margin-bottom: 0;
}

article .publisherstudio-api-member-item pre,
article .publisherstudio-api-member-item .codewrapper {
  border-radius: .65rem;
}

article .publisherstudio-api-member-panel--constructors { --publisherstudio-api-accent: #a855f7; }
article .publisherstudio-api-member-panel--fields { --publisherstudio-api-accent: #f59e0b; }
article .publisherstudio-api-member-panel--properties { --publisherstudio-api-accent: #06b6d4; }
article .publisherstudio-api-member-panel--methods { --publisherstudio-api-accent: #3b82f6; }
article .publisherstudio-api-member-panel--events { --publisherstudio-api-accent: #ec4899; }
article .publisherstudio-api-member-panel--operators { --publisherstudio-api-accent: #f97316; }
article .publisherstudio-api-member-panel--explicit-interface-implementations { --publisherstudio-api-accent: #14b8a6; }
article .publisherstudio-api-member-panel--extension-methods { --publisherstudio-api-accent: #22c55e; }

/* Detailed left navigation with compact icon and count pills. */
.publisherstudio-api-member-groups {
  border-left: 1px solid color-mix(in srgb, var(--bs-primary-rgb) 24%, var(--bs-border-color, #d1d1d1));
  margin: .18rem 0 .45rem .85rem;
  padding: .08rem 0 .08rem .48rem;
}

.publisherstudio-api-member-groups .nav-link {
  align-items: center;
  border-radius: .42rem;
  display: flex;
  gap: .38rem;
  min-width: 0;
  padding: .22rem .36rem;
  text-decoration: none;
}

.publisherstudio-api-member-groups .nav-link:hover,
.publisherstudio-api-member-groups .nav-link:focus-visible {
  background: color-mix(in srgb, rgb(var(--bs-primary-rgb)) 8%, transparent);
  text-decoration: none;
}

.publisherstudio-api-member-nav-icon {
  align-items: center;
  display: inline-flex;
  flex: 0 0 1.15rem;
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  font-size: .78rem;
  justify-content: center;
}

.publisherstudio-api-member-nav-label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.publisherstudio-api-member-nav-count {
  background: var(--bs-tertiary-bg, #f3f2f1);
  border-radius: 999px;
  color: var(--bs-secondary-color, #605e5c);
  flex: 0 0 auto;
  font-size: .62rem;
  font-weight: 700;
  min-width: 1.25rem;
  padding: .12rem .3rem;
  text-align: center;
}

@media (max-width: 767.98px) {
  article .publisherstudio-api-member-panel {
    border-radius: .78rem;
    margin: 1.2rem 0;
  }

  article .publisherstudio-api-member-panel > h2 {
    padding: .82rem .85rem .75rem !important;
  }

  article .publisherstudio-api-member-panel-body {
    padding: .25rem .72rem .75rem;
  }

  article .publisherstudio-api-member-item {
    padding: .68rem .7rem .6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  article .publisherstudio-api-member-item {
    transition: none;
  }
}

@media print {
  article .publisherstudio-api-member-panel {
    background: #fff !important;
    border: 1px solid #cfd8e3;
    border-left: 4px solid var(--publisherstudio-api-accent);
    border-radius: 7pt;
    box-shadow: none !important;
    break-inside: auto;
    margin: 10pt 0 12pt;
    overflow: hidden;
  }

  article .publisherstudio-api-member-panel::before {
    display: none;
  }

  article .publisherstudio-api-member-panel > h2 {
    background: color-mix(in srgb, var(--publisherstudio-api-accent) 9%, #fff) !important;
    border: 0 !important;
    font-size: 13pt;
    margin: 0 !important;
    padding: 6.5pt 8pt !important;
  }

  article .publisherstudio-api-member-icon {
    background: color-mix(in srgb, var(--publisherstudio-api-accent) 15%, #fff) !important;
    border-radius: 5pt;
    box-shadow: none !important;
    font-size: 11pt;
    height: 20pt;
    width: 20pt;
  }

  article .publisherstudio-api-member-count {
    background: #fff !important;
    font-size: 7pt;
    padding: 2pt 5pt;
  }

  article .publisherstudio-api-member-panel-body {
    padding: 4pt 8pt 7pt;
  }

  article .publisherstudio-api-member-item,
  article .publisherstudio-api-member-item:hover {
    background: #fff !important;
    border: 0;
    border-radius: 0;
    border-top: 1px solid #e5e7eb;
    box-shadow: none !important;
    margin: 0;
    padding: 6pt 0 3pt;
    transform: none;
  }

  article .publisherstudio-api-member-item:first-child {
    border-top: 0;
  }

  article .publisherstudio-api-member-panel--constructors .publisherstudio-api-member-item,
  article .publisherstudio-api-member-panel--fields .publisherstudio-api-member-item,
  article .publisherstudio-api-member-panel--properties .publisherstudio-api-member-item,
  article .publisherstudio-api-member-panel--events .publisherstudio-api-member-item,
  article .publisherstudio-api-member-panel--operators .publisherstudio-api-member-item {
    break-inside: avoid-page;
    page-break-inside: avoid;
  }
}


/* 2026 Neko Docs polish: cute, grouped, and still technically sober. */
.publisherstudio-api-neko-note {
  align-items: center;
  background:
    radial-gradient(circle at 8% 15%, rgba(255, 255, 255, .9), transparent 28%),
    linear-gradient(105deg, color-mix(in srgb, #f9a8d4 18%, var(--bs-body-bg, #fff)), color-mix(in srgb, #c4b5fd 16%, var(--bs-body-bg, #fff)) 52%, color-mix(in srgb, #7dd3fc 13%, var(--bs-body-bg, #fff)));
  border: 1px solid color-mix(in srgb, #c084fc 28%, var(--bs-border-color, #d1d1d1));
  border-radius: .9rem;
  box-shadow: 0 .32rem 1rem color-mix(in srgb, #a855f7 8%, transparent);
  color: color-mix(in srgb, #7e22ce 62%, var(--bs-body-color, #242424));
  display: flex;
  font-size: .88rem;
  gap: .62rem;
  margin: .25rem 0 1.05rem;
  padding: .62rem .82rem;
}

.publisherstudio-api-neko-mascot {
  align-items: center;
  background: color-mix(in srgb, #fff 78%, #f9a8d4);
  border: 1px solid color-mix(in srgb, #ec4899 24%, transparent);
  border-radius: 999px;
  display: inline-flex;
  flex: 0 0 2rem;
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  font-size: 1.12rem;
  height: 2rem;
  justify-content: center;
}

.publisherstudio-api-type-icon {
  display: inline-block;
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  margin-right: .35rem;
  min-width: 1.05rem;
  text-align: center;
}

.publisherstudio-api-kind-navigation-group {
  --publisherstudio-kind-accent: #8b5cf6;
  margin: .42rem 0 .62rem;
}

.publisherstudio-api-kind-navigation-group--interfaces { --publisherstudio-kind-accent: #8b5cf6; }
.publisherstudio-api-kind-navigation-group--classes { --publisherstudio-kind-accent: #ec4899; }
.publisherstudio-api-kind-navigation-group--structs { --publisherstudio-kind-accent: #06b6d4; }
.publisherstudio-api-kind-navigation-group--records { --publisherstudio-kind-accent: #6366f1; }
.publisherstudio-api-kind-navigation-group--enums { --publisherstudio-kind-accent: #f59e0b; }
.publisherstudio-api-kind-navigation-group--delegates { --publisherstudio-kind-accent: #f472b6; }

.publisherstudio-api-kind-navigation-heading {
  align-items: center;
  background: linear-gradient(90deg, color-mix(in srgb, var(--publisherstudio-kind-accent) 13%, transparent), transparent);
  border-left: .2rem solid var(--publisherstudio-kind-accent);
  border-radius: .42rem;
  color: color-mix(in srgb, var(--publisherstudio-kind-accent) 72%, var(--bs-body-color, #242424));
  display: flex;
  font-size: .72rem;
  font-weight: 750;
  gap: .38rem;
  letter-spacing: .025em;
  margin: .18rem 0 .28rem;
  padding: .32rem .42rem;
  text-transform: uppercase;
}

.publisherstudio-api-kind-navigation-heading > span:first-child {
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  font-size: .85rem;
}

.publisherstudio-api-kind-navigation-count {
  background: color-mix(in srgb, var(--bs-body-bg, #fff) 88%, var(--publisherstudio-kind-accent));
  border: 1px solid color-mix(in srgb, var(--publisherstudio-kind-accent) 22%, transparent);
  border-radius: 999px;
  font-size: .6rem;
  margin-left: auto;
  min-width: 1.25rem;
  padding: .08rem .3rem;
  text-align: center;
}

.publisherstudio-api-kind-navigation-group > .nav {
  border-left: 1px dashed color-mix(in srgb, var(--publisherstudio-kind-accent) 28%, var(--bs-border-color, #d1d1d1));
  margin-left: .52rem;
  padding-left: .48rem;
}

article .publisherstudio-api-member-panel > h2::after {
  color: color-mix(in srgb, var(--publisherstudio-api-accent) 42%, transparent);
  content: "  ฅ^•ﻌ•^ฅ";
  font-family: "Segoe UI", sans-serif;
  font-size: .72rem;
  font-weight: 500;
  margin-left: .15rem;
  white-space: nowrap;
}

article .publisherstudio-api-member-panel > h2 .publisherstudio-api-member-count {
  order: 3;
}

@media print {
  .publisherstudio-api-neko-note {
    background: linear-gradient(90deg, #fdf4ff, #eff6ff) !important;
    border-color: #eadcf8;
    box-shadow: none !important;
    font-size: 7.5pt;
    margin: 0 0 9pt;
    padding: 4.5pt 7pt;
  }

  .publisherstudio-api-neko-mascot {
    font-size: 11pt;
    height: 18pt;
    min-width: 18pt;
  }

  article .publisherstudio-api-member-panel > h2::after {
    font-size: 6.5pt;
  }
}


/* Fluffy pastel galaxy finish: white candy headings, star-sprinkled backgrounds, and extra cat/dog charm. */
:root {
  --publisherstudio-kawaii-sky-top: #ffc4e3;
  --publisherstudio-kawaii-sky-mid: #f4c8ff;
  --publisherstudio-kawaii-sky-bottom: #d8d5ff;
  --publisherstudio-kawaii-panel: rgba(255, 248, 252, .86);
  --publisherstudio-kawaii-panel-strong: rgba(255, 255, 255, .94);
  --publisherstudio-kawaii-ink: #5c2b66;
  --publisherstudio-kawaii-white: #ffffff;
}

html, body {
  background:
    linear-gradient(180deg, var(--publisherstudio-kawaii-sky-top) 0%, var(--publisherstudio-kawaii-sky-mid) 50%, var(--publisherstudio-kawaii-sky-bottom) 100%) !important;
  color: var(--publisherstudio-kawaii-ink);
  font-family: "Trebuchet MS", "Segoe UI", "Arial Rounded MT Bold", sans-serif;
}

body {
  position: relative;
}

body::before {
  background-image:
    radial-gradient(circle, rgba(255,255,255,.92) 0 1.1px, transparent 1.7px),
    radial-gradient(circle, rgba(255,255,255,.78) 0 1px, transparent 1.5px),
    radial-gradient(circle, rgba(255,255,255,.86) 0 1.3px, transparent 1.8px),
    radial-gradient(circle, rgba(255,255,255,.72) 0 .95px, transparent 1.45px);
  background-position: 0 0, 40px 26px, 88px 14px, 130px 66px;
  background-size: 150px 150px, 150px 150px, 190px 190px, 210px 210px;
  content: "";
  inset: 0;
  opacity: .58;
  pointer-events: none;
  position: fixed;
  z-index: -1;
}

body,
#wrapper,
.content,
.article,
.sideaffix,
.sidenav,
.affix,
.navbar,
.subnav {
  background-color: transparent !important;
}

main,
article,
.content article,
.article.grid-right,
.article.grid-left,
.article .content,
.container-fluid main {
  color: var(--publisherstudio-kawaii-ink);
}

article h1,
article h2,
article h3,
article h4,
.publisherstudio-api-kind-navigation-heading,
.publisherstudio-api-neko-note strong,
article .publisherstudio-api-member-panel > h2,
.publisherstudio-print-cover h1,
.publisherstudio-print-toc > h1,
.publisherstudio-print-toc-section > h2,
.publisherstudio-print-toc-namespace h3,
.publisherstudio-print-toc-kind h4 {
  font-family: "Arial Rounded MT Bold", "Trebuchet MS", "Segoe UI", sans-serif;
}

article h1,
article > h1:first-child {
  background: linear-gradient(135deg, rgba(236, 72, 153, .9), rgba(168, 85, 247, .92) 55%, rgba(96, 165, 250, .92));
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 1.2rem;
  box-shadow: 0 .9rem 2.2rem rgba(168, 85, 247, .18);
  color: var(--publisherstudio-kawaii-white) !important;
  padding: .9rem 1.1rem;
  text-shadow: 0 1px 0 rgba(147, 51, 234, .55), 0 0 18px rgba(255,255,255,.18);
}

.content article,
.article article,
article.content,
article[role="main"],
.article.grid-right > article,
.article.grid-left > article {
  background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,249,252,.92));
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 1.35rem;
  box-shadow: 0 .85rem 2.2rem rgba(91, 33, 182, .12);
  padding: 1.15rem 1.2rem;
}

.publisherstudio-api-neko-note {
  background:
    radial-gradient(circle at 12% 32%, rgba(255,255,255,.95), transparent 24%),
    radial-gradient(circle at 88% 28%, rgba(255,255,255,.5), transparent 16%),
    linear-gradient(120deg, rgba(244,114,182,.28), rgba(192,132,252,.25) 52%, rgba(125,211,252,.24));
  border: 1px solid rgba(255,255,255,.55);
  color: #6b2a74;
}

.publisherstudio-api-neko-note::after {
  content: " ✨ 🐾 🌟 ";
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  margin-left: auto;
  opacity: .9;
}

.publisherstudio-api-neko-mascot {
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(255,240,248,.85));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 .2rem .65rem rgba(236,72,153,.18);
  color: #ec4899;
  min-width: 2.7rem;
  padding: 0 .5rem;
}

.publisherstudio-api-kind-navigation-heading,
.publisherstudio-print-toc-kind h4,
.publisherstudio-print-toc-namespace h3 {
  border-left: 0 !important;
  box-shadow: 0 .32rem .8rem rgba(168, 85, 247, .14);
  color: #ffffff !important;
  text-shadow: 0 1px 0 rgba(126, 34, 206, .4);
}

.publisherstudio-api-kind-navigation-heading {
  background: linear-gradient(135deg, color-mix(in srgb, var(--publisherstudio-kind-accent) 88%, #ffffff 12%), color-mix(in srgb, var(--publisherstudio-kind-accent) 65%, #f9a8d4 35%)) !important;
  border-radius: .9rem;
  padding: .45rem .58rem;
}

.publisherstudio-api-kind-navigation-count,
article .publisherstudio-api-member-panel > h2 .publisherstudio-api-member-count,
.publisherstudio-api-member-nav-count {
  background: rgba(255,255,255,.92) !important;
  color: #8b3d77 !important;
  font-weight: 700;
}

.publisherstudio-api-kind-navigation-group > .nav {
  background: rgba(255,255,255,.3);
  border-left: 1px dashed rgba(255,255,255,.7);
  border-radius: 0 0 1rem 1rem;
  margin-top: .2rem;
  padding: .35rem .35rem .45rem .55rem;
}

article .publisherstudio-api-member-panel {
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,248,252,.98)) !important;
  border: 1px solid rgba(255,255,255,.62) !important;
  border-radius: 1.25rem !important;
  box-shadow: 0 .65rem 1.7rem rgba(91, 33, 182, .10) !important;
}

article .publisherstudio-api-member-panel::before {
  background: linear-gradient(90deg, rgba(255,255,255,.65), transparent 40%, rgba(255,255,255,.35)) !important;
  opacity: .8;
}

article .publisherstudio-api-member-panel > h2 {
  background: linear-gradient(135deg, color-mix(in srgb, var(--publisherstudio-api-accent) 82%, #f472b6 18%), color-mix(in srgb, var(--publisherstudio-api-accent) 58%, #ffffff 42%)) !important;
  border-bottom: 0 !important;
  color: #ffffff !important;
  text-shadow: 0 1px 0 rgba(126, 34, 206, .35), 0 0 8px rgba(255,255,255,.12);
}

article .publisherstudio-api-member-panel > h2::after {
  color: rgba(255,255,255,.95) !important;
  content: "  🐱 🐶 ✨";
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  font-size: .8rem;
}

article .publisherstudio-api-member-panel-body {
  background: rgba(255,255,255,.6) !important;
}

article .publisherstudio-api-member-item {
  background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,246,251,.92)) !important;
  border: 1px solid rgba(236,72,153,.08) !important;
  border-radius: .9rem !important;
}

article .publisherstudio-api-member-item:hover {
  box-shadow: 0 .4rem 1rem rgba(236,72,153,.12) !important;
  transform: translateY(-1px);
}

.publisherstudio-api-member-nav-item > a {
  background: rgba(255,255,255,.52);
  border-radius: .8rem;
  margin: .14rem 0;
}

.publisherstudio-api-member-nav-icon,
.publisherstudio-api-type-icon,
.publisherstudio-api-kind-navigation-heading > span:first-child {
  filter: drop-shadow(0 1px 0 rgba(255,255,255,.35));
}

article a,
.publisherstudio-api-member-item a,
.publisherstudio-api-member-nav-item a,
.toc a {
  text-decoration-thickness: .08em;
  text-underline-offset: .14em;
}

@media print {
  html, body {
    background: linear-gradient(180deg, #fff7fc, #fff0f8) !important;
    color: #4b2159 !important;
  }

  body::before {
    opacity: .28;
  }

  .content article,
  .article article,
  article.content,
  article[role="main"] {
    background: linear-gradient(180deg, #fffdfd, #fff7fb) !important;
    border-color: #f1d4e6 !important;
    box-shadow: none !important;
  }

  article h1,
  article .publisherstudio-api-member-panel > h2,
  .publisherstudio-api-kind-navigation-heading,
  .publisherstudio-print-cover h1,
  .publisherstudio-print-toc > h1,
  .publisherstudio-print-toc-section > h2,
  .publisherstudio-print-toc-namespace h3,
  .publisherstudio-print-toc-kind h4 {
    color: #ffffff !important;
  }

  article .publisherstudio-api-member-panel {
    background: #fff9fc !important;
    border-color: #f4cade !important;
  }

  article .publisherstudio-api-member-panel-body,
  article .publisherstudio-api-member-item {
    background: #fffdfd !important;
  }
}

/* Compact PDF override: preserve the kawaii palette without rasterizing a fixed star field on every page. */
@media print {
  body::before,
  body::after {
    content: none !important;
    display: none !important;
  }

  html,
  body {
    background: #fff0f8 !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .content article,
  .article article,
  article.content,
  article[role="main"] {
    background: #fffafd !important;
    border-color: #f1c9df !important;
    box-shadow: none !important;
  }

  article h1,
  article .publisherstudio-api-member-panel > h2,
  .publisherstudio-api-kind-navigation-heading {
    background-image: none !important;
    box-shadow: none !important;
    color: #fff !important;
    text-shadow: none !important;
  }

  article h1 {
    background-color: #ec4899 !important;
  }

  .publisherstudio-api-kind-navigation-heading {
    background-color: var(--publisherstudio-kind-accent) !important;
  }

  article .publisherstudio-api-member-panel > h2 {
    background-color: var(--publisherstudio-api-accent) !important;
  }

  article .publisherstudio-api-member-panel,
  article .publisherstudio-api-member-panel-body,
  article .publisherstudio-api-member-item,
  .publisherstudio-api-neko-note {
    background-image: none !important;
    box-shadow: none !important;
  }

  article .publisherstudio-api-member-panel > h2::after {
    color: #fff !important;
    content: "  🐱 🐶 ✨";
  }
}


/* Website-only 2026 kawaii motion layer. The PDF keeps the compact print overrides above. */
html.publisherstudio-kawaii-docs {
  --publisherstudio-kawaii-glow: rgba(244, 114, 182, .34);
  --publisherstudio-kawaii-lilac: rgba(192, 132, 252, .30);
  --publisherstudio-kawaii-blue: rgba(125, 211, 252, .24);
  background: #f8d8ee;
  scroll-behavior: smooth;
}

html.publisherstudio-kawaii-docs body {
  background:
    radial-gradient(circle at 12% 10%, rgba(255,255,255,.72), transparent 24rem),
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.52), transparent 20rem),
    linear-gradient(145deg, #ffd3e9 0%, #f3d1ff 47%, #d8e1ff 100%) fixed !important;
  min-height: 100vh;
}

.publisherstudio-kawaii-sky {
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  position: fixed;
  z-index: 0;
}

.publisherstudio-kawaii-floater {
  animation: publisherstudio-kawaii-float var(--publisherstudio-duration, 16s) ease-in-out var(--publisherstudio-delay, 0s) infinite alternate;
  filter: drop-shadow(0 .18rem .38rem rgba(168, 85, 247, .18));
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: var(--publisherstudio-size, 1rem);
  left: var(--publisherstudio-left, 50%);
  opacity: var(--publisherstudio-opacity, .28);
  position: absolute;
  top: var(--publisherstudio-top, 50%);
  transform: translate3d(0, 0, 0) rotate(var(--publisherstudio-rotate, 0deg));
  user-select: none;
  will-change: transform;
}

@keyframes publisherstudio-kawaii-float {
  0% { transform: translate3d(-.35rem, .4rem, 0) rotate(var(--publisherstudio-rotate, 0deg)) scale(.92); }
  50% { transform: translate3d(.65rem, -1.15rem, 0) rotate(calc(var(--publisherstudio-rotate, 0deg) + 8deg)) scale(1.08); }
  100% { transform: translate3d(-.15rem, -2.4rem, 0) rotate(calc(var(--publisherstudio-rotate, 0deg) - 7deg)) scale(.98); }
}

@keyframes publisherstudio-kawaii-breathe {
  0%, 100% { box-shadow: 0 .7rem 2rem rgba(168,85,247,.13), inset 0 1px 0 rgba(255,255,255,.72); }
  50% { box-shadow: 0 1rem 2.65rem rgba(236,72,153,.22), inset 0 1px 0 rgba(255,255,255,.9); }
}

@keyframes publisherstudio-kawaii-shimmer {
  0% { background-position: -220% center; }
  100% { background-position: 220% center; }
}

@keyframes publisherstudio-kawaii-pop {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.3) rotate(-18deg); }
  45% { opacity: 1; transform: translate(-50%, -72%) scale(1.08) rotate(5deg); }
  100% { opacity: 0; transform: translate(-50%, -130%) scale(.72) rotate(18deg); }
}

html.publisherstudio-kawaii-docs .navbar,
html.publisherstudio-kawaii-docs header .navbar {
  backdrop-filter: blur(18px) saturate(1.25);
  background: linear-gradient(90deg, rgba(103,58,183,.88), rgba(186,65,168,.86) 48%, rgba(58,123,213,.84)) !important;
  border-bottom: 1px solid rgba(255,255,255,.38);
  box-shadow: 0 .4rem 1.35rem rgba(91,33,182,.20);
}

html.publisherstudio-kawaii-docs .navbar-brand,
html.publisherstudio-kawaii-docs .navbar .nav-link,
html.publisherstudio-kawaii-docs .navbar button {
  color: #fff !important;
  text-shadow: 0 1px 0 rgba(76,29,149,.35);
}

html.publisherstudio-kawaii-docs .navbar-brand::before {
  content: "🐱✨🐶 ";
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  letter-spacing: .08rem;
}

html.publisherstudio-kawaii-docs .navbar-brand::after {
  content: " 2026";
  background: rgba(255,255,255,.20);
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 999px;
  font-size: .66rem;
  margin-left: .45rem;
  padding: .13rem .4rem;
  vertical-align: middle;
}

html.publisherstudio-kawaii-docs main,
html.publisherstudio-kawaii-docs .container-xxl,
html.publisherstudio-kawaii-docs .container-fluid,
html.publisherstudio-kawaii-docs .offcanvas,
html.publisherstudio-kawaii-docs .toc-offcanvas,
html.publisherstudio-kawaii-docs .affix {
  position: relative;
  z-index: 1;
}

html.publisherstudio-kawaii-docs .toc-offcanvas,
html.publisherstudio-kawaii-docs .affix,
html.publisherstudio-kawaii-docs .offcanvas-body {
  background: rgba(255,248,253,.78) !important;
  backdrop-filter: blur(16px) saturate(1.15);
  border-color: rgba(255,255,255,.62) !important;
}

html.publisherstudio-kawaii-docs .toc .nav-link,
html.publisherstudio-kawaii-docs .toc a {
  border-radius: .72rem;
  color: #69326f;
  margin: .08rem 0;
  padding-bottom: .34rem;
  padding-top: .34rem;
  transition: background-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

html.publisherstudio-kawaii-docs .toc .nav-link:hover,
html.publisherstudio-kawaii-docs .toc a:hover,
html.publisherstudio-kawaii-docs .toc .active > .nav-link,
html.publisherstudio-kawaii-docs .toc .nav-link.active {
  background: linear-gradient(90deg, rgba(244,114,182,.20), rgba(192,132,252,.18));
  box-shadow: 0 .22rem .65rem rgba(168,85,247,.10);
  color: #a21caf;
  transform: translateX(.2rem);
}

html.publisherstudio-kawaii-docs article {
  animation: publisherstudio-kawaii-breathe 7s ease-in-out infinite;
  backdrop-filter: blur(12px) saturate(1.08);
  position: relative;
}

html.publisherstudio-kawaii-docs article::before {
  color: rgba(168,85,247,.34);
  content: "✦ ｡˚ 🐾 ˚｡ ✦";
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: .83rem;
  letter-spacing: .16rem;
  position: absolute;
  right: 1.1rem;
  top: .65rem;
}

html.publisherstudio-kawaii-docs article h1,
html.publisherstudio-kawaii-docs article .publisherstudio-api-member-panel > h2,
html.publisherstudio-kawaii-docs .publisherstudio-api-kind-navigation-heading {
  background-size: 220% auto !important;
  overflow: hidden;
  position: relative;
}

html.publisherstudio-kawaii-docs article h1::after,
html.publisherstudio-kawaii-docs article .publisherstudio-api-member-panel > h2::before,
html.publisherstudio-kawaii-docs .publisherstudio-api-kind-navigation-heading::after {
  animation: publisherstudio-kawaii-shimmer 7.5s linear infinite;
  background: linear-gradient(110deg, transparent 34%, rgba(255,255,255,.42) 47%, transparent 60%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
}

html.publisherstudio-kawaii-docs article h2:not(.publisherstudio-api-member-panel > h2) {
  color: #8b2e83;
  display: flex;
  gap: .45rem;
}

html.publisherstudio-kawaii-docs article h2:not(.publisherstudio-api-member-panel > h2)::before {
  content: "🌸";
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: .82em;
}

html.publisherstudio-kawaii-docs article h3::before {
  content: "✨ ";
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
}

html.publisherstudio-kawaii-docs article blockquote {
  background: linear-gradient(120deg, rgba(255,255,255,.68), rgba(255,240,249,.78));
  border: 1px solid rgba(244,114,182,.28);
  border-left: .35rem solid #f472b6;
  border-radius: 1rem;
  box-shadow: 0 .35rem 1rem rgba(236,72,153,.09);
  padding: .78rem 1rem;
}

html.publisherstudio-kawaii-docs article pre {
  background: linear-gradient(145deg, rgba(64,38,92,.96), rgba(79,47,112,.96)) !important;
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 1rem;
  box-shadow: 0 .55rem 1.3rem rgba(76,29,149,.16);
  color: #fff7fd;
}

html.publisherstudio-kawaii-docs article table {
  background: rgba(255,255,255,.68);
  border-radius: 1rem;
  box-shadow: 0 .45rem 1.2rem rgba(168,85,247,.09);
  overflow: hidden;
}

html.publisherstudio-kawaii-docs article thead {
  background: linear-gradient(90deg, rgba(244,114,182,.24), rgba(192,132,252,.22));
}

html.publisherstudio-kawaii-docs .publisherstudio-kawaii-pop {
  animation: publisherstudio-kawaii-pop .9s ease-out forwards;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: 1.15rem;
  left: var(--publisherstudio-pop-x);
  pointer-events: none;
  position: fixed;
  top: var(--publisherstudio-pop-y);
  z-index: 9999;
}

html.publisherstudio-kawaii-docs footer {
  background: rgba(255,248,253,.72);
  border-top: 1px solid rgba(255,255,255,.62);
  color: #7b3d7f;
  position: relative;
  z-index: 1;
}

html.publisherstudio-kawaii-docs footer::after {
  content: "  🐱 made with tidy paws · 🐶 checked with happy tail wags · ✨ PublisherStudio 2026";
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
}

@media (max-width: 767.98px) {
  html.publisherstudio-kawaii-docs article::before { display: none; }
  html.publisherstudio-kawaii-docs article { animation: none; }
  .publisherstudio-kawaii-floater:nth-child(n+15) { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  html.publisherstudio-kawaii-docs { scroll-behavior: auto; }
  .publisherstudio-kawaii-floater,
  html.publisherstudio-kawaii-docs article,
  html.publisherstudio-kawaii-docs article h1::after,
  html.publisherstudio-kawaii-docs article .publisherstudio-api-member-panel > h2::before,
  html.publisherstudio-kawaii-docs .publisherstudio-api-kind-navigation-heading::after,
  html.publisherstudio-kawaii-docs .publisherstudio-kawaii-pop {
    animation: none !important;
  }
  .publisherstudio-kawaii-sky { opacity: .45; }
}

@media print {
  .publisherstudio-kawaii-sky,
  .publisherstudio-kawaii-pop { display: none !important; }
  html.publisherstudio-kawaii-docs article { animation: none !important; backdrop-filter: none; }
  html.publisherstudio-kawaii-docs article::before { content: none !important; }
}

/* PublisherStudio website shell parity -------------------------------------------------
   These selectors intentionally target the modern DocFX shell itself, not only
   article text. They are loaded again as a cache-busted site asset by the build
   script so installed WebView, localhost, and GitHub Pages display the same theme. */
html.publisherstudio-kawaii-docs,
html.publisherstudio-kawaii-docs[data-bs-theme="light"] {
  color-scheme: light;
  --publisherstudio-site-page:
    radial-gradient(circle at 10% 4%, rgba(255,255,255,.82), transparent 25rem),
    radial-gradient(circle at 92% 12%, rgba(255,255,255,.58), transparent 22rem),
    linear-gradient(145deg, #ffc9e5 0%, #efc9fb 48%, #d7ddff 100%);
  --publisherstudio-site-shell: rgba(255, 241, 250, .82);
  --publisherstudio-site-shell-strong: rgba(255, 249, 253, .94);
  --publisherstudio-site-surface: linear-gradient(160deg, rgba(255,255,255,.91), rgba(255,239,249,.92));
  --publisherstudio-site-surface-soft: rgba(255, 248, 253, .76);
  --publisherstudio-site-border: rgba(255,255,255,.72);
  --publisherstudio-site-ink: #54275f;
  --publisherstudio-site-muted: #7d557f;
  --publisherstudio-site-link: #9d2a91;
  --publisherstudio-site-link-hover: #c0267d;
  --publisherstudio-site-shadow: rgba(106, 45, 128, .16);
  --publisherstudio-site-navbar: linear-gradient(90deg, rgba(139,66,167,.94), rgba(211,76,151,.91) 50%, rgba(98,121,213,.91));
  --bs-body-color: var(--publisherstudio-site-ink);
  --bs-body-bg: transparent;
  --bs-secondary-color: var(--publisherstudio-site-muted);
  --bs-border-color: rgba(167, 104, 166, .24);
  --bs-link-color-rgb: 157, 42, 145;
  --bs-link-hover-color-rgb: 192, 38, 125;
  --bs-tertiary-bg: rgba(255, 237, 248, .78);
}

html.publisherstudio-kawaii-docs[data-bs-theme="dark"] {
  color-scheme: dark;
  --publisherstudio-site-page:
    radial-gradient(circle at 9% 7%, rgba(240,154,214,.16), transparent 25rem),
    radial-gradient(circle at 91% 11%, rgba(143,151,255,.15), transparent 23rem),
    linear-gradient(145deg, #241827 0%, #302039 48%, #20263c 100%);
  --publisherstudio-site-shell: rgba(43, 27, 48, .86);
  --publisherstudio-site-shell-strong: rgba(52, 32, 57, .95);
  --publisherstudio-site-surface: linear-gradient(160deg, rgba(62,39,66,.94), rgba(45,31,57,.95));
  --publisherstudio-site-surface-soft: rgba(55, 36, 62, .84);
  --publisherstudio-site-border: rgba(255,190,232,.18);
  --publisherstudio-site-ink: #fff2fb;
  --publisherstudio-site-muted: #dcc3dd;
  --publisherstudio-site-link: #ff9fd4;
  --publisherstudio-site-link-hover: #ffd0e8;
  --publisherstudio-site-shadow: rgba(0, 0, 0, .32);
  --publisherstudio-site-navbar: linear-gradient(90deg, rgba(78,39,91,.98), rgba(124,46,96,.96) 52%, rgba(52,62,112,.96));
  --bs-body-color: var(--publisherstudio-site-ink);
  --bs-body-bg: transparent;
  --bs-secondary-color: var(--publisherstudio-site-muted);
  --bs-border-color: rgba(255,190,232,.18);
  --bs-link-color-rgb: 255, 159, 212;
  --bs-link-hover-color-rgb: 255, 208, 232;
  --bs-tertiary-bg: rgba(72, 45, 78, .88);
}

html.publisherstudio-kawaii-docs,
html.publisherstudio-kawaii-docs body {
  background: var(--publisherstudio-site-page) fixed !important;
  color: var(--publisherstudio-site-ink) !important;
  min-height: 100%;
}

html.publisherstudio-kawaii-docs body::before {
  background-image:
    radial-gradient(circle, rgba(255,255,255,.84) 0 1.1px, transparent 1.7px),
    radial-gradient(circle, rgba(255,255,255,.62) 0 .9px, transparent 1.5px),
    radial-gradient(circle, rgba(255,255,255,.72) 0 1.2px, transparent 1.8px) !important;
  background-position: 0 0, 41px 29px, 89px 13px !important;
  background-size: 148px 148px, 173px 173px, 211px 211px !important;
  content: "" !important;
  display: block !important;
  inset: 0;
  opacity: .48;
  pointer-events: none;
  position: fixed;
  z-index: 0;
}

html.publisherstudio-kawaii-docs body > *,
html.publisherstudio-kawaii-docs header,
html.publisherstudio-kawaii-docs main,
html.publisherstudio-kawaii-docs footer {
  position: relative;
  z-index: 1;
}

/* Remove opaque modern-template layers that previously hid the pink sky. */
html.publisherstudio-kawaii-docs body > .container-xxl,
html.publisherstudio-kawaii-docs body > .container-fluid,
html.publisherstudio-kawaii-docs main,
html.publisherstudio-kawaii-docs .main,
html.publisherstudio-kawaii-docs .main-container,
html.publisherstudio-kawaii-docs .mainContainer,
html.publisherstudio-kawaii-docs .body,
html.publisherstudio-kawaii-docs .content,
html.publisherstudio-kawaii-docs .article,
html.publisherstudio-kawaii-docs .container-xxl,
html.publisherstudio-kawaii-docs .container-fluid,
html.publisherstudio-kawaii-docs .page-wrapper,
html.publisherstudio-kawaii-docs .content-wrapper {
  background-color: transparent !important;
  background-image: none !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs .navbar,
html.publisherstudio-kawaii-docs header .navbar {
  background: var(--publisherstudio-site-navbar) !important;
  border-bottom: 1px solid var(--publisherstudio-site-border) !important;
  box-shadow: 0 .42rem 1.4rem var(--publisherstudio-site-shadow) !important;
}

html.publisherstudio-kawaii-docs .subnav,
html.publisherstudio-kawaii-docs .breadcrumb,
html.publisherstudio-kawaii-docs .breadcrumb-container {
  backdrop-filter: blur(14px) saturate(1.15);
  background: var(--publisherstudio-site-shell) !important;
  border-color: var(--publisherstudio-site-border) !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs .toc-offcanvas,
html.publisherstudio-kawaii-docs .offcanvas,
html.publisherstudio-kawaii-docs .offcanvas-body,
html.publisherstudio-kawaii-docs .sidefilter,
html.publisherstudio-kawaii-docs .sidetoc,
html.publisherstudio-kawaii-docs .affix,
html.publisherstudio-kawaii-docs .sideaffix {
  backdrop-filter: blur(18px) saturate(1.18);
  background: var(--publisherstudio-site-shell) !important;
  border-color: var(--publisherstudio-site-border) !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs .toc-offcanvas,
html.publisherstudio-kawaii-docs .sidefilter,
html.publisherstudio-kawaii-docs .sidetoc,
html.publisherstudio-kawaii-docs .affix,
html.publisherstudio-kawaii-docs .sideaffix {
  border-radius: 1rem;
  box-shadow: 0 .55rem 1.45rem var(--publisherstudio-site-shadow);
}

html.publisherstudio-kawaii-docs article,
html.publisherstudio-kawaii-docs .content article,
html.publisherstudio-kawaii-docs article.content,
html.publisherstudio-kawaii-docs article[role="main"] {
  background: var(--publisherstudio-site-surface) !important;
  border: 1px solid var(--publisherstudio-site-border) !important;
  border-radius: 1.35rem !important;
  box-shadow: 0 .9rem 2.25rem var(--publisherstudio-site-shadow) !important;
  color: var(--publisherstudio-site-ink) !important;
  margin-bottom: 1.2rem;
  padding: clamp(1rem, 2.2vw, 1.65rem) !important;
}

html.publisherstudio-kawaii-docs article p,
html.publisherstudio-kawaii-docs article li,
html.publisherstudio-kawaii-docs article td,
html.publisherstudio-kawaii-docs article dd {
  color: var(--publisherstudio-site-ink);
}

html.publisherstudio-kawaii-docs article h1 {
  background: linear-gradient(130deg, #ec4899, #a855f7 58%, #60a5fa) !important;
  border: 1px solid rgba(255,255,255,.38) !important;
  color: #fff !important;
}

html.publisherstudio-kawaii-docs article h2,
html.publisherstudio-kawaii-docs article h3,
html.publisherstudio-kawaii-docs article h4 {
  color: var(--publisherstudio-site-link) !important;
}

html.publisherstudio-kawaii-docs a {
  color: var(--publisherstudio-site-link);
}

html.publisherstudio-kawaii-docs a:hover,
html.publisherstudio-kawaii-docs a:focus-visible {
  color: var(--publisherstudio-site-link-hover);
}

html.publisherstudio-kawaii-docs .form-control,
html.publisherstudio-kawaii-docs input,
html.publisherstudio-kawaii-docs select,
html.publisherstudio-kawaii-docs .form-select {
  background: var(--publisherstudio-site-shell-strong) !important;
  border-color: var(--publisherstudio-site-border) !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs .btn-primary {
  background: linear-gradient(135deg, #f472b6, #a855f7) !important;
  border-color: rgba(255,255,255,.42) !important;
  box-shadow: 0 .32rem .85rem rgba(168,85,247,.22);
  color: #fff !important;
}

html.publisherstudio-kawaii-docs .pagination,
html.publisherstudio-kawaii-docs footer {
  background: var(--publisherstudio-site-shell) !important;
  border-color: var(--publisherstudio-site-border) !important;
  color: var(--publisherstudio-site-muted) !important;
}

/* Replace DocFX's default D mark with one compact cat badge. */
html.publisherstudio-kawaii-docs .navbar-brand::before,
html.publisherstudio-kawaii-docs .navbar-brand::after {
  content: none !important;
  display: none !important;
}

html.publisherstudio-kawaii-docs .navbar-brand > img,
html.publisherstudio-kawaii-docs .navbar-brand > svg,
html.publisherstudio-kawaii-docs .navbar-brand > .logo,
html.publisherstudio-kawaii-docs .navbar-brand > [class*="logo"] {
  display: none !important;
}

.publisherstudio-cat-brand {
  align-items: center;
  background: radial-gradient(circle at 34% 28%, #fff 0 18%, #ffd2e9 42%, #e9b9ff 100%);
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 999px;
  box-shadow: 0 .2rem .7rem rgba(69,29,90,.24), inset 0 1px 0 rgba(255,255,255,.82);
  display: inline-flex;
  flex: 0 0 2rem;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: 1.15rem;
  height: 2rem;
  justify-content: center;
  margin-right: .48rem;
  transform-origin: 50% 70%;
  width: 2rem;
}

html.publisherstudio-kawaii-docs .navbar-brand:hover .publisherstudio-cat-brand {
  animation: publisherstudio-cat-wave .65s ease-in-out;
}

@keyframes publisherstudio-cat-wave {
  0%, 100% { transform: rotate(0deg) scale(1); }
  30% { transform: rotate(-8deg) scale(1.08); }
  65% { transform: rotate(7deg) scale(1.06); }
}

@media (max-width: 991.98px) {
  html.publisherstudio-kawaii-docs article,
  html.publisherstudio-kawaii-docs .toc-offcanvas,
  html.publisherstudio-kawaii-docs .affix {
    border-radius: .95rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.publisherstudio-kawaii-docs .navbar-brand:hover .publisherstudio-cat-brand {
    animation: none !important;
  }
}

@media print {
  html.publisherstudio-kawaii-docs body::before { display: none !important; }
  .publisherstudio-cat-brand { box-shadow: none !important; }
}

/* Website shell hardening ------------------------------------------------------
   The generated HTML receives publisherstudio-kawaii-docs at build time, so these rules
   do not depend on JavaScript. They deliberately cover both modern DocFX layout
   generations and preserve the built-in data-bs-theme light/dark switch. */
html.publisherstudio-kawaii-docs body,
html.publisherstudio-kawaii-docs .layout,
html.publisherstudio-kawaii-docs .layout-container,
html.publisherstudio-kawaii-docs .main,
html.publisherstudio-kawaii-docs .main-panel,
html.publisherstudio-kawaii-docs .main-content,
html.publisherstudio-kawaii-docs .content-wrapper,
html.publisherstudio-kawaii-docs .container-xxl,
html.publisherstudio-kawaii-docs .container-fluid,
html.publisherstudio-kawaii-docs .row {
  background-color: transparent !important;
}

html.publisherstudio-kawaii-docs body {
  background-attachment: fixed !important;
  isolation: isolate;
}

html.publisherstudio-kawaii-docs main,
html.publisherstudio-kawaii-docs [role="main"] {
  min-height: calc(100vh - 4rem);
}

html.publisherstudio-kawaii-docs .navbar {
  color: #fff !important;
}

html.publisherstudio-kawaii-docs .navbar a,
html.publisherstudio-kawaii-docs .navbar .nav-link,
html.publisherstudio-kawaii-docs .navbar .navbar-brand,
html.publisherstudio-kawaii-docs .navbar button,
html.publisherstudio-kawaii-docs .navbar svg {
  color: #fff !important;
  fill: currentColor;
}

html.publisherstudio-kawaii-docs .navbar-brand {
  align-items: center;
  display: inline-flex;
  font-weight: 750;
  letter-spacing: .01em;
}

/* A pure-CSS cat is present even before main.js runs. main.js only removes the
   original DocFX D/logo node and marks the brand as decorated. */
html.publisherstudio-kawaii-docs .navbar-brand::before {
  align-items: center;
  background: radial-gradient(circle at 34% 28%, #fff 0 18%, #ffd2e9 42%, #e9b9ff 100%);
  border: 1px solid rgba(255,255,255,.76);
  border-radius: 999px;
  box-shadow: 0 .2rem .7rem rgba(69,29,90,.24), inset 0 1px 0 rgba(255,255,255,.84);
  color: #5c2869;
  content: "🐱" !important;
  display: inline-flex !important;
  flex: 0 0 2rem;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: 1.15rem;
  height: 2rem;
  justify-content: center;
  margin-right: .48rem;
  transform-origin: 50% 70%;
  width: 2rem;
}

html.publisherstudio-kawaii-docs .navbar-brand::after {
  content: none !important;
  display: none !important;
}

html.publisherstudio-kawaii-docs .navbar-brand:hover::before {
  animation: publisherstudio-cat-wave .65s ease-in-out;
}

html.publisherstudio-kawaii-docs .toc-offcanvas,
html.publisherstudio-kawaii-docs .offcanvas,
html.publisherstudio-kawaii-docs .sidefilter,
html.publisherstudio-kawaii-docs .sidetoc,
html.publisherstudio-kawaii-docs .affix,
html.publisherstudio-kawaii-docs .sideaffix,
html.publisherstudio-kawaii-docs .toc,
html.publisherstudio-kawaii-docs .article-container,
html.publisherstudio-kawaii-docs .content-container {
  background: var(--publisherstudio-site-shell) !important;
  border-color: var(--publisherstudio-site-border) !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs .article-container,
html.publisherstudio-kawaii-docs .content-container {
  background: transparent !important;
}

html.publisherstudio-kawaii-docs article,
html.publisherstudio-kawaii-docs article.content,
html.publisherstudio-kawaii-docs .markdown {
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs .toc .nav-link,
html.publisherstudio-kawaii-docs .toc a,
html.publisherstudio-kawaii-docs .affix a,
html.publisherstudio-kawaii-docs .sideaffix a,
html.publisherstudio-kawaii-docs .breadcrumb a {
  color: var(--publisherstudio-site-link) !important;
}

html.publisherstudio-kawaii-docs .toc .nav-link:hover,
html.publisherstudio-kawaii-docs .toc a:hover,
html.publisherstudio-kawaii-docs .toc .active > .nav-link,
html.publisherstudio-kawaii-docs .toc .nav-link.active {
  background: linear-gradient(90deg, color-mix(in srgb, var(--publisherstudio-site-link) 20%, transparent), color-mix(in srgb, #a855f7 17%, transparent)) !important;
  color: var(--publisherstudio-site-link-hover) !important;
}

html.publisherstudio-kawaii-docs article blockquote,
html.publisherstudio-kawaii-docs .alert,
html.publisherstudio-kawaii-docs .NOTE,
html.publisherstudio-kawaii-docs .TIP,
html.publisherstudio-kawaii-docs .WARNING,
html.publisherstudio-kawaii-docs .IMPORTANT,
html.publisherstudio-kawaii-docs .CAUTION {
  background: var(--publisherstudio-site-surface-soft) !important;
  border-color: color-mix(in srgb, var(--publisherstudio-site-link) 34%, transparent) !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs article table,
html.publisherstudio-kawaii-docs article tbody,
html.publisherstudio-kawaii-docs article td,
html.publisherstudio-kawaii-docs article th {
  background-color: var(--publisherstudio-site-surface-soft) !important;
  border-color: color-mix(in srgb, var(--publisherstudio-site-link) 18%, transparent) !important;
  color: var(--publisherstudio-site-ink) !important;
}

html.publisherstudio-kawaii-docs article thead,
html.publisherstudio-kawaii-docs article thead th {
  background: linear-gradient(90deg, color-mix(in srgb, #f472b6 24%, var(--publisherstudio-site-shell-strong)), color-mix(in srgb, #a855f7 20%, var(--publisherstudio-site-shell-strong))) !important;
}

html.publisherstudio-kawaii-docs article code:not(pre code) {
  background: color-mix(in srgb, var(--publisherstudio-site-link) 10%, var(--publisherstudio-site-shell-strong)) !important;
  color: var(--publisherstudio-site-link-hover) !important;
}

html.publisherstudio-kawaii-docs .pagination,
html.publisherstudio-kawaii-docs .pagination-container,
html.publisherstudio-kawaii-docs footer {
  backdrop-filter: blur(14px) saturate(1.15);
}

html.publisherstudio-kawaii-docs[data-bs-theme="dark"] .publisherstudio-kawaii-sky {
  opacity: .72;
}

html.publisherstudio-kawaii-docs[data-bs-theme="dark"] article h1 {
  background: linear-gradient(130deg, #be185d, #7e22ce 58%, #3453b7) !important;
}

html.publisherstudio-kawaii-docs[data-bs-theme="dark"] article pre {
  background: linear-gradient(145deg, rgba(28,19,42,.98), rgba(45,27,63,.98)) !important;
  border-color: rgba(255,190,232,.20) !important;
}

html.publisherstudio-kawaii-docs[data-bs-theme="dark"] .navbar-brand::before {
  background: radial-gradient(circle at 34% 28%, #fff 0 14%, #e7a9d0 40%, #a96ad0 100%);
  color: #3f1d4c;
}

@media (prefers-reduced-motion: reduce) {
  html.publisherstudio-kawaii-docs .navbar-brand:hover::before {
    animation: none !important;
  }
}

@media print {
  /* The compact print book has its own Kawaii print layout and does not receive
     publisherstudio-kawaii-docs. These guards keep accidental direct-page printing lean. */
  html.publisherstudio-kawaii-docs,
  html.publisherstudio-kawaii-docs body {
    background: #fff !important;
  }

  html.publisherstudio-kawaii-docs article {
    animation: none !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
  }

  html.publisherstudio-kawaii-docs .navbar-brand::before {
    animation: none !important;
    box-shadow: none !important;
  }
}


/* Follow-up shell refinement --------------------------------------------------
   Remove the broken theme toggle while keeping a sweet decorative heart sparkle,
   and add a playful paw cursor/trail used only on the documentation website. */
html.publisherstudio-kawaii-docs body,
html.publisherstudio-kawaii-docs a,
html.publisherstudio-kawaii-docs button,
html.publisherstudio-kawaii-docs .nav-link,
html.publisherstudio-kawaii-docs .btn,
html.publisherstudio-kawaii-docs summary {
  cursor: none !important;
}

/* The current documentation keeps a visible, independent theme control. */

html.publisherstudio-kawaii-docs .navbar .publisherstudio-heart-glimmer {
  animation: publisherstudio-heart-glimmer 3.6s ease-in-out infinite;
  color: #fff;
  display: inline-flex;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  font-size: 1rem;
  margin-left: .65rem;
  opacity: .96;
  pointer-events: none;
  text-shadow: 0 0 .5rem rgba(255,255,255,.55);
}

@keyframes publisherstudio-heart-glimmer {
  0%, 100% { transform: translateY(0) scale(1); opacity: .92; }
  25% { transform: translateY(-2px) scale(1.08); opacity: 1; }
  55% { transform: translateY(1px) scale(.97); opacity: .9; }
  75% { transform: translateY(-1px) scale(1.05); opacity: 1; }
}

html.publisherstudio-kawaii-docs .publisherstudio-cursor-paw,
html.publisherstudio-kawaii-docs .publisherstudio-paw-trail,
html.publisherstudio-kawaii-docs .publisherstudio-cat-scratch {
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  pointer-events: none;
  position: fixed;
  user-select: none;
  z-index: 2147483646;
}

html.publisherstudio-kawaii-docs .publisherstudio-cursor-paw {
  filter: drop-shadow(0 .15rem .35rem rgba(102, 19, 76, .25));
  font-size: 1.25rem;
  left: 0;
  top: 0;
  transform: translate(-100px, -100px);
  transition: transform .06s linear;
}

html.publisherstudio-kawaii-docs .publisherstudio-paw-trail {
  animation: publisherstudio-paw-fade 1.18s ease-out forwards;
  color: color-mix(in srgb, var(--publisherstudio-site-link) 72%, #ffffff);
  font-size: .96rem;
  left: 0;
  opacity: .9;
  top: 0;
  transform: translate(-50%, -50%) rotate(var(--publisherstudio-trail-rotate, 0deg));
}

@keyframes publisherstudio-paw-fade {
  0% { opacity: .9; transform: translate(-50%, -50%) scale(1) rotate(var(--publisherstudio-trail-rotate, 0deg)); }
  100% { opacity: 0; transform: translate(-50%, -85%) scale(.68) rotate(calc(var(--publisherstudio-trail-rotate, 0deg) + 12deg)); }
}

html.publisherstudio-kawaii-docs .publisherstudio-cat-scratch {
  animation: publisherstudio-cat-scratch-burst .8s ease-out forwards;
  color: #f472b6;
  height: 3rem;
  left: 0;
  top: 0;
  transform: translate(-50%, -50%);
  width: 3rem;
}

html.publisherstudio-kawaii-docs .publisherstudio-cat-scratch::before {
  content: "🐾";
  font-size: 1.15rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

html.publisherstudio-kawaii-docs .publisherstudio-cat-scratch::after {
  content: "╱ ╱ ╱";
  color: color-mix(in srgb, #ec4899 78%, #ffffff);
  font-size: 1.2rem;
  font-weight: 900;
  left: 50%;
  letter-spacing: .06rem;
  position: absolute;
  text-shadow: 0 0 .45rem rgba(255,255,255,.45);
  top: 50%;
  transform: translate(-50%, -50%) rotate(-16deg);
}

@keyframes publisherstudio-cat-scratch-burst {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.5) rotate(-8deg); }
  20% { opacity: 1; transform: translate(-50%, -50%) scale(1.08) rotate(0deg); }
  100% { opacity: 0; transform: translate(-50%, -68%) scale(1.26) rotate(8deg); }
}

html.publisherstudio-kawaii-docs .sidetoc,
html.publisherstudio-kawaii-docs .affix,
html.publisherstudio-kawaii-docs .sideaffix,
html.publisherstudio-kawaii-docs .toc,
html.publisherstudio-kawaii-docs .toc .nav,
html.publisherstudio-kawaii-docs .toc .nav > li,
html.publisherstudio-kawaii-docs .toc .level1,
html.publisherstudio-kawaii-docs .toc .level2,
html.publisherstudio-kawaii-docs .toc .level3,
html.publisherstudio-kawaii-docs .sidenav,
html.publisherstudio-kawaii-docs .sidefilter,
html.publisherstudio-kawaii-docs .toc-filter,
html.publisherstudio-kawaii-docs .tocpane,
html.publisherstudio-kawaii-docs .toc-container,
html.publisherstudio-kawaii-docs .article-header,
html.publisherstudio-kawaii-docs .article-subheading,
html.publisherstudio-kawaii-docs .right-rail,
html.publisherstudio-kawaii-docs .contribution,
html.publisherstudio-kawaii-docs .summary,
html.publisherstudio-kawaii-docs .alert,
html.publisherstudio-kawaii-docs .NOTE,
html.publisherstudio-kawaii-docs .TIP,
html.publisherstudio-kawaii-docs .IMPORTANT,
html.publisherstudio-kawaii-docs .WARNING,
html.publisherstudio-kawaii-docs .CAUTION {
  background: var(--publisherstudio-site-shell) !important;
  border-color: var(--publisherstudio-site-border) !important;
}

html.publisherstudio-kawaii-docs .sidetoc,
html.publisherstudio-kawaii-docs .affix,
html.publisherstudio-kawaii-docs .sideaffix,
html.publisherstudio-kawaii-docs .tocpane,
html.publisherstudio-kawaii-docs .toc-container,
html.publisherstudio-kawaii-docs .right-rail,
html.publisherstudio-kawaii-docs .contribution {
  box-shadow: 0 .55rem 1.45rem var(--publisherstudio-site-shadow) !important;
}

html.publisherstudio-kawaii-docs .toc .nav-link,
html.publisherstudio-kawaii-docs .toc a,
html.publisherstudio-kawaii-docs .affix a,
html.publisherstudio-kawaii-docs .sideaffix a {
  border-radius: .75rem;
  padding: .3rem .58rem;
}

html.publisherstudio-kawaii-docs .toc .nav-link:hover,
html.publisherstudio-kawaii-docs .toc a:hover,
html.publisherstudio-kawaii-docs .affix a:hover,
html.publisherstudio-kawaii-docs .sideaffix a:hover {
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--publisherstudio-site-link) 15%, transparent);
}

html.publisherstudio-kawaii-docs .subnav,
html.publisherstudio-kawaii-docs .breadcrumb,
html.publisherstudio-kawaii-docs .breadcrumb-container,
html.publisherstudio-kawaii-docs .buttons,
html.publisherstudio-kawaii-docs .navbar-collapse {
  background-color: transparent !important;
}

html.publisherstudio-kawaii-docs[data-bs-theme="dark"] .publisherstudio-heart-glimmer {
  text-shadow: 0 0 .75rem rgba(255, 196, 226, .58);
}

@media (prefers-reduced-motion: reduce), (pointer: coarse) {
  html.publisherstudio-kawaii-docs body,
  html.publisherstudio-kawaii-docs a,
  html.publisherstudio-kawaii-docs button,
  html.publisherstudio-kawaii-docs .nav-link,
  html.publisherstudio-kawaii-docs .btn,
  html.publisherstudio-kawaii-docs summary {
    cursor: auto !important;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-cursor-paw,
  html.publisherstudio-kawaii-docs .publisherstudio-paw-trail,
  html.publisherstudio-kawaii-docs .publisherstudio-cat-scratch {
    display: none !important;
  }
}

/* Documentation rework: reliable theme selector, real paw branding, and curated cards. */
html.publisherstudio-kawaii-docs header,
html.publisherstudio-kawaii-docs .navbar,
html.publisherstudio-kawaii-docs .navbar .container-xxl,
html.publisherstudio-kawaii-docs .navbar-collapse,
html.publisherstudio-kawaii-docs .navbar-nav {
  overflow: visible !important;
  position: relative;
  z-index: 1100 !important;
}

/* DocFX's own Bootstrap dropdown is replaced by a native details control. This
   avoids the close/re-open race that can occur when Bootstrap, DocFX and an
   embedded WebView all observe the same dropdown classes. */
html.publisherstudio-kawaii-docs .publisherstudio-native-theme-picker {
  display: none !important;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control {
  display: inline-block;
  margin: 0 .18rem;
  position: relative;
  z-index: 1200;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control > summary {
  align-items: center;
  border-radius: 999px;
  color: #fff !important;
  cursor: pointer !important;
  display: inline-flex;
  height: 2.25rem;
  justify-content: center;
  list-style: none;
  min-width: 2.25rem;
  padding: .35rem .55rem;
  user-select: none;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control > summary::-webkit-details-marker {
  display: none;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control > summary::after {
  content: none !important;
  display: none !important;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control > summary:hover,
html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control > summary:focus-visible,
html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control[open] > summary {
  background: rgba(255,255,255,.18) !important;
  box-shadow: 0 0 0 .18rem rgba(255,255,255,.22);
  outline: none;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control-menu {
  background: var(--publisherstudio-site-shell-strong) !important;
  border: 1px solid var(--publisherstudio-site-border) !important;
  border-radius: .9rem;
  box-shadow: 0 .8rem 2rem var(--publisherstudio-site-shadow) !important;
  color: var(--publisherstudio-site-ink) !important;
  display: grid;
  gap: .18rem;
  min-width: 10.5rem;
  padding: .42rem;
  position: absolute;
  right: 0;
  top: calc(100% + .5rem);
  z-index: 2147483000 !important;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control-option {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: .62rem;
  color: var(--publisherstudio-site-ink) !important;
  cursor: pointer !important;
  display: grid;
  font: inherit;
  gap: .55rem;
  grid-template-columns: 1.35rem 1fr;
  padding: .48rem .62rem;
  text-align: left;
  width: 100%;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control-option:hover,
html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control-option:focus-visible {
  background: color-mix(in srgb, var(--publisherstudio-site-link) 18%, transparent) !important;
  color: var(--publisherstudio-site-link-hover) !important;
  outline: none;
}

html.publisherstudio-kawaii-docs .navbar .publisherstudio-theme-control-option.active {
  background: linear-gradient(90deg,
    color-mix(in srgb, #f472b6 25%, transparent),
    color-mix(in srgb, #8b5cf6 20%, transparent)) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--publisherstudio-site-link) 24%, transparent);
  font-weight: 700;
}

html.publisherstudio-kawaii-docs .navbar-brand::before {
  content: none !important;
  display: none !important;
}

html.publisherstudio-kawaii-docs .navbar-brand > img#logo,
html.publisherstudio-kawaii-docs .navbar-brand > img[src*="logo.svg"] {
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(255,255,255,.82);
  border-radius: 999px;
  box-shadow: 0 .2rem .7rem rgba(69,29,90,.24);
  display: inline-block !important;
  height: 2rem !important;
  margin-right: .48rem;
  object-fit: contain;
  padding: .12rem;
  width: 2rem !important;
}

html.publisherstudio-kawaii-docs .publisherstudio-doc-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
  margin: 1.2rem 0 1.6rem;
}

html.publisherstudio-kawaii-docs .publisherstudio-doc-card {
  background: var(--publisherstudio-site-surface-soft);
  border: 1px solid var(--publisherstudio-site-border);
  border-radius: 1rem;
  box-shadow: 0 .45rem 1.2rem var(--publisherstudio-site-shadow);
  padding: 1rem 1.05rem;
}

html.publisherstudio-kawaii-docs .publisherstudio-doc-card > :first-child { margin-top: 0; }
html.publisherstudio-kawaii-docs .publisherstudio-doc-card > :last-child { margin-bottom: 0; }

@media (max-width: 767.98px) {
  html.publisherstudio-kawaii-docs .navbar .dropdown-menu {
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
  }
}

/* Shared Kawaii documentation shell -------------------------------------------------
   PublisherStudio and PublisherStudio use the same three-panel geometry so moving between
   the two documentation sites does not require a new visual model. At desktop width
   both navigation rails have exactly the same width and exactly the same gap to the
   article. The article consumes every remaining column pixel and all three surfaces
   fill one viewport when their content is short. The document itself grows normally
   when real content needs more room; no fake nested page scrollbar is introduced. */
@media (min-width: 1141px) {
  html.publisherstudio-kawaii-docs {
    --kawaii-docs-rail-width: clamp(15rem, 16vw, 18rem);
    --kawaii-docs-panel-gap: clamp(1.25rem, 2vw, 2.5rem);
    --kawaii-docs-shell-min-height: max(24rem, calc(100vh - 60px - 1.6rem - 4.5rem));
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main.container-xxl,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main.container-xxl {
    align-items: stretch !important;
    box-sizing: border-box;
    column-gap: var(--kawaii-docs-panel-gap) !important;
    display: grid !important;
    grid-template-columns:
      var(--kawaii-docs-rail-width)
      minmax(0, 1fr)
      var(--kawaii-docs-rail-width) !important;
    margin-inline: auto !important;
    max-width: 112rem !important;
    min-height: var(--kawaii-docs-shell-min-height) !important;
    width: calc(100% - clamp(2rem, 6vw, 6rem)) !important;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .toc-offcanvas,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .toc-offcanvas,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .affix,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .affix {
    align-self: stretch !important;
    box-sizing: border-box;
    display: block !important;
    flex: none !important;
    max-height: none !important;
    max-width: none !important;
    min-height: var(--kawaii-docs-shell-min-height);
    min-width: 0;
    overflow: visible !important;
    width: auto !important;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .toc-offcanvas,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .toc-offcanvas {
    grid-column: 1;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .affix,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .affix {
    grid-column: 3;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .toc-offcanvas .offcanvas-md,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .toc-offcanvas .offcanvas-md,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .toc-offcanvas .offcanvas-body,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .toc-offcanvas .offcanvas-body {
    height: 100%;
    max-height: none !important;
    overflow: visible !important;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .affix > nav,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .affix > nav {
    max-height: none !important;
    overflow: visible !important;
    position: static !important;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .content,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .content {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    grid-column: 2;
    margin-inline: 0 !important;
    min-width: 0;
    padding-bottom: 0;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main > .content > article,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main > .content > article {
    box-sizing: border-box;
    flex: 1 0 auto;
    margin-bottom: 0;
    max-width: none !important;
    min-height: var(--kawaii-docs-shell-min-height);
    width: 100%;
  }
}

/* 2026 responsive documentation shell -------------------------------------------
   Fill modern and ultrawide displays without turning body text into one endless
   line. The shell may use the viewport; prose keeps a readable measure while
   cards, diagrams, tables and API surfaces can use the wider center column. */
html.publisherstudio-kawaii-docs,
html.publisherstudio-kawaii-docs body {
  max-width: 100%;
  overflow-x: clip;
}

html.publisherstudio-kawaii-docs .publisherstudio-root-toc .offcanvas-body {
  padding: .8rem .65rem;
}

html.publisherstudio-kawaii-docs article > p,
html.publisherstudio-kawaii-docs article > ul,
html.publisherstudio-kawaii-docs article > ol,
html.publisherstudio-kawaii-docs article > dl,
html.publisherstudio-kawaii-docs article > blockquote {
  max-width: 118ch;
}

@media (min-width: 1141px) {
  html.publisherstudio-kawaii-docs {
    --kawaii-docs-rail-width: clamp(15rem, 13vw, 20rem);
    --kawaii-docs-panel-gap: clamp(1rem, 1.35vw, 2.4rem);
    --kawaii-docs-shell-width: calc(100% - clamp(1.5rem, 3vw, 6rem));
    --kawaii-docs-shell-max-width: 220rem;
  }

  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout=""] > main.container-xxl,
  html.publisherstudio-kawaii-docs body:not([data-search])[data-layout="conceptual"] > main.container-xxl {
    max-width: var(--kawaii-docs-shell-max-width) !important;
    width: var(--kawaii-docs-shell-width) !important;
  }

  html.publisherstudio-kawaii-docs .navbar > .container-xxl,
  html.publisherstudio-kawaii-docs header .navbar > .container-xxl,
  html.publisherstudio-kawaii-docs footer > .container-xxl,
  html.publisherstudio-kawaii-docs body > footer .container-xxl,
  html.publisherstudio-kawaii-docs #search-results.container-xxl {
    max-width: var(--kawaii-docs-shell-max-width) !important;
    width: var(--kawaii-docs-shell-width) !important;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-doc-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  html.publisherstudio-kawaii-docs article,
  html.publisherstudio-kawaii-docs .content article,
  html.publisherstudio-kawaii-docs article.content,
  html.publisherstudio-kawaii-docs article[role="main"] {
    padding: clamp(1.2rem, 1.25vw, 2.35rem) !important;
  }
}

@media (min-width: 2200px) {
  html.publisherstudio-kawaii-docs {
    font-size: 17px;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-doc-grid {
    gap: clamp(1rem, 1vw, 1.75rem);
  }
}

@media (max-width: 1399.98px) {
  html.publisherstudio-kawaii-docs .publisherstudio-doc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  html.publisherstudio-kawaii-docs .publisherstudio-doc-grid {
    grid-template-columns: 1fr;
  }
}

/* Self-contained PublisherStudio snapshot compatibility --------------------------
   Older checked-in HTML snapshots do not load Bootstrap/DocFX's base stylesheet.
   Give that existing markup the same shell, navigation and card behavior as the
   generated modern DocFX site instead of maintaining a second visual design. */
html.publisherstudio-kawaii-docs body {
  margin: 0;
  min-height: 100vh;
}

html.publisherstudio-kawaii-docs body > header.navbar {
  background: var(--publisherstudio-site-navbar) !important;
  border-bottom: 1px solid var(--publisherstudio-site-border);
  box-shadow: 0 .42rem 1.4rem var(--publisherstudio-site-shadow);
  color: #fff;
  position: sticky;
  top: 0;
  z-index: 1100;
}

html.publisherstudio-kawaii-docs body > header.navbar > .container-xxl {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  gap: clamp(.8rem, 1.5vw, 1.8rem);
  margin-inline: auto;
  min-height: 3.75rem;
  padding: .55rem 0;
}

html.publisherstudio-kawaii-docs body > header.navbar .navbar-brand {
  align-items: center;
  color: #fff !important;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 1.05rem;
  font-weight: 750;
  text-decoration: none;
}

html.publisherstudio-kawaii-docs body > header.navbar .navbar-nav {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: .12rem;
}

html.publisherstudio-kawaii-docs body > header.navbar .nav-link {
  border-radius: .7rem;
  color: rgba(255,255,255,.94) !important;
  display: inline-flex;
  padding: .42rem .68rem;
  text-decoration: none;
}

html.publisherstudio-kawaii-docs body > header.navbar .nav-link:hover,
html.publisherstudio-kawaii-docs body > header.navbar .nav-link:focus-visible {
  background: rgba(255,255,255,.16);
  color: #fff !important;
}

html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout {
  box-sizing: border-box;
  padding-block: clamp(1.25rem, 2vw, 2.2rem);
}

html.publisherstudio-kawaii-docs .publisherstudio-snapshot-nav nav {
  display: grid;
}

html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .main {
  min-width: 0;
}

html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .toc {
  backdrop-filter: blur(18px) saturate(1.18);
  background: var(--publisherstudio-site-shell) !important;
  border: 1px solid var(--publisherstudio-site-border);
  border-radius: 1rem;
  box-shadow: 0 .55rem 1.45rem var(--publisherstudio-site-shadow);
  box-sizing: border-box;
  color: var(--publisherstudio-site-ink);
  height: max-content;
  padding: .9rem .8rem;
}

html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .toc h5 {
  color: var(--publisherstudio-site-muted);
  font-size: .72rem;
  letter-spacing: .1em;
  margin: 0 0 .55rem;
  text-transform: uppercase;
}

html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .toc a {
  border-radius: .68rem;
  color: var(--publisherstudio-site-link);
  display: block;
  padding: .34rem .5rem;
  text-decoration: none;
}

html.publisherstudio-kawaii-docs body > footer.footer {
  border-top: 1px solid var(--publisherstudio-site-border);
  color: var(--publisherstudio-site-muted);
  margin-top: 1rem;
  padding: 1rem 0 1.4rem;
}

html.publisherstudio-kawaii-docs body > footer.footer > .container-xxl {
  box-sizing: border-box;
  margin-inline: auto;
}

@media (min-width: 1141px) {
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout {
    max-width: var(--kawaii-docs-shell-max-width) !important;
    width: var(--kawaii-docs-shell-width) !important;
  }
}

@media (max-width: 1140.98px) {
  html.publisherstudio-kawaii-docs body > header.navbar > .container-xxl,
  html.publisherstudio-kawaii-docs body > footer.footer > .container-xxl,
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout {
    margin-inline: auto;
    width: calc(100% - 2rem);
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout {
    display: block;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .toc {
    margin-top: 1rem;
  }
}

@media (max-width: 767.98px) {
  html.publisherstudio-kawaii-docs body > header.navbar > .container-xxl {
    align-items: flex-start;
    flex-direction: column;
  }

  html.publisherstudio-kawaii-docs body > header.navbar .navbar-nav {
    width: 100%;
  }
}

html.publisherstudio-kawaii-docs .publisherstudio-architecture-map {
  background: linear-gradient(135deg, #4f2f68, #56366f 55%, #4a3675);
  border: 1px solid color-mix(in srgb, var(--publisherstudio-site-border) 72%, #ffffff);
  border-radius: 1rem;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 1rem 0 1.5rem;
  padding: clamp(1rem, 2vw, 2rem);
}
html.publisherstudio-kawaii-docs .publisherstudio-architecture-map span {
  align-items: center;
  background: rgba(255,255,255,.94);
  border-radius: .35rem;
  color: #5c2b66;
  display: flex;
  justify-content: center;
  min-height: 4rem;
  padding: .7rem;
  text-align: center;
}
@media (max-width: 767.98px) {
  html.publisherstudio-kawaii-docs .publisherstudio-architecture-map { grid-template-columns: 1fr; }
}

/* PublisherStudio checked-in snapshot: same desktop three-rail geometry. */
@media (min-width: 1141px) {
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout {
    align-items: stretch !important;
    column-gap: var(--kawaii-docs-panel-gap) !important;
    display: grid !important;
    grid-template-columns: var(--kawaii-docs-rail-width) minmax(0, 1fr) var(--kawaii-docs-rail-width) !important;
    margin-inline: auto !important;
    max-width: var(--kawaii-docs-shell-max-width) !important;
    width: var(--kawaii-docs-shell-width) !important;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .publisherstudio-snapshot-nav {
    grid-column: 1 !important;
    min-width: 0;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .main {
    grid-column: 2 !important;
    min-width: 0;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .main > article {
    box-sizing: border-box;
    max-width: none !important;
    min-width: 0;
    width: 100% !important;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .toc {
    grid-column: 3 !important;
    min-width: 0;
  }
}

@media (min-width: 1141px) {
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout {
    min-height: var(--kawaii-docs-shell-min-height) !important;
  }

  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .publisherstudio-snapshot-nav,
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .main,
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .toc,
  html.publisherstudio-kawaii-docs .publisherstudio-snapshot-layout > .main > article {
    align-self: stretch !important;
    min-height: var(--kawaii-docs-shell-min-height) !important;
  }
}


/* PublisherStudio 2.3.4: keep the generated theme picker inside the viewport even on static snapshot pages. */
html.publisherstudio-kawaii-docs .publisherstudio-theme-control {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  max-width: min(12rem, calc(100vw - 1rem));
  position: relative !important;
  z-index: 2147483000 !important;
}
html.publisherstudio-kawaii-docs .publisherstudio-theme-control > summary {
  align-items: center;
  display: inline-flex !important;
  justify-content: center;
  min-width: 2.25rem;
  width: auto !important;
}
html.publisherstudio-kawaii-docs .publisherstudio-theme-control-menu {
  box-sizing: border-box;
  left: auto !important;
  max-width: calc(100vw - 1rem) !important;
  right: 0 !important;
  width: max-content;
}
html.publisherstudio-kawaii-docs header.navbar > .container-xxl {
  flex-wrap: nowrap !important;
}
@media (max-width: 767.98px) {
  html.publisherstudio-kawaii-docs header.navbar > .container-xxl {
    flex-wrap: wrap !important;
  }
  html.publisherstudio-kawaii-docs .publisherstudio-theme-control {
    margin-left: .5rem !important;
  }
}
