Pudu programming language
Menu
Package

@chrismichaelps / pudu-lang-docgen

Documentation publishing for Pudu: articles, API references, navigation, search, and static websites

0.1.0Apache-2.01

InstallClose

Style.pudu

Pudu321 lines26.3 KB

GitHub ↗
1/** @Docgen.Theme.Style — the default site stylesheet with light, dark, and print modes */2module PuduLangDocgen.Theme.Style34/// Stylesheet lines: design tokens, layout grid, article typography, and components.5const LINES: Array[Str] = [6  ":root \{",7  "  --font: \"Segoe UI Variable Text\", \"Segoe UI\", -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", Arial, sans-serif;",8  "  --font-mono: \"Cascadia Code\", \"SFMono-Regular\", Consolas, \"Liberation Mono\", Menlo, monospace;",9  "  --header-height: 54px;",10  "  --sidebar-width: 290px;",11  "  --affix-width: 240px;",12  "  --content-width: 880px;",13  "  --radius: 4px;",14  "  --bg: #ffffff;",15  "  --bg-subtle: #f8f8f8;",16  "  --bg-muted: #f2f2f2;",17  "  --bg-hover: #ebebeb;",18  "  --text: #161616;",19  "  --text-muted: #505050;",20  "  --text-subtle: #6e6e6e;",21  "  --border: #e0e0e0;",22  "  --border-strong: #c8c8c8;",23  "  --accent: #0065b3;",24  "  --accent-hover: #004f8c;",25  "  --accent-soft: #eaf3fb;",26  "  --focus: #0078d4;",27  "  --code-bg: #f5f5f5;",28  "  --header-bg: #ffffff;",29  "  --hero-bg: linear-gradient(115deg, #17264d 0%, #263f86 58%, #496cd0 100%);",30  "  --shadow: 0 1.6px 3.6px rgba(0, 0, 0, .13), 0 .3px .9px rgba(0, 0, 0, .11);",31  "  --note: #0065b3; --note-bg: #eaf3fb;",32  "  --tip: #107c10; --tip-bg: #eaf5ea;",33  "  --important: #6b2fbb; --important-bg: #f2ecfa;",34  "  --caution: #a4262c; --caution-bg: #fbeaea;",35  "  --warning: #8a5a00; --warning-bg: #fdf4e3;",36  "  --hl-k: #0000c8; --hl-s: #a31515; --hl-c: #008000; --hl-n: #098658; --hl-l: #0000c8; --hl-t: #267f99;",37  "\}",38  ":root[data-theme=\"dark\"] \{",39  "  --bg: #1b1b1b; --bg-subtle: #212121; --bg-muted: #262626; --bg-hover: #303030;",40  "  --text: #f2f2f2; --text-muted: #c8c8c8; --text-subtle: #a0a0a0;",41  "  --border: #3a3a3a; --border-strong: #505050;",42  "  --accent: #75b6e7; --accent-hover: #9ccbef; --accent-soft: #1f3345;",43  "  --focus: #75b6e7; --code-bg: #262626; --header-bg: #202020;",44  "  --shadow: 0 1.6px 3.6px rgba(0, 0, 0, .5), 0 .3px .9px rgba(0, 0, 0, .4);",45  "  --note: #75b6e7; --note-bg: #1c2a36; --tip: #6ccb5f; --tip-bg: #1d2b1c; --important: #b69ee8; --important-bg: #2a2336;",46  "  --caution: #f1707b; --caution-bg: #3a2124; --warning: #f3c65b; --warning-bg: #33291a;",47  "  --hl-k: #569cd6; --hl-s: #ce9178; --hl-c: #6a9955; --hl-n: #b5cea8; --hl-l: #569cd6; --hl-t: #4ec9b0;",48  "\}",49  "@media (prefers-color-scheme: dark) \{",50  "  :root[data-theme=\"auto\"] \{",51  "    --bg: #1b1b1b; --bg-subtle: #212121; --bg-muted: #262626; --bg-hover: #303030;",52  "    --text: #f2f2f2; --text-muted: #c8c8c8; --text-subtle: #a0a0a0;",53  "    --border: #3a3a3a; --border-strong: #505050;",54  "    --accent: #75b6e7; --accent-hover: #9ccbef; --accent-soft: #1f3345;",55  "    --focus: #75b6e7; --code-bg: #262626; --header-bg: #202020;",56  "    --shadow: 0 1.6px 3.6px rgba(0, 0, 0, .5), 0 .3px .9px rgba(0, 0, 0, .4);",57  "    --note: #75b6e7; --note-bg: #1c2a36; --tip: #6ccb5f; --tip-bg: #1d2b1c; --important: #b69ee8; --important-bg: #2a2336;",58  "    --caution: #f1707b; --caution-bg: #3a2124; --warning: #f3c65b; --warning-bg: #33291a;",59  "    --hl-k: #569cd6; --hl-s: #ce9178; --hl-c: #6a9955; --hl-n: #b5cea8; --hl-l: #569cd6; --hl-t: #4ec9b0;",60  "  \}",61  "\}",62  "*, *::before, *::after \{ box-sizing: border-box; \}",63  "html \{ scroll-padding-top: calc(var(--header-height) + 16px); -webkit-text-size-adjust: 100%; \}",64  "body \{ margin: 0; background: var(--bg); color: var(--text); font: 16px/1.6 var(--font); \}",65  "a \{ color: var(--accent); text-decoration: none; \}",66  "a:hover \{ color: var(--accent-hover); text-decoration: underline; \}",67  ":focus-visible \{ outline: 2px solid var(--focus); outline-offset: 2px; \}",68  "svg \{ width: 16px; height: 16px; fill: currentColor; flex: none; \}",69  ".skip-link \{ position: absolute; left: -9999px; top: 8px; z-index: 100; padding: 8px 16px; background: var(--bg); border: 1px solid var(--border); \}",70  ".skip-link:focus \{ left: 8px; \}",71  ".site-header \{ position: sticky; top: 0; z-index: 30; height: var(--header-height); background: var(--header-bg); border-bottom: 1px solid var(--border); box-shadow: var(--shadow); \}",72  ".header-inner \{ display: flex; align-items: center; gap: 24px; height: 100%; max-width: 1920px; margin: 0 auto; padding: 0 24px; \}",73  ".brand \{ display: flex; align-items: center; gap: 10px; color: var(--text); font-weight: 600; font-size: 17px; white-space: nowrap; \}",74  ".brand:hover \{ color: var(--text); text-decoration: none; \}",75  ".brand-logo \{ width: 24px; height: 24px; \}",76  ".navbar \{ flex: 1; min-width: 0; overflow-x: auto; \}",77  ".navbar ul \{ display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; \}",78  ".navbar a \{ display: block; padding: 14px 10px 12px; color: var(--text-muted); font-size: 14px; border-bottom: 2px solid transparent; white-space: nowrap; \}",79  ".navbar a:hover \{ color: var(--text); text-decoration: none; border-bottom-color: var(--border-strong); \}",80  ".navbar a.active \{ color: var(--text); border-bottom-color: var(--accent); font-weight: 600; \}",81  ".header-tools \{ display: flex; align-items: center; gap: 8px; margin-left: auto; \}",82  ".icon-button \{ display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0; border: 1px solid transparent; border-radius: var(--radius); background: transparent; color: var(--text-muted); cursor: pointer; \}",83  ".icon-button:hover \{ background: var(--bg-hover); color: var(--text); \}",84  ".menu-toggle, .nav-toggle \{ display: none; \}",85  ".search \{ position: relative; \}",86  ".search-icon \{ position: absolute; left: 10px; top: 50%; transform: translateY(-50%); color: var(--text-subtle); pointer-events: none; \}",87  ".search input \{ width: 260px; height: 34px; padding: 0 12px 0 32px; border: 1px solid var(--border-strong); border-radius: var(--radius); background: var(--bg); color: var(--text); font: 14px var(--font); \}",88  ".search input:focus \{ border-color: var(--accent); outline: none; box-shadow: 0 0 0 1px var(--accent); \}",89  ".search-results \{ position: absolute; right: 0; top: calc(100% + 6px); width: min(520px, 92vw); max-height: 70vh; overflow-y: auto; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: 0 6.4px 14.4px rgba(0, 0, 0, .13), 0 1.2px 3.6px rgba(0, 0, 0, .11); \}",90  ".search-result \{ display: block; padding: 10px 14px; border-bottom: 1px solid var(--border); color: var(--text); \}",91  ".search-result:last-child \{ border-bottom: 0; \}",92  ".search-result:hover, .search-result[aria-selected=\"true\"] \{ background: var(--accent-soft); text-decoration: none; color: var(--text); \}",93  ".search-result strong \{ display: block; color: var(--accent); font-weight: 600; \}",94  ".search-result span \{ display: block; color: var(--text-muted); font-size: 13px; line-height: 1.45; \}",95  ".search-result mark \{ background: transparent; color: inherit; font-weight: 700; \}",96  ".search-empty \{ padding: 12px 14px; color: var(--text-muted); font-size: 14px; \}",97  ".page \{ display: grid; grid-template-columns: var(--sidebar-width) minmax(0, 1fr) var(--affix-width); max-width: 1920px; margin: 0 auto; \}",98  ".page:not(:has(.sidebar)) \{ grid-template-columns: minmax(0, 1fr) var(--affix-width); \}",99  ".page:not(:has(.affix)) \{ grid-template-columns: var(--sidebar-width) minmax(0, 1fr); \}",100  ".page:not(:has(.sidebar)):not(:has(.affix)) \{ grid-template-columns: minmax(0, 1fr); \}",101  ".sidebar \{ position: sticky; top: var(--header-height); height: calc(100vh - var(--header-height)); border-right: 1px solid var(--border); background: var(--bg); \}",102  ".sidebar-inner \{ height: 100%; overflow-y: auto; padding: 20px 12px 32px 20px; \}",103  ".toc-filter input \{ width: 100%; height: 32px; margin-bottom: 12px; padding: 0 10px; border: 1px solid var(--border-strong); border-radius: var(--radius); background: var(--bg); color: var(--text); font: 14px var(--font); \}",104  ".toc ul \{ margin: 0; padding: 0; list-style: none; \}",105  ".toc ul ul \{ padding-left: 14px; \}",106  ".toc li \{ margin: 0; \}",107  ".toc a, .toc .toc-group \{ display: flex; align-items: flex-start; gap: 4px; width: 100%; padding: 5px 8px; border: 0; border-left: 2px solid transparent; background: none; color: var(--text); font: 14px/1.4 var(--font); text-align: left; cursor: pointer; \}",108  ".toc a:hover, .toc .toc-group:hover \{ background: var(--bg-hover); text-decoration: none; color: var(--text); \}",109  ".toc a.active \{ border-left-color: var(--accent); background: var(--accent-soft); font-weight: 600; \}",110  ".toc .toc-group::before, .toc .has-children > a::before \{ content: \"\"; flex: none; width: 6px; height: 6px; margin: 6px 4px 0 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(-45deg); transition: transform .15s; \}",111  ".toc .expanded > .toc-group::before, .toc .expanded.has-children > a::before \{ transform: rotate(45deg); \}",112  ".toc li:not(.has-children) > a \{ padding-left: 22px; \}",113  ".toc li > ul \{ display: none; \}",114  ".toc li.expanded > ul \{ display: block; \}",115  ".toc .filtered-out \{ display: none; \}",116  ".main \{ min-width: 0; padding: 24px 48px 64px; \}",117  ".main > * \{ max-width: var(--content-width); \}",118  ".breadcrumb ol \{ display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 12px; padding: 0; list-style: none; font-size: 14px; \}",119  ".breadcrumb li:not(:last-child)::after \{ content: \"/\"; margin-left: 4px; color: var(--text-subtle); \}",120  ".breadcrumb span \{ color: var(--text-muted); \}",121  ".page-actions \{ display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-bottom: 8px; color: var(--text-muted); font-size: 14px; \}",122  ".page-action \{ display: inline-flex; align-items: center; gap: 6px; \}",123  ".content \{ overflow-wrap: break-word; \}",124  ".content h1 \{ margin: 8px 0 16px; font-size: 40px; line-height: 1.25; font-weight: 600; letter-spacing: -.01em; \}",125  ".content h2 \{ margin: 40px 0 12px; font-size: 28px; line-height: 1.3; font-weight: 600; \}",126  ".content h3 \{ margin: 32px 0 10px; font-size: 22px; line-height: 1.35; font-weight: 600; \}",127  ".content h4, .content h5, .content h6 \{ margin: 24px 0 8px; font-size: 18px; font-weight: 600; \}",128  ".content .anchor \{ margin-left: 8px; opacity: 0; font-weight: 400; \}",129  ".content .anchor::before \{ content: \"#\"; \}",130  ".content :is(h2, h3, h4):hover .anchor, .content .anchor:focus \{ opacity: .6; text-decoration: none; \}",131  ".content p, .content ul, .content ol, .content dl, .content blockquote, .content .table-wrapper, .content .code-block, .content figure \{ margin: 0 0 16px; \}",132  ".content ul, .content ol \{ padding-left: 28px; \}",133  ".content li + li \{ margin-top: 4px; \}",134  ".content ul.tasks \{ padding-left: 4px; list-style: none; \}",135  ".content img \{ max-width: 100%; height: auto; \}",136  ".content hr \{ margin: 32px 0; border: 0; border-top: 1px solid var(--border); \}",137  ".content blockquote \{ padding: 4px 16px; border-left: 4px solid var(--border-strong); color: var(--text-muted); \}",138  ".content code \{ padding: 1px 5px; border-radius: 3px; background: var(--code-bg); font: .875em var(--font-mono); \}",139  ".content kbd \{ padding: 1px 6px; border: 1px solid var(--border-strong); border-bottom-width: 2px; border-radius: 3px; background: var(--bg-subtle); font: .85em var(--font-mono); \}",140  ".table-wrapper \{ overflow-x: auto; \}",141  ".content table \{ width: 100%; border-collapse: collapse; font-size: 15px; \}",142  ".content th, .content td \{ padding: 8px 12px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; \}",143  ".content th \{ border-bottom: 2px solid var(--border-strong); font-weight: 600; \}",144  ".content .align-center \{ text-align: center; \}",145  ".content .align-right \{ text-align: right; \}",146  ".content td > .api-doc p \{ margin: 0; \}",147  ".code-block \{ border: 1px solid var(--border); border-radius: var(--radius); background: var(--code-bg); overflow: hidden; \}",148  ".code-header \{ display: flex; align-items: center; justify-content: space-between; padding: 4px 8px 4px 14px; border-bottom: 1px solid var(--border); background: var(--bg-muted); color: var(--text-muted); font-size: 13px; \}",149  ".copy \{ padding: 3px 10px; border: 1px solid transparent; border-radius: var(--radius); background: none; color: var(--text-muted); font: 13px var(--font); cursor: pointer; \}",150  ".copy:hover \{ background: var(--bg-hover); color: var(--text); \}",151  ".code-block pre, .api-signature pre \{ margin: 0; padding: 14px 16px; overflow-x: auto; font: 14px/1.55 var(--font-mono); tab-size: 4; \}",152  ".code-block pre code, .api-signature code \{ padding: 0; background: none; font: inherit; \}",153  ".line.highlight \{ display: inline-block; min-width: 100%; margin: 0 -16px; padding: 0 16px; background: var(--accent-soft); box-shadow: inset 3px 0 var(--accent); \}",154  ".hl-k \{ color: var(--hl-k); \} .hl-s \{ color: var(--hl-s); \} .hl-c \{ color: var(--hl-c); font-style: italic; \} .hl-n \{ color: var(--hl-n); \} .hl-l \{ color: var(--hl-l); \} .hl-t \{ color: var(--hl-t); \}",155  ".mermaid \{ margin: 0 0 16px; text-align: center; background: none; \}",156  ".alert \{ margin: 0 0 16px; padding: 12px 16px; border-left: 4px solid var(--note); border-radius: var(--radius); background: var(--note-bg); \}",157  ".alert > :last-child \{ margin-bottom: 0; \}",158  ".alert-title \{ margin: 0 0 4px; color: var(--note); font-weight: 600; \}",159  ".alert-tip \{ border-color: var(--tip); background: var(--tip-bg); \} .alert-tip .alert-title \{ color: var(--tip); \}",160  ".alert-important \{ border-color: var(--important); background: var(--important-bg); \} .alert-important .alert-title \{ color: var(--important); \}",161  ".alert-caution \{ border-color: var(--caution); background: var(--caution-bg); \} .alert-caution .alert-title \{ color: var(--caution); \}",162  ".alert-warning \{ border-color: var(--warning); background: var(--warning-bg); \} .alert-warning .alert-title \{ color: var(--warning); \}",163  ".tabs \{ margin: 0 0 16px; \}",164  ".tab-list \{ display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--border); \}",165  ".tab-list button \{ padding: 8px 14px; border: 0; border-bottom: 2px solid transparent; background: none; color: var(--text-muted); font: 15px var(--font); cursor: pointer; \}",166  ".tab-list button:hover \{ color: var(--text); background: var(--bg-hover); \}",167  ".tab-list button[aria-selected=\"true\"] \{ border-bottom-color: var(--accent); color: var(--text); font-weight: 600; \}",168  ".tab-panel \{ padding-top: 16px; \}",169  ".video \{ position: relative; margin: 0 0 16px; padding-top: 56.25%; \}",170  ".video iframe \{ position: absolute; inset: 0; width: 100%; height: 100%; border: 0; \}",171  ".row \{ display: flex; flex-wrap: wrap; gap: 24px; margin: 0 0 16px; \}",172  ".column \{ flex-basis: 0; min-width: 220px; \}",173  ".image-icon img \{ width: 48px; \}",174  ".content figcaption \{ margin-top: 6px; color: var(--text-muted); font-size: 14px; \}",175  ".xref.unresolved \{ border-bottom: 1px dotted var(--caution); \}",176  ".api-heading \{ margin-bottom: 8px; \}",177  ".api-kind \{ margin: 0; color: var(--text-muted); font-size: 14px; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; \}",178  ".api-heading h1 \{ margin-top: 0; \}",179  ".api-namespace, .api-source \{ color: var(--text-muted); font-size: 14px; \}",180  ".api-signature \{ margin: 0 0 16px; border: 1px solid var(--border); border-left: 3px solid var(--accent); border-radius: var(--radius); background: var(--code-bg); \}",181  ".api-member \{ margin-top: 24px; padding-top: 8px; border-top: 1px solid var(--border); \}",182  ".api-parameters dt \{ margin-top: 8px; \}",183  ".api-parameters dd \{ margin: 2px 0 0 20px; color: var(--text-muted); \}",184  ".api-list \{ padding-left: 24px; \}",185  ".api-table td:first-child \{ white-space: nowrap; \}",186  ".rest-version \{ margin-left: 12px; padding: 2px 8px; border-radius: 12px; background: var(--bg-muted); color: var(--text-muted); font-size: 14px; font-weight: 400; vertical-align: middle; \}",187  ".rest-endpoint \{ display: flex; flex-wrap: wrap; align-items: center; gap: 10px; \}",188  ".rest-endpoint code \{ font-size: 15px; \}",189  ".method \{ display: inline-block; min-width: 64px; padding: 2px 8px; border-radius: 3px; color: #fff; font: 600 12px var(--font-mono); text-align: center; background: #505050; \}",190  ".method-get \{ background: #0065b3; \} .method-post \{ background: #107c10; \} .method-put \{ background: #8a5a00; \} .method-patch \{ background: #6b2fbb; \} .method-delete \{ background: #a4262c; \}",191  ".status \{ font-family: var(--font-mono); font-weight: 600; \} .status-2xx \{ color: var(--tip); \} .status-4xx, .status-5xx \{ color: var(--caution); \}",192  ".badge \{ display: inline-block; padding: 1px 8px; border-radius: 10px; background: var(--bg-muted); color: var(--text-muted); font-size: 12px; font-weight: 600; \}",193  ".badge.deprecated \{ background: var(--caution-bg); color: var(--caution); \}",194  ".pager \{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--border); \}",195  ".pager-link \{ display: block; padding: 12px 16px; border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); \}",196  ".pager-link:hover \{ border-color: var(--accent); text-decoration: none; color: var(--text); \}",197  ".pager-link.next \{ grid-column: 2; text-align: right; \}",198  ".pager-label \{ display: block; color: var(--text-muted); font-size: 13px; \}",199  ".pager-title \{ display: block; color: var(--accent); font-weight: 600; \}",200  ".affix \{ position: sticky; top: var(--header-height); height: calc(100vh - var(--header-height)); \}",201  ".affix-inner \{ height: 100%; overflow-y: auto; padding: 28px 20px 32px 8px; \}",202  ".affix-title \{ margin: 0 0 10px; font-size: 14px; font-weight: 600; \}",203  ".affix ul \{ margin: 0; padding: 0; list-style: none; border-left: 1px solid var(--border); \}",204  ".affix a \{ display: block; margin-left: -1px; padding: 4px 12px; border-left: 2px solid transparent; color: var(--text-muted); font-size: 13px; line-height: 1.4; \}",205  ".affix .level-3 a \{ padding-left: 24px; \}",206  ".affix a:hover \{ color: var(--text); text-decoration: none; \}",207  ".affix a.active \{ border-left-color: var(--accent); color: var(--text); font-weight: 600; \}",208  ".site-footer \{ border-top: 1px solid var(--border); background: var(--bg-subtle); color: var(--text-muted); font-size: 14px; \}",209  ".footer-inner \{ max-width: 1920px; margin: 0 auto; padding: 20px 24px; \}",210  ".redirect \{ padding: 48px 24px; text-align: center; \}",211  "@media (max-width: 1200px) \{",212  "  .page, .page:not(:has(.affix)) \{ grid-template-columns: var(--sidebar-width) minmax(0, 1fr); \}",213  "  .page:not(:has(.sidebar)) \{ grid-template-columns: minmax(0, 1fr); \}",214  "  .affix \{ display: none; \}",215  "\}",216  "@media (max-width: 1024px) \{",217  "  .page, .page:not(:has(.affix)), .page:not(:has(.sidebar)) \{ grid-template-columns: minmax(0, 1fr); \}",218  "  .menu-toggle \{ display: inline-flex; \}",219  "  .sidebar \{ position: fixed; top: var(--header-height); left: 0; z-index: 20; width: min(var(--sidebar-width), 86vw); transform: translateX(-100%); transition: transform .2s; box-shadow: var(--shadow); \}",220  "  .sidebar.open \{ transform: none; \}",221  "  .nav-toggle \{ display: inline-flex; \}",222  "  .navbar \{ display: none; position: absolute; top: var(--header-height); left: 0; right: 0; flex: none; background: var(--header-bg); border-bottom: 1px solid var(--border); box-shadow: var(--shadow); \}",223  "  .navbar.open \{ display: block; \}",224  "  .navbar ul \{ flex-direction: column; padding: 8px 12px; \}",225  "  .navbar a \{ padding: 10px 8px; border-bottom: 0; border-left: 2px solid transparent; \}",226  "  .navbar a.active \{ border-left-color: var(--accent); \}",227  "  .main \{ padding: 20px 24px 48px; \}",228  "  .search input \{ width: 180px; \}",229  "\}",230  "@media (max-width: 640px) \{",231  "  .header-inner \{ gap: 12px; padding: 0 12px; \}",232  "  .brand \{ min-width: 0; \}",233  "  .brand-name \{ overflow: hidden; text-overflow: ellipsis; \}",234  "  .search input \{ width: 110px; \}",235  "  .content h1 \{ font-size: 30px; \}",236  "  .content h2 \{ font-size: 24px; \}",237  "  .main \{ padding: 16px 16px 40px; \}",238  "  .pager \{ grid-template-columns: 1fr; \}",239  "  .pager-link.next \{ grid-column: 1; \}",240  "\}",241  "@media print \{",242  "  .site-header, .sidebar, .affix, .page-actions, .pager, .site-footer, .copy, .anchor, .skip-link \{ display: none !important; \}",243  "  .page \{ display: block; \}",244  "  .main \{ padding: 0; \}",245  "  .main > * \{ max-width: none; \}",246  "  body \{ font-size: 11pt; color: #000; background: #fff; \}",247  "  a \{ color: #000; text-decoration: underline; \}",248  "  .code-block, .api-signature \{ break-inside: avoid; \}",249  "  .tab-panel[hidden] \{ display: block !important; \}",250  "  .print-section \{ break-before: page; \}",251  "  .print-cover \{ display: flex; flex-direction: column; justify-content: center; min-height: 90vh; \}",252  "\}",253  "@media (prefers-reduced-motion: reduce) \{ * \{ transition: none !important; \} \}",254  ".layout-landing .main > * \{ max-width: none; \}",255  ".layout-landing .content h1 \{ font-size: 48px; \}",256  ".kind-landing .main \{ padding: 0 0 48px; \}",257  ".kind-landing .content \{ max-width: none; \}",258  ".landing-inner \{ max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 24px; padding-right: 24px; \}",259  ".landing-hero \{ position: relative; isolation: isolate; overflow: hidden; margin: 0 0 32px; padding: 46px 0 40px; color: #fff; background: var(--hero-bg); \}",260  ".landing-hero::before \{ content: \"\"; position: absolute; z-index: -1; inset: 0; background: linear-gradient(125deg, transparent 60%, rgba(255, 255, 255, .08) 60.2%, transparent 60.5%), linear-gradient(125deg, transparent 72%, rgba(255, 255, 255, .08) 72.2%, transparent 72.5%); \}",261  ".landing-hero::after \{ content: \"\"; position: absolute; z-index: -1; right: -45px; top: -65px; width: 250px; height: 310px; border-radius: 54px; transform: rotate(24deg); background: linear-gradient(155deg, rgba(251, 201, 117, .78), rgba(246, 122, 149, .45) 54%, rgba(132, 177, 255, .12) 55%); opacity: .65; \}",262  ".content .landing-hero h1 \{ max-width: 820px; margin: 0 0 12px; color: #fff; font-size: clamp(2rem, 4.4vw, 3.6rem); line-height: 1.06; letter-spacing: -.035em; \}",263  ".landing-summary \{ max-width: 680px; margin: 0; color: #e6edff; font-size: 1.06rem; line-height: 1.6; \}",264  ".content .landing-highlights \{ display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 0 40px; margin: 8px auto 56px; list-style: none; \}",265  ".content .landing-highlight \{ margin: 0; border-top: 1px solid var(--border); \}",266  ".landing-highlight a \{ display: flex; flex-direction: column; gap: 4px; padding: 14px 0 18px; color: var(--text); \}",267  ".landing-highlight a:hover \{ text-decoration: none; \}",268  ".landing-highlight a:hover .landing-link \{ color: var(--accent); text-decoration: underline; \}",269  ".landing-kind \{ color: var(--text-subtle); font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; \}",270  ".landing-link \{ font-size: 17px; font-weight: 600; \}",271  ".landing-topics, .landing-related \{ margin-bottom: 56px; \}",272  ".content .landing-inner > h2 \{ margin: 0 0 20px; padding: 0; border: 0; font-size: 22px; \}",273  ".landing-cards \{ display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 32px; \}",274  ".landing-card \{ padding-top: 14px; border-top: 2px solid var(--text); \}",275  ".content .landing-card h3 \{ margin: 0 0 10px; font-size: 15px; \}",276  ".content .landing-card ul \{ margin: 0; padding: 0; list-style: none; \}",277  ".content .landing-card li \{ margin: 0 0 6px; font-size: 15px; \}",278  ".landing-card p \{ margin: 4px 0 0; color: var(--text-muted); font-size: 14px; \}",279  ".landing-related .landing-card \{ border-top-width: 1px; border-top-color: var(--border); \}",280  ".content .landing-more \{ margin: 10px 0 0; font-size: 14px; \}",281  ".footer-bar \{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; \}",282  ".footer-name \{ color: var(--text); font-weight: 600; \}",283  ".footer-links ul \{ display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 0; padding: 0; list-style: none; \}",284  ".footer-links a, .footer-copyright \{ color: var(--text-muted); \}",285  ".footer-copyright \{ margin: 0 0 0 auto; \}",286  "@media (max-width: 640px) \{",287  "  .landing-hero \{ padding: 30px 0 26px; \}",288  "  .landing-hero::after \{ opacity: .35; \}",289  "  .content .landing-hero h1 \{ font-size: clamp(1.85rem, 7vw, 2.8rem); \}",290  "  .landing-inner \{ padding-left: 16px; padding-right: 16px; \}",291  "\}",292  ".layout-chromeless .main \{ padding-top: 32px; \}",293  ".content sub, .content sup \{ line-height: 0; \}",294  ".content mark \{ padding: 0 2px; background: #fff4b3; color: inherit; \}",295  ":root[data-theme=\"dark\"] .content mark \{ background: #5c4d00; \}",296  ".content ins \{ text-decoration-color: var(--tip); \}",297  ".footnote-ref a \{ padding: 0 2px; font-size: .8em; \}",298  ".footnotes \{ margin-top: 40px; color: var(--text-muted); font-size: 14px; \}",299  ".footnotes hr \{ margin: 0 0 16px; \}",300  ".footnote-back \{ margin-left: 4px; \}",301  ".diagram \{ text-align: center; \}",302  ".content video \{ max-width: 100%; \}",303  ".page-action.pdf \{ margin-left: auto; \}",304  ".toc .toc-heading \{ display: block; margin: 14px 0 4px; padding: 0 8px; color: var(--text-subtle); font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; \}",305  ".toc li:first-child > .toc-heading \{ margin-top: 0; \}",306  ".gallery \{ display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; margin: 24px 0; \}",307  ".card \{ display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--border); border-radius: 8px; background: var(--bg); box-shadow: var(--shadow); \}",308  ".card-image \{ width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-bottom: 1px solid var(--border); background: var(--bg-muted); \}",309  ".card-body \{ display: flex; flex-direction: column; gap: 8px; padding: 16px; \}",310  ".content .card-title \{ margin: 0; font-size: 18px; \}",311  ".card-meta \{ margin: 0; color: var(--text-muted); font-size: 13px; \}",312  ".card-body p \{ margin: 0; \}",313  ".card-usage \{ margin: 0; font-size: 13px; \}",314  ".card-usage dt \{ margin-top: 6px; color: var(--text-muted); font-weight: 600; \}",315  ".card-usage dd \{ margin: 2px 0 0; overflow-x: auto; \}",316  ".card-links \{ margin-top: auto; font-size: 14px; \}"317]318319/// The stylesheet text published as `_assets/site.css`.320export fn stylesheet() -> Str { LINES.join("\n") + "\n" }321