:root{color-scheme:light;--nuppdoc-light-accent:#087f8c;--nuppdoc-light-accent-hover:#086a75;--nuppdoc-light-accent-soft:#dff3f5;--nuppdoc-light-background:#fff;--nuppdoc-light-background-alt:#f6f6f7;--nuppdoc-light-border:#e2e2e3;--nuppdoc-light-code-background:#e9e7ec;--nuppdoc-light-text:#213547;--nuppdoc-light-muted:#67676c;--nuppdoc-dark-accent:#5ad9e0;--nuppdoc-dark-accent-hover:#7ce4e9;--nuppdoc-dark-accent-soft:#173a3f;--nuppdoc-dark-background:#1b1b1f;--nuppdoc-dark-background-alt:#161618;--nuppdoc-dark-border:#2e2e32;--nuppdoc-dark-code-background:#252330;--nuppdoc-dark-text:#dfdfd6;--nuppdoc-dark-muted:#a8a8a3;--nuppdoc-accent:var(--nuppdoc-light-accent);--nuppdoc-accent-hover:var(--nuppdoc-light-accent-hover);--nuppdoc-accent-soft:var(--nuppdoc-light-accent-soft);--nuppdoc-background:var(--nuppdoc-light-background);--nuppdoc-background-alt:var(--nuppdoc-light-background-alt);--nuppdoc-border:var(--nuppdoc-light-border);--nuppdoc-code-background:var(--nuppdoc-light-code-background);--nuppdoc-text:var(--nuppdoc-light-text);--nuppdoc-text-muted:var(--nuppdoc-light-muted);--nuppdoc-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--nuppdoc-font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--nuppdoc-header-height:64px;--nuppdoc-layout-max-width:1480px;--nuppdoc-content-width:688px;--nuppdoc-sidebar-width:272px;--nuppdoc-outline-width:256px}
:root{--nuppdoc-syntax-foreground:#3760bf;--nuppdoc-syntax-boolean:#b15c00;--nuppdoc-syntax-comment:#848cb5;--nuppdoc-syntax-function:#2e7de9;--nuppdoc-syntax-keyword:#9854f1;--nuppdoc-syntax-meta:#007197;--nuppdoc-syntax-number:#b15c00;--nuppdoc-syntax-operator:#006a83;--nuppdoc-syntax-property:#387068;--nuppdoc-syntax-punctuation:#6172b0;--nuppdoc-syntax-string:#587539;--nuppdoc-syntax-type:#007197;--nuppdoc-syntax-variable:#3760bf}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--nuppdoc-accent:var(--nuppdoc-dark-accent);--nuppdoc-accent-hover:var(--nuppdoc-dark-accent-hover);--nuppdoc-accent-soft:var(--nuppdoc-dark-accent-soft);--nuppdoc-background:var(--nuppdoc-dark-background);--nuppdoc-background-alt:var(--nuppdoc-dark-background-alt);--nuppdoc-border:var(--nuppdoc-dark-border);--nuppdoc-code-background:var(--nuppdoc-dark-code-background);--nuppdoc-text:var(--nuppdoc-dark-text);--nuppdoc-text-muted:var(--nuppdoc-dark-muted)}}
@media(prefers-color-scheme:dark){:root{--nuppdoc-syntax-foreground:#c0caf5;--nuppdoc-syntax-boolean:#ff9e64;--nuppdoc-syntax-comment:#565f89;--nuppdoc-syntax-function:#7aa2f7;--nuppdoc-syntax-keyword:#bb9af7;--nuppdoc-syntax-meta:#7dcfff;--nuppdoc-syntax-number:#ff9e64;--nuppdoc-syntax-operator:#89ddff;--nuppdoc-syntax-property:#73daca;--nuppdoc-syntax-punctuation:#a9b1d6;--nuppdoc-syntax-string:#9ece6a;--nuppdoc-syntax-type:#2ac3de;--nuppdoc-syntax-variable:#c0caf5}}
:root[data-theme="dark"]{color-scheme:dark;--nuppdoc-accent:var(--nuppdoc-dark-accent);--nuppdoc-accent-hover:var(--nuppdoc-dark-accent-hover);--nuppdoc-accent-soft:var(--nuppdoc-dark-accent-soft);--nuppdoc-background:var(--nuppdoc-dark-background);--nuppdoc-background-alt:var(--nuppdoc-dark-background-alt);--nuppdoc-border:var(--nuppdoc-dark-border);--nuppdoc-code-background:var(--nuppdoc-dark-code-background);--nuppdoc-text:var(--nuppdoc-dark-text);--nuppdoc-text-muted:var(--nuppdoc-dark-muted)}
:root[data-theme="dark"]{--nuppdoc-syntax-foreground:#c0caf5;--nuppdoc-syntax-boolean:#ff9e64;--nuppdoc-syntax-comment:#565f89;--nuppdoc-syntax-function:#7aa2f7;--nuppdoc-syntax-keyword:#bb9af7;--nuppdoc-syntax-meta:#7dcfff;--nuppdoc-syntax-number:#ff9e64;--nuppdoc-syntax-operator:#89ddff;--nuppdoc-syntax-property:#73daca;--nuppdoc-syntax-punctuation:#a9b1d6;--nuppdoc-syntax-string:#9ece6a;--nuppdoc-syntax-type:#2ac3de;--nuppdoc-syntax-variable:#c0caf5}
:root[data-theme="light"]{color-scheme:light;--nuppdoc-accent:var(--nuppdoc-light-accent);--nuppdoc-accent-hover:var(--nuppdoc-light-accent-hover);--nuppdoc-accent-soft:var(--nuppdoc-light-accent-soft);--nuppdoc-background:var(--nuppdoc-light-background);--nuppdoc-background-alt:var(--nuppdoc-light-background-alt);--nuppdoc-border:var(--nuppdoc-light-border);--nuppdoc-code-background:var(--nuppdoc-light-code-background);--nuppdoc-text:var(--nuppdoc-light-text);--nuppdoc-text-muted:var(--nuppdoc-light-muted)}
:root[data-theme="light"]{--nuppdoc-syntax-foreground:#3760bf;--nuppdoc-syntax-boolean:#b15c00;--nuppdoc-syntax-comment:#848cb5;--nuppdoc-syntax-function:#2e7de9;--nuppdoc-syntax-keyword:#9854f1;--nuppdoc-syntax-meta:#007197;--nuppdoc-syntax-number:#b15c00;--nuppdoc-syntax-operator:#006a83;--nuppdoc-syntax-property:#387068;--nuppdoc-syntax-punctuation:#6172b0;--nuppdoc-syntax-string:#587539;--nuppdoc-syntax-type:#007197;--nuppdoc-syntax-variable:#3760bf}
*{box-sizing:border-box}html{font-size:16px}
/* Every fragment destination clears the sticky header itself. Doing it here rather
 * than with scroll-padding on the scrollport is what makes a link land in the same
 * place in browsers that skip scroll-padding on a load-time fragment; the two would
 * otherwise add up to twice the gap where both are honored. */
.nuppdoc-api-item,.nuppdoc-api-member,.nuppdoc-content :is(h1,h2,h3,h4,h5,h6)[id]{scroll-margin-top:calc(var(--nuppdoc-header-height) + 1.4rem)}body{margin:0;color:var(--nuppdoc-text);background:var(--nuppdoc-background);font-family:var(--nuppdoc-font);line-height:1.6}a{color:var(--nuppdoc-accent);text-decoration-color:currentColor}a:hover{color:var(--nuppdoc-accent-hover)}button,input{font:inherit}.nuppdoc-header{position:sticky;z-index:30;top:0;height:var(--nuppdoc-header-height);border-bottom:1px solid var(--nuppdoc-border);background:color-mix(in srgb,var(--nuppdoc-background) 92%,transparent);backdrop-filter:blur(12px)}.nuppdoc-nav{display:flex;width:100%;max-width:var(--nuppdoc-layout-max-width);height:100%;align-items:center;gap:1rem;margin:auto;padding:0 1rem}.nuppdoc-brand{display:flex;align-items:center;gap:.55rem;color:var(--nuppdoc-text);font-weight:700;text-decoration:none}.nuppdoc-mark{display:grid;width:29px;height:29px;place-items:center;color:#fff;border-radius:7px;background:var(--nuppdoc-accent);font-family:var(--nuppdoc-font-mono);font-size:.7rem}.nuppdoc-top-nav{display:flex;flex:1;gap:.2rem}.nuppdoc-top-nav a{padding:.45rem .65rem;color:var(--nuppdoc-text-muted);border-radius:7px;font-size:.76rem;text-decoration:none}.nuppdoc-top-nav a:hover{color:var(--nuppdoc-text);background:var(--nuppdoc-background-alt)}.nuppdoc-top-nav a[aria-current="page"]{color:var(--nuppdoc-accent)}.nuppdoc-actions{display:flex;align-items:center;gap:.25rem}.nuppdoc-search{width:min(190px,18vw);height:32px;padding:.25rem .6rem;color:var(--nuppdoc-text-muted);border:1px solid var(--nuppdoc-border);border-radius:6px;background:var(--nuppdoc-background-alt);font-size:.75rem}.nuppdoc-theme{display:grid;width:34px;height:34px;place-items:center;padding:0;color:var(--nuppdoc-text-muted);border:0;border-radius:7px;background:transparent;cursor:pointer}.nuppdoc-theme:hover{color:var(--nuppdoc-text);background:var(--nuppdoc-background-alt)}
.nuppdoc-shell{display:grid;width:100%;max-width:var(--nuppdoc-layout-max-width);min-height:calc(100vh - var(--nuppdoc-header-height));grid-template-columns:var(--nuppdoc-sidebar-width) minmax(0,1fr) var(--nuppdoc-outline-width);margin:auto}.nuppdoc-sidebar,.nuppdoc-outline{position:sticky;top:var(--nuppdoc-header-height);overflow:auto;max-height:calc(100vh - var(--nuppdoc-header-height));padding:1.25rem 1rem 2rem}.nuppdoc-sidebar{border-right:1px solid var(--nuppdoc-border);background:var(--nuppdoc-background-alt);box-shadow:-100vw 0 0 100vw var(--nuppdoc-background-alt)}.nuppdoc-sidebar h2,.nuppdoc-outline h2{margin:0 0 .75rem;color:var(--nuppdoc-text-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.nuppdoc-sidebar ul,.nuppdoc-outline ol{margin:0;padding:0;list-style:none}.nuppdoc-sidebar a,.nuppdoc-outline a{display:block;overflow:hidden;padding:.24rem .55rem;color:var(--nuppdoc-text-muted);border-radius:6px;font-size:.7rem;font-weight:500;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.nuppdoc-sidebar a:hover{color:var(--nuppdoc-text);background:color-mix(in srgb,var(--nuppdoc-accent-soft) 55%,transparent)}.nuppdoc-sidebar a[aria-current="page"],.nuppdoc-outline a:hover{color:var(--nuppdoc-accent);font-weight:650}.nuppdoc-outline{padding-left:1.25rem}.nuppdoc-outline ol{padding-left:1rem;border-left:1px solid var(--nuppdoc-border)}.nuppdoc-outline a{padding:.16rem 0;font-size:.66rem}
.nuppdoc-content{width:min(100% - 10rem,var(--nuppdoc-content-width));margin:0 auto;padding:1.25rem 0 6rem;font-size:.88rem}.nuppdoc-content h1,.nuppdoc-content h2,.nuppdoc-content h3{font-weight:700;line-height:1.25;letter-spacing:-.02em}.nuppdoc-content h1{margin-top:0;font-size:1.8rem}.nuppdoc-content h2{margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--nuppdoc-border);font-size:1.575rem}.nuppdoc-content h3{margin-top:2.25rem;font-size:1.35rem}.nuppdoc-content h4{margin-top:1.5rem;font-size:1rem}.nuppdoc-breadcrumbs{margin:0 0 .75rem;color:var(--nuppdoc-text-muted);font-size:.75rem}.nuppdoc-breadcrumbs a{color:var(--nuppdoc-text-muted)}.nuppdoc-kind-badge{display:inline-flex;margin-left:.45rem;padding:.12rem .42rem;color:var(--nuppdoc-text-muted);border:1px solid var(--nuppdoc-border);border-radius:999px;background:var(--nuppdoc-background-alt);font-size:.62rem;font-weight:650;letter-spacing:.035em;text-transform:uppercase;vertical-align:middle}.nuppdoc-kind-function,.nuppdoc-kind-method{color:var(--nuppdoc-accent);border-color:color-mix(in srgb,var(--nuppdoc-accent) 35%,var(--nuppdoc-border));background:var(--nuppdoc-accent-soft)}.nuppdoc-header-anchor{margin-left:.4rem;opacity:0;text-decoration:none}.nuppdoc-content h2:hover .nuppdoc-header-anchor,.nuppdoc-content h3:hover .nuppdoc-header-anchor{opacity:1}.nuppdoc-code-block{position:relative}.nuppdoc-code-block[data-lang]::before{position:absolute;z-index:1;top:8px;right:10px;color:var(--nuppdoc-text-muted);content:attr(data-lang);font-family:var(--nuppdoc-font-mono);font-size:.66rem}.nuppdoc-content pre{overflow:auto;padding:.8rem .9rem;border:1px solid var(--nuppdoc-border);border-radius:8px;background:var(--nuppdoc-code-background);line-height:1.55}.nuppdoc-content pre code{padding:0;background:transparent;font-family:var(--nuppdoc-font-mono);font-size:14px}.nuppdoc-content :not(pre)>code{padding:.1em .35em;border-radius:4px;background:var(--nuppdoc-code-background);font-family:var(--nuppdoc-font-mono);font-size:.91em}.nuppdoc-content table{width:100%;margin:1rem 0;border-collapse:collapse;font-size:.76rem}.nuppdoc-content th,.nuppdoc-content td{padding:.55rem .65rem;border-bottom:1px solid var(--nuppdoc-border);text-align:left;vertical-align:top}.nuppdoc-content th{color:var(--nuppdoc-text-muted);font-size:.68rem;text-transform:uppercase}.nuppdoc-empty{padding:2rem;color:var(--nuppdoc-text-muted);border:1px dashed var(--nuppdoc-border);border-radius:8px;text-align:center}.nuppdoc-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1.5rem}.nuppdoc-module-card{display:block;padding:1rem;color:var(--nuppdoc-text);border:1px solid var(--nuppdoc-border);border-radius:10px;background:var(--nuppdoc-background-alt);text-decoration:none}.nuppdoc-module-card:hover{color:var(--nuppdoc-text);border-color:var(--nuppdoc-accent);transform:translateY(-1px)}.nuppdoc-module-card code{display:block;margin-bottom:.35rem;color:var(--nuppdoc-accent);font-size:.85rem}.nuppdoc-module-card span{color:var(--nuppdoc-text-muted);font-size:.72rem}.nuppdoc-footer{padding:1.25rem;color:var(--nuppdoc-text-muted);border-top:1px solid var(--nuppdoc-border);font-size:.68rem;text-align:center}
.nuppdoc-token-comment{color:var(--nuppdoc-syntax-comment);font-style:italic}.nuppdoc-token-boolean{color:var(--nuppdoc-syntax-boolean)}.nuppdoc-token-keyword{color:var(--nuppdoc-syntax-keyword)}.nuppdoc-token-meta{color:var(--nuppdoc-syntax-meta)}.nuppdoc-token-number{color:var(--nuppdoc-syntax-number)}.nuppdoc-token-function{color:var(--nuppdoc-syntax-function)}.nuppdoc-token-operator{color:var(--nuppdoc-syntax-operator)}.nuppdoc-token-property{color:var(--nuppdoc-syntax-property)}.nuppdoc-token-punctuation{color:var(--nuppdoc-syntax-punctuation)}.nuppdoc-token-string{color:var(--nuppdoc-syntax-string)}.nuppdoc-token-type{color:var(--nuppdoc-syntax-type)}.nuppdoc-token-variable{color:var(--nuppdoc-syntax-variable)}.nuppdoc-code-link,.nuppdoc-code-link:visited,.nuppdoc-code-link:hover{border-bottom:1px dotted currentColor;text-decoration:none}.nuppdoc-code-link:hover{border-bottom-style:solid}.nuppdoc-code-link-type{color:var(--nuppdoc-syntax-type)}.nuppdoc-code-link-function{color:var(--nuppdoc-syntax-function)}.nuppdoc-code-link-property{color:var(--nuppdoc-syntax-property)}.nuppdoc-code-link-variable{color:var(--nuppdoc-syntax-variable)}
@media(max-width:1100px){.nuppdoc-shell{grid-template-columns:var(--nuppdoc-sidebar-width) minmax(0,1fr)}.nuppdoc-outline{display:none}.nuppdoc-content{width:min(100% - 5rem,var(--nuppdoc-content-width))}}@media(max-width:760px){.nuppdoc-top-nav{display:none}.nuppdoc-search{width:140px}.nuppdoc-shell{display:block}.nuppdoc-sidebar{position:static;max-height:none;padding:.7rem 1rem;border-right:0;border-bottom:1px solid var(--nuppdoc-border);box-shadow:none}.nuppdoc-sidebar h2{display:none}.nuppdoc-sidebar ul{display:flex;overflow:auto;gap:.25rem}.nuppdoc-content{width:auto;padding:1.5rem 1.25rem 4rem}}@media(max-width:480px){.nuppdoc-search{display:none}.nuppdoc-brand span:last-child{display:none}.nuppdoc-content table{display:block;overflow:auto}}
/* The custom properties a site is meant to override. They are named and grouped
 * deliberately: this is the part of the stylesheet a project stylesheet targets. */
:root{--nuppdoc-text-faint:color-mix(in srgb,var(--nuppdoc-text-muted) 72%,transparent);--nuppdoc-sidebar-background:var(--nuppdoc-background-alt);--nuppdoc-accent-contrast:#fff;--nuppdoc-home-width:1152px;--nuppdoc-home-gutter:2rem;--nuppdoc-hero-glow-color:var(--nuppdoc-accent);--nuppdoc-hero-glow-size:520px;--nuppdoc-hero-glow-blur:24px;--nuppdoc-hero-glow-opacity:.68;--nuppdoc-code-block-radius:8px;--nuppdoc-playground-height:30rem;--nuppdoc-playground-border:color-mix(in srgb,var(--nuppdoc-border) 70%,var(--nuppdoc-text));--nuppdoc-code-tab-text:var(--nuppdoc-text-muted);--nuppdoc-code-tab-hover-text:var(--nuppdoc-text);--nuppdoc-code-tab-active-text:var(--nuppdoc-text);--nuppdoc-code-tab-active-bar:var(--nuppdoc-accent);--nuppdoc-code-tab-divider:var(--nuppdoc-border);--nuppdoc-code-tab-font-size:.72rem;--nuppdoc-code-tab-font-weight:600;--nuppdoc-code-tab-padding:.45rem .75rem;--nuppdoc-admonition-note:var(--nuppdoc-accent);--nuppdoc-admonition-info:#0969da;--nuppdoc-admonition-tip:#1a7f37;--nuppdoc-admonition-warning:#9a6700;--nuppdoc-admonition-danger:#cf222e}
.nuppdoc-admonition{--nuppdoc-admonition-color:var(--nuppdoc-admonition-note);margin:1.25rem 0;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--nuppdoc-admonition-color) 45%,var(--nuppdoc-border));border-left:4px solid var(--nuppdoc-admonition-color);border-radius:8px;background:color-mix(in srgb,var(--nuppdoc-admonition-color) 9%,var(--nuppdoc-background))}.nuppdoc-admonition-info{--nuppdoc-admonition-color:var(--nuppdoc-admonition-info)}.nuppdoc-admonition-tip{--nuppdoc-admonition-color:var(--nuppdoc-admonition-tip)}.nuppdoc-admonition-warning{--nuppdoc-admonition-color:var(--nuppdoc-admonition-warning)}.nuppdoc-admonition-danger{--nuppdoc-admonition-color:var(--nuppdoc-admonition-danger)}.nuppdoc-admonition-title{margin:0;color:var(--nuppdoc-admonition-color);font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.nuppdoc-admonition-body>:first-child{margin-top:.35rem}.nuppdoc-admonition-body>:last-child{margin-bottom:0}
.nuppdoc-code-group{position:relative;display:flex;overflow:hidden;flex-wrap:wrap;margin:1.25rem 0;border:1px solid var(--nuppdoc-border);border-radius:var(--nuppdoc-code-block-radius);background:var(--nuppdoc-code-background);box-shadow:none}.nuppdoc-code-tab-input{position:absolute;width:1px;height:1px;margin:0;padding:0;border:0;opacity:0;appearance:none;clip-path:inset(50%);pointer-events:none;-webkit-appearance:none}.nuppdoc-code-tab{order:-1;padding:var(--nuppdoc-code-tab-padding);border-bottom:2px solid transparent;color:var(--nuppdoc-code-tab-text);cursor:pointer;font-family:var(--nuppdoc-font);font-size:var(--nuppdoc-code-tab-font-size);font-weight:var(--nuppdoc-code-tab-font-weight)}.nuppdoc-code-tab:hover{color:var(--nuppdoc-code-tab-hover-text)}.nuppdoc-code-panel{display:none;width:100%;margin:0;border-top:1px solid var(--nuppdoc-code-tab-divider)}.nuppdoc-code-tab-input:checked+.nuppdoc-code-tab+.nuppdoc-code-panel{display:block}.nuppdoc-code-tab-input:checked+.nuppdoc-code-tab{border-bottom-color:var(--nuppdoc-code-tab-active-bar);color:var(--nuppdoc-code-tab-active-text)}.nuppdoc-code-tab-input:focus-visible+.nuppdoc-code-tab{outline:2px solid var(--nuppdoc-accent);outline-offset:-2px}.nuppdoc-code-group>.nuppdoc-code-block{width:100%}.nuppdoc-code-group>.nuppdoc-code-block pre,.nuppdoc-code-panel .nuppdoc-code-block pre{margin:0;border:0;border-radius:0}.nuppdoc-labeled-code{margin:1.25rem 0}.nuppdoc-code-group>.nuppdoc-labeled-code{margin:0}.nuppdoc-code-group>.nuppdoc-labeled-code+.nuppdoc-labeled-code{border-top:1px solid var(--nuppdoc-border)}.nuppdoc-labeled-code figcaption{padding:.45rem .6rem;color:var(--nuppdoc-text-muted);font-family:var(--nuppdoc-font);font-size:.72rem;font-weight:600}.nuppdoc-labeled-code pre{margin:0;border-radius:0}.nuppdoc-code-group>.nuppdoc-labeled-code pre{border:0}@media print{.nuppdoc-code-panel{display:block}}
/* The gutter and the code are siblings sharing the pre's line box metrics, so the
 * numbers stay level with their lines. The code scrolls inside itself, which keeps
 * a long line from sliding out under the numbers. */
.nuppdoc-code-block.has-line-numbers pre{display:flex;overflow:hidden;gap:.9rem}
.nuppdoc-code-block.has-line-numbers pre>code{overflow:auto;flex:1;min-width:0}
.nuppdoc-line-numbers{flex:none;padding-right:.9rem;border-right:1px solid var(--nuppdoc-border);color:var(--nuppdoc-text-faint);font-family:var(--nuppdoc-font-mono);font-size:14px;line-height:1.55;text-align:right;user-select:none;-webkit-user-select:none}
.nuppdoc-line-numbers span{display:block}
/* A Nupp or ```playground fence. Given a height rather than sized to its contents: an
 * iframe cannot measure a document it does not share an origin with, and the
 * editor inside scrolls on its own anyway.
 *
 * Its own border property rather than the prose one. This frame is the outer
 * edge of a stack of panes whose inner edges the playground draws for itself,
 * and at the hairline a body of text wants it was the one line in the picture
 * that disappeared -- most visibly down the left and right, where it stands
 * alone rather than beside a rule the playground drew. The default carries the
 * theme's own border toward its text so any palette gets a visible edge; a site
 * that wants the frame to match the panes exactly sets the property. */
.nuppdoc-playground{display:block;width:100%;height:var(--nuppdoc-playground-height);margin:1.25rem 0;border:1px solid var(--nuppdoc-playground-border);border-radius:var(--nuppdoc-code-block-radius);background:var(--nuppdoc-code-background);color-scheme:normal}
.nuppdoc-code-group>.nuppdoc-playground,.nuppdoc-code-panel>.nuppdoc-playground{margin:0;border:0;border-radius:0}
.nuppdoc-logo{width:auto;height:28px;border-radius:5px}
.nuppdoc-icon-link{display:grid;width:34px;height:34px;place-items:center;padding:0;color:var(--nuppdoc-text-muted);border:0;border-radius:7px;background:transparent;cursor:pointer;text-decoration:none}.nuppdoc-icon-link:hover,.nuppdoc-icon-link[aria-pressed="true"]{color:var(--nuppdoc-text);background:var(--nuppdoc-background-alt)}.nuppdoc-icon-link svg{width:18px;height:18px}.nuppdoc-panel-toggle-right svg{transform:scaleX(-1)}
.nuppdoc-shell{transition:grid-template-columns 160ms ease}.nuppdoc-shell.is-sidebar-collapsed{grid-template-columns:0 minmax(0,1fr) var(--nuppdoc-outline-width)}.nuppdoc-shell.is-outline-collapsed{grid-template-columns:var(--nuppdoc-sidebar-width) minmax(0,1fr) 0}.nuppdoc-shell.is-sidebar-collapsed.is-outline-collapsed{grid-template-columns:0 minmax(0,1fr) 0}.nuppdoc-shell.is-sidebar-collapsed>.nuppdoc-sidebar,.nuppdoc-shell.is-outline-collapsed>.nuppdoc-outline{overflow:hidden;padding-right:0;padding-left:0;border:0;opacity:0;pointer-events:none}
.nuppdoc-sidebar{background:var(--nuppdoc-sidebar-background)}.nuppdoc-sidebar>ul{margin:0;padding:0;list-style:none}.nuppdoc-sidebar li{margin:0;padding:0}.nuppdoc-sidebar-section{margin-top:1.1rem!important;padding-top:1.1rem!important;border-top:1px solid var(--nuppdoc-border)}.nuppdoc-sidebar-section:first-child{margin-top:0!important;padding-top:0!important;border-top:0}.nuppdoc-sidebar-section details{margin:0;padding:0;border:0;background:transparent}.nuppdoc-sidebar-section summary{position:relative;margin:0;padding:.24rem 1.2rem .24rem .55rem;color:var(--nuppdoc-text);font-size:.7rem;font-weight:700;line-height:1.3;cursor:pointer;list-style:none}.nuppdoc-sidebar-section summary::after{position:absolute;top:50%;right:.5rem;width:.36rem;height:.36rem;border-right:1.5px solid var(--nuppdoc-text-faint);border-bottom:1.5px solid var(--nuppdoc-text-faint);content:"";transform:translateY(-50%) rotate(45deg)}.nuppdoc-sidebar-section details:not([open]) summary::after{transform:translateY(-50%) rotate(-45deg)}.nuppdoc-sidebar-section summary::-webkit-details-marker{display:none}.nuppdoc-sidebar-section summary::marker{content:""}.nuppdoc-sidebar-section ul{padding:4px 0 0 .5rem}
.nuppdoc-module-tree{margin:0;padding:4px 0 0 .5rem;list-style:none}.nuppdoc-module-branch>details>summary{color:var(--nuppdoc-text-muted);font-weight:500}.nuppdoc-module-branch>details>summary.nuppdoc-module-branch-link{padding-top:0;padding-bottom:0;padding-left:0}.nuppdoc-module-branch>details>summary>a{padding-right:.2rem}.nuppdoc-module-branch .nuppdoc-module-tree{padding:2px 0 0 .7rem}
.nuppdoc-outline-title{margin:0 0 .75rem;color:var(--nuppdoc-text-muted);font-size:.66rem;font-weight:600}.nuppdoc-outline a[aria-current]{color:var(--nuppdoc-accent)}
.nuppdoc-outline-section details{margin:0;padding:0;border:0;background:transparent}.nuppdoc-outline-section summary{position:relative;margin:0;padding:0 1rem 0 0;cursor:pointer;list-style:none}.nuppdoc-outline-section summary::-webkit-details-marker{display:none}.nuppdoc-outline-section summary::marker{content:""}.nuppdoc-outline-section summary::after{position:absolute;top:50%;right:.15rem;width:.32rem;height:.32rem;border-right:1.5px solid var(--nuppdoc-text-muted);border-bottom:1.5px solid var(--nuppdoc-text-muted);content:"";transform:translateY(-65%) rotate(45deg);transition:transform 120ms ease}.nuppdoc-outline-section details:not([open])>summary::after{transform:translateY(-50%) rotate(-45deg)}.nuppdoc-outline-section details>ol{margin:0;padding:0 0 0 .65rem;border:0;list-style:none}
.nuppdoc-breadcrumbs{margin:0 0 .75rem}.nuppdoc-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none}.nuppdoc-breadcrumbs li{display:inline-flex;align-items:center;margin:0;padding:0;color:var(--nuppdoc-text-faint);font-size:.82rem;line-height:1.2}.nuppdoc-breadcrumbs li+li::before{margin:0 .45rem;color:var(--nuppdoc-border);content:"/"}.nuppdoc-breadcrumbs a{color:var(--nuppdoc-text-faint);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}.nuppdoc-breadcrumbs .nuppdoc-breadcrumb-home{font-size:.9rem;text-decoration:none}.nuppdoc-breadcrumbs [aria-current="page"]{color:var(--nuppdoc-text-muted)}
.nuppdoc-module-summary h3{margin-top:1.65rem;font-size:1rem}.nuppdoc-module-summary table,.nuppdoc-module-modules table{table-layout:fixed}.nuppdoc-module-summary th:first-child{width:28%}.nuppdoc-module-summary th:nth-child(2):not(:last-child){width:19%}.nuppdoc-module-modules th:first-child{width:32%}.nuppdoc-module-summary .nuppdoc-kind-badge{margin-left:0}.nuppdoc-kind-record,.nuppdoc-kind-interface,.nuppdoc-kind-struct,.nuppdoc-kind-type{color:#8250df;border-color:color-mix(in srgb,#8250df 35%,var(--nuppdoc-border));background:color-mix(in srgb,#8250df 12%,var(--nuppdoc-background))}.nuppdoc-kind-variable{color:#9a6700;border-color:color-mix(in srgb,#9a6700 35%,var(--nuppdoc-border));background:color-mix(in srgb,#9a6700 12%,var(--nuppdoc-background))}
.nuppdoc-home-shell{display:block;max-width:none}.nuppdoc-home-content{width:min(calc(100% - 2 * var(--nuppdoc-home-gutter)),var(--nuppdoc-home-width));padding-top:4.5rem}.nuppdoc-home-hero{margin:0 0 4rem}.nuppdoc-hero-main{display:grid;align-items:start;gap:3rem;grid-template-columns:minmax(0,1fr)}.nuppdoc-hero-main.has-image{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)}.nuppdoc-hero-copy{position:relative;z-index:1}.nuppdoc-hero-copy h1{max-width:720px;margin:0;color:var(--nuppdoc-accent);font-size:5.5rem;letter-spacing:-.04em;line-height:.95}.nuppdoc-hero-text{max-width:650px;margin:1.08rem 0 0;color:var(--nuppdoc-text-muted);font-size:1.6rem;line-height:1.35}.nuppdoc-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.nuppdoc-hero-action{display:inline-flex;align-items:center;justify-content:center;padding:.52rem .95rem;border:1px solid transparent;border-radius:16px;font-size:.9rem;font-weight:650;line-height:1;text-decoration:none}.nuppdoc-hero-action.brand{color:var(--nuppdoc-accent-contrast);background:var(--nuppdoc-accent)}.nuppdoc-hero-action.alt{color:var(--nuppdoc-text);border-color:var(--nuppdoc-border);background:var(--nuppdoc-background-alt)}.nuppdoc-hero-image{position:relative;display:grid;align-self:center;place-items:center}.nuppdoc-hero-starburst{position:absolute;width:var(--nuppdoc-hero-glow-size);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--nuppdoc-hero-glow-color) 38%,transparent) 0,color-mix(in srgb,var(--nuppdoc-hero-glow-color) 20%,transparent) 34%,color-mix(in srgb,var(--nuppdoc-hero-glow-color) 8%,transparent) 58%,transparent 76%);filter:blur(var(--nuppdoc-hero-glow-blur));opacity:var(--nuppdoc-hero-glow-opacity)}.nuppdoc-hero-image img{position:relative;z-index:1;width:min(100%,390px);max-height:330px;border-radius:20px;box-shadow:0 24px 70px rgb(0 0 0 / 22%);object-fit:contain}.nuppdoc-features{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2rem}.nuppdoc-feature{margin:0;padding:1.4rem;border:1px solid var(--nuppdoc-border);border-radius:12px;background:var(--nuppdoc-background-alt)}.nuppdoc-feature-icon,.nuppdoc-feature-image{display:inline-grid;width:40px;height:40px;place-items:center;margin-bottom:1rem;border-radius:8px;background:var(--nuppdoc-accent-soft);font-size:1.25rem;object-fit:contain}.nuppdoc-feature h2{margin:0 0 .55rem;padding:0;border:0;font-size:1rem;letter-spacing:0}.nuppdoc-feature-details{margin:0;color:var(--nuppdoc-text-muted);font-size:.86rem;line-height:1.55}.nuppdoc-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem}.nuppdoc-footer a{color:var(--nuppdoc-text-muted)}
.nuppdoc-hero-starburst{overflow:hidden;clip-path:circle(50% at 50% 50%)}.nuppdoc-hero-image img{box-shadow:none;filter:drop-shadow(0 24px 35px rgb(0 0 0 / 22%))}
@media(max-width:1100px){.nuppdoc-panel-toggle-right{display:none}.nuppdoc-shell.is-sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.nuppdoc-features{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nuppdoc-search-button{display:inline-flex;width:min(190px,18vw);min-width:0;min-height:32px;align-items:center;justify-content:flex-start;gap:.35rem;margin:0;padding:.25rem .5rem;color:var(--nuppdoc-text-muted);border:1px solid var(--nuppdoc-border);border-radius:6px;background:var(--nuppdoc-background-alt);box-shadow:none;font-size:.76rem;cursor:pointer}.nuppdoc-search-button:hover{color:var(--nuppdoc-text);border-color:var(--nuppdoc-text-muted)}.nuppdoc-search-button kbd{margin-left:auto;padding:.06rem .28rem;color:var(--nuppdoc-text-muted);border:1px solid var(--nuppdoc-border);border-radius:4px;background:transparent;font-size:.62rem}.nuppdoc-search-dialog{width:min(94vw,680px);max-width:none;padding:0;border:1px solid var(--nuppdoc-border);border-radius:12px;background:var(--nuppdoc-background);color:var(--nuppdoc-text);box-shadow:0 24px 80px rgb(0 0 0 / 28%)}.nuppdoc-search-dialog::backdrop{background:rgb(0 0 0 / 46%);backdrop-filter:blur(3px)}.nuppdoc-search-panel{margin:0;padding:0}.nuppdoc-search-panel>header{display:flex;align-items:center;gap:.65rem;margin:0;padding:.8rem;border-bottom:1px solid var(--nuppdoc-border);background:transparent}.nuppdoc-search-panel label{display:flex;flex:1;align-items:center;gap:.5rem;margin:0}.nuppdoc-search-panel input{width:100%;height:42px;margin:0;padding:0 .75rem;color:var(--nuppdoc-text);border:1px solid var(--nuppdoc-accent);border-radius:7px;background:var(--nuppdoc-background);box-shadow:0 0 0 3px var(--nuppdoc-accent-soft)}.nuppdoc-search-panel [data-nuppdoc-search-close]{width:auto;margin:0;padding:.32rem .5rem;color:var(--nuppdoc-text-muted);border:1px solid var(--nuppdoc-border);border-radius:5px;background:var(--nuppdoc-background-alt);box-shadow:none;font-size:.72rem;cursor:pointer}.nuppdoc-search-results{display:grid;overflow:auto;max-height:min(60vh,520px);gap:.35rem;padding:.65rem}.nuppdoc-search-results a{display:grid;gap:.15rem;padding:.7rem .8rem;color:var(--nuppdoc-text);border:1px solid transparent;border-radius:7px;text-decoration:none}.nuppdoc-search-results a:hover,.nuppdoc-search-results a:focus{border-color:var(--nuppdoc-border);background:var(--nuppdoc-accent-soft)}.nuppdoc-search-results strong{font-size:.9rem}.nuppdoc-search-results small{overflow:hidden;color:var(--nuppdoc-text-faint);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.nuppdoc-search-empty{margin:0;padding:1.5rem;color:var(--nuppdoc-text-muted);text-align:center}
.nuppdoc-mobile-nav-toggle,.nuppdoc-sidebar-backdrop{display:none}.nuppdoc-page-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--nuppdoc-border)}.nuppdoc-page-nav a{display:flex;flex-direction:column;padding:1rem;color:var(--nuppdoc-text);border:1px solid var(--nuppdoc-border);border-radius:10px;text-decoration:none}.nuppdoc-page-nav a:hover{border-color:var(--nuppdoc-accent);background:var(--nuppdoc-background-alt)}.nuppdoc-page-nav-next{grid-column:2;text-align:right}.nuppdoc-page-nav-label{color:var(--nuppdoc-text-faint);font-size:.68rem;font-weight:650;text-transform:uppercase;letter-spacing:.05em}.nuppdoc-page-nav-title{color:var(--nuppdoc-accent);font-size:.85rem;font-weight:650}
@media(max-width:760px){.nuppdoc-panel-toggle{display:none}.nuppdoc-mobile-nav-toggle{display:grid}.nuppdoc-search-button span:nth-child(2),.nuppdoc-search-button kbd{display:none}.nuppdoc-search-button{width:34px;justify-content:center}.nuppdoc-home-content{width:auto;padding:3rem 1.25rem 4rem}.nuppdoc-hero-copy h1{font-size:4rem}.nuppdoc-hero-text{font-size:1.2rem}.nuppdoc-hero-main.has-image{grid-template-columns:1fr}.nuppdoc-hero-starburst{width:min(78vw,340px)}.nuppdoc-features{grid-template-columns:1fr}.nuppdoc-sidebar,.nuppdoc-shell.is-sidebar-collapsed>.nuppdoc-sidebar{position:fixed;z-index:42;top:var(--nuppdoc-header-height);bottom:0;left:0;width:min(86vw,var(--nuppdoc-sidebar-width));max-height:none;padding:1.25rem 1rem 2rem;border-right:1px solid var(--nuppdoc-border);border-bottom:0;box-shadow:0 10px 30px rgba(0,0,0,.2);opacity:1;pointer-events:auto;transform:translateX(-105%);transition:transform 180ms ease}.nuppdoc-sidebar>ul{display:block;overflow:visible}.nuppdoc-sidebar-section ul{display:block;overflow:visible}.is-mobile-nav-open .nuppdoc-sidebar{transform:translateX(0)}.nuppdoc-sidebar-backdrop{position:fixed;z-index:41;inset:var(--nuppdoc-header-height) 0 0;display:block;width:100%;height:auto;padding:0;border:0;background:rgba(0,0,0,.38);opacity:0;pointer-events:none;transition:opacity 180ms ease}.is-mobile-nav-open .nuppdoc-sidebar-backdrop{opacity:1;pointer-events:auto}.is-mobile-nav-open{overflow:hidden}.nuppdoc-page-nav{grid-template-columns:1fr}.nuppdoc-page-nav-next{grid-column:1}}

:root {
  --nupp-woodblock-vermilion: #a74732;
  --nupp-woodblock-vermilion-hover: #8d3829;
  --nuppdoc-light-accent: #176b8a;
  --nuppdoc-light-accent-hover: #0e526d;
  --nuppdoc-light-accent-soft: #dcebf0;
  --nuppdoc-light-background: #faf7e8;
  --nuppdoc-light-background-alt: #f2eed8;
  --nuppdoc-light-border: #d4cda8;
  --nuppdoc-light-code-background: #ded7b9;
  --nuppdoc-light-text: #173333;
  --nuppdoc-light-muted: #626956;
  --nuppdoc-dark-accent: #72b6d0;
  --nuppdoc-dark-accent-hover: #9ed2e3;
  --nuppdoc-dark-accent-soft: #183c4a;
  --nuppdoc-dark-background: #081e27;
  --nuppdoc-dark-background-alt: #0d2931;
  --nuppdoc-dark-border: #2b4943;
  --nuppdoc-dark-code-background: #0a252b;
  --nuppdoc-dark-text: #f4f3ed;
  --nuppdoc-dark-muted: #b9c0b8;
  --nuppdoc-accent-contrast: #ffffff;
  --nuppdoc-feature-heading: var(--nuppdoc-syntax-number);
  --nuppdoc-playground-border: #9d8e5e;
  --nuppdoc-hero-glow-color: var(--nupp-woodblock-vermilion);
  --nuppdoc-syntax-boolean: #8c5f22;
  --nuppdoc-syntax-comment: #7b806a;
  --nuppdoc-syntax-function: #1b5670;
  --nuppdoc-syntax-keyword: #765128;
  --nuppdoc-syntax-meta: #315f58;
  --nuppdoc-syntax-number: #8c5f22;
  --nuppdoc-syntax-operator: #315f58;
  --nuppdoc-syntax-property: #506942;
  --nuppdoc-syntax-punctuation: #66725d;
  --nuppdoc-syntax-string: #607331;
  --nuppdoc-syntax-type: #315f58;
  --nuppdoc-syntax-variable: #173333;
}

.nuppdoc-hero-action.brand,
.nuppdoc-hero-action.brand:hover {
  color: #ffffff;
  background: var(--nupp-woodblock-vermilion);
}

.nuppdoc-hero-action.brand:hover {
  background: var(--nupp-woodblock-vermilion-hover);
}

.nuppdoc-hero-action {
  min-height: 44px;
  padding: 0.75rem 1.35rem;
}

.nuppdoc-hero-text {
  font-weight: 700;
}

.nuppdoc-hero-content {
  max-width: 40rem;
  margin: 0.85rem 0 0;
  color: var(--nuppdoc-text-muted);
  font-size: 1.08rem;
}

/* The playground follows the hero directly, so it does not need the regular
 * section rule or the large gap used by lower-priority homepage sections. */
.nuppdoc-home-hero {
  margin-bottom: 1.5rem;
}

.nuppdoc-home-hero + h2 {
  margin: 0 0 1rem;
  padding: 0;
  border: 0;
}

/* Let the Nuppeppo illustration dissolve into the page instead of ending at a
 * hard image boundary. The PNG is square, so the clipped mask stays circular. */
.nuppdoc-hero-image img {
  width: min(85%, 332px);
  border-radius: 50%;
  clip-path: circle(50% at center);
  filter: drop-shadow(0 22px 30px rgb(23 51 51 / 16%));
  -webkit-mask-image: radial-gradient(
    circle closest-side at center,
    #000 0 64%,
    rgb(0 0 0 / 82%) 76%,
    rgb(0 0 0 / 32%) 88%,
    transparent 100%
  );
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-image: radial-gradient(
    circle closest-side at center,
    #000 0 64%,
    rgb(0 0 0 / 82%) 76%,
    rgb(0 0 0 / 32%) 88%,
    transparent 100%
  );
  mask-repeat: no-repeat;
  mask-size: 100% 100%;
}

.nuppdoc-content pre {
  padding: 1rem 1.1rem;
}

/* Match every prose heading to the feature-tour heading color so the amber
 * accent reads as the site's heading color, not a one-off on the homepage. */
.nuppdoc-content h1,
.nuppdoc-content h2,
.nuppdoc-content h3 {
  color: var(--nuppdoc-feature-heading);
}

/* The hero title lives inside .nuppdoc-content too, but it is a brand mark
 * rather than a prose heading, so it keeps its own accent color. The extra
 * ancestor class raises specificity above the rule just above, so this
 * wins outright rather than depending on source-order or rule merging. */
.nuppdoc-home-hero .nuppdoc-hero-copy h1 {
  color: var(--nuppdoc-accent);
}

/* The home page's long-form feature tour keeps every explanation on the left
 * and its code or illustration on the right for a predictable reading rhythm. */
.nuppdoc-feature-showcase {
  display: grid;
  gap: clamp(3.5rem, 9vw, 7rem);
  margin: clamp(4rem, 10vw, 8rem) 0;
}

#nupp-features {
  margin-bottom: 0;
}

#nupp-features + .nuppdoc-feature-showcase {
  margin-top: 1.75rem;
}

.nuppdoc-showcase-feature {
  display: grid;
  align-items: center;
  gap: clamp(2rem, 7vw, 6rem);
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1fr);
}

.nuppdoc-showcase-visual {
  min-width: 0;
  grid-column: 2;
  grid-row: 1;
}

.nuppdoc-showcase-copy {
  grid-column: 1;
  grid-row: 1;
}

.nuppdoc-showcase-visual pre {
  margin: 0;
  padding: 1.2rem 1.35rem;
  border-radius: 14px;
  box-shadow: 0 18px 46px rgb(23 51 51 / 11%);
}

.nuppdoc-showcase-visual img {
  display: block;
  width: 100%;
  border-radius: 14px;
}

.nuppdoc-showcase-icon {
  display: grid;
  min-height: 13rem;
  place-items: center;
  color: var(--nuppdoc-accent);
  border: 1px solid var(--nuppdoc-border);
  border-radius: 14px;
  background: var(--nuppdoc-background-alt);
  font-size: 4rem;
}

.nuppdoc-showcase-copy h2 {
  margin: 0 0 0.8rem;
  padding: 0;
  border: 0;
  color: var(--nuppdoc-feature-heading);
  font-size: clamp(1.7rem, 3vw, 2.35rem);
  line-height: 1.08;
}

.nuppdoc-showcase-details {
  max-width: 38rem;
  color: var(--nuppdoc-text-muted);
  font-size: 1.04rem;
}

.nuppdoc-showcase-details > :first-child {
  margin-top: 0;
}

.nuppdoc-showcase-details > :last-child {
  margin-bottom: 0;
}

@media (prefers-reduced-motion: no-preference) {
  .nuppdoc-motion-ready .nuppdoc-showcase-feature {
    opacity: 0;
    transform: translateY(28px);
    transition: opacity 620ms ease, transform 620ms ease;
  }

  .nuppdoc-motion-ready .nuppdoc-showcase-feature.is-visible {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 760px) {
  .nuppdoc-showcase-feature,
  .nuppdoc-showcase-feature:nth-child(even) {
    grid-template-columns: 1fr;
  }

  .nuppdoc-showcase-visual,
  .nuppdoc-showcase-copy {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --nuppdoc-playground-border: #3a7a6f;
    --nuppdoc-syntax-boolean: #d7a45a;
    --nuppdoc-syntax-comment: #718c87;
    --nuppdoc-syntax-function: #79aabe;
    --nuppdoc-syntax-keyword: #d7bd72;
    --nuppdoc-syntax-meta: #9fba83;
    --nuppdoc-syntax-number: #d7a45a;
    --nuppdoc-syntax-operator: #93b7ac;
    --nuppdoc-syntax-property: #a5bc7b;
    --nuppdoc-syntax-punctuation: #9eaa91;
    --nuppdoc-syntax-string: #bec98c;
    --nuppdoc-syntax-type: #9fba83;
    --nuppdoc-syntax-variable: #e5dfb7;
  }
}

:root[data-theme="dark"] {
  --nuppdoc-playground-border: #3a7a6f;
  --nuppdoc-syntax-boolean: #d7a45a;
  --nuppdoc-syntax-comment: #718c87;
  --nuppdoc-syntax-function: #79aabe;
  --nuppdoc-syntax-keyword: #d7bd72;
  --nuppdoc-syntax-meta: #9fba83;
  --nuppdoc-syntax-number: #d7a45a;
  --nuppdoc-syntax-operator: #93b7ac;
  --nuppdoc-syntax-property: #a5bc7b;
  --nuppdoc-syntax-punctuation: #9eaa91;
  --nuppdoc-syntax-string: #bec98c;
  --nuppdoc-syntax-type: #9fba83;
  --nuppdoc-syntax-variable: #e5dfb7;
}

:root[data-theme="light"] {
  --nuppdoc-playground-border: #9d8e5e;
  --nuppdoc-syntax-boolean: #8c5f22;
  --nuppdoc-syntax-comment: #7b806a;
  --nuppdoc-syntax-function: #1b5670;
  --nuppdoc-syntax-keyword: #765128;
  --nuppdoc-syntax-meta: #315f58;
  --nuppdoc-syntax-number: #8c5f22;
  --nuppdoc-syntax-operator: #315f58;
  --nuppdoc-syntax-property: #506942;
  --nuppdoc-syntax-punctuation: #66725d;
  --nuppdoc-syntax-string: #607331;
  --nuppdoc-syntax-type: #315f58;
  --nuppdoc-syntax-variable: #173333;
}
