kss-modern 1.2.0-beta.5 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/node/lib/index.mjs +18 -13
- package/dist/node/lib/pug/worker.mjs +1 -1
- package/dist/node/shared/{kss-modern.D8n3gEE1.mjs → kss-modern.B6jgUPtu.mjs} +7 -1
- package/dist/styleguide-assets/.vite/manifest.json +5 -4
- package/dist/styleguide-assets/fullpage-CGBSSxKh.js +332 -0
- package/dist/styleguide-assets/kss-modern-3dYdkdaU.css +3 -0
- package/dist/styleguide-assets/preview-B-NERQ5n.js +1138 -0
- package/package.json +2 -1
- package/dist/styleguide-assets/fullpage-CzaJFxfS.js +0 -177
- package/dist/styleguide-assets/kss-modern-DW2ZdZvd.css +0 -3
- package/dist/styleguide-assets/preview-ChQyjhUb.js +0 -680
package/dist/node/lib/index.mjs
CHANGED
|
@@ -3,8 +3,8 @@ import process from 'node:process';
|
|
|
3
3
|
import { fileURLToPath } from 'node:url';
|
|
4
4
|
import fs from 'fs-extra';
|
|
5
5
|
import { glob } from 'tinyglobby';
|
|
6
|
-
import { l as logger, s as sanitizeSpecialCharacters, I as INSERT_VITE_PUG_TAG_RE, P as PUG_SRC_RE, a as PUG_ERROR_OVERLAY_TAG, c as compileMarkup, p as pugErrorFile, b as
|
|
7
|
-
export {
|
|
6
|
+
import { l as logger, s as sanitizeSpecialCharacters, I as INSERT_VITE_PUG_TAG_RE, P as PUG_SRC_RE, a as PUG_ERROR_OVERLAY_TAG, c as compileMarkup, p as pugErrorFile, b as slugify, d as sectionSanitizeId, e as stripPugErrorOverlay, f as ensureStartingSlash, g as generateId, r as replaceWrapperContent, h as htmlToSearchText } from '../shared/kss-modern.B6jgUPtu.mjs';
|
|
7
|
+
export { i as createLogger } from '../shared/kss-modern.B6jgUPtu.mjs';
|
|
8
8
|
import htmlLang from '@shikijs/langs/html';
|
|
9
9
|
import markdownLang from '@shikijs/langs/markdown';
|
|
10
10
|
import scssLang from '@shikijs/langs/scss';
|
|
@@ -1252,7 +1252,7 @@ async function generateFullPageFile(data) {
|
|
|
1252
1252
|
<meta name="theme-color" media="(prefers-color-scheme: light)" content="${data.theme.light}">
|
|
1253
1253
|
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="${data.theme.dark}">
|
|
1254
1254
|
` : `<meta name="theme-color" content="${data.theme}">`}
|
|
1255
|
-
<script type="module" src="/styleguide-assets/fullpage-
|
|
1255
|
+
<script type="module" src="/styleguide-assets/fullpage-CGBSSxKh.js"><\/script>
|
|
1256
1256
|
${computedStyleTags}
|
|
1257
1257
|
</head>
|
|
1258
1258
|
<body${data.page.bodyclass ? ` class="${data.page.bodyclass}"` : ""}>
|
|
@@ -1952,10 +1952,11 @@ function getNextPageControlsHtml(data) {
|
|
|
1952
1952
|
</nav>
|
|
1953
1953
|
`.trim();
|
|
1954
1954
|
}
|
|
1955
|
-
function getSearchHtml(sections) {
|
|
1955
|
+
function getSearchHtml(projectTitle, sections) {
|
|
1956
1956
|
return `
|
|
1957
1957
|
<dialog
|
|
1958
1958
|
id="search-dialog"
|
|
1959
|
+
data-project="${slugify(projectTitle)}"
|
|
1959
1960
|
class="fixed inset-0 top-8 z-30 backdrop:hidden -mb-px size-full max-sm:max-h-none open:md:flex open:md:flex-col md:h-auto overflow-y-hidden max-w-none rounded-t-2xl border bg-styleguide-bg border-styleguide-border text-styleguide md:max-w-[720px] md:top-12 md:max-h-[calc(100%-5rem)] md:bottom-auto md:left-1/2 md:-translate-x-1/2 md:rounded-2xl mx-0 lg:top-24 lg:max-h-[calc(100%-8rem)]"
|
|
1960
1961
|
>
|
|
1961
1962
|
<h2 class="sr-only">Search</h2>
|
|
@@ -1996,7 +1997,7 @@ function getSearchHtml(sections) {
|
|
|
1996
1997
|
>
|
|
1997
1998
|
${sections.map((section, categoryIdx) => `
|
|
1998
1999
|
<div class="search-category" id="search-category-${categoryIdx}" data-category-index="${categoryIdx}">
|
|
1999
|
-
<h3 class="mb-
|
|
2000
|
+
<h3 class="mb-1.5 px-1.5 text-xs font-medium tracking-wider uppercase opacity-60">${section.title}</h3>
|
|
2000
2001
|
<ul>
|
|
2001
2002
|
${section.items.map((item, itemIdx) => `
|
|
2002
2003
|
<li
|
|
@@ -2011,11 +2012,13 @@ function getSearchHtml(sections) {
|
|
|
2011
2012
|
href="${item.href}"
|
|
2012
2013
|
tabindex="-1"
|
|
2013
2014
|
>
|
|
2014
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="transition-all size-5 group-hover:translate-x-0.5 group-focus:translate-x-0.5">
|
|
2015
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="transition-all size-5 shrink-0 group-hover:translate-x-0.5 group-focus:translate-x-0.5">
|
|
2015
2016
|
<path fill-rule="evenodd" d="M3 10a.75.75 0 0 1 .75-.75h10.638L10.23 5.29a.75.75 0 1 1 1.04-1.08l5.5 5.25a.75.75 0 0 1 0 1.08l-5.5 5.25a.75.75 0 1 1-1.04-1.08l4.158-3.96H3.75A.75.75 0 0 1 3 10Z" clip-rule="evenodd" />
|
|
2016
2017
|
</svg>
|
|
2017
|
-
<span class="
|
|
2018
|
-
|
|
2018
|
+
<span class="grid min-w-0 gap-0.5">
|
|
2019
|
+
<span data-search-label class="text-styleguide-highlight">${item.label}</span>
|
|
2020
|
+
<span data-type="search-hint" class="truncate text-[13px] text-styleguide"></span>
|
|
2021
|
+
</span>
|
|
2019
2022
|
</a>
|
|
2020
2023
|
</li>
|
|
2021
2024
|
`).join("\n")}
|
|
@@ -2056,7 +2059,7 @@ async function generatePreviewFile(data) {
|
|
|
2056
2059
|
<meta name="theme-color" media="(prefers-color-scheme: light)" content="${data.theme.light}">
|
|
2057
2060
|
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="${data.theme.dark}">
|
|
2058
2061
|
` : `<meta name="theme-color" content="${data.theme}">`}
|
|
2059
|
-
<link rel="stylesheet" type="text/css" href="/styleguide-assets/kss-modern-
|
|
2062
|
+
<link rel="stylesheet" type="text/css" href="/styleguide-assets/kss-modern-3dYdkdaU.css">
|
|
2060
2063
|
<script>
|
|
2061
2064
|
//#region client/lib/iframe-resize.ts
|
|
2062
2065
|
var e = [
|
|
@@ -2209,7 +2212,7 @@ document.addEventListener("DOMContentLoaded", () => {
|
|
|
2209
2212
|
//#endregion
|
|
2210
2213
|
;
|
|
2211
2214
|
<\/script>
|
|
2212
|
-
<script type="module" src="/styleguide-assets/preview-
|
|
2215
|
+
<script type="module" src="/styleguide-assets/preview-B-NERQ5n.js"><\/script>
|
|
2213
2216
|
<link rel="preload" href="/styleguide-assets/fonts/geist-mono-latin-400-normal.woff2" as="font" type="font/woff2" crossorigin="anonymous">
|
|
2214
2217
|
<link rel="preload" href="/styleguide-assets/fonts/geist-mono-latin-600-normal.woff2" as="font" type="font/woff2" crossorigin="anonymous">
|
|
2215
2218
|
<link rel="preload" href="/styleguide-assets/fonts/geist-mono-latin-300-normal.woff2" as="font" type="font/woff2" crossorigin="anonymous">
|
|
@@ -2394,12 +2397,14 @@ function buildNavigationMappings(parsedContent) {
|
|
|
2394
2397
|
label: secondLevelSection.header,
|
|
2395
2398
|
searchKeywords: [
|
|
2396
2399
|
{
|
|
2397
|
-
|
|
2400
|
+
// header is plain text; description is rendered-markdown HTML, so strip it to plain text
|
|
2401
|
+
// before indexing — otherwise queries would match tag names and the hint would show markup.
|
|
2402
|
+
keywords: [secondLevelSection.header, htmlToSearchText(secondLevelSection.description)].filter(Boolean)
|
|
2398
2403
|
},
|
|
2399
2404
|
...secondLevelSection.sections.flatMap((thirdLevelSection) => {
|
|
2400
2405
|
return {
|
|
2401
2406
|
id: sectionSanitizeId(`section-${thirdLevelSection.id}`),
|
|
2402
|
-
keywords: [thirdLevelSection.header, thirdLevelSection.description].filter(Boolean)
|
|
2407
|
+
keywords: [thirdLevelSection.header, htmlToSearchText(thirdLevelSection.description)].filter(Boolean)
|
|
2403
2408
|
};
|
|
2404
2409
|
})
|
|
2405
2410
|
],
|
|
@@ -2556,7 +2561,7 @@ async function buildContext(config) {
|
|
|
2556
2561
|
}
|
|
2557
2562
|
const { searchSectionMapping, menuSectionMapping } = buildNavigationMappings(parsedContent);
|
|
2558
2563
|
const headerHtml = getHeaderHtml(config);
|
|
2559
|
-
const searchHtml = getSearchHtml(searchSectionMapping);
|
|
2564
|
+
const searchHtml = getSearchHtml(config.projectTitle, searchSectionMapping);
|
|
2560
2565
|
return {
|
|
2561
2566
|
baseDirectory,
|
|
2562
2567
|
parsedContent,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { parentPort } from 'node:worker_threads';
|
|
2
|
-
import { c as compileMarkup, p as pugErrorFile } from '../../shared/kss-modern.
|
|
2
|
+
import { c as compileMarkup, p as pugErrorFile } from '../../shared/kss-modern.B6jgUPtu.mjs';
|
|
3
3
|
import 'node:fs';
|
|
4
4
|
import 'node:fs/promises';
|
|
5
5
|
import 'node:path';
|
|
@@ -67,6 +67,12 @@ function fixAccessibilityIssues(html) {
|
|
|
67
67
|
function sanitizeSpecialCharacters(text) {
|
|
68
68
|
return text.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll('"', """).replaceAll("'", "'");
|
|
69
69
|
}
|
|
70
|
+
function htmlToSearchText(html) {
|
|
71
|
+
return html.replace(/<[^>]+>/g, " ").replaceAll(" ", " ").replaceAll("<", "<").replaceAll(">", ">").replaceAll(""", '"').replaceAll("'", "'").replaceAll("'", "'").replaceAll("&", "&").replace(/\s+/g, " ").trim();
|
|
72
|
+
}
|
|
73
|
+
function slugify(text) {
|
|
74
|
+
return text.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
|
|
75
|
+
}
|
|
70
76
|
function ensureStartingSlash(input) {
|
|
71
77
|
return input.startsWith("/") ? input : `/${input}`;
|
|
72
78
|
}
|
|
@@ -242,4 +248,4 @@ async function compileMarkup(contentDir, mode, html, sectionId) {
|
|
|
242
248
|
return { html: result, dependencies: [...new Set(dependencies)] };
|
|
243
249
|
}
|
|
244
250
|
|
|
245
|
-
export { INSERT_VITE_PUG_TAG_RE as I, PUG_SRC_RE as P, PUG_ERROR_OVERLAY_TAG as a,
|
|
251
|
+
export { INSERT_VITE_PUG_TAG_RE as I, PUG_SRC_RE as P, PUG_ERROR_OVERLAY_TAG as a, slugify as b, compileMarkup as c, sectionSanitizeId as d, stripPugErrorOverlay as e, ensureStartingSlash as f, generateId as g, htmlToSearchText as h, createLogger as i, logger as l, pugErrorFile as p, replaceWrapperContent as r, sanitizeSpecialCharacters as s };
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"name": "utils"
|
|
25
25
|
},
|
|
26
26
|
"client/fullpage.ts": {
|
|
27
|
-
"file": "fullpage-
|
|
27
|
+
"file": "fullpage-CGBSSxKh.js",
|
|
28
28
|
"name": "fullpage",
|
|
29
29
|
"src": "client/fullpage.ts",
|
|
30
30
|
"isEntry": true,
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"isEntry": true
|
|
83
83
|
},
|
|
84
84
|
"client/preview.ts": {
|
|
85
|
-
"file": "preview-
|
|
85
|
+
"file": "preview-B-NERQ5n.js",
|
|
86
86
|
"name": "preview",
|
|
87
87
|
"src": "client/preview.ts",
|
|
88
88
|
"isEntry": true,
|
|
@@ -90,7 +90,8 @@
|
|
|
90
90
|
"_animate-DRGZltJ3.js",
|
|
91
91
|
"_code-highlight-BygtMiLu.js",
|
|
92
92
|
"_signal-ZVBNTRLw.js",
|
|
93
|
-
"_utils-DrMb1LbR.js"
|
|
93
|
+
"_utils-DrMb1LbR.js",
|
|
94
|
+
"_shared-hGcWlnRM.js"
|
|
94
95
|
],
|
|
95
96
|
"dynamicImports": [
|
|
96
97
|
"client/lib/html-validator.ts",
|
|
@@ -118,7 +119,7 @@
|
|
|
118
119
|
]
|
|
119
120
|
},
|
|
120
121
|
"style.css": {
|
|
121
|
-
"file": "kss-modern-
|
|
122
|
+
"file": "kss-modern-3dYdkdaU.css",
|
|
122
123
|
"src": "style.css"
|
|
123
124
|
}
|
|
124
125
|
}
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
import { a as e } from "./rolldown-runtime-B1bRi_D7.js";
|
|
2
|
+
import { r as t, t as n } from "./shared-hGcWlnRM.js";
|
|
3
|
+
//#region client/lib/pug-error-overlay.ts
|
|
4
|
+
var r = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"#f43f5e\" style=\"width:15px;height:15px;flex:none\" aria-hidden=\"true\"><path fill-rule=\"evenodd\" d=\"M8.485 2.495c.673-1.167 2.357-1.167 3.03 0l6.28 10.875c.673 1.167-.17 2.625-1.516 2.625H3.72c-1.347 0-2.189-1.458-1.515-2.625L8.485 2.495ZM10 5a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 10 5Zm0 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z\" clip-rule=\"evenodd\" /></svg>", i = "\n *{box-sizing:border-box}\n :host{display:block}\n :host([data-empty]){min-height:320px}\n .eo-pop{position:fixed;inset:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:28px;background:rgba(0,0,0,.66);backdrop-filter:blur(3px);align-items:flex-start;justify-content:center;overflow:auto;font-family:ui-sans-serif,system-ui,-apple-system,\"Segoe UI\",Roboto,sans-serif}\n .eo-pop:popover-open,.eo-pop[data-fallback]{display:flex}\n .eo-pop[data-fallback]{z-index:2147483647}\n .eo-card{max-width:820px;width:100%;height:fit-content;padding:18px 20px 20px;border:1px solid #2a2a30;border-radius:14px;background:#161618;box-shadow:0 20px 60px -16px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.02);color:#e4e4e7;line-height:1.5;text-align:left}\n .eo-top{display:flex;align-items:center;justify-content:space-between;gap:12px}\n .eo-badge{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:#fb7185;background:rgba(244,63,94,.1);border:1px solid rgba(244,63,94,.24);border-radius:7px;padding:4px 9px}\n .eo-copy{font:inherit;font-size:12px;color:#a1a1aa;background:#1f1f23;border:1px solid #2e2e35;border-radius:7px;padding:5px 11px;cursor:pointer;transition:color .15s,border-color .15s}\n .eo-copy:hover{color:#fafafa;border-color:#3f3f47}\n .eo-copy:active{transform:translateY(1px)}\n .eo-title{margin:15px 0 0;font-size:16px;font-weight:600;color:#fafafa;white-space:pre-wrap;word-break:break-word}\n .eo-desc{margin:7px 0 0;font-size:13.5px;color:#a1a1aa}\n .eo-chip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;background:#27272a;border-radius:5px;padding:1px 6px;color:#e4e4e7}\n .eo-frame{margin:17px 0 0;border:1px solid #26262b;border-radius:10px;overflow:hidden;background:#0c0c0e}\n .eo-frame-head{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:9px 13px;border-bottom:1px solid #1e1e22;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.4}\n .eo-fh-file{color:#d4d4d8}\n .eo-fh-loc{color:#71717a}\n .eo-fh-ctx{color:#71717a}\n .eo-code{overflow-x:auto;padding:8px 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.6;--num-w:2ch}\n .eo-lines{display:inline-block;min-width:100%}\n .eo-row{display:flex}\n .eo-row.err{background:rgba(244,63,94,.1)}\n .ln{position:sticky;left:0;z-index:1;flex:none;display:flex;align-items:center;justify-content:flex-end;gap:5px;padding:0 16px 0 12px;background:#0c0c0e;color:#52525b;user-select:none}\n .eo-row.err .ln{background:#19090d;color:#fb7185;box-shadow:inset 2px 0 0 0 #f43f5e}\n .chev{width:7px;font-weight:700;color:#f43f5e}\n .num{min-width:var(--num-w);text-align:right}\n .lc{flex:none;white-space:pre;padding-right:18px;color:#e4e4e7}\n .eo-row.caret .lc{color:#f43f5e;font-weight:700}\n .eo-file{margin:14px 0 0;font-size:12.5px;color:#a1a1aa;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}\n .eo-raw{margin:14px 0 0;padding:12px 14px;background:#0c0c0e;border:1px solid #26262b;border-radius:10px;max-height:360px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;color:#f4f4f5;white-space:pre}\n .tk-tag{color:#7dd3fc}\n .tk-kw{color:#c4b5fd}\n .tk-sel{color:#5eead4}\n .tk-str{color:#a5d6a7}\n .tk-com{color:#6b7280;font-style:italic}\n", a = /* @__PURE__ */ new Set([
|
|
5
|
+
"if",
|
|
6
|
+
"else",
|
|
7
|
+
"each",
|
|
8
|
+
"for",
|
|
9
|
+
"while",
|
|
10
|
+
"case",
|
|
11
|
+
"when",
|
|
12
|
+
"default",
|
|
13
|
+
"unless",
|
|
14
|
+
"block",
|
|
15
|
+
"extends",
|
|
16
|
+
"include",
|
|
17
|
+
"mixin",
|
|
18
|
+
"append",
|
|
19
|
+
"prepend",
|
|
20
|
+
"yield",
|
|
21
|
+
"in"
|
|
22
|
+
]), o = /^(\s*(?:>\s*)?)(\d+)\| ?(.*)$/, s = /^[\s-]*\^\s*$/, c = /^(.*?):(\d+)(?::(\d+))?\s*$/;
|
|
23
|
+
function l(e) {
|
|
24
|
+
let t = {
|
|
25
|
+
file: null,
|
|
26
|
+
line: null,
|
|
27
|
+
column: null,
|
|
28
|
+
frame: [],
|
|
29
|
+
summary: ""
|
|
30
|
+
};
|
|
31
|
+
if (!e) return t;
|
|
32
|
+
let n = e.split("\n"), r = 0, i = (n[0] ?? "").replace(/^\w*Error:\s*/, ""), a = i.includes("|") ? null : i.match(c);
|
|
33
|
+
a && (t.file = a[1] || null, t.line = Number(a[2]), t.column = a[3] ? Number(a[3]) : null, r = 1);
|
|
34
|
+
let l = [], u = !1;
|
|
35
|
+
for (let e = r; e < n.length; e++) {
|
|
36
|
+
let r = n[e], i = r.match(o);
|
|
37
|
+
if (i) {
|
|
38
|
+
u = !0, t.frame.push({
|
|
39
|
+
num: Number(i[2]),
|
|
40
|
+
text: i[3],
|
|
41
|
+
isError: i[1].includes(">")
|
|
42
|
+
});
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
s.test(r) && r.includes("^") || r.trim() === "" && !u || l.push(r);
|
|
46
|
+
}
|
|
47
|
+
for (; l.length && l[0].trim() === "";) l.shift();
|
|
48
|
+
for (; l.length && l[l.length - 1].trim() === "";) l.pop();
|
|
49
|
+
return t.summary = l.join("\n").trim(), t;
|
|
50
|
+
}
|
|
51
|
+
function u(e, t) {
|
|
52
|
+
let n = "", r = () => {
|
|
53
|
+
n &&= (t.push({ text: n }), "");
|
|
54
|
+
};
|
|
55
|
+
for (let i = 0; i < e.length;) {
|
|
56
|
+
let a = e[i];
|
|
57
|
+
if (a === "\"" || a === "'") {
|
|
58
|
+
r();
|
|
59
|
+
let n = i + 1;
|
|
60
|
+
for (; n < e.length && e[n] !== a;) e[n] === "\\" && n++, n++;
|
|
61
|
+
t.push({
|
|
62
|
+
cls: "tk-str",
|
|
63
|
+
text: e.slice(i, Math.min(n + 1, e.length))
|
|
64
|
+
}), i = n + 1;
|
|
65
|
+
} else if (a === "." || a === "#") {
|
|
66
|
+
let o = e.slice(i).match(/^[.#][\w-]+/);
|
|
67
|
+
o ? (r(), t.push({
|
|
68
|
+
cls: "tk-sel",
|
|
69
|
+
text: o[0]
|
|
70
|
+
}), i += o[0].length) : (n += a, i++);
|
|
71
|
+
} else n += a, i++;
|
|
72
|
+
}
|
|
73
|
+
r();
|
|
74
|
+
}
|
|
75
|
+
function d(e) {
|
|
76
|
+
let t = [], n = e.match(/^\s*/)[0], r = e.slice(n.length);
|
|
77
|
+
if (n && t.push({ text: n }), !r) return t;
|
|
78
|
+
if (r.startsWith("//")) return t.push({
|
|
79
|
+
cls: "tk-com",
|
|
80
|
+
text: r
|
|
81
|
+
}), t;
|
|
82
|
+
let i = r.match(/^[A-Z][\w-]*/i);
|
|
83
|
+
if (i) {
|
|
84
|
+
let e = i[0];
|
|
85
|
+
t.push({
|
|
86
|
+
cls: a.has(e) ? "tk-kw" : "tk-tag",
|
|
87
|
+
text: e
|
|
88
|
+
}), r = r.slice(e.length);
|
|
89
|
+
}
|
|
90
|
+
return u(r, t), t;
|
|
91
|
+
}
|
|
92
|
+
function f(e, t) {
|
|
93
|
+
try {
|
|
94
|
+
for (let n of d(t)) if (n.cls) {
|
|
95
|
+
let t = document.createElement("span");
|
|
96
|
+
t.className = n.cls, t.textContent = n.text, e.appendChild(t);
|
|
97
|
+
} else e.appendChild(document.createTextNode(n.text));
|
|
98
|
+
} catch {
|
|
99
|
+
e.textContent = t;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
function p(e, t, n) {
|
|
103
|
+
let r = document.createElement(e);
|
|
104
|
+
return t && (r.className = t), n != null && (r.textContent = n), r;
|
|
105
|
+
}
|
|
106
|
+
function m(e) {
|
|
107
|
+
let t = e.replace(/\\/g, "/").replace(/\/+$/, "").split("/").filter(Boolean);
|
|
108
|
+
return t.length <= 3 ? e.startsWith("/") ? `/${t.join("/")}` : t.join("/") : `…/${t.slice(-3).join("/")}`;
|
|
109
|
+
}
|
|
110
|
+
function h(e, t, n) {
|
|
111
|
+
let r = p("div", "eo-frame"), i = p("div", "eo-frame-head"), a = p("span", "eo-fh-file", t ? m(t) : "unknown");
|
|
112
|
+
a.title = t, i.appendChild(a), e.line != null && i.appendChild(p("span", "eo-fh-loc", `(${e.line}${e.column == null ? "" : `:${e.column}`})`)), n && i.appendChild(p("span", "eo-fh-ctx", `@ ${n}`)), r.appendChild(i);
|
|
113
|
+
let o = p("div", "eo-code"), s = Math.max(...e.frame.map((e) => String(e.num).length), 2);
|
|
114
|
+
o.style.setProperty("--num-w", `${s}ch`);
|
|
115
|
+
let c = p("div", "eo-lines");
|
|
116
|
+
for (let t of e.frame) {
|
|
117
|
+
let n = p("div", t.isError ? "eo-row err" : "eo-row");
|
|
118
|
+
n.appendChild(g(String(t.num), t.isError));
|
|
119
|
+
let r = p("span", "lc");
|
|
120
|
+
if (f(r, t.text), n.appendChild(r), c.appendChild(n), t.isError && e.column != null) {
|
|
121
|
+
let t = p("div", "eo-row caret");
|
|
122
|
+
t.appendChild(g("", !1));
|
|
123
|
+
let n = p("span", "lc", "^");
|
|
124
|
+
n.style.paddingLeft = `${Math.max(0, e.column - 1)}ch`, t.appendChild(n), c.appendChild(t);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return o.appendChild(c), r.appendChild(o), r;
|
|
128
|
+
}
|
|
129
|
+
function g(e, t) {
|
|
130
|
+
let n = p("span", "ln");
|
|
131
|
+
return n.appendChild(p("span", "chev", t ? "›" : "")), n.appendChild(p("span", "num", e)), n;
|
|
132
|
+
}
|
|
133
|
+
var _ = class extends HTMLElement {
|
|
134
|
+
initialized = !1;
|
|
135
|
+
connectedCallback() {
|
|
136
|
+
if (this.initialized) return;
|
|
137
|
+
this.initialized = !0;
|
|
138
|
+
let e = this.attachShadow({ mode: "open" }), t = p("style");
|
|
139
|
+
t.textContent = i, e.appendChild(t);
|
|
140
|
+
let n = this.getAttribute("error-id") ?? "", a = this.getAttribute("error-file") ?? "", o = this.getAttribute("error-message") ?? "", s = l(o), c = a || s.file || "", u = p("div", "eo-pop");
|
|
141
|
+
u.setAttribute("popover", "manual");
|
|
142
|
+
let d = p("div", "eo-card");
|
|
143
|
+
d.setAttribute("role", "alert"), u.appendChild(d);
|
|
144
|
+
let f = p("div", "eo-top"), g = p("span", "eo-badge"), _ = p("span");
|
|
145
|
+
_.style.display = "inline-flex", _.innerHTML = r, g.appendChild(_), g.appendChild(p("span", "", "Pug compile error")), f.appendChild(g), f.appendChild(this.buildCopyButton(o)), d.appendChild(f);
|
|
146
|
+
let v = (s.summary.split("\n")[0] || "").trim() || "Failed to compile";
|
|
147
|
+
d.appendChild(p("h1", "eo-title", v));
|
|
148
|
+
let y = p("p", "eo-desc");
|
|
149
|
+
if (n ? (y.appendChild(document.createTextNode("Section ")), y.appendChild(p("code", "eo-chip", n)), y.appendChild(document.createTextNode(" couldn’t be compiled."))) : y.textContent = "A section couldn’t be compiled.", d.appendChild(y), s.frame.length) d.appendChild(h(s, c, n));
|
|
150
|
+
else {
|
|
151
|
+
if (c) {
|
|
152
|
+
let e = p("p", "eo-file", m(c));
|
|
153
|
+
e.title = c, d.appendChild(e);
|
|
154
|
+
}
|
|
155
|
+
if (o.includes("\n")) {
|
|
156
|
+
let e = p("pre", "eo-raw");
|
|
157
|
+
e.appendChild(p("code", "", o)), d.appendChild(e);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
e.appendChild(u);
|
|
161
|
+
try {
|
|
162
|
+
u.showPopover();
|
|
163
|
+
} catch {
|
|
164
|
+
u.setAttribute("data-fallback", "");
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
buildCopyButton(e) {
|
|
168
|
+
let t = p("button", "eo-copy");
|
|
169
|
+
return t.type = "button", t.textContent = "Copy error", t.addEventListener("click", () => {
|
|
170
|
+
navigator.clipboard?.writeText(e).then(() => {
|
|
171
|
+
t.textContent = "Copied", setTimeout(() => t.textContent = "Copy error", 1500);
|
|
172
|
+
}, () => {});
|
|
173
|
+
}), t;
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
function v() {
|
|
177
|
+
customElements.get("pug-error-overlay") || customElements.define(n, _);
|
|
178
|
+
}
|
|
179
|
+
//#endregion
|
|
180
|
+
//#region client/lib/query-within-templates.ts
|
|
181
|
+
function y(e) {
|
|
182
|
+
let t = [], n = 0, r = "", i = "", a = () => {
|
|
183
|
+
let e = r.trim();
|
|
184
|
+
e && t.push({
|
|
185
|
+
combinator: i,
|
|
186
|
+
compound: e
|
|
187
|
+
}), r = "";
|
|
188
|
+
};
|
|
189
|
+
for (let t = 0; t < e.length; t++) {
|
|
190
|
+
let o = e[t];
|
|
191
|
+
if (o === "(" || o === "[" ? n++ : (o === ")" || o === "]") && n--, n === 0 && (o === ">" || o === "+" || o === "~")) {
|
|
192
|
+
for (a(), i = o; t + 1 < e.length && /\s/.test(e[t + 1]);) t++;
|
|
193
|
+
continue;
|
|
194
|
+
}
|
|
195
|
+
if (n === 0 && /\s/.test(o)) {
|
|
196
|
+
let n = t + 1;
|
|
197
|
+
for (; n < e.length && /\s/.test(e[n]);) n++;
|
|
198
|
+
let r = e[n];
|
|
199
|
+
if (r === ">" || r === "+" || r === "~") {
|
|
200
|
+
t = n - 1;
|
|
201
|
+
continue;
|
|
202
|
+
}
|
|
203
|
+
a(), i = " ", t = n - 1;
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
r += o;
|
|
207
|
+
}
|
|
208
|
+
return a(), t;
|
|
209
|
+
}
|
|
210
|
+
function b(e) {
|
|
211
|
+
return e.map((e, t) => t === 0 ? e.compound : e.combinator === " " ? ` ${e.compound}` : ` ${e.combinator} ${e.compound}`).join("");
|
|
212
|
+
}
|
|
213
|
+
function x(e, t) {
|
|
214
|
+
let n = e.querySelector(t);
|
|
215
|
+
if (n) return n;
|
|
216
|
+
let r = y(t);
|
|
217
|
+
for (let t = 0; t < r.length - 1; t++) {
|
|
218
|
+
let n = b(r.slice(0, t + 1)), i;
|
|
219
|
+
try {
|
|
220
|
+
i = e.querySelectorAll(n);
|
|
221
|
+
} catch {
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
224
|
+
for (let e of i) if (e instanceof HTMLTemplateElement) {
|
|
225
|
+
let n = b(r.slice(t + 1)), i = x(e.content, n);
|
|
226
|
+
if (i) return i;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
let i = e.querySelectorAll("template");
|
|
230
|
+
for (let e of i) {
|
|
231
|
+
let n = x(e.content, t);
|
|
232
|
+
if (n) return n;
|
|
233
|
+
}
|
|
234
|
+
return null;
|
|
235
|
+
}
|
|
236
|
+
//#endregion
|
|
237
|
+
//#region client/fullpage.ts
|
|
238
|
+
var S = class e {
|
|
239
|
+
modifier;
|
|
240
|
+
placeholder;
|
|
241
|
+
constructor(e) {
|
|
242
|
+
this.modifier = e.modifier, this.placeholder = e.placeholder || "{{modifier_class}}";
|
|
243
|
+
}
|
|
244
|
+
initialize(e = document) {
|
|
245
|
+
this.modifier && this.replaceInDocument(e);
|
|
246
|
+
}
|
|
247
|
+
static fromIframe(t = document) {
|
|
248
|
+
if (!window.frameElement) throw Error("ModifierReplacer can only be initialized from an iframe context.");
|
|
249
|
+
let n = window.frameElement.getAttribute("data-modifier");
|
|
250
|
+
if (!n) return null;
|
|
251
|
+
let r = new e({ modifier: n.split(".").filter((e) => e.length > 0).join(" ") });
|
|
252
|
+
return r.initialize(t), r;
|
|
253
|
+
}
|
|
254
|
+
static fromUrl(t = document) {
|
|
255
|
+
let n = new URLSearchParams(window.location.search).get("modifier");
|
|
256
|
+
if (!n) return null;
|
|
257
|
+
let r = new e({ modifier: n.split(".").filter((e) => e.length > 0).join(" ") });
|
|
258
|
+
return r.initialize(t), r;
|
|
259
|
+
}
|
|
260
|
+
replaceAll(e) {
|
|
261
|
+
let t = encodeURIComponent(JSON.stringify(this.placeholder)), n = JSON.stringify({ modifierClass: this.placeholder }), r = encodeURIComponent(n);
|
|
262
|
+
return e.replace(new RegExp(this.escapeRegExp(this.placeholder), "g"), this.modifier).replace(new RegExp(this.escapeRegExp(t), "g"), this.modifier).replace(new RegExp(this.escapeRegExp(r), "g"), this.modifier);
|
|
263
|
+
}
|
|
264
|
+
escapeRegExp(e) {
|
|
265
|
+
return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
266
|
+
}
|
|
267
|
+
replaceInDocument(e) {
|
|
268
|
+
let t = e.createTreeWalker(e.body, NodeFilter.SHOW_TEXT | NodeFilter.SHOW_ELEMENT, { acceptNode: () => NodeFilter.FILTER_ACCEPT });
|
|
269
|
+
for (; t.nextNode();) {
|
|
270
|
+
let e = t.currentNode;
|
|
271
|
+
e.nodeType === Node.TEXT_NODE ? this.replaceInTextNode(e) : e.nodeType === Node.ELEMENT_NODE && this.replaceInElementAttributes(e);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
replaceInTextNode(e) {
|
|
275
|
+
if (e.textContent) {
|
|
276
|
+
let t = e.textContent, n = this.replaceAll(t);
|
|
277
|
+
t !== n && (e.textContent = n);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
replaceInElementAttributes(e) {
|
|
281
|
+
Array.from(e.attributes).forEach((e) => {
|
|
282
|
+
let t = e.value, n = this.replaceAll(t);
|
|
283
|
+
t !== n && (e.value = n);
|
|
284
|
+
});
|
|
285
|
+
}
|
|
286
|
+
};
|
|
287
|
+
window.frameElement ? (window.frameElement.getAttribute("data-preview") === "true" && document.documentElement.classList.add("styleguide-preview"), window.frameElement.hasAttribute("data-modifier") && S.fromIframe(), window.runAccessibilityTest = async () => {
|
|
288
|
+
let [n, r] = await Promise.all([(async () => {
|
|
289
|
+
let { default: t } = await import("./axe-B09yVm_c.js").then((t) => /* @__PURE__ */ e(t.default, 1)), n = await t.run({
|
|
290
|
+
include: [["body"]],
|
|
291
|
+
exclude: [["pug-error-overlay"]]
|
|
292
|
+
}, { rules: {
|
|
293
|
+
"color-contrast": { enabled: !1 },
|
|
294
|
+
region: { enabled: !1 },
|
|
295
|
+
"landmark-one-main": { enabled: !1 }
|
|
296
|
+
} }).catch(console.error);
|
|
297
|
+
if (!n) throw Error("No results from runAccessibilityTest function");
|
|
298
|
+
let r = /* @__PURE__ */ new Map(), i = (e) => {
|
|
299
|
+
e.forEach((e) => {
|
|
300
|
+
e.nodes.forEach((e) => {
|
|
301
|
+
e.target.forEach((e) => {
|
|
302
|
+
let n = t.utils.shadowSelect(e);
|
|
303
|
+
n && r.set(e, n);
|
|
304
|
+
});
|
|
305
|
+
});
|
|
306
|
+
});
|
|
307
|
+
};
|
|
308
|
+
return i(n.violations), i(n.inapplicable), i(n.passes), i(n.incomplete), {
|
|
309
|
+
result: n,
|
|
310
|
+
targetMap: r
|
|
311
|
+
};
|
|
312
|
+
})(), (async () => {
|
|
313
|
+
let { HtmlValidate: e, StaticConfigLoader: n } = await import("./browser-BgMZpraI.js"), r = new e(new n()), i = await fetch(window.location.href);
|
|
314
|
+
if (!i.ok) throw Error(`Failed to fetch document for html-validate: ${i.status} ${i.statusText}`);
|
|
315
|
+
let a = t(await i.text()), { results: o } = await r.validateString(a, { rules: {
|
|
316
|
+
"no-trailing-whitespace": "off",
|
|
317
|
+
"no-inline-style": "off"
|
|
318
|
+
} }), s = o.map((e) => e.messages).flat();
|
|
319
|
+
return await Promise.all(s.map(async (e) => {
|
|
320
|
+
let t = (await r.getContextualDocumentation(e))?.description;
|
|
321
|
+
return {
|
|
322
|
+
...e,
|
|
323
|
+
ruleDescription: t
|
|
324
|
+
};
|
|
325
|
+
}));
|
|
326
|
+
})()]), i = new CustomEvent("accessibility-result", { detail: {
|
|
327
|
+
axe: n,
|
|
328
|
+
htmlValidate: r
|
|
329
|
+
} });
|
|
330
|
+
window.frameElement?.dispatchEvent(i);
|
|
331
|
+
}) : new URLSearchParams(window.location.search).get("modifier") && S.fromUrl(), v(), window.querySelectorAnywhere = (e) => x(document, e);
|
|
332
|
+
//#endregion
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:"Geist Sans";--font-mono:"Geist Mono";--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-styleguide:var(--styleguide-color-regular);--color-styleguide-highlight:var(--styleguide-color-highlight);--color-styleguide-theme-highlight:var(--styleguide-color-theme-highlight);--color-styleguide-bg:var(--styleguide-color-background);--color-styleguide-bg-highlight:var(--styleguide-color-background-highlight);--color-styleguide-border:var(--styleguide-color-border);--cp-neutral-0:#000;--cp-neutral-04:#0a0a0a;--cp-neutral-12:#1f1f1f;--cp-neutral-40:#666;--cp-neutral-64:#a3a3a3;--cp-neutral-92:#ebebeb;--cp-neutral-98:#fafafa;--cp-neutral-100:#fff;--cp-blue-11:#111827;--ca-theme-highlight:var(--cp-blue-11);--styleguide-color-background:light-dark(var(--cp-neutral-98),var(--cp-neutral-0));--styleguide-color-background-highlight:light-dark(var(--cp-neutral-100),var(--cp-neutral-04));--styleguide-color-highlight:light-dark(var(--ca-theme-highlight),var(--cp-neutral-100));--styleguide-color-regular:light-dark(var(--cp-neutral-40),var(--cp-neutral-64));--styleguide-color-border:light-dark(var(--cp-neutral-92),var(--cp-neutral-12))}:root{color-scheme:light dark}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0\.5{inset-block:calc(var(--spacing) * .5)}.inset-y-2{inset-block:calc(var(--spacing) * 2)}.top-0{top:0}.top-1\/2{top:50%}.top-8{top:calc(var(--spacing) * 8)}.-right-0\.5{right:calc(var(--spacing) * -.5)}.right-0{right:0}.-bottom-3{bottom:calc(var(--spacing) * -3)}.bottom-0{bottom:0}.-left-6{left:calc(var(--spacing) * -6)}.left-0{left:0}.isolate{isolation:isolate}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.z-100{z-index:100}.order-1{order:1}.order-2{order:2}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-0{margin-inline:0}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.-mt-0\.5{margin-top:calc(var(--spacing) * -.5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.-mr-1{margin-right:calc(var(--spacing) * -1)}.-mr-2{margin-right:calc(var(--spacing) * -2)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-4{margin-right:calc(var(--spacing) * 4)}.-mb-px{margin-bottom:-1px}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-6{margin-left:calc(var(--spacing) * 6)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-video{aspect-ratio:var(--aspect-video)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-\[18px\]{width:18px;height:18px}.size-full{width:100%;height:100%}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-\[28px\]{height:28px}.h-\[53px\]{height:53px}.h-full{height:100%}.max-h-\[400px\]{max-height:400px}.max-h-\[calc\(100\%-2rem-53px-45px\)\]{max-height:calc(100% - 2rem - 98px)}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-\[260px\]{width:260px}.w-full{width:100%}.max-w-\[65ch\]{max-width:65ch}.max-w-\[1600px\]{max-width:1600px}.max-w-full{max-width:100%}.max-w-none{max-width:none}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.flex-grow-1,.grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-col-resize{cursor:col-resize}.cursor-copy{cursor:copy}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.scroll-mt-\[50px\]{scroll-margin-top:50px}.\!list-none{list-style-type:none!important}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-b-2xl{border-bottom-right-radius:var(--radius-2xl);border-bottom-left-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-blue-200{border-color:var(--color-blue-200)}.border-red-200{border-color:var(--color-red-200)}.border-styleguide-border{border-color:var(--color-styleguide-border)}.border-transparent{border-color:#0000}.border-yellow-300{border-color:var(--color-yellow-300)}.border-b-styleguide-border{border-bottom-color:var(--color-styleguide-border)}.bg-\[rgb\(242\,242\,242\)\]{background-color:#f2f2f2}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-red-100{background-color:var(--color-red-100)}.bg-styleguide-bg{background-color:var(--color-styleguide-bg)}.bg-styleguide-bg-highlight{background-color:var(--color-styleguide-bg-highlight)}.bg-transparent{background-color:#0000}.bg-yellow-50{background-color:var(--color-yellow-50)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[4px\]{padding-top:4px}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-\[3px\]{padding-bottom:3px}.\!pl-0{padding-left:0!important}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.\!text-sm{font-size:var(--text-sm)!important;line-height:var(--tw-leading,var(--text-sm--line-height))!important}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[18px\]{font-size:18px}.leading-\[1\]{--tw-leading:1;line-height:1}.leading-\[10px\]{--tw-leading:10px;line-height:10px}.leading-\[12px\]{--tw-leading:12px;line-height:12px}.leading-none{--tw-leading:1;line-height:1}.\!font-bold{--tw-font-weight:var(--font-weight-bold)!important;font-weight:var(--font-weight-bold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.hyphens-auto{-webkit-hyphens:auto;hyphens:auto}.whitespace-nowrap{white-space:nowrap}.tab-1{tab-size:1}.tab-2{tab-size:2}.tab-3{tab-size:3}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-blue-800{color:var(--color-blue-800)}.text-blue-900{color:var(--color-blue-900)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-800{color:var(--color-red-800)}.text-styleguide{color:var(--color-styleguide)}.text-styleguide-highlight{color:var(--color-styleguide-highlight)}.text-styleguide-theme-highlight{color:var(--color-styleguide-theme-highlight)}.text-yellow-500{color:var(--color-yellow-500)}.text-yellow-800{color:var(--color-yellow-800)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.saturate-0{--tw-saturate:saturate(0%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.group-open\:block:is(:where(.group):is([open],:popover-open,:open) *){display:block}.group-open\:hidden:is(:where(.group):is([open],:popover-open,:open) *){display:none}.group-open\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}.group-open\:text-styleguide-highlight:is(:where(.group):is([open],:popover-open,:open) *){color:var(--color-styleguide-highlight)}@media (hover:hover){.group-hover\:-translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:translate-x-px:is(:where(.group):hover *){--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-px:is(:where(.group):hover *){--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/externallink\:translate-x-px:is(:where(.group\/externallink):hover *){--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/externallink\:-translate-y-px:is(:where(.group\/externallink):hover *){--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/figma\:saturate-100:is(:where(.group\/figma):hover *){--tw-saturate:saturate(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.group-hover\/link\:translate-x-px:is(:where(.group\/link):hover *){--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/link\:-translate-y-px:is(:where(.group\/link):hover *){--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/phpstorm\:saturate-100:is(:where(.group\/phpstorm):hover *),.group-hover\/vscode\:saturate-100:is(:where(.group\/vscode):hover *){--tw-saturate:saturate(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.group-focus\:-translate-x-0\.5:is(:where(.group):focus *){--tw-translate-x:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-focus\:translate-x-0\.5:is(:where(.group):focus *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-focus\:translate-x-px:is(:where(.group):focus *){--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-focus\:-translate-y-px:is(:where(.group):focus *){--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-focus\:opacity-100:is(:where(.group):focus *){opacity:1}.group-focus\/externallink\:translate-x-px:is(:where(.group\/externallink):focus *),.group-focus\/link\:translate-x-px:is(:where(.group\/link):focus *){--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-focus\/link\:-translate-y-px:is(:where(.group\/link):focus *){--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.peer-checked\:saturate-100:is(:where(.peer):checked~*){--tw-saturate:saturate(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop\:hidden::backdrop{display:none}.after\:pointer-events-none:after{content:var(--tw-content);pointer-events:none}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-x-0:after{content:var(--tw-content);inset-inline:0}.after\:bottom-0:after{content:var(--tw-content);bottom:0}.after\:h-\[80\%\]:after{content:var(--tw-content);height:80%}.after\:h-\[120px\]:after{content:var(--tw-content);height:120px}.after\:w-1:after{content:var(--tw-content);width:var(--spacing)}.after\:rounded-full:after{content:var(--tw-content);border-radius:3.40282e38px}.after\:bg-current:after{content:var(--tw-content);background-color:currentColor}.after\:bg-gradient-to-t:after{content:var(--tw-content);--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.after\:from-styleguide-bg:after{content:var(--tw-content);--tw-gradient-from:var(--color-styleguide-bg);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.after\:to-transparent:after{content:var(--tw-content);--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\:duration-150:after{content:var(--tw-content);--tw-duration:.15s;transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}@media (hover:hover){.group-hover\/resize\:after\:opacity-\[0\.12\]:is(:where(.group\/resize):hover *):after{content:var(--tw-content);opacity:.12}}.group-\[\.is-resized\]\/resize\:after\:opacity-\[0\.12\]:is(:where(.group\/resize).is-resized *):after{content:var(--tw-content);opacity:.12}.group-\[\.is-resizing\]\/resize\:after\:opacity-\[0\.3\]:is(:where(.group\/resize).is-resizing *):after{content:var(--tw-content);opacity:.3}@media (hover:hover){.hover\:border-styleguide-border:hover{border-color:var(--color-styleguide-border)}.hover\:bg-\[rgb\(242\,242\,242\)\]:hover{background-color:#f2f2f2}.hover\:bg-blue-100:hover{background-color:var(--color-blue-100)}.hover\:bg-styleguide-bg-highlight:hover{background-color:var(--color-styleguide-bg-highlight)}.hover\:text-styleguide-highlight:hover{color:var(--color-styleguide-highlight)}.hover\:after\:opacity-\[0\.3\]:hover:after{content:var(--tw-content);opacity:.3}}.focus\:border-styleguide-border:focus{border-color:var(--color-styleguide-border)}.focus\:bg-\[rgb\(242\,242\,242\)\]:focus{background-color:#f2f2f2}.focus\:text-styleguide-highlight:focus{color:var(--color-styleguide-highlight)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.active\:scale-90:active{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[0\.96\]:active{scale:.96}.aria-selected\:text-styleguide-highlight[aria-selected=true]{color:var(--color-styleguide-highlight)}@media not all and (width>=40rem){.max-sm\:max-h-none{max-height:none}}@media (width>=1220px){.min-\[1220px\]\:mx-auto{margin-inline:auto}}@media (width>=1222px){.min-\[1222px\]\:border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}}@media (width>=48rem){.md\:not-sr-only{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.md\:top-12{top:calc(var(--spacing) * 12)}.md\:bottom-auto{bottom:auto}.md\:left-1\/2{left:50%}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline-block{display:inline-block}.md\:inline-flex{display:inline-flex}.md\:h-auto{height:auto}.md\:max-h-\[85dvh\]{max-height:85dvh}.md\:max-h-\[calc\(100\%-5rem\)\]{max-height:calc(100% - 5rem)}.md\:max-h-none{max-height:none}.md\:min-h-0{min-height:0}.md\:min-h-\[250px\]{min-height:250px}.md\:w-\[calc\(100\%-260px\)\]{width:calc(100% - 260px)}.md\:max-w-\[720px\]{max-width:720px}.md\:min-w-\[150px\]{min-width:150px}.md\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:justify-between{justify-content:space-between}.md\:gap-x-10{column-gap:calc(var(--spacing) * 10)}.md\:gap-y-14{row-gap:calc(var(--spacing) * 14)}.md\:rounded-2xl{border-radius:var(--radius-2xl)}.md\:rounded-md{border-radius:var(--radius-md)}.md\:px-2{padding-inline:calc(var(--spacing) * 2)}.md\:px-10{padding-inline:calc(var(--spacing) * 10)}.md\:py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.open\:md\:flex:is([open],:popover-open,:open){display:flex}.open\:md\:flex-col:is([open],:popover-open,:open){flex-direction:column}}@media (width>=64rem){.lg\:top-24{top:calc(var(--spacing) * 24)}.lg\:max-h-\[calc\(100\%-8rem\)\]{max-height:calc(100% - 8rem)}}@media (width>=80rem){.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}@container (width>=28rem){.\@md\:inline-flex{display:inline-flex}}@container (width>=32rem){.\@lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (width>=36rem){.\@xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@container (width>=42rem){.\@2xl\:inline-block{display:inline-block}}.dark\:border-blue-800:is(.theme-dark *){border-color:var(--color-blue-800)}.dark\:border-blue-900\/40:is(.theme-dark *){border-color:#1c398e66}@supports (color:color-mix(in lab, red, red)){.dark\:border-blue-900\/40:is(.theme-dark *){border-color:color-mix(in oklab, var(--color-blue-900) 40%, transparent)}}.dark\:border-red-900\/40:is(.theme-dark *){border-color:#82181a66}@supports (color:color-mix(in lab, red, red)){.dark\:border-red-900\/40:is(.theme-dark *){border-color:color-mix(in oklab, var(--color-red-900) 40%, transparent)}}.dark\:border-yellow-900\/40:is(.theme-dark *){border-color:#733e0a66}@supports (color:color-mix(in lab, red, red)){.dark\:border-yellow-900\/40:is(.theme-dark *){border-color:color-mix(in oklab, var(--color-yellow-900) 40%, transparent)}}.dark\:bg-\[rgb\(26\,26\,26\)\]:is(.theme-dark *){background-color:#1a1a1a}.dark\:bg-blue-900\/10:is(.theme-dark *){background-color:#1c398e1a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/10:is(.theme-dark *){background-color:color-mix(in oklab, var(--color-blue-900) 10%, transparent)}}.dark\:bg-blue-900\/20:is(.theme-dark *){background-color:#1c398e33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/20:is(.theme-dark *){background-color:color-mix(in oklab, var(--color-blue-900) 20%, transparent)}}.dark\:bg-red-900\/20:is(.theme-dark *){background-color:#82181a33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-900\/20:is(.theme-dark *){background-color:color-mix(in oklab, var(--color-red-900) 20%, transparent)}}.dark\:bg-yellow-900\/20:is(.theme-dark *){background-color:#733e0a33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-yellow-900\/20:is(.theme-dark *){background-color:color-mix(in oklab, var(--color-yellow-900) 20%, transparent)}}.dark\:pb-6:is(.theme-dark *){padding-bottom:calc(var(--spacing) * 6)}.dark\:text-blue-100:is(.theme-dark *){color:var(--color-blue-100)}.dark\:text-blue-200:is(.theme-dark *){color:var(--color-blue-200)}.dark\:text-red-200:is(.theme-dark *){color:var(--color-red-200)}.dark\:text-yellow-200:is(.theme-dark *){color:var(--color-yellow-200)}@media (hover:hover){.dark\:hover\:bg-\[rgb\(26\,26\,26\)\]:is(.theme-dark *):hover{background-color:#1a1a1a}.dark\:hover\:bg-blue-900\/20:is(.theme-dark *):hover{background-color:#1c398e33}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-blue-900\/20:is(.theme-dark *):hover{background-color:color-mix(in oklab, var(--color-blue-900) 20%, transparent)}}}.dark\:focus\:bg-\[rgb\(26\,26\,26\)\]:is(.theme-dark *):focus{background-color:#1a1a1a}.\[\&_\*\]\:\!text-blue-700 *{color:var(--color-blue-700)!important}.\[\&_\*\]\:\!text-red-700 *{color:var(--color-red-700)!important}.\[\&_\*\]\:\!text-yellow-700 *{color:var(--color-yellow-700)!important}.\[\&_\*\]\:dark\:\!text-blue-300 :is(.theme-dark *){color:var(--color-blue-300)!important}.\[\&_\*\]\:dark\:\!text-red-300 :is(.theme-dark *){color:var(--color-red-300)!important}.\[\&_\*\]\:dark\:\!text-yellow-300 :is(.theme-dark *){color:var(--color-yellow-300)!important}.\[\&\.is-resizing_iframe\]\:pointer-events-none.is-resizing iframe{pointer-events:none}.\[\&\>i\]\:size-\[24px\]>i{width:24px;height:24px}.\[\&\>i\]\:text-\[24px\]>i{font-size:24px}.\[\&\>i\]\:leading-\[1em\]>i{--tw-leading:1em;line-height:1em}.\[\&\>img\]\:\!size-6>img,.\[\&\>svg\]\:\!size-6>svg{width:calc(var(--spacing) * 6)!important;height:calc(var(--spacing) * 6)!important}.\[\&\>svg\]\:h-full>svg{height:100%}.\[\&\>svg\]\:w-auto>svg{width:auto}.styleguide-section--large .\[\.styleguide-section--large_\&\]\:inline-block{display:inline-block}html{view-transition-name:none;scrollbar-gutter:stable}body:not(.allow-transitions) .transition{transition-duration:0s!important}body{visibility:hidden;background-color:var(--styleguide-color-background);color:var(--styleguide-color-regular)}body.js-loaded{visibility:visible}body.is-scrolling iframe{pointer-events:none}summary{list-style:none}summary::marker{display:none}summary::-webkit-details-marker{display:none}.theme-normal{color-scheme:light dark}.theme-light{color-scheme:light only}.theme-dark{color-scheme:dark only}body:not([data-os=mac]) .mac-only,body:not([data-os=windows],[data-os=linux]) .winlinux-only,body[data-is-mobile=true] .desktop-device-only{display:none}.theme-dark .shiki,.theme-dark .shiki span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;-webkit-text-decoration:var(--shiki-dark-text-decoration)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.code-highlight pre.shiki.shiki-themes{background-color:#0000!important}:is(.theme-select,.editor-select) input[type=radio]:checked+label{border-radius:var(--radius-3xl);outline-style:var(--tw-outline-style);outline-width:1px;outline-color:var(--color-styleguide-border)}:is(.theme-select,.editor-select) input[type=radio]:focus+label,:is(.theme-select,.editor-select) input[type=radio]+label:hover{outline-color:var(--color-blue-600)}.dialog-backdrop{-webkit-backdrop-filter:blur(3px)brightness(.7);backdrop-filter:blur(3px)brightness(.7);opacity:0;pointer-events:none;z-index:100;display:none;position:absolute;inset:0}.search-category,.search-category__item:not(.search-category__item--active){display:none}.search-category:has(.search-category__item--active){display:block}.search-category--hidden{display:none!important}.search-category__item--focused a{background-color:#f2f2f2}.search-category__item--focused a:is(.theme-dark *){background-color:#1a1a1a}.search-mark{color:var(--color-styleguide-highlight);--search-mark-bg:var(--color-styleguide-theme-highlight);border-radius:3px}@supports (color:color-mix(in lab, red, red)){.search-mark{--search-mark-bg:color-mix(in oklab, var(--color-styleguide-theme-highlight) 18%, transparent)}}.search-mark{background-color:var(--search-mark-bg);box-shadow:0 0 0 2px var(--search-mark-bg)}.search-code{padding-inline:var(--spacing);font-family:var(--font-mono);color:var(--color-styleguide-highlight);background-color:color-mix(in srgb, light-dark(var(--cp-neutral-40),var(--cp-neutral-64)) 10%, transparent);border-radius:3px;font-size:.85em}@supports (color:color-mix(in lab, red, red)){.search-code{background-color:color-mix(in oklab, var(--color-styleguide) 10%, transparent)}}.search-code.search-mark{background-color:var(--color-styleguide-theme-highlight)}@supports (color:color-mix(in lab, red, red)){.search-code.search-mark{background-color:color-mix(in oklab, var(--color-styleguide-theme-highlight) 22%, transparent)}}.search-code.search-mark{box-shadow:none}[data-type=search-hint]:empty{display:none}[data-type=search-hint]:not(:empty):before{content:"↳";margin-right:var(--spacing);color:var(--color-styleguide)}.icon-search-list__item-copy-icon{pointer-events:none;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);opacity:0;position:absolute;left:50%}.menu-item{border-radius:var(--radius-md);padding:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));display:block}@media (hover:hover){.menu-item:hover{background-color:#f2f2f2}}.menu-item:focus{background-color:#f2f2f2}@media (hover:hover){.menu-item:is(.theme-dark *):hover{background-color:#1a1a1a}}.menu-item:is(.theme-dark *):focus{background-color:#1a1a1a}.menu-item--active{background-color:#f2f2f2}.menu-item--active:is(.theme-dark *){background-color:#1a1a1a}[class*=menu-item--status-]{align-items:center;gap:calc(var(--spacing) * 4);grid-template-columns:1fr auto;display:grid}.menu-item--status-complete:after{content:"🟢"}.menu-item--status-progress:after{content:"🚧"}.menu-item--status-feedback:after{content:"💬"}.menu-item--status-pending:after{content:"🔴"}.preview-iframe{border:none;width:100%;min-height:0;overflow-y:hidden}.c-toast{right:calc(var(--spacing) * 4);bottom:calc(var(--spacing) * 4);left:calc(var(--spacing) * 4);justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-styleguide-border);background-color:var(--color-styleguide-bg-highlight);padding:calc(var(--spacing) * 4);font-family:var(--font-mono);--tw-font-weight:var(--font-weight-semibold);font-size:12px;font-weight:var(--font-weight-semibold);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);display:flex;position:fixed}.c-toast:after{content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);content:var(--tw-content);inset-inline:0;width:100%;height:5px;position:absolute;top:-5px}@media (width>=48rem){.c-toast{justify-content:flex-start;left:auto}}.c-toast>span{color:var(--color-styleguide-highlight)}.markdown-container{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.markdown-container>:first-child:not(p){margin-top:1em}.markdown-container>:not(pre){max-width:65ch}.markdown-container>:not(:last-child){margin-bottom:calc(var(--spacing) * 4)}.markdown-container :is(h1,h2,h3,h4,h5,h6,strong){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-styleguide-highlight)}.markdown-container :is(h1,h2,h3,h4,h5,h6):has(+p){margin-bottom:calc(var(--spacing) * 1.5)!important}.markdown-container :is(h1,h2,h3,h4,h5,h6):not(:first-child){margin-top:1.5em}.markdown-container :is(h1,h2){font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.markdown-container h3{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.markdown-container h4{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.markdown-container :is(h5,h6){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.markdown-container a{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-styleguide-theme-highlight)}.markdown-container a:after{margin-bottom:-1px;margin-left:var(--spacing);background-color:var(--color-styleguide-theme-highlight);--icon-size:1em;content:"";inline-size:var(--icon-size);block-size:var(--icon-size);background-size:contain;display:inline-block;-webkit-mask-image:url(./icons/external-link.svg);mask-image:url(./icons/external-link.svg)}.markdown-container :is(ul,ol){padding-left:calc(var(--spacing) * 5)}.markdown-container ul{list-style-type:disc}.markdown-container ol{list-style-type:decimal}.markdown-container :is(.shiki,pre:not(.shiki)){max-width:83ch;padding-inline:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 5)}.markdown-container :not(:is(pre))>code{border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--color-styleguide-highlight);background-color:#f2f2f2}.markdown-container :not(:is(pre))>code:is(.theme-dark *){background-color:#1a1a1a}.markdown-container table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.markdown-container :is(th,td){border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--color-styleguide-border);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);vertical-align:top}.markdown-container th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-styleguide-highlight)}.markdown-container thead th{background-color:var(--color-styleguide-bg-highlight)}.markdown-container tbody tr:last-child :is(th,td){border-bottom-style:var(--tw-border-style);border-bottom-width:0}:is(.markdown-container,.code-audit-container) :is(.shiki,pre:not(.shiki)){border-radius:var(--radius-2xl);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-styleguide-border);background-color:var(--color-styleguide-bg-highlight);max-width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow-x:auto}:is(.markdown-container,.code-audit-container) :is(.shiki,pre:not(.shiki))>code{display:inline-block}}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:300;src:url(/styleguide-assets/fonts/geist-mono-latin-300-normal.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/styleguide-assets/fonts/geist-mono-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/styleguide-assets/fonts/geist-mono-latin-600-normal.woff2)format("woff2")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/styleguide-assets/fonts/geist-sans-latin-300-normal.woff2)format("woff2")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/styleguide-assets/fonts/geist-sans-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/styleguide-assets/fonts/geist-sans-latin-600-normal.woff2)format("woff2")}body:not(.editor-vscode) .editor-vscode-only,body:not(.editor-phpstorm) .editor-phpstorm-only{display:none}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
|
|
3
|
+
/*$vite$:1*/
|