From 0646e17593591523aa1249f18019080519f6624a Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Tue, 18 Nov 2025 08:20:01 +0500 Subject: [PATCH 01/25] fix the postioning for the copy button in codeblocks + only show scrollbars when there is an overflow on the aside. --- doc/user/assets/sass/_content.scss | 12 +++++++++--- doc/user/assets/sass/_layout.scss | 3 +-- doc/user/layouts/_default/baseof.html | 4 ++-- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/doc/user/assets/sass/_content.scss b/doc/user/assets/sass/_content.scss index 1e2c7a765c2f7..497c09cda0e97 100644 --- a/doc/user/assets/sass/_content.scss +++ b/doc/user/assets/sass/_content.scss @@ -908,9 +908,17 @@ p+p { } } +.highlight { + position: relative; + +} + .copy_button { display: none; position: absolute; + right: 10px; + top: 10px; + font-size: rem(1.2); font-weight: 300; border: none; @@ -921,8 +929,6 @@ p+p { cursor: pointer; border-radius: $border-radius; white-space: nowrap; - top: 10px; - right: 10px; line-height: 2; font-family: 'Inter', sans-serif; @@ -1149,7 +1155,7 @@ td span.copyableCode pre:hover .copy_button { display: inline-block !important; } -pre { +.highlight { position: relative; &:hover { diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index ceb7f0763f182..a757486e541e7 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -344,7 +344,6 @@ table.inline-headings { flex: 1; position: sticky; top: 90px; - height: 100vh; overflow-y: auto; @media(max-width: 1050px) { @@ -362,10 +361,10 @@ table.inline-headings { padding: var(--x-small) rem(2); position: sticky; top: 0; - height: 100vh; overflow-y: auto; font-size: var(--sm); padding-bottom: 8.5rem; + height: 100vh; &-top { margin-top: var(--pico); diff --git a/doc/user/layouts/_default/baseof.html b/doc/user/layouts/_default/baseof.html index 44bdde8e6be44..7be4c4464b77f 100644 --- a/doc/user/layouts/_default/baseof.html +++ b/doc/user/layouts/_default/baseof.html @@ -117,11 +117,11 @@ /* Add "Click to Copy" button to code blocks */ $(document).ready(function () { - $("pre.chroma").append( + $(".highlight").append( '' ); - $("pre.chroma button.copy_button").click(function (e) { + $("pre.chroma + button.copy_button").click(function (e) { var _this = $(this), copyHex = document.createElement("textarea"); copyHex.value = _this.parent().find("code").text().trim(); From 237f23096a2a0070b7b8d3771e12c2245a47ba43 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Wed, 19 Nov 2025 00:36:31 +0500 Subject: [PATCH 02/25] revert the change. --- doc/user/assets/sass/_layout.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index a757486e541e7..91ba8c7b4d97e 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -345,6 +345,7 @@ table.inline-headings { position: sticky; top: 90px; overflow-y: auto; + height: 100vh; @media(max-width: 1050px) { display: none; From 7c6ea03614f08a0898b101191aff47843579e020 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Sat, 2 May 2026 05:31:25 +0500 Subject: [PATCH 03/25] update the meta preview image. --- doc/user/layouts/partials/head.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/user/layouts/partials/head.html b/doc/user/layouts/partials/head.html index 376a163a68307..f9655043a5074 100644 --- a/doc/user/layouts/partials/head.html +++ b/doc/user/layouts/partials/head.html @@ -28,7 +28,7 @@ @@ -38,7 +38,7 @@ Date: Fri, 15 May 2026 14:37:50 -0400 Subject: [PATCH 04/25] add reo. --- doc/user/layouts/partials/head.html | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/doc/user/layouts/partials/head.html b/doc/user/layouts/partials/head.html index f9655043a5074..9b296f7e98539 100644 --- a/doc/user/layouts/partials/head.html +++ b/doc/user/layouts/partials/head.html @@ -116,6 +116,11 @@ f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-5VDFPSJ'); + +{{/* Reo tracking beacon */}} + {{end}} {{/* Tabs */}} From 1ff1d31bc3feadcdb22e632881d0af4b40047ac5 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Tue, 9 Jun 2026 22:28:41 -0400 Subject: [PATCH 05/25] update the logo. --- doc/user/layouts/partials/header.html | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/doc/user/layouts/partials/header.html b/doc/user/layouts/partials/header.html index a3376b4603bcc..a6cd14e4b776e 100644 --- a/doc/user/layouts/partials/header.html +++ b/doc/user/layouts/partials/header.html @@ -3,7 +3,24 @@ {{ end }} diff --git a/doc/user/layouts/_default/single.html b/doc/user/layouts/_default/single.html index 89760e22f45ee..c0220016bae6c 100644 --- a/doc/user/layouts/_default/single.html +++ b/doc/user/layouts/_default/single.html @@ -7,7 +7,13 @@

{{.Title | markdownify}}

{{- if not (strings.HasSuffix $basePath "/") -}}{{- $basePath = printf "%s/" $basePath -}}{{- end -}} {{- $pagePath := .RelPermalink | strings.TrimPrefix $basePath -}} {{- $mdURL := printf "%smarkdown-docs/%sindex.md" $basePath $pagePath -}} - View as Markdown + + + View as Markdown + {{ end }} From bba6d87b76424f58812fd7314a2347ab3a6d15f6 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Sun, 14 Jun 2026 14:04:18 -0400 Subject: [PATCH 09/25] navbar small adjustments. --- doc/user/assets/sass/_nav.scss | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/user/assets/sass/_nav.scss b/doc/user/assets/sass/_nav.scss index d5fc9b31849f3..b075c3296244e 100644 --- a/doc/user/assets/sass/_nav.scss +++ b/doc/user/assets/sass/_nav.scss @@ -30,7 +30,7 @@ } .active { - font-weight: bold; + font-weight: 500; } @media(max-width: 850px) { @@ -52,7 +52,7 @@ } a:not([class*="btn"]) { - font-weight: 400; + font-weight: 300; text-decoration: none; border-bottom: none; From fd609358da52e31104b2abcedb1fea2f06e5bccf Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Sun, 14 Jun 2026 14:10:32 -0400 Subject: [PATCH 10/25] refine docs layout and sidenav styling. --- doc/user/assets/sass/_layout.scss | 164 ++++++++++++++++++++++++------ 1 file changed, 132 insertions(+), 32 deletions(-) diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index 088d39358f4d8..72c808d692368 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -10,6 +10,8 @@ .content-wrapper { display: flex; justify-content: center; + width: 100%; + box-sizing: border-box; padding-top: var(--nav-height); @media(max-width: 800px) { @@ -30,7 +32,7 @@ min-height: calc(100vh - 178px); // https://weblog.west-wind.com/posts/2016/Feb/15/Flexbox-Containers-PRE-tags-and-managing-Overflow min-width: 0; - max-width: 840px; + max-width: 900px; padding: var(--xx-small) var(--small); @media (max-width: 1260px) { @@ -81,7 +83,24 @@ table.inline-headings { background: var(--card-light); border: 1px solid var(--divider-light); border-radius: 8px; - max-width: 230px; + max-width: none; + + &:hover, + &:focus { + background: var(--card-light); + border-color: var(--divider-light); + color: var(--important); + box-shadow: none; + + .DocSearch-Button-Placeholder, + .DocSearch-Search-Icon { + color: var(--important); + } + + .DocSearch-Button-Key { + color: var(--body); + } + } } .DocSearch-Button-Keys { @@ -97,6 +116,7 @@ table.inline-headings { } .DocSearch-Button-Placeholder { + color: var(--body); font-size: rem(1.6); font-weight: 300; @@ -131,9 +151,18 @@ table.inline-headings { } .sidebar-wrapper { - flex: 1; + flex: 0 0 300px; + padding-left: var(--milli); + box-sizing: border-box; + + @media (min-width: 1571px) { + flex-basis: calc(((100vw - 1400px) / 2) + 300px); + padding-left: calc((100vw - 1400px) / 2); + } @media(max-width: 850px) { + min-width: 0; + padding-left: 0; position: fixed; background: var(--bg); z-index: 100; @@ -163,22 +192,23 @@ table.inline-headings { } .sidebar { - margin-left: auto; position: sticky; top: var(--nav-height); - padding: var(--xx-small) var(--small); + padding: var(--xx-small) var(--small) var(--xx-small) 0; + box-sizing: border-box; overflow-y: auto; height: calc(100vh - var(--nav-height)); display: flex; - font-size: rem(1.3); + font-size: rem(1.45); overflow-x: hidden; overscroll-behavior: contain; &, ul { + box-sizing: border-box; width: 100%; - min-width: 200px; - max-width: 285px; + min-width: 0; + max-width: 100%; @media(max-width: 850px) { min-width: 260px; @@ -186,7 +216,6 @@ table.inline-headings { } @media (max-width: 1570px) { - padding-left: var(--milli); padding-right: var(--nano); } @@ -199,41 +228,64 @@ table.inline-headings { display: block; cursor: pointer; position: relative; - padding: 3px 30px 3px 15px; - margin-left: 5px; + padding: 5px 26px 5px 10px; + border-radius: 6px; + color: var(--sub); + font-weight: 300; + line-height: 1.35; text-decoration: none; word-wrap: break-word; white-space: initial; &.active { - font-weight: 500; - background: var(--tip); + color: var(--highlight); + background: rgba(129, 154, 123, 0.18); + font-weight: 400; + + &::before { + content: ""; + position: absolute; + top: rem(0.7); + bottom: rem(0.7); + left: rem(0.35); + width: 1px; + background: var(--highlight); + } + } + + &:hover { + color: var(--important); + background: var(--card-light); + text-decoration: none; } - &:hover, &.active { - color: var(--highlight); text-decoration: none; + } + &:hover, + &.active { svg { - color: var(--divider-light); + color: currentColor; + opacity: 1; .darker { - color: var(--highlight); + color: currentColor; } } } svg { position: absolute; - right: 6px; + right: 4px; top: 50%; transform: translateY(-50%); - color: var(--divider-light); + color: var(--gray-dark); + opacity: 0.75; transition: transform 0.2s ease-out; .darker { - color: var(--sub); + color: currentColor; } &:hover { @@ -252,11 +304,8 @@ table.inline-headings { .no-children>a, .level-4 a { - - - &:hover, - &.active { - border-left: 2px solid var(--highlight); + &:hover:not(.active) { + color: var(--important); } } @@ -266,8 +315,14 @@ table.inline-headings { margin-top: 0; padding-left: 0; + ul { + margin: rem(0.25) 0 rem(0.6) 10px; + padding-left: 10px; + border-left: 1px solid var(--divider-light); + } + ul ul { - margin-left: rem(0.8); + margin-left: 0; } } @@ -277,15 +332,53 @@ table.inline-headings { li.level-1 { &>a { - font-weight: 500; color: var(--important); + font-size: rem(1.55); + font-weight: 300; + letter-spacing: 0; + text-transform: none; + + &:hover { + color: var(--important); + } + + &.active { + color: var(--important); + } } &>ul { - margin-bottom: rem(1.5); + margin-bottom: rem(1.25); + } + padding: rem(0.2) 0; + margin-bottom: rem(0.85); + } + + li.level-2>a { + padding-left: 10px; + margin-left: -10px; + + &.active { + padding-left: 10px; + } + } + + li.level-3>a { + padding-left: 10px; + margin-left: -10px; + + &.active { + padding-left: 10px; + } + } + + li.level-4>a { + padding-left: 10px; + margin-left: -10px; + + &.active { + padding-left: 10px; } - padding: 4px 0; - border-bottom: 1px solid var(--gray-light); } li.level-1, @@ -341,11 +434,18 @@ table.inline-headings { } .toc-wrapper { - flex: 1; + flex: 0 0 240px; position: sticky; top: 90px; overflow-y: auto; height: 100vh; + padding-right: var(--nano); + box-sizing: border-box; + + @media (min-width: 1571px) { + flex-basis: calc(((100vw - 1400px) / 2) + 240px); + padding-right: calc((100vw - 1400px) / 2); + } @media(max-width: 1050px) { display: none; @@ -402,7 +502,7 @@ table.inline-headings { &, code { - font-weight: 500; + font-weight: 400; } } From 9ea7fe0cc30a620151cce13f2486f3f94550e15d Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Wed, 17 Jun 2026 12:06:51 -0400 Subject: [PATCH 11/25] adjust the logo for light mode. --- doc/user/layouts/partials/header.html | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/doc/user/layouts/partials/header.html b/doc/user/layouts/partials/header.html index a6cd14e4b776e..caafda342de5e 100644 --- a/doc/user/layouts/partials/header.html +++ b/doc/user/layouts/partials/header.html @@ -9,17 +9,17 @@ - - - - - - - - - - - + + + + + + + + + + + From dd850d284b6cc284f83650219237317aabf17db2 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Wed, 17 Jun 2026 12:07:16 -0400 Subject: [PATCH 12/25] wip. --- doc/user/assets/sass/_base.scss | 22 + doc/user/assets/sass/_content.scss | 543 +++++++++++++++++- doc/user/assets/sass/_layout.scss | 84 ++- .../headless/materialize-intro/offerings.md | 6 +- .../_default/_markup/render-image.html | 18 +- doc/user/layouts/partials/toc.html | 7 + .../materialize-offerings-table.html | 136 +++++ 7 files changed, 766 insertions(+), 50 deletions(-) create mode 100644 doc/user/layouts/shortcodes/materialize-offerings-table.html diff --git a/doc/user/assets/sass/_base.scss b/doc/user/assets/sass/_base.scss index 0ac703533f9e1..7cd5859044f71 100644 --- a/doc/user/assets/sass/_base.scss +++ b/doc/user/assets/sass/_base.scss @@ -67,6 +67,28 @@ $rem-scale: 0.585; --gray-lightest: #eeeeee; --shadow-default: 0 #{rem(0.625)} #{rem(1.5)} #{rem(0)} rgba(0, 0, 0, 0.08); + + --table-surface: #111115; + --table-surface-raised: #15151a; + --table-surface-header: #19191f; + --table-border: #2a2b32; + --table-grid: #24252b; + --table-heading: #5e606a; + --table-text: #d9d9de; + --table-body: #a3a3ad; + --table-muted: #5f606a; + --table-link: #8b97ff; + --table-green: #3ff47a; + --table-green-bg: #0f2a1c; + --table-green-border: #1b5d37; + --table-blue: #8b97ff; + --table-blue-bg: #1b1d33; + --table-blue-border: #333b75; + --table-orange: #ff9a3d; + --table-orange-bg: #332113; + --table-orange-border: #704017; + --table-radius: 14px; + --table-shadow: 0 18px 50px rgba(0, 0, 0, 0.35), 0 1px 0 rgba(255, 255, 255, 0.04) inset; } body.dark { diff --git a/doc/user/assets/sass/_content.scss b/doc/user/assets/sass/_content.scss index 2cdf801fb1a78..61f341f3f16f2 100644 --- a/doc/user/assets/sass/_content.scss +++ b/doc/user/assets/sass/_content.scss @@ -242,13 +242,14 @@ p+p { } .callout { - background: var(--card-light); - border-radius: rem(1.2); - border: 1px solid var(--divider-light); - box-shadow: var(--shadow-default); + background: var(--card); + border-radius: 16px; + border: 1px dashed var(--divider-light); + box-shadow: none; + padding: 5px; &:not(.bottom) { - margin: var(--large) 0; + margin: var(--x-small) 0; } a { @@ -257,17 +258,42 @@ p+p { div { background: var(--card-light); - padding: var(--x-small); - border-radius: inherit; + border: 1px solid var(--divider-light); + padding: rem(3) rem(3.5); + border-radius: 12px; @media(max-width: 400px) { padding: var(--milli); } } + h2, + h3 { + margin-bottom: rem(1.2); + } + div> :first-child { margin-top: 0; } + + div> :last-child { + margin-bottom: 0; + } + + p, + ul, + ol { + margin-top: rem(1); + } + + ul, + ol { + padding-left: rem(2.1); + } + + li { + margin-top: rem(0.35); + } } .multilinkbox { @@ -347,11 +373,49 @@ p+p { max-width: 100%; } + figure { + margin: var(--small) 0; + background: var(--card); + border: 1px solid var(--divider-light); + border-radius: 16px; + overflow: hidden; + box-shadow: + 0 4px 8px rgba(0, 0, 0, 0.12), + 0 16px 36px rgba(0, 0, 0, 0.22), + 0 40px 72px rgba(0, 0, 0, 0.18); + + img { + display: block; + width: calc(100% - var(--nano) * 2); + max-width: 100%; + margin: var(--nano) auto 0; + border-radius: 6px 6px 0 0; + border: 1px solid var(--divider-light); + } + } + + figcaption { + padding: var(--nano) var(--milli); + font-size: var(--xsm); + font-weight: 300; + color: var(--sub); + font-style: italic; + line-height: 1.5; + } + table { - border-collapse: collapse; + background: var(--table-surface); + border-collapse: separate; + border-spacing: 0; + border: 1px solid var(--table-border); + border-radius: var(--table-radius); + box-shadow: var(--table-shadow); font-size: var(--sm); font-weight: 300; - line-height: rem(2.1); + line-height: rem(2.45); + overflow: hidden; + table-layout: auto; + width: 100%; @media(max-width: 500px) { code { @@ -360,21 +424,46 @@ p+p { } } - tr { - border-bottom: 1px solid var(--divider-light); + thead th { + background: var(--table-surface-header); + color: var(--table-heading); + font-family: "Geist Mono", Courier, monospace; + font-size: var(--xsm); + font-variant-ligatures: none; + font-weight: 600; + letter-spacing: 0.12em; + text-transform: uppercase; } - th { - color: var(--important); - border-bottom: 1px solid var(--th-border, var(--highlight)); + tbody th { + color: var(--table-text); + font-weight: 600; + vertical-align: top; + } + + tr:last-child { + > th, + > td { + border-bottom: none; + } + } + + th, + td { + border-bottom: 1px solid var(--table-grid); text-align: left; - padding: 8px; - font-size: rem(1.3); + padding: rem(1.8) rem(2.1); vertical-align: bottom; } + th + th, + th + td, + td + td { + border-left: 1px solid var(--table-grid); + } + td { - padding: var(--nano); + color: var(--table-body); vertical-align: top; @media(max-width: 500px) { @@ -390,6 +479,420 @@ p+p { } } + table a:not(a[class]) { + color: var(--table-link); + font-weight: 600; + + &:hover, + &:focus { + color: var(--table-text); + } + } + + .table-container { + overflow-x: auto; + } + + .mz-offerings-container { + border-radius: var(--table-radius); + overflow-x: visible; + } + + .mz-offerings { + background: var(--table-surface); + border: 1px solid var(--table-border); + border-radius: var(--table-radius); + box-shadow: var(--table-shadow); + font-family: "Geist", Arial, sans-serif; + overflow: hidden; + width: 100%; + + &__headers { + background: rgba(255, 255, 255, 0.015); + border-bottom: 1px solid var(--table-grid); + display: grid; + grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) minmax(175px, 210px); + } + + &__col-label { + color: var(--table-muted); + font-family: "Geist Mono", Courier, monospace; + font-size: 10px; + letter-spacing: 0.1em; + padding: 14px 24px; + text-transform: uppercase; + + & + & { + border-left: 1px solid var(--table-grid); + } + } + + &__row { + border-top: 1px solid rgba(255, 255, 255, 0.06); + display: grid; + grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) minmax(175px, 210px); + position: relative; + transition: background-color 0.15s ease; + + &::before { + background: linear-gradient(180deg, transparent, var(--offering-accent), transparent); + bottom: 0; + content: ""; + left: 0; + opacity: 0.25; + position: absolute; + top: 0; + transition: opacity 0.2s ease; + width: 2px; + } + + &:hover { + background-color: var(--offering-row-glow); + + &::before { + opacity: 0.9; + } + } + + &--cloud { + --offering-accent: var(--table-green); + --offering-badge-bg: var(--table-green-bg); + --offering-badge-border: var(--table-green-border); + --offering-action-bg: rgba(52, 211, 153, 0.08); + --offering-action-border: rgba(52, 211, 153, 0.20); + --offering-action-hover: rgba(52, 211, 153, 0.14); + --offering-row-glow: rgba(52, 211, 153, 0.04); + --offering-chip-yes-bg: rgba(52, 211, 153, 0.15); + } + + &--self { + --offering-accent: var(--table-blue); + --offering-badge-bg: var(--table-blue-bg); + --offering-badge-border: var(--table-blue-border); + --offering-action-bg: rgba(129, 140, 248, 0.08); + --offering-action-border: rgba(129, 140, 248, 0.20); + --offering-action-hover: rgba(129, 140, 248, 0.14); + --offering-row-glow: rgba(129, 140, 248, 0.04); + --offering-chip-yes-bg: rgba(129, 140, 248, 0.15); + } + + &--emulator { + --offering-accent: var(--table-orange); + --offering-badge-bg: var(--table-orange-bg); + --offering-badge-border: var(--table-orange-border); + --offering-action-bg: rgba(251, 146, 60, 0.08); + --offering-action-border: rgba(251, 146, 60, 0.20); + --offering-action-hover: rgba(251, 146, 60, 0.14); + --offering-row-glow: rgba(251, 146, 60, 0.04); + --offering-chip-yes-bg: rgba(251, 146, 60, 0.15); + } + } + + &__identity { + display: flex; + flex-direction: column; + gap: 10px; + padding: 24px 20px 24px 26px; + } + + &__icon-badge-row { + align-items: center; + display: flex; + flex-wrap: wrap; + gap: 8px; + } + + &__icon-tile { + align-items: center; + background: var(--offering-badge-bg); + border: 1px solid var(--offering-badge-border); + border-radius: 6px; + color: var(--offering-accent); + display: flex; + flex-shrink: 0; + height: 32px; + justify-content: center; + width: 32px; + } + + &__badges { + align-items: center; + display: flex; + flex-wrap: wrap; + gap: 6px; + } + + &__badge { + background: var(--offering-badge-bg); + border: 1px solid var(--offering-badge-border); + border-radius: 4px; + color: var(--offering-accent); + display: inline-flex; + font-family: "Geist Mono", Courier, monospace; + font-size: 10px; + letter-spacing: 0.04em; + padding: 3px 8px; + } + + &__badge-popular { + align-items: center; + background: rgba(251, 191, 36, 0.08); + border: 1px solid rgba(251, 191, 36, 0.22); + border-radius: 4px; + color: #fbbf24; + display: inline-flex; + font-family: "Geist Mono", Courier, monospace; + font-size: 10px; + gap: 4px; + letter-spacing: 0.04em; + padding: 3px 8px; + } + + &__name { + color: var(--table-text); + font-size: 14px; + font-weight: 500; + letter-spacing: -0.015em; + line-height: 1.35; + margin: 0; + } + + &__tagline { + color: var(--table-muted); + font-family: "Geist Mono", Courier, monospace; + font-size: 11px; + line-height: 1.4; + margin: 0; + } + + &__desc { + border-left: 1px solid var(--table-grid); + color: var(--table-body); + font-size: 13.5px; + line-height: 1.75; + padding: 28px; + + p { + margin: 0; + } + } + + &__nested { + margin-top: 20px; + } + + &__nested-note { + align-items: center; + color: var(--offering-accent); + display: flex; + font-family: "Geist Mono", Courier, monospace; + font-size: 11.5px; + gap: 6px; + margin-bottom: 12px; + opacity: 0.8; + } + + &__nested-wrap { + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(255, 255, 255, 0.06); + border-radius: 10px; + overflow: hidden; + } + + &__nested-table { + border-collapse: collapse; + font-size: 12px; + table-layout: auto; + width: 100%; + + thead tr { + border-bottom: 1px solid rgba(255, 255, 255, 0.06); + } + + th { + font-family: "Geist Mono", Courier, monospace; + font-size: 10px; + font-weight: 500; + letter-spacing: 0.08em; + padding: 10px 16px; + text-align: left; + text-transform: uppercase; + } + + td { + padding: 10px 16px; + } + + tbody tr + tr { + border-top: 1px solid rgba(255, 255, 255, 0.04); + } + } + + &__th-ent { + color: var(--offering-accent); + width: 120px; + } + + &__th-com { + color: var(--table-heading); + width: 120px; + } + + &__td-feature { + color: var(--table-muted); + font-family: "Geist Mono", Courier, monospace; + white-space: nowrap; + } + + &__td-ent { + color: var(--offering-accent); + font-family: "Geist Mono", Courier, monospace; + } + + &__td-com { + color: var(--table-heading); + font-family: "Geist Mono", Courier, monospace; + + &--hi { + color: var(--table-body); + } + } + + &__chip { + align-items: center; + border-radius: 50%; + display: inline-flex; + height: 20px; + justify-content: center; + width: 20px; + + &--yes { + background: var(--offering-chip-yes-bg); + color: var(--offering-accent); + } + + &--no { + background: rgba(255, 255, 255, 0.04); + color: var(--table-heading); + } + } + + &__cta { + border-left: 1px solid var(--table-grid); + display: flex; + flex-direction: column; + gap: 10px; + padding: 24px; + + p { + color: var(--table-body); + font-size: 13px; + line-height: 1.7; + margin: 0; + } + } + + &__action-primary { + align-items: center; + background: var(--offering-action-bg); + border: 1px solid var(--offering-action-border); + border-radius: 6px; + color: var(--offering-accent); + display: flex; + font-size: 13px; + font-weight: 500; + gap: 8px; + justify-content: space-between; + padding: 10px 14px; + text-decoration: none; + transition: background-color 0.15s, border-color 0.15s; + white-space: nowrap; + + &:hover, + &:focus { + background: var(--offering-action-hover); + border-color: var(--offering-accent); + color: var(--offering-accent); + text-decoration: none; + } + } + + &__action-secondary { + align-items: center; + border-radius: 6px; + color: var(--table-muted); + display: flex; + font-size: 12px; + gap: 6px; + padding: 6px 14px; + text-decoration: none; + transition: color 0.15s; + white-space: nowrap; + + &:hover, + &:focus { + color: var(--table-body); + text-decoration: none; + } + } + + &__footer { + align-items: center; + background: rgba(255, 255, 255, 0.01); + border-top: 1px solid rgba(255, 255, 255, 0.05); + display: flex; + justify-content: space-between; + padding: 14px 24px; + } + + &__footer-label { + color: var(--table-grid); + font-family: "Geist Mono", Courier, monospace; + font-size: 11px; + letter-spacing: 0.04em; + } + + &__footer-link { + align-items: center; + color: var(--table-muted); + display: inline-flex; + font-size: 12px; + gap: 6px; + text-decoration: none; + transition: color 0.15s; + + &:hover, + &:focus { + color: var(--table-body); + text-decoration: none; + } + } + + @media (max-width: 860px) { + &__headers { + display: none; + } + + &__row { + grid-template-columns: 1fr; + + &::before { + display: none; + } + } + + &__desc, + &__cta { + border-left: none; + border-top: 1px solid var(--table-grid); + } + + &__identity { + padding-bottom: 20px; + } + } + } + pre { background-color: var(--code-block); border-radius: 4px; @@ -892,7 +1395,7 @@ p+p { } .table-scrollable { - box-shadow: inset 0 -4px 3px -3px $medium-grey-v2; + box-shadow: inset 0 -4px 3px -3px var(--table-border); margin: rem(1) 0 rem(3); overflow: auto; @@ -905,12 +1408,12 @@ p+p { } thead th { - background: var(--bg); + background: var(--table-surface-header); position: sticky; top: 0; &:after { - border-bottom: 1px solid var(--th-border, var(--highlight)); + border-bottom: 1px solid var(--table-grid); content: ""; bottom: -1px; left: 0; diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index 72c808d692368..2478bb71d314d 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -94,7 +94,7 @@ table.inline-headings { .DocSearch-Button-Placeholder, .DocSearch-Search-Icon { - color: var(--important); + color: #2bddc2; } .DocSearch-Button-Key { @@ -199,7 +199,7 @@ table.inline-headings { overflow-y: auto; height: calc(100vh - var(--nav-height)); display: flex; - font-size: rem(1.45); + font-size: rem(1.3); overflow-x: hidden; overscroll-behavior: contain; @@ -249,7 +249,7 @@ table.inline-headings { bottom: rem(0.7); left: rem(0.35); width: 1px; - background: var(--highlight); + background: #2bddc2; } } @@ -355,6 +355,7 @@ table.inline-headings { } li.level-2>a { + font-size: rem(1.5); padding-left: 10px; margin-left: -10px; @@ -364,6 +365,7 @@ table.inline-headings { } li.level-3>a { + font-size: rem(1.5); padding-left: 10px; margin-left: -10px; @@ -373,6 +375,7 @@ table.inline-headings { } li.level-4>a { + font-size: rem(1.5); padding-left: 10px; margin-left: -10px; @@ -452,18 +455,18 @@ table.inline-headings { } .btn-ghost { - margin: var(--x-small) var(--milli) var(--milli); + margin: 0 rem(2) var(--pico); } } .toc { max-width: fit-content; min-width: 180px; - padding: var(--x-small) rem(2); + padding: var(--nano) rem(2); position: sticky; top: 0; overflow-y: auto; - font-size: var(--sm); + font-size: rem(1.45); padding-bottom: 8.5rem; height: 100vh; @@ -472,37 +475,58 @@ table.inline-headings { } h2 { - font-size: var(--xsm); - letter-spacing: 0.1em; - margin: 0 0 rem(0.75) 0; + font-size: rem(1.4); + font-weight: 300; + letter-spacing: 0; + margin: 0 0 rem(1.4) 0; padding: 0; display: inline-block; - color: var(--highlight); - text-transform: uppercase; + color: var(--sub); + text-transform: none; } ul { + border-left: 2px solid var(--divider-light); list-style-type: none; margin: 0; - padding: 0; + padding: 0 0 0 rem(1.4); } ul ul { - margin-left: var(--milli); + border-left: none; + margin-left: 0; + padding-left: rem(1.4); } li { - padding: rem(0.25) 0; + padding: rem(0.35) 0; } a { + display: block; + color: var(--sub); + font-weight: 300; + line-height: 1.35; + position: relative; text-decoration: none; &.active { &, code { - font-weight: 400; + color: #2bddc2 !important; + font-weight: inherit; + text-shadow: 0 0 0.35px currentColor; + } + + &::before { + content: ""; + position: absolute; + top: rem(0.1); + bottom: rem(0.1); + left: calc(-1 * #{rem(1.4)} - 2px); + width: 2px; + background: #2bddc2; } } @@ -512,23 +536,47 @@ table.inline-headings { &, code { - color: var(--highlight); text-decoration: none; } } + + &:hover, + &:focus { + color: var(--important); + } } code { font-family: "Geist Mono", Courier, monospace; font-variant-ligatures: none; } + + .toc-scroll-top { + display: block; + margin-top: var(--x-small); + padding-top: var(--x-small); + border-top: 1px solid var(--divider-light); + color: var(--sub); + font-size: var(--sm); + font-weight: 300; + text-decoration: none; + + &:hover, + &:focus { + color: var(--important); + text-decoration: none; + } + } } -.sidebar a, -.toc a { +.sidebar a { white-space: initial; } +.toc a { + white-space: nowrap; +} + .footer { display: flex; flex-direction: column; diff --git a/doc/user/content/headless/materialize-intro/offerings.md b/doc/user/content/headless/materialize-intro/offerings.md index 43dd2dd4bd2ed..6fca941230026 100644 --- a/doc/user/content/headless/materialize-intro/offerings.md +++ b/doc/user/content/headless/materialize-intro/offerings.md @@ -4,8 +4,4 @@ headless: true Materialize is available as: -| Offering | Description | Get Started 🚀 | -|----------|-------------|-----------------| -| **Materialize Cloud** | Materialize Cloud is a fully-managed service for Materialize. | Sign up for a [free trial account](https://materialize.com/register/?utm_campaign=General&utm_source=documentation) on Materialize Cloud and try out the [Quickstart](/get-started/quickstart/). | -| **Materialize Self-Managed** | Deploy and operate Materialize in your Kubernetes environment. Whereas Materialize Cloud gives you a fully managed service, Materialize Self-Managed allows you to deploy Materialize in your own infrastructure.

{{< include-md file="shared-content/self-managed/editions-available.md" >}} | [Install self-managed](/get-started/install/) and try out the [Quickstart](/get-started/quickstart/). | -| **Materialize Emulator** | Materialize Emulator is an all-in-one Docker image that provides the fastest way to get hands-on experience with Materialize for local development. | [Download and run Materialize Emulator](/get-started/install-materialize-emulator/) and try out the [Quickstart](/get-started/quickstart/). | +{{< materialize-offerings-table >}} diff --git a/doc/user/layouts/_default/_markup/render-image.html b/doc/user/layouts/_default/_markup/render-image.html index f0d6d7f8c99b4..b6eab1e493cf0 100644 --- a/doc/user/layouts/_default/_markup/render-image.html +++ b/doc/user/layouts/_default/_markup/render-image.html @@ -1,10 +1,14 @@ {{- $url := .Destination | safeURL -}} {{- $parentPath := partial "relative-link.html" . -}} -{{ .Text }} +{{- $caption := or (.Title) (.Text) -}} +
+ {{ .Text }} + {{- with $caption }}
{{ . }}
{{ end -}} +
{{- /* Chomp trailing newline. */ -}} diff --git a/doc/user/layouts/partials/toc.html b/doc/user/layouts/partials/toc.html index b016a4e9dbd29..9e1aabc4e7ae7 100644 --- a/doc/user/layouts/partials/toc.html +++ b/doc/user/layouts/partials/toc.html @@ -37,6 +37,7 @@

On this page

+ Scroll to top ↑
{{end}} @@ -218,6 +219,12 @@

On this page

const href = $clickedLink.attr("href"); if (!href || !href.startsWith("#")) return; + if (href === "#top") { + e.preventDefault(); + window.scrollTo({ top: 0, behavior: "smooth" }); + return; + } + const targetId = href.substring(1); // Remove the # from href const targetElement = document.getElementById(targetId); diff --git a/doc/user/layouts/shortcodes/materialize-offerings-table.html b/doc/user/layouts/shortcodes/materialize-offerings-table.html new file mode 100644 index 0000000000000..4955964ecc80f --- /dev/null +++ b/doc/user/layouts/shortcodes/materialize-offerings-table.html @@ -0,0 +1,136 @@ +
+
+ +
+
Offering
+
Description
+
Get Started 🚀
+
+ + +
+
+
+ +
+ Fully Managed + + + Popular + +
+
+

Materialize Cloud

+

Zero ops · Instant scale

+
+
+

Materialize Cloud is a fully-managed service for Materialize.

+
+
+

Sign up for a free trial account on Materialize Cloud and try out the Quickstart.

+
+
+ + +
+
+
+ +
+ Self-Hosted +
+
+

Materialize Self-Managed

+

Kubernetes · Enterprise & Community

+
+
+

Deploy and operate Materialize in your Kubernetes environment. Whereas Materialize Cloud gives you a fully managed service, Materialize Self-Managed allows you to deploy Materialize in your own infrastructure.

+
+

+ + Self-managed Materialize is available as a paid Enterprise Edition and a free Community Edition: +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureEnterprise EditionCommunity Edition
Maximum Usage Limits (Memory)None24 GiB
Maximum Usage Limits (Disk)None48 GiB
SupportPer terms of your licenseCommunity slack or messenger app
LicenseEnterprise License - Contact UsBSL/Privacy Policy
+
+
+
+
+

Install self-managed and try out the Quickstart.

+
+
+ + +
+
+
+ +
+ Local Dev +
+
+

Materialize Emulator

+

Docker · No account needed

+
+
+

Materialize Emulator is an all-in-one Docker image that provides the fastest way to get hands-on experience with Materialize for local development.

+
+ +
+ + + +
+
From e6a9bed3ff00276b5ee48e56d187789a82331e49 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Mon, 29 Jun 2026 16:05:49 -0400 Subject: [PATCH 13/25] follow the styleguide + typography + layout + background updates. --- doc/user/assets/sass/_base.scss | 311 ++++++- doc/user/assets/sass/_content.scss | 852 +++++++++++++----- doc/user/assets/sass/_highlight.scss | 5 + doc/user/assets/sass/_layout.scss | 30 +- doc/user/assets/sass/_mixins.scss | 83 ++ doc/user/assets/sass/_nav.scss | 14 +- doc/user/assets/sass/_railroad_diagrams.scss | 2 +- doc/user/content/_index.md | 14 +- doc/user/layouts/partials/head.html | 9 +- .../materialize-offerings-table.html | 128 ++- .../layouts/shortcodes/whats-new-callout.html | 94 ++ .../FAIRE-SprigSansMono-Medium.woff2 | Bin 0 -> 39580 bytes .../FAIRE-SprigSansMono-Regular.woff2 | Bin 0 -> 38552 bytes .../FAIRE-SprigSans-Medium.woff2 | Bin 0 -> 49084 bytes .../FAIRE-SprigSans-Regular.woff2 | Bin 0 -> 46904 bytes doc/user/static/fonts/fonts.css | 49 + .../static/fonts/inter/Inter-Regular.woff2 | Bin 0 -> 23804 bytes .../static/fonts/inter/Inter-SemiBold.woff2 | Bin 0 -> 24420 bytes .../images/docs-mesh/data-icons-dark.svg | 52 ++ .../images/docs-mesh/data-icons-light.svg | 45 + 20 files changed, 1373 insertions(+), 315 deletions(-) create mode 100644 doc/user/layouts/shortcodes/whats-new-callout.html create mode 100644 doc/user/static/fonts/faire-sprig-sans-mono/FAIRE-SprigSansMono-Medium.woff2 create mode 100644 doc/user/static/fonts/faire-sprig-sans-mono/FAIRE-SprigSansMono-Regular.woff2 create mode 100644 doc/user/static/fonts/faire-sprig-sans/FAIRE-SprigSans-Medium.woff2 create mode 100644 doc/user/static/fonts/faire-sprig-sans/FAIRE-SprigSans-Regular.woff2 create mode 100644 doc/user/static/fonts/fonts.css create mode 100644 doc/user/static/fonts/inter/Inter-Regular.woff2 create mode 100644 doc/user/static/fonts/inter/Inter-SemiBold.woff2 create mode 100644 doc/user/static/images/docs-mesh/data-icons-dark.svg create mode 100644 doc/user/static/images/docs-mesh/data-icons-light.svg diff --git a/doc/user/assets/sass/_base.scss b/doc/user/assets/sass/_base.scss index 7cd5859044f71..9664f36802e67 100644 --- a/doc/user/assets/sass/_base.scss +++ b/doc/user/assets/sass/_base.scss @@ -11,14 +11,35 @@ $rem-scale: 0.585; :root { --nav-height: #{rem(6.5)}; // Changes to height requires changes to partials/toc.html since custom scroll logic implementation - --h1: #{rem(4.0)}; + // Brand typefaces (style guide): FAIRE Sprig Sans → headlines; Inter → body/UI; FAIRE Sprig Sans Mono → code + --font-body: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; + --font-heading: "FAIRE Sprig Sans", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; + --font-mono: "FAIRE Sprig Sans Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace; + + // Style guide rhythm + --leading-headline: 1.4; + --leading-code: 1.55; + --tracking-eyebrow: 0.05em; + --tracking-code: 0.05em; + --weight-body: 400; + --weight-body-emphasis: 500; + --weight-body-strong: 600; + --weight-heading: 500; + + // Typography reference (docs content) + --h1: #{rem(3.9)}; --h2: #{rem(2.8)}; --h3: #{rem(2.1)}; --h4: #{rem(1.7)}; --h5: #{rem(1.6)}; - --base: #{rem(1.6)}; + --base: #{rem(1.5)}; --sm: #{rem(1.4)}; --xsm: #{rem(1.2)}; + --leading-h1: 1.3; + --leading-h2: 1.4; + --leading-body: 1.625; + --tracking-h1: -0.02em; + --tracking-h2: -0.015em; @media(max-width: 850px) { --h1: #{rem(3.4)}; @@ -87,8 +108,56 @@ $rem-scale: 0.585; --table-orange: #ff9a3d; --table-orange-bg: #332113; --table-orange-border: #704017; + --table-yellow: #fbbf24; + --table-yellow-bg: rgba(251, 191, 36, 0.08); + --table-yellow-border: rgba(251, 191, 36, 0.22); + --table-blue-glow: rgba(124, 143, 255, 0.9); --table-radius: 14px; --table-shadow: 0 18px 50px rgba(0, 0, 0, 0.35), 0 1px 0 rgba(255, 255, 255, 0.04) inset; + + --surface-subtle: rgba(255, 255, 255, 0.015); + --surface-inset: rgba(0, 0, 0, 0.25); + --surface-faint: rgba(255, 255, 255, 0.01); + --border-subtle: rgba(255, 255, 255, 0.06); + --border-faint: rgba(255, 255, 255, 0.04); + + --offerings-cols: minmax(170px, 220px) minmax(0, 1fr) minmax(150px, 190px); + + // Page background mesh rhythm (theme sets colors only) + --docs-mesh-icons-step: #{rem(28)}; + --docs-mesh-icons-step-sm: #{rem(24)}; + --docs-mesh-dot-size: 1px; + --docs-mesh-dot-step: #{rem(3)}; + --docs-mesh-dot-step-sm: #{rem(2.75)}; + --docs-mesh-grid-minor-step: #{rem(2)}; + --docs-mesh-grid-minor-step-sm: #{rem(1.75)}; + --docs-mesh-grid-major-step: #{rem(8)}; + --docs-mesh-grid-major-step-sm: #{rem(7)}; + + // Style guide palette (0326-083) + --sg-midnight: #100C21; + --sg-white: #FFFFFF; + --sg-violet: #7F4EFF; + --sg-lavender-1: #F2EDFF; + --sg-lavender-2: #C0B2E4; + --sg-lavender-3: #8F76CF; + --sg-lavender-4: #472F85; + --sg-lavender-5: #342260; + --sg-lavender-6: #2C1D52; + --sg-gray-1: #DED9EE; + --sg-gray-2: #9B97A3; + --sg-gray-3: #736F81; + --sg-gray-4: #403D4D; + --sg-gray-5: #201D2C; + --sg-heading: #F0EEFF; + --sg-body: #9B97A3; + --sg-inline-lifted: #E2E0F0; + --sg-link: #8F76CF; + --sg-link-hover: #B09EE0; + --sg-divider: #2A2745; + --sg-page-bg: #13111E; + --sg-teal-3: #00C2AA; + --sg-teal-5: #007567; } body.dark { @@ -98,10 +167,11 @@ body.dark { --card: var(--black-mid); --card-light: var(--black-light); --color-scheme: dark; - --divider: var(--black-lighter); - --divider-light: var(--black-lightest); + --divider: var(--sg-divider); + --divider-light: var(--sg-divider); - --link: var(--color-purple-100); + --link: var(--sg-link); + --link-hover: var(--sg-link-hover); --code-block: var(--card-light); --code-simple: #c2c2c2; @@ -112,10 +182,29 @@ body.dark { --code-green: #819A7B; --code-highlight: var(--code-blue); - --important: var(--color-white); - --sub: var(--gray-light); - --body: var(--gray); + --heading: var(--sg-heading); + --body: var(--sg-body); + --inline-lifted: var(--sg-inline-lifted); + --sub: var(--sg-lavender-2); + --caption: var(--sg-gray-2); + --important: var(--heading); --highlight: var(--color-teal-500); + --font-h4: var(--heading); + + // Shared homepage promo surfaces (callout + offerings table) + --docs-card-surface: color-mix(in srgb, var(--card-light) 72%, var(--bg)); + --docs-card-border: color-mix(in srgb, var(--divider-light) 88%, transparent); + --docs-card-divider: color-mix(in srgb, var(--divider-light) 55%, transparent); + --docs-card-divider-strong: color-mix(in srgb, var(--divider-light) 72%, transparent); + --docs-card-glow: color-mix(in srgb, var(--sg-lavender-6) 14%, transparent); + --docs-card-inset: color-mix(in srgb, var(--bg) 55%, transparent); + + // Style guide background mesh (dark): grid + data icons + purple accent on the right + --docs-mesh-icons: url("/images/docs-mesh/data-icons-dark.svg"); + --docs-mesh-dot: #1e293b; + --docs-mesh-grid-minor: rgba(255, 255, 255, 0.035); + --docs-mesh-grid-major: rgba(255, 255, 255, 0.065); + --docs-mesh-accent: color-mix(in srgb, var(--sg-lavender-6) 16%, transparent); --shadow-default: 0 #{rem(0.625)} #{rem(1.5)} 0 rgba(0, 0, 0, 0.4); --note: #fffad411; @@ -144,9 +233,16 @@ body.dark { --tab-bg: var(--gray-lightest); --tab-selected-bg: var(--tip-after); - --font-h4: var(--gray-lightest); --th-border: oklch(var(--color-teal-500-oklch) / 30%); + + --offering-nested-border: var(--border-subtle); + --offering-nested-header-bg: color-mix(in srgb, var(--sg-lavender-6) 38%, var(--card-light)); + --offering-nested-surface: var(--surface-inset); + + --offering-edition-label: var(--sg-lavender-2); + --offering-edition-heading: var(--sg-lavender-2); + --offering-edition-value: var(--sg-lavender-3); } body.light { @@ -159,7 +255,8 @@ body.light { --divider: var(--gray); --divider-light: var(--gray-lighter); - --link: var(--brand); + --link: var(--sg-violet); + --link-hover: var(--color-purple-700); --code-block: var(--code-block-light); --code-simple: #505050; @@ -170,11 +267,28 @@ body.light { --code-green: #177500; - --important: var(--black); - --code-highlight: var(--important); - --sub: var(--black-lighter); - --body: var(--black-light); - --highlight: var(--purple-dark); + --heading: var(--sg-midnight); + --body: var(--sg-gray-4); + --inline-lifted: var(--sg-midnight); + --sub: var(--sg-gray-3); + --caption: var(--sg-gray-3); + --important: var(--heading); + --code-highlight: var(--heading); + --highlight: var(--sg-violet); + --font-h4: var(--heading); + + --docs-card-surface: color-mix(in srgb, var(--card-light) 72%, var(--bg)); + --docs-card-border: color-mix(in srgb, var(--divider-light) 88%, transparent); + --docs-card-divider: color-mix(in srgb, var(--divider-light) 55%, transparent); + --docs-card-divider-strong: color-mix(in srgb, var(--divider-light) 72%, transparent); + --docs-card-glow: color-mix(in srgb, var(--brand) 9%, transparent); + --docs-card-inset: color-mix(in srgb, var(--bg) 55%, transparent); + + // Style guide background mesh (light): grid + data icons + --docs-mesh-icons: url("/images/docs-mesh/data-icons-light.svg"); + --docs-mesh-dot: rgba(64, 61, 77, 0.095); + --docs-mesh-grid-minor: rgba(0, 0, 0, 0.024); + --docs-mesh-grid-major: rgba(0, 0, 0, 0.042); --note: #fffad411; --note-border: #b9a61545; @@ -201,7 +315,20 @@ body.light { --tab-bg: var(--gray-lighter); --tab-selected-bg: var(--tip); - --font-h4: var(--gray-dark); + + --surface-subtle: rgba(0, 0, 0, 0.025); + --surface-inset: rgba(0, 0, 0, 0.04); + --surface-faint: rgba(0, 0, 0, 0.015); + --border-subtle: rgba(0, 0, 0, 0.10); + --border-faint: rgba(0, 0, 0, 0.06); + + --offering-nested-border: rgba(0, 0, 0, 0.09); + --offering-nested-header-bg: color-mix(in srgb, var(--sg-gray-1) 70%, var(--white-light)); + --offering-nested-surface: color-mix(in srgb, var(--sg-gray-1) 22%, var(--white-light)); + + --offering-edition-label: var(--sg-violet); + --offering-edition-heading: var(--sg-gray-3); + --offering-edition-value: var(--sg-violet); } @@ -214,15 +341,87 @@ body.light { } body { - font-family: "Geist", sans-serif; - color: var(--important); + font-family: var(--font-body); + color: var(--body); color-scheme: var(--color-scheme); background: var(--bg); font-size: var(--base); - line-height: 1.7; - font-weight: 300; + line-height: var(--leading-body); + font-weight: var(--weight-body); max-width: 100vw; overflow-x: hidden; + position: relative; + + &::before { + content: ""; + inset: 0; + pointer-events: none; + position: fixed; + z-index: -1; + } + + &.dark::before { + background-color: #000; + background-image: + radial-gradient(ellipse 42% 85% at 100% 45%, var(--docs-mesh-accent) 0%, transparent 68%), + var(--docs-mesh-icons), + linear-gradient(to right, var(--docs-mesh-grid-major) 1px, transparent 1px), + linear-gradient(to bottom, var(--docs-mesh-grid-major) 1px, transparent 1px), + linear-gradient(to right, var(--docs-mesh-grid-minor) 1px, transparent 1px), + linear-gradient(to bottom, var(--docs-mesh-grid-minor) 1px, transparent 1px), + radial-gradient(circle, var(--docs-mesh-dot) var(--docs-mesh-dot-size), transparent var(--docs-mesh-dot-size)); + background-position: center; + background-repeat: no-repeat, repeat, repeat, repeat, repeat, repeat, repeat; + @include docs-page-mesh-size( + var(--docs-mesh-icons-step), + var(--docs-mesh-grid-major-step), + var(--docs-mesh-grid-minor-step), + var(--docs-mesh-dot-step), + 100% 100% + ); + mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.65) 0%, black 28%, black 100%); + } + + &.light::before { + background-color: var(--bg); + @include docs-page-mesh-grid-layers; + background-position: center; + background-repeat: repeat; + @include docs-page-mesh-size( + var(--docs-mesh-icons-step), + var(--docs-mesh-grid-major-step), + var(--docs-mesh-grid-minor-step), + var(--docs-mesh-dot-step) + ); + mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.66) 45%, rgba(0, 0, 0, 0.46) 100%); + } + + @media (max-width: 850px) { + &.dark::before { + @include docs-page-mesh-size( + var(--docs-mesh-icons-step-sm), + var(--docs-mesh-grid-major-step-sm), + var(--docs-mesh-grid-minor-step-sm), + var(--docs-mesh-dot-step-sm), + 100% 100% + ); + } + + &.light::before { + @include docs-page-mesh-size( + var(--docs-mesh-icons-step-sm), + var(--docs-mesh-grid-major-step-sm), + var(--docs-mesh-grid-minor-step-sm), + var(--docs-mesh-dot-step-sm) + ); + } + } + + @media (prefers-reduced-motion: reduce) { + &::before { + background-attachment: scroll; + } + } @media(max-width: 500px) { font-size: rem(1.5); @@ -268,46 +467,88 @@ input[type="submit"] { } } -nav { +.nav, +.sidebar, +.toc, +.toc-wrapper, +.footer { + a:not([class*="btn"]) { + color: var(--important); + + &:hover, + &:focus { + text-decoration: none; + } + } + .link-with-code { - color: var(--sub); + color: var(--important); &:hover, &:focus { text-decoration: underline; - color: var(--link); + color: var(--important); + } + } + + .btn-ghost { + color: var(--important); + + &:hover, + &:focus { + color: var(--important); + text-decoration: none; } } } +.content a:not([class]), p > a, .note > a, .tip > a, .annotation > a, -.link-with-code { +.content .link-with-code { color: var(--link); + font-family: var(--font-body); + font-weight: var(--weight-body); + text-decoration: underline; + text-decoration-color: color-mix(in srgb, var(--link) 30%, transparent); + text-underline-offset: 3px; + transition: color 0.15s ease, text-decoration-color 0.15s ease; &:hover, &:focus { + color: var(--link-hover); text-decoration: underline; - color: var(--sub); + text-decoration-color: var(--link-hover); + } +} + +.content .btn-ghost { + color: var(--important); + + &:hover, + &:focus { + color: var(--important); + text-decoration: none; } } .annotation-title { - font-weight: 600; + font-family: var(--font-heading); + font-weight: 500; + line-height: var(--leading-headline); padding-bottom: rem(1.2); } a { + color: inherit; + text-decoration: none; + &:hover, &:focus { text-decoration: underline; - color: var(--link); } - - color: var(--sub); - text-decoration: none; } /*-------- Finish links color--------*/ @@ -316,11 +557,12 @@ a { display: inline-flex; justify-content: center; align-items: center; + font-family: var(--font-body); font-size: 12px; text-transform: uppercase; white-space: nowrap; - font-weight: 600; - letter-spacing: 0.1em; + font-weight: var(--weight-body); + letter-spacing: var(--tracking-eyebrow); background: var(--brand); color: var(--white); padding: rem(0.6) rem(1.2); @@ -349,9 +591,10 @@ a { border: 1px solid var(--divider-light); border-radius: rem(0.75); background: var(--card-light); - color: var(--sub); + color: var(--important); + font-family: var(--font-body); font-size: var(--sm); - font-weight: 400; + font-weight: var(--weight-body); letter-spacing: 0; line-height: 1; text-decoration: none; diff --git a/doc/user/assets/sass/_content.scss b/doc/user/assets/sass/_content.scss index 61f341f3f16f2..5e9311df77a85 100644 --- a/doc/user/assets/sass/_content.scss +++ b/doc/user/assets/sass/_content.scss @@ -8,7 +8,8 @@ h3, h4, h5, h6 { - line-height: 1.2; + font-family: var(--font-heading); + line-height: var(--leading-headline); code { font-size: inherit !important; @@ -23,13 +24,15 @@ h6 { } h1, h2, h3 { - font-weight: 500; - color: var(--important); + font-weight: var(--weight-heading); + color: var(--heading); } h1 { font-size: var(--h1); - margin-bottom: var(--xx-small); + letter-spacing: var(--tracking-h1); + line-height: var(--leading-h1); + margin-bottom: 12px; } .title-row { @@ -61,13 +64,14 @@ h1 { h2 { font-size: var(--h2); - margin: var(--medium) 0 var(--nano); + letter-spacing: var(--tracking-h2); + line-height: var(--leading-h2); + margin: 28px 0 12px; } h3 { font-size: var(--h3); - font-weight: 600; - margin: var(--small) 0 var(--nano); + margin: var(--small) 0 12px; } div.tab-pane > h3 { @@ -75,8 +79,8 @@ div.tab-pane > h3 { } h4, h5, h6 { - font-weight: 600; - color: var(--font-h4); + font-weight: var(--weight-heading); + color: var(--heading); } h4 { @@ -94,11 +98,21 @@ h5 { } strong { - font-weight: 500; + font-weight: var(--weight-body-strong); +} + +.content strong { + color: var(--inline-lifted); + font-weight: var(--weight-body-strong); +} + +.content em { + color: var(--inline-lifted); + font-style: italic; } p+p { - margin-top: var(--milli); + margin-top: 12px; } /* ------------------------------------------------- */ @@ -108,6 +122,7 @@ p+p { .content { border-left: 1px solid var(--divider-light); border-right: 1px solid var(--divider-light); + color: var(--body); a.anchorjs-link { @@ -181,8 +196,10 @@ p+p { margin-top: rem(1.6); } - p+table { - margin-top: rem(0.5); + * + table, + * + .table-container, + * + .table-scrollable { + margin-top: rem(1); } pre, @@ -192,7 +209,8 @@ p+p { .tip, .important { font-size: rem(1.5); - font-weight: 300; + font-weight: var(--weight-body); + line-height: var(--leading-body); } a:not(a[class]) { @@ -200,9 +218,17 @@ p+p { &, strong { color: var(--link); - font-weight: 300; - transition: all 0.2s; - transition-delay: 50ms; + font-weight: var(--weight-body); + text-decoration: underline; + text-decoration-color: color-mix(in srgb, var(--link) 30%, transparent); + text-underline-offset: 3px; + transition: color 0.15s ease, text-decoration-color 0.15s ease; + + &:hover, + &:focus { + color: var(--link-hover); + text-decoration-color: var(--link-hover); + } } &[href*="https://"] { @@ -228,10 +254,10 @@ p+p { &, strong { - color: var(--important); + color: var(--link-hover); } - border-color: var(--important); + border-color: var(--link-hover); &[href*="https://"] { &::after { @@ -296,23 +322,330 @@ p+p { } } + .whats-new-callout { + --callout-item-surface: var(--docs-card-inset); + + @include docs-feature-card($top-accent: true); + color: var(--body); + font-family: var(--font-body); + margin: var(--x-small) 0 var(--large); + overflow: hidden; + padding: var(--milli); + position: relative; + + &, + * { + box-sizing: border-box; + } + + a { + border-bottom: 0; + text-decoration: none; + } + + svg { + display: block; + flex-shrink: 0; + } + + &__header { + align-items: center; + display: flex; + gap: 14px; + justify-content: space-between; + margin-bottom: 16px; + } + + &__title-wrap { + align-items: center; + display: flex; + gap: 8px; + min-width: 0; + } + + &__sparkle { + align-items: center; + background: linear-gradient( + 145deg, + color-mix(in srgb, var(--sg-violet) 22%, transparent), + color-mix(in srgb, var(--highlight) 12%, transparent) + ); + border: 1px solid color-mix(in srgb, var(--sg-violet) 30%, transparent); + border-radius: 8px; + box-shadow: 0 0 18px color-mix(in srgb, var(--sg-violet) 16%, transparent); + color: color-mix(in srgb, var(--sg-lavender-2) 88%, var(--heading)); + display: flex; + height: 36px; + justify-content: center; + width: 36px; + + svg { + height: 18px; + width: 18px; + } + } + + h2 { + color: var(--heading); + font-size: var(--h3); + font-weight: var(--weight-heading); + line-height: 1.2; + margin: 0; + white-space: nowrap; + } + + &__version { + background: color-mix(in srgb, var(--sg-violet) 12%, transparent); + border: 1px solid color-mix(in srgb, var(--sg-violet) 24%, transparent); + border-radius: 999px; + color: color-mix(in srgb, var(--sg-lavender-2) 90%, var(--heading)); + font-family: var(--font-mono); + font-size: var(--xsm); + font-weight: var(--weight-body); + letter-spacing: 0.02em; + line-height: 1; + padding: 4px 10px; + white-space: nowrap; + } + + &__release-link { + align-items: center; + color: var(--link); + display: inline-flex; + font-size: var(--sm); + font-weight: var(--weight-body); + gap: 6px; + line-height: 1.2; + opacity: 0.92; + transition: color 0.15s ease, opacity 0.15s ease; + white-space: nowrap; + + svg { + opacity: 0.75; + transition: opacity 0.15s ease, transform 0.15s ease; + } + + &:hover, + &:focus { + color: var(--link-hover); + opacity: 1; + + svg { + opacity: 1; + transform: translate(1px, -1px); + } + } + } + + &__items { + display: grid; + gap: 12px; + } + + &__item { + @include callout-item-accent("--sg-violet"); + + align-items: center; + background: var(--callout-item-surface); + border: 1px solid var(--docs-card-divider-strong); + border-radius: 10px; + display: flex; + gap: 12px; + padding: 14px 16px; + transition: + background-color 0.18s ease, + border-color 0.18s ease, + box-shadow 0.18s ease; + + &:nth-child(2) { + @include callout-item-accent("--highlight"); + } + + &:nth-child(3) { + @include callout-item-accent("--orchid"); + } + + &:hover, + &:focus { + background: linear-gradient( + 90deg, + var(--callout-accent-soft), + color-mix(in srgb, var(--callout-item-surface) 88%, transparent) + ); + border-color: var(--callout-accent-border); + box-shadow: 0 0 0 1px color-mix(in srgb, var(--callout-accent) 8%, transparent); + + .whats-new-callout__item-heading { + color: var(--heading); + } + + .whats-new-callout__item-icon { + background: linear-gradient( + 145deg, + color-mix(in srgb, var(--callout-accent) 24%, transparent), + color-mix(in srgb, var(--callout-accent) 8%, transparent) + ); + border-color: var(--callout-accent-border); + box-shadow: 0 0 20px color-mix(in srgb, var(--callout-accent) 14%, transparent); + color: var(--heading); + } + } + } + + &__item-icon { + align-items: center; + background: color-mix(in srgb, var(--callout-accent-soft) 85%, transparent); + border: 1px solid var(--callout-accent-border); + border-radius: 8px; + color: color-mix(in srgb, var(--callout-accent) 72%, var(--heading)); + display: flex; + flex-shrink: 0; + height: 40px; + justify-content: center; + transition: + background 0.18s ease, + border-color 0.18s ease, + box-shadow 0.18s ease, + color 0.18s ease; + width: 40px; + + svg { + height: 20px; + width: 20px; + } + } + + &__item-copy { + display: grid; + gap: 6px; + min-width: 0; + } + + &__item-heading { + align-items: center; + color: var(--inline-lifted); + display: flex; + flex-wrap: wrap; + font-size: var(--sm); + font-weight: var(--weight-heading); + gap: 8px; + line-height: 1.2; + transition: color 0.18s ease; + } + + &__item-text { + color: var(--body); + display: block; + font-size: var(--sm); + font-weight: var(--weight-body); + line-height: var(--leading-body); + } + + &__badge { + border-radius: 999px; + font-family: var(--font-mono); + font-size: 10px; + font-weight: var(--weight-body-emphasis); + letter-spacing: var(--tracking-code); + line-height: 1; + padding: 4px 8px; + text-transform: uppercase; + + &--new { + background: color-mix(in srgb, var(--sg-teal-5) 42%, transparent); + border: 1px solid color-mix(in srgb, var(--sg-teal-3) 34%, transparent); + color: color-mix(in srgb, var(--sg-teal-3) 88%, var(--heading)); + } + + &--preview { + background: color-mix(in srgb, var(--table-orange) 14%, transparent); + border: 1px solid color-mix(in srgb, var(--table-orange) 28%, transparent); + color: color-mix(in srgb, var(--table-orange) 88%, var(--heading)); + } + } + + &__footer { + border-top: 1px solid var(--docs-card-divider); + color: var(--body); + font-size: var(--sm); + font-weight: var(--weight-body); + line-height: var(--leading-body); + margin: var(--milli) 0 0; + padding-top: var(--milli); + + a { + color: var(--link); + font-weight: var(--weight-body); + text-decoration: underline; + text-decoration-color: color-mix(in srgb, var(--link) 30%, transparent); + text-underline-offset: 3px; + + &:hover, + &:focus { + color: var(--link-hover); + text-decoration-color: var(--link-hover); + } + } + } + + @media(max-width: 820px) { + padding: var(--milli); + + &__header { + align-items: flex-start; + flex-direction: column; + gap: 14px; + } + + h2 { + font-size: var(--h4); + } + } + + @media(max-width: 520px) { + border-radius: var(--table-radius); + padding: 16px; + + &__title-wrap { + align-items: flex-start; + flex-wrap: wrap; + gap: 12px; + } + + &__sparkle, + &__item-icon { + height: 30px; + width: 30px; + } + + &__item { + align-items: flex-start; + gap: 12px; + padding: 14px; + } + } + } + .multilinkbox { - margin: var(--small) 0; display: flex; - gap: var(--milli); + gap: 12px; + margin: var(--small) 0; - @media(max-width: 1325px) { + @media(max-width: 860px) { flex-direction: column; - max-width: 400px; } } .linkbox { - flex: 0 0 31%; + background: var(--table-surface); + border: 1px solid var(--table-border); + border-radius: var(--table-radius); + box-shadow: var(--table-shadow); + flex: 1; + font-family: var(--font-body); + min-width: 0; + overflow: hidden; position: relative; - padding: var(--milli) var(--milli) var(--nano); - font-size: var(--sm); - @include card; &::before { content: ""; @@ -323,49 +656,53 @@ p+p { background-size: contain; } - &.book, - &.bulb, - &.doc, - &.materialize, - &.touch { - padding-top: rem(8); - } - &.materialize::before { background-image: url("../images/materialize_favicon_32.png"); margin-left: -10px; } - &.book::before { - background-image: url("../images/icon_book.png"); - } - - &.bulb::before { - background-image: url("../images/icon_bulb.png"); - } - - &.doc::before { - background-image: url("../images/icon_doc.png"); - } - - &.touch::before { - background-image: url("../images/icon_touch.png"); - } + &.book::before { background-image: url("../images/icon_book.png"); } + &.bulb::before { background-image: url("../images/icon_bulb.png"); } + &.doc::before { background-image: url("../images/icon_doc.png"); } + &.touch::before { background-image: url("../images/icon_touch.png"); } .title { - text-transform: uppercase; - font-size: 12px; + background: var(--table-surface-header); + border-bottom: 1px solid var(--table-grid); + color: var(--table-text); + font-family: var(--font-heading); + font-size: 11px; font-weight: 500; - color: var(--important); - margin-bottom: var(--nano); + letter-spacing: var(--tracking-eyebrow); + padding: 12px 20px; + text-transform: uppercase; } ul { list-style: none; + margin: 0; + padding: 6px 0; + } + + li { + margin: 0; } a { - font-weight: 300; + color: var(--link); + display: block; + font-size: var(--sm); + font-weight: var(--weight-body); + padding: 7px 20px; + text-decoration: none; + transition: color 0.15s, background-color 0.15s; + + &:hover, + &:focus { + background: rgba(255, 255, 255, 0.03); + border-bottom: none; + color: var(--important); + } } } @@ -397,10 +734,10 @@ p+p { figcaption { padding: var(--nano) var(--milli); font-size: var(--xsm); - font-weight: 300; - color: var(--sub); + font-weight: var(--weight-body); + color: var(--caption); font-style: italic; - line-height: 1.5; + line-height: var(--leading-body); } table { @@ -411,8 +748,8 @@ p+p { border-radius: var(--table-radius); box-shadow: var(--table-shadow); font-size: var(--sm); - font-weight: 300; - line-height: rem(2.45); + font-weight: var(--weight-body); + line-height: var(--leading-body); overflow: hidden; table-layout: auto; width: 100%; @@ -426,18 +763,17 @@ p+p { thead th { background: var(--table-surface-header); - color: var(--table-heading); - font-family: "Geist Mono", Courier, monospace; + color: var(--table-body); + font-family: var(--font-heading); font-size: var(--xsm); - font-variant-ligatures: none; - font-weight: 600; - letter-spacing: 0.12em; + font-weight: 500; + letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; } tbody th { color: var(--table-text); - font-weight: 600; + font-weight: 500; vertical-align: top; } @@ -481,7 +817,7 @@ p+p { table a:not(a[class]) { color: var(--table-link); - font-weight: 600; + font-weight: var(--weight-body-strong); &:hover, &:focus { @@ -491,46 +827,61 @@ p+p { .table-container { overflow-x: auto; - } - .mz-offerings-container { - border-radius: var(--table-radius); - overflow-x: visible; + &.mz-offerings-container { + border-radius: var(--table-radius); + max-width: 100%; + overflow-x: visible; + } } .mz-offerings { - background: var(--table-surface); - border: 1px solid var(--table-border); - border-radius: var(--table-radius); - box-shadow: var(--table-shadow); - font-family: "Geist", Arial, sans-serif; + @include docs-feature-card; + color: var(--body); + font-family: var(--font-body); overflow: hidden; width: 100%; + &, + * { + box-sizing: border-box; + } + + a:not(.mz-offerings__action-primary) { + border-bottom: 0; + text-decoration: none; + } + + svg { + display: block; + flex-shrink: 0; + } + &__headers { - background: rgba(255, 255, 255, 0.015); - border-bottom: 1px solid var(--table-grid); + background: color-mix(in srgb, var(--bg) 35%, transparent); + border-bottom: 1px solid var(--docs-card-divider-strong); display: grid; - grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) minmax(175px, 210px); + grid-template-columns: var(--offerings-cols); } &__col-label { - color: var(--table-muted); - font-family: "Geist Mono", Courier, monospace; - font-size: 10px; - letter-spacing: 0.1em; + color: var(--heading); + font-family: var(--font-heading); + font-size: var(--xsm); + font-weight: var(--weight-heading); + letter-spacing: var(--tracking-eyebrow); padding: 14px 24px; text-transform: uppercase; & + & { - border-left: 1px solid var(--table-grid); + border-left: 1px solid var(--docs-card-divider); } } &__row { - border-top: 1px solid rgba(255, 255, 255, 0.06); + border-top: 1px solid var(--docs-card-divider); display: grid; - grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) minmax(175px, 210px); + grid-template-columns: var(--offerings-cols); position: relative; transition: background-color 0.15s ease; @@ -555,36 +906,39 @@ p+p { } &--cloud { - --offering-accent: var(--table-green); - --offering-badge-bg: var(--table-green-bg); - --offering-badge-border: var(--table-green-border); - --offering-action-bg: rgba(52, 211, 153, 0.08); - --offering-action-border: rgba(52, 211, 153, 0.20); - --offering-action-hover: rgba(52, 211, 153, 0.14); - --offering-row-glow: rgba(52, 211, 153, 0.04); - --offering-chip-yes-bg: rgba(52, 211, 153, 0.15); + @include offering-row-theme("--table-green"); } &--self { - --offering-accent: var(--table-blue); - --offering-badge-bg: var(--table-blue-bg); - --offering-badge-border: var(--table-blue-border); - --offering-action-bg: rgba(129, 140, 248, 0.08); - --offering-action-border: rgba(129, 140, 248, 0.20); - --offering-action-hover: rgba(129, 140, 248, 0.14); - --offering-row-glow: rgba(129, 140, 248, 0.04); - --offering-chip-yes-bg: rgba(129, 140, 248, 0.15); + @include offering-row-theme("--sg-violet"); + + // Identity + CTA: neutral surfaces; purple only on the row stripe + inner table + --offering-badge-bg: var(--surface-inset); + --offering-badge-border: var(--border-subtle); + --offering-cta-accent: var(--inline-lifted); + --offering-action-bg: var(--surface-subtle); + --offering-action-border: color-mix(in srgb, var(--sg-lavender-2) 28%, var(--border-subtle)); + --offering-action-hover: var(--surface-inset); + + .mz-offerings__icon-tile { + color: var(--sub); + } + + .mz-offerings__badge { + color: var(--caption); + } + + .mz-offerings__action-primary { + &:hover, + &:focus { + border-color: color-mix(in srgb, var(--sg-lavender-2) 40%, var(--border-subtle)); + color: var(--heading); + } + } } &--emulator { - --offering-accent: var(--table-orange); - --offering-badge-bg: var(--table-orange-bg); - --offering-badge-border: var(--table-orange-border); - --offering-action-bg: rgba(251, 146, 60, 0.08); - --offering-action-border: rgba(251, 146, 60, 0.20); - --offering-action-hover: rgba(251, 146, 60, 0.14); - --offering-row-glow: rgba(251, 146, 60, 0.04); - --offering-chip-yes-bg: rgba(251, 146, 60, 0.15); + @include offering-row-theme("--table-orange"); } } @@ -606,8 +960,8 @@ p+p { align-items: center; background: var(--offering-badge-bg); border: 1px solid var(--offering-badge-border); - border-radius: 6px; - color: var(--offering-accent); + border-radius: 8px; + color: color-mix(in srgb, var(--offering-identity-accent, var(--offering-accent)) 72%, var(--heading)); display: flex; flex-shrink: 0; height: 32px; @@ -626,51 +980,54 @@ p+p { background: var(--offering-badge-bg); border: 1px solid var(--offering-badge-border); border-radius: 4px; - color: var(--offering-accent); + color: var(--offering-identity-accent, var(--offering-accent)); display: inline-flex; - font-family: "Geist Mono", Courier, monospace; + font-family: var(--font-mono); font-size: 10px; - letter-spacing: 0.04em; + letter-spacing: var(--tracking-code); padding: 3px 8px; } &__badge-popular { align-items: center; - background: rgba(251, 191, 36, 0.08); - border: 1px solid rgba(251, 191, 36, 0.22); + background: var(--table-yellow-bg); + border: 1px solid var(--table-yellow-border); border-radius: 4px; - color: #fbbf24; + color: var(--table-yellow); display: inline-flex; - font-family: "Geist Mono", Courier, monospace; + font-family: var(--font-mono); font-size: 10px; gap: 4px; - letter-spacing: 0.04em; + letter-spacing: var(--tracking-code); padding: 3px 8px; } &__name { - color: var(--table-text); - font-size: 14px; - font-weight: 500; + color: var(--inline-lifted); + font-size: var(--sm); + font-weight: var(--weight-heading); letter-spacing: -0.015em; line-height: 1.35; margin: 0; } &__tagline { - color: var(--table-muted); - font-family: "Geist Mono", Courier, monospace; - font-size: 11px; + color: var(--body); + font-family: var(--font-mono); + font-size: var(--xsm); line-height: 1.4; margin: 0; + opacity: 0.88; } &__desc { - border-left: 1px solid var(--table-grid); - color: var(--table-body); - font-size: 13.5px; - line-height: 1.75; - padding: 28px; + border-left: 1px solid var(--docs-card-divider); + color: var(--body); + font-size: var(--sm); + font-weight: var(--weight-body); + line-height: var(--leading-body); + min-width: 0; + padding: rem(2.4); p { margin: 0; @@ -678,83 +1035,119 @@ p+p { } &__nested { - margin-top: 20px; + margin-top: rem(1); + min-width: 0; } &__nested-note { align-items: center; - color: var(--offering-accent); + color: var(--offering-edition-label, var(--offering-accent)); display: flex; - font-family: "Geist Mono", Courier, monospace; - font-size: 11.5px; - gap: 6px; - margin-bottom: 12px; - opacity: 0.8; + font-family: var(--font-mono); + font-size: var(--xsm); + gap: rem(0.6); + margin-bottom: rem(1); } &__nested-wrap { - background: rgba(0, 0, 0, 0.25); - border: 1px solid rgba(255, 255, 255, 0.06); - border-radius: 10px; + background: var(--offering-nested-surface, var(--surface-inset)); + border: 1px solid var(--offering-nested-border, var(--border-subtle)); + border-radius: rem(1); + margin-top: rem(1); + max-width: 100%; + min-width: 0; overflow: hidden; } &__nested-table { + background: transparent; + border: none; border-collapse: collapse; - font-size: 12px; - table-layout: auto; + border-radius: 0; + box-shadow: none; + font-size: var(--xsm); + margin-top: 0; + min-width: 0; + table-layout: fixed; width: 100%; thead tr { - border-bottom: 1px solid rgba(255, 255, 255, 0.06); + background: var(--offering-nested-header-bg, var(--surface-inset)); + border-bottom: 1px solid var(--offering-nested-border, var(--border-subtle)); } - th { - font-family: "Geist Mono", Courier, monospace; - font-size: 10px; - font-weight: 500; - letter-spacing: 0.08em; - padding: 10px 16px; + thead th { + background: transparent; + border: none; + color: var(--caption); + font-family: var(--font-mono); + font-size: rem(1); + font-weight: var(--weight-body-emphasis); + letter-spacing: 0.06em; + padding: rem(0.75) rem(1); text-align: left; text-transform: uppercase; + vertical-align: middle; + + &.mz-offerings__th-com { + text-align: center; + } } + th, td { - padding: 10px 16px; + border-bottom: none; + border-left: none; + border-top: none; + padding: rem(0.75) rem(1); + vertical-align: middle; } tbody tr + tr { - border-top: 1px solid rgba(255, 255, 255, 0.04); + border-top: 1px solid var(--border-faint); + } + + .mz-offerings__chip--yes { + background: transparent; + color: var(--offering-edition-value, var(--offering-accent)); } } &__th-ent { - color: var(--offering-accent); - width: 120px; + color: var(--offering-edition-heading, var(--offering-accent)); + width: 24%; } &__th-com { - color: var(--table-heading); - width: 120px; + color: var(--caption); + text-align: center; + width: 24%; } &__td-feature { - color: var(--table-muted); - font-family: "Geist Mono", Courier, monospace; - white-space: nowrap; + color: var(--caption); + font-family: var(--font-mono); + line-height: 1.35; + white-space: normal; + width: 52%; } &__td-ent { - color: var(--offering-accent); - font-family: "Geist Mono", Courier, monospace; + color: var(--offering-edition-value, var(--offering-accent)); + font-family: var(--font-mono); + + &--neutral { + color: var(--inline-lifted); + } } &__td-com { - color: var(--table-heading); - font-family: "Geist Mono", Courier, monospace; + color: var(--caption); + font-family: var(--font-mono); + text-align: center; - &--hi { - color: var(--table-body); + .mz-offerings__chip { + margin-inline: auto; } } @@ -762,32 +1155,29 @@ p+p { align-items: center; border-radius: 50%; display: inline-flex; - height: 20px; + flex-shrink: 0; + height: rem(1.75); justify-content: center; - width: 20px; - - &--yes { - background: var(--offering-chip-yes-bg); - color: var(--offering-accent); - } + width: rem(1.75); &--no { - background: rgba(255, 255, 255, 0.04); - color: var(--table-heading); + background: var(--border-faint); + color: var(--caption); } } &__cta { - border-left: 1px solid var(--table-grid); + border-left: 1px solid var(--docs-card-divider); display: flex; flex-direction: column; - gap: 10px; - padding: 24px; + gap: 8px; + min-width: 0; + padding: 20px 16px; p { - color: var(--table-body); - font-size: 13px; - line-height: 1.7; + color: var(--body); + font-size: var(--sm); + line-height: var(--leading-body); margin: 0; } } @@ -797,73 +1187,94 @@ p+p { background: var(--offering-action-bg); border: 1px solid var(--offering-action-border); border-radius: 6px; - color: var(--offering-accent); + box-sizing: border-box; + color: var(--offering-cta-accent, var(--offering-accent)); display: flex; - font-size: 13px; - font-weight: 500; - gap: 8px; + font-family: var(--font-body); + font-size: var(--xsm); + font-weight: var(--weight-body); + gap: 6px; justify-content: space-between; - padding: 10px 14px; + padding: 7px 10px; text-decoration: none; - transition: background-color 0.15s, border-color 0.15s; - white-space: nowrap; + transition: background-color 0.15s ease, border-color 0.15s ease; + white-space: normal; &:hover, &:focus { background: var(--offering-action-hover); - border-color: var(--offering-accent); - color: var(--offering-accent); + border-color: var(--offering-cta-accent, var(--offering-accent)); + color: var(--offering-cta-accent, var(--offering-accent)); text-decoration: none; } } &__action-secondary { align-items: center; - border-radius: 6px; - color: var(--table-muted); + border-radius: 5px; + color: var(--body); display: flex; - font-size: 12px; - gap: 6px; - padding: 6px 14px; + font-size: var(--xsm); + font-weight: var(--weight-body); + gap: 5px; + padding: 4px 10px; text-decoration: none; - transition: color 0.15s; - white-space: nowrap; + transition: color 0.15s ease; + white-space: normal; + + svg { + opacity: 0.75; + } &:hover, &:focus { - color: var(--table-body); + color: var(--inline-lifted); text-decoration: none; + + svg { + opacity: 1; + } } } &__footer { align-items: center; - background: rgba(255, 255, 255, 0.01); - border-top: 1px solid rgba(255, 255, 255, 0.05); + background: color-mix(in srgb, var(--bg) 40%, transparent); + border-top: 1px solid var(--docs-card-divider); display: flex; justify-content: space-between; padding: 14px 24px; } + &__footer-links { + align-items: center; + display: flex; + gap: var(--milli); + } + &__footer-label { - color: var(--table-grid); - font-family: "Geist Mono", Courier, monospace; - font-size: 11px; - letter-spacing: 0.04em; + color: var(--caption); + font-family: var(--font-mono); + font-size: var(--xsm); + letter-spacing: var(--tracking-code); + opacity: 0.75; } &__footer-link { align-items: center; - color: var(--table-muted); + color: var(--link); display: inline-flex; - font-size: 12px; + font-size: var(--xsm); + font-weight: var(--weight-body); gap: 6px; + opacity: 0.92; text-decoration: none; - transition: color 0.15s; + transition: color 0.15s ease, opacity 0.15s ease; &:hover, &:focus { - color: var(--table-body); + color: var(--link-hover); + opacity: 1; text-decoration: none; } } @@ -884,13 +1295,21 @@ p+p { &__desc, &__cta { border-left: none; - border-top: 1px solid var(--table-grid); + border-top: 1px solid var(--docs-card-divider); } &__identity { padding-bottom: 20px; } } + + @media (max-width: 480px) { + &__footer { + align-items: flex-start; + flex-direction: column; + gap: 8px; + } + } } pre { @@ -898,8 +1317,11 @@ p+p { border-radius: 4px; border: 1px solid var(--divider-light); color: $black-v2; - font-family: Courier, monospace; + font-family: var(--font-mono); font-size: rem(1.5); + font-weight: var(--weight-body); + letter-spacing: var(--tracking-code); + line-height: var(--leading-code); margin: rem(1) 0 rem(0.5); overflow: auto; padding: rem(1.6); @@ -913,10 +1335,12 @@ p+p { } code { - font-family: "Geist Mono", Courier, monospace; + font-family: var(--font-mono); font-variant-ligatures: none; font-size: rem(1.3); font-weight: 500; + letter-spacing: var(--tracking-code); + line-height: var(--leading-code); background: var(--code-block); border: 1px solid var(--divider-light); box-sizing: border-box; @@ -1465,7 +1889,7 @@ p+p { top: 10px; font-size: rem(1.2); - font-weight: 300; + font-weight: var(--weight-body); border: none; background-color: $grey-light; color: var(--black); @@ -1475,7 +1899,7 @@ p+p { border-radius: $border-radius; white-space: nowrap; line-height: 2; - font-family: 'Geist', sans-serif; + font-family: var(--font-body); &.success { opacity: 0.8; @@ -1774,9 +2198,11 @@ body.dark { .caption { font-size: rem(1.2); - font-weight: 300; + font-weight: var(--weight-body); + line-height: var(--leading-body); padding: var(--nano); font-style: italic; + color: var(--caption); } td.copyableCode{ diff --git a/doc/user/assets/sass/_highlight.scss b/doc/user/assets/sass/_highlight.scss index 552cb0217ba38..de93b6938acd2 100644 --- a/doc/user/assets/sass/_highlight.scss +++ b/doc/user/assets/sass/_highlight.scss @@ -3,6 +3,11 @@ /* Background */ .chroma { background-color: #ffffff; + font-family: var(--font-mono); + font-size: rem(1.5); + font-weight: 400; + letter-spacing: var(--tracking-code); + line-height: var(--leading-code); } /* Error */ diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index 2478bb71d314d..55e984aee012d 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -118,7 +118,7 @@ table.inline-headings { .DocSearch-Button-Placeholder { color: var(--body); font-size: rem(1.6); - font-weight: 300; + font-weight: var(--weight-body); @media(max-width: 768px) { display: initial; @@ -230,8 +230,8 @@ table.inline-headings { position: relative; padding: 5px 26px 5px 10px; border-radius: 6px; - color: var(--sub); - font-weight: 300; + color: var(--important); + font-weight: var(--weight-body); line-height: 1.35; text-decoration: none; word-wrap: break-word; @@ -240,7 +240,7 @@ table.inline-headings { &.active { color: var(--highlight); background: rgba(129, 154, 123, 0.18); - font-weight: 400; + font-weight: var(--weight-body-strong); &::before { content: ""; @@ -299,7 +299,7 @@ table.inline-headings { } code { - font-family: "Geist Mono", Courier, monospace; + font-family: var(--font-mono); } .no-children>a, @@ -333,8 +333,9 @@ table.inline-headings { li.level-1 { &>a { color: var(--important); + font-family: var(--font-heading); font-size: rem(1.55); - font-weight: 300; + font-weight: var(--weight-body); letter-spacing: 0; text-transform: none; @@ -476,12 +477,13 @@ table.inline-headings { h2 { font-size: rem(1.4); - font-weight: 300; + font-weight: var(--weight-body); letter-spacing: 0; + line-height: var(--leading-headline); margin: 0 0 rem(1.4) 0; padding: 0; display: inline-block; - color: var(--sub); + color: var(--important); text-transform: none; } @@ -504,8 +506,8 @@ table.inline-headings { a { display: block; - color: var(--sub); - font-weight: 300; + color: var(--important); + font-weight: var(--weight-body); line-height: 1.35; position: relative; text-decoration: none; @@ -547,7 +549,7 @@ table.inline-headings { } code { - font-family: "Geist Mono", Courier, monospace; + font-family: var(--font-mono); font-variant-ligatures: none; } @@ -556,9 +558,9 @@ table.inline-headings { margin-top: var(--x-small); padding-top: var(--x-small); border-top: 1px solid var(--divider-light); - color: var(--sub); + color: var(--important); font-size: var(--sm); - font-weight: 300; + font-weight: var(--weight-body); text-decoration: none; &:hover, @@ -607,7 +609,7 @@ table.inline-headings { a:not([class]), button { color: var(--sub) !important; - font-weight: 300 !important; + font-weight: var(--weight-body) !important; text-decoration: none; &[href*="https://"] { diff --git a/doc/user/assets/sass/_mixins.scss b/doc/user/assets/sass/_mixins.scss index 12de2ccee5045..c3027041f31ac 100644 --- a/doc/user/assets/sass/_mixins.scss +++ b/doc/user/assets/sass/_mixins.scss @@ -5,3 +5,86 @@ box-shadow: var(--shadow-default); } + +// Homepage promo blocks: What's new callout + offerings table +@mixin docs-feature-card($top-accent: false) { + $surface: + radial-gradient(120% 85% at 50% -35%, var(--docs-card-glow), transparent 58%), + linear-gradient(180deg, transparent 55%, color-mix(in srgb, var(--docs-card-glow) 45%, transparent) 100%), + var(--docs-card-surface, var(--table-surface)); + + @if $top-accent { + background: + linear-gradient( + 90deg, + transparent 0%, + color-mix(in srgb, var(--brand) 45%, transparent) 35%, + color-mix(in srgb, var(--brand) 90%, var(--sg-lavender-2)) 50%, + color-mix(in srgb, var(--brand) 45%, transparent) 65%, + transparent 100% + ) 0 0 / 100% 2px no-repeat border-box, + $surface; + } @else { + background: $surface; + } + + border: 1px solid var(--docs-card-border, var(--table-border)); + border-radius: var(--table-radius); + box-shadow: + 0 1px 0 color-mix(in srgb, var(--heading) 4%, transparent) inset, + 0 16px 40px color-mix(in srgb, var(--bg) 35%, transparent); + + @if $top-accent { + border-top: 2px solid transparent; + } +} + +@mixin callout-item-accent($token) { + --callout-accent: var(#{$token}); + --callout-accent-soft: color-mix(in srgb, var(#{$token}) 10%, transparent); + --callout-accent-border: color-mix(in srgb, var(#{$token}) 22%, transparent); +} + +@mixin offering-row-theme($accent, $cta: null) { + $cta-token: if($cta, $cta, $accent); + + --offering-accent: var(#{$accent}); + --offering-badge-bg: color-mix(in srgb, var(#{$accent}) 12%, transparent); + --offering-badge-border: color-mix(in srgb, var(#{$accent}) 24%, transparent); + --offering-row-glow: color-mix(in srgb, var(#{$accent}) 4%, transparent); + --offering-cta-accent: var(#{$cta-token}); + --offering-action-bg: color-mix(in srgb, var(#{$cta-token}) 8%, transparent); + --offering-action-border: color-mix(in srgb, var(#{$cta-token}) 22%, transparent); + --offering-action-hover: color-mix(in srgb, var(#{$cta-token}) 14%, transparent); +} + +@mixin docs-page-mesh-grid-layers() { + background-image: + var(--docs-mesh-icons), + linear-gradient(to right, var(--docs-mesh-grid-major) 1px, transparent 1px), + linear-gradient(to bottom, var(--docs-mesh-grid-major) 1px, transparent 1px), + linear-gradient(to right, var(--docs-mesh-grid-minor) 1px, transparent 1px), + linear-gradient(to bottom, var(--docs-mesh-grid-minor) 1px, transparent 1px), + radial-gradient(circle, var(--docs-mesh-dot) var(--docs-mesh-dot-size), transparent var(--docs-mesh-dot-size)); +} + +@mixin docs-page-mesh-size($icons-step, $major-step, $minor-step, $dot-step, $accent-cover: null) { + @if $accent-cover { + background-size: + $accent-cover, + $icons-step $icons-step, + $major-step $major-step, + $major-step $major-step, + $minor-step $minor-step, + $minor-step $minor-step, + $dot-step $dot-step; + } @else { + background-size: + $icons-step $icons-step, + $major-step $major-step, + $major-step $major-step, + $minor-step $minor-step, + $minor-step $minor-step, + $dot-step $dot-step; + } +} diff --git a/doc/user/assets/sass/_nav.scss b/doc/user/assets/sass/_nav.scss index b075c3296244e..3eb50ae54d537 100644 --- a/doc/user/assets/sass/_nav.scss +++ b/doc/user/assets/sass/_nav.scss @@ -52,7 +52,9 @@ } a:not([class*="btn"]) { - font-weight: 300; + color: var(--important); + font-family: var(--font-body); + font-weight: var(--weight-body); text-decoration: none; border-bottom: none; @@ -64,10 +66,16 @@ } } + .btn { + font-family: var(--font-body); + font-weight: var(--weight-body); + } + &-logo { display: flex; align-items: center; - font-weight: 600; + font-family: var(--font-heading); + font-weight: 500; font-size: rem(1.8); color: var(--important); @@ -151,7 +159,7 @@ button.show-topics { display: none; margin: 0 0 var(--small) !important; text-align: left; - font-weight: 300; + font-weight: var(--weight-body); font-size: var(--base); color: var(--sub); diff --git a/doc/user/assets/sass/_railroad_diagrams.scss b/doc/user/assets/sass/_railroad_diagrams.scss index ad4d68897ce6e..6d5421e9ff3ad 100644 --- a/doc/user/assets/sass/_railroad_diagrams.scss +++ b/doc/user/assets/sass/_railroad_diagrams.scss @@ -26,7 +26,7 @@ text.terminal, text.nonterminal, text.regexp { - font-family: "Geist", sans-serif; + font-family: var(--font-body); font-size: 14px; fill: $black; } diff --git a/doc/user/content/_index.md b/doc/user/content/_index.md index 25f5e6b356877..cc7c4d412b132 100644 --- a/doc/user/content/_index.md +++ b/doc/user/content/_index.md @@ -13,19 +13,7 @@ aliases: {{% include-headless "/headless/materialize-intro/intro" %}} -{{< callout >}} -## What's new! - -- **MCP servers and Agent skills**: - - [MCP server for agents: give your production AI agents fresh context from - Materialize](/releases/#mcp-server-for-agents) - - [MCP server for developers: give coding agents observability into your - Materialize environment](/releases/#mcp-server-for-developers) - - [Agent skills](/integrations/coding-agent-skills/) - -For more information on these and other changes, see the [Release Notes](/releases/). - -{{}} +{{< whats-new-callout >}} ## Materialize offerings diff --git a/doc/user/layouts/partials/head.html b/doc/user/layouts/partials/head.html index 205e0e2dce74e..738ab286a41f4 100644 --- a/doc/user/layouts/partials/head.html +++ b/doc/user/layouts/partials/head.html @@ -12,12 +12,9 @@ {{ end }} {{ $title }} - - - + + + diff --git a/doc/user/layouts/shortcodes/materialize-offerings-table.html b/doc/user/layouts/shortcodes/materialize-offerings-table.html index 4955964ecc80f..89a1658dc4828 100644 --- a/doc/user/layouts/shortcodes/materialize-offerings-table.html +++ b/doc/user/layouts/shortcodes/materialize-offerings-table.html @@ -7,7 +7,6 @@
Get Started 🚀
-
@@ -18,10 +17,6 @@
Fully Managed - - - Popular -

Materialize Cloud

@@ -31,11 +26,21 @@

Materialize Cloud is a fully-managed service for Materialize.

-

Sign up for a free trial account on Materialize Cloud and try out the Quickstart.

+ + Start free trial + + + + + View pricing +
-
@@ -53,41 +58,75 @@

Kubernetes · Enterprise & Community

-

Deploy and operate Materialize in your Kubernetes environment. Whereas Materialize Cloud gives you a fully managed service, Materialize Self-Managed allows you to deploy Materialize in your own infrastructure.

+

Deploy Materialize in your own Kubernetes environment with full control over infrastructure, compliance boundaries, and resource allocation.

- Self-managed Materialize is available as a paid Enterprise Edition and a free Community Edition: + Available in two editions:

- - - + + + - - - + + + - - - + + + - - - + + + + + + + + + + + + + - - + +
FeatureEnterprise EditionCommunity EditionFeatureEnterpriseCommunity
Maximum Usage Limits (Memory)None24 GiBMemory LimitUnlimited24 GB
Maximum Usage Limits (Disk)None48 GiBDisk LimitUnlimited48 GB
SupportPer terms of your licenseCommunity slack or messenger appSLA Support + + + + + + + +
SSO / RBAC + + + + + + + +
Audit Logging + + + + + + + +
LicenseEnterprise License - Contact UsBSL/Privacy PolicyCommercialBSL
@@ -95,11 +134,21 @@
-
@@ -117,19 +166,36 @@

Docker · No account needed

-

Materialize Emulator is an all-in-one Docker image that provides the fastest way to get hands-on experience with Materialize for local development.

+

An all-in-one Docker image for local development. Get hands-on with Materialize's streaming SQL engine in seconds, entirely offline.

diff --git a/doc/user/layouts/shortcodes/whats-new-callout.html b/doc/user/layouts/shortcodes/whats-new-callout.html new file mode 100644 index 0000000000000..80ac651d86dbe --- /dev/null +++ b/doc/user/layouts/shortcodes/whats-new-callout.html @@ -0,0 +1,94 @@ +
+
+
+ +

What's new

+ {{- $releases := where .Site.Pages "Section" "releases" -}} + {{- $released := where $releases ".Params.released" true -}} + {{- $latest := index (sort $released "Date" "desc") 0 -}} + {{- with $latest -}} + {{ .Title | replaceRE "Materialize " "" }} + {{- end -}} +
+ + Release notes + + +
+ + + + +
diff --git a/doc/user/static/fonts/faire-sprig-sans-mono/FAIRE-SprigSansMono-Medium.woff2 b/doc/user/static/fonts/faire-sprig-sans-mono/FAIRE-SprigSansMono-Medium.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..8d3c624ae0ef053ebcf90b95095a7121128eb735 GIT binary patch literal 39580 zcmV(_K-9l?Pew9NR8&s@0GgZt4FCWD0QLL;0GdVs0RR9100000000000000000000 z0000Dg5^URfl?cm0vx3d24Fu^R6$fe0J0(hHUcCAi8cfV1&MM8AR7$zSI{YINrXLI z)olnssW#0|d-4*-?T>J`WD*di;>>`saR4#f%4Yxn|DTm~$j}650NU27Zrg85aIuH7 zT2BlWg(DOc9?eIejjFoq7&#=ZQ~k2nohPo*_V{e5LiIwOOAEpNhRAc&&544FbbJsT z8x9%YExEsb4(i(e(^zmWIC+L!)0@%odBp9SbqW!l!%31P<4lL3Top*l17UboB*YU3 zNg0=SLBlOS-ExRR@Z}r|36ex@8gdLQ9MS0@H#GYUBO=0xz@&Fhp(xxbpa_3iURI^I zY}Bf%I%k@a8G6OwW{6q~a>xpj?cz83qpT4xxwMo)f4lpq?}z=}$Hk*|oKJg#a(5Fy z{vr`PAin<$-=0#{uyGk9N!EGcc^>BW=f15OBZMAf&>{?+(STi83E~$U3-ecF zH%2!`em`bof{M_8zx>vH?t2rq=6`Zjlutpe@g$oq(ojg8$C!=88K7-;2V8M*l!PLP zfRqv~h>eQb%(-&9weEGH3thMwudC9JTKZeNa^?DeF4B+4bBHq00U1JChUij2MYu|uprXy1`?vq;KhN9d|1}AN?ArvA)Ae~;{kv-qsYddnyzn}C{%E!Q6 z2<`${AXGzEK(f=76B^azgqs3k_Wamw{&Tbcv6QY~zV+U7a=+>RiAy^*p@PRCL5gW&H*1n$i6szd#>XNi8Mqm;efIGU$e4ZsSY2c4}jFIa6Pbu>g3w9oL|4Qnff&y zT$=O}WtlFS**C8gb}3zXp-?6qp*si2Dg5aW)8{ucyTI?3!(v5A0F(ew zIxm(NAc%KI$CLq3auJ{d!AlvsB%PCj1Lc^)D?a^wUWzZLP=7x@U%%ewdFw*`&n{pU zSO8h;-b8X!ESMF%sKN<{u%I{qJf8n&KTvHh{09kC$@7I!-Nf2dj4{I4@nDd6hk;?> z2|iehEwjj276wcvg$(g^@@`+(e)mu2`X&m3QS_H~RyZknKqQnZRl4r33)cM2Lt7GU zVg?*%o`f#3oY6-`)r+c#Yw!8oI zkD|iT&xuomV89(8!NSCFsjij=nrWk}bXkTPUHWi$$GZ7qv`f@uw(tvKb__xSG(S=?)9YkUh$q!ed7lu;IAUPoDzg&Do~

4uDNI$G@-Ay%vO^VXmUf~S+E!^z9q2?; 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 cNz?@^4ZhV@1Jwp%M80GF#n8~^|S literal 0 HcmV?d00001 diff --git a/doc/user/static/fonts/faire-sprig-sans-mono/FAIRE-SprigSansMono-Regular.woff2 b/doc/user/static/fonts/faire-sprig-sans-mono/FAIRE-SprigSansMono-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..61bc7e8a81a23eca164295872c275e3cc70887c5 GIT binary patch literal 38552 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 QBz}E+@2z~G8$SU60LTvO_W%F@ literal 0 HcmV?d00001 diff --git a/doc/user/static/fonts/faire-sprig-sans/FAIRE-SprigSans-Regular.woff2 b/doc/user/static/fonts/faire-sprig-sans/FAIRE-SprigSans-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..00027fd7ead9be2d08ac1e0be2450e1acefc4f29 GIT binary patch literal 46904 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

Q6hU)G1~sMx~E<%ap{hv2Ffa9Dlk&I4dq`QQ#H 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 D9XSz# literal 0 HcmV?d00001 diff --git a/doc/user/static/images/docs-mesh/data-icons-dark.svg b/doc/user/static/images/docs-mesh/data-icons-dark.svg new file mode 100644 index 0000000000000..0aa0a9fb1634e --- /dev/null +++ b/doc/user/static/images/docs-mesh/data-icons-dark.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/user/static/images/docs-mesh/data-icons-light.svg b/doc/user/static/images/docs-mesh/data-icons-light.svg new file mode 100644 index 0000000000000..967f2414983ab --- /dev/null +++ b/doc/user/static/images/docs-mesh/data-icons-light.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From ce3a654328bd9c63ec07553067bb67ecc96ea2a0 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Mon, 29 Jun 2026 17:52:46 -0400 Subject: [PATCH 14/25] background pattern small adjustments. --- doc/user/assets/sass/_base.scss | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/user/assets/sass/_base.scss b/doc/user/assets/sass/_base.scss index 9664f36802e67..58c46e146fe8c 100644 --- a/doc/user/assets/sass/_base.scss +++ b/doc/user/assets/sass/_base.scss @@ -201,9 +201,9 @@ body.dark { // Style guide background mesh (dark): grid + data icons + purple accent on the right --docs-mesh-icons: url("/images/docs-mesh/data-icons-dark.svg"); - --docs-mesh-dot: #1e293b; - --docs-mesh-grid-minor: rgba(255, 255, 255, 0.035); - --docs-mesh-grid-major: rgba(255, 255, 255, 0.065); + --docs-mesh-dot: color-mix(in srgb, #1e293b 50%, transparent); + --docs-mesh-grid-minor: rgba(255, 255, 255, 0.030); + --docs-mesh-grid-major: rgba(255, 255, 255, 0.055); --docs-mesh-accent: color-mix(in srgb, var(--sg-lavender-6) 16%, transparent); --shadow-default: 0 #{rem(0.625)} #{rem(1.5)} 0 rgba(0, 0, 0, 0.4); From 4691aea29c0692610d817b9a6dc100ba3b5b9cc5 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Mon, 29 Jun 2026 23:15:18 -0400 Subject: [PATCH 15/25] light mode adjustments. --- doc/user/assets/sass/_base.scss | 103 ++++++++++----- doc/user/assets/sass/_content.scss | 121 ++++++++++++++---- doc/user/assets/sass/_layout.scss | 57 +++++++++ doc/user/assets/sass/_mixins.scss | 43 ++++--- .../images/docs-mesh/data-icons-dark.svg | 75 ++++++++++- .../images/docs-mesh/data-icons-light.svg | 82 +++++++++++- 6 files changed, 396 insertions(+), 85 deletions(-) diff --git a/doc/user/assets/sass/_base.scss b/doc/user/assets/sass/_base.scss index 58c46e146fe8c..c7a870112745b 100644 --- a/doc/user/assets/sass/_base.scss +++ b/doc/user/assets/sass/_base.scss @@ -198,13 +198,16 @@ body.dark { --docs-card-divider-strong: color-mix(in srgb, var(--divider-light) 72%, transparent); --docs-card-glow: color-mix(in srgb, var(--sg-lavender-6) 14%, transparent); --docs-card-inset: color-mix(in srgb, var(--bg) 55%, transparent); + --docs-card-shadow: + 0 1px 0 color-mix(in srgb, var(--heading) 4%, transparent) inset, + 0 16px 40px color-mix(in srgb, var(--bg) 35%, transparent); // Style guide background mesh (dark): grid + data icons + purple accent on the right --docs-mesh-icons: url("/images/docs-mesh/data-icons-dark.svg"); - --docs-mesh-dot: color-mix(in srgb, #1e293b 50%, transparent); - --docs-mesh-grid-minor: rgba(255, 255, 255, 0.030); - --docs-mesh-grid-major: rgba(255, 255, 255, 0.055); - --docs-mesh-accent: color-mix(in srgb, var(--sg-lavender-6) 16%, transparent); + --docs-mesh-dot: color-mix(in srgb, #1e293b 40%, transparent); + --docs-mesh-grid-minor: rgba(255, 255, 255, 0.038); + --docs-mesh-grid-major: rgba(255, 255, 255, 0.068); + --docs-mesh-accent: color-mix(in srgb, var(--sg-lavender-6) 13%, transparent); --shadow-default: 0 #{rem(0.625)} #{rem(1.5)} 0 rgba(0, 0, 0, 0.4); --note: #fffad411; @@ -246,17 +249,17 @@ body.dark { } body.light { - --bg: var(--white-light); - --bg-nav: var(--nav-light); - --bg-sub: var(--gray-lighter); - --card: var(--gray-lightest); + --bg: #F7F6FA; + --bg-nav: color-mix(in srgb, var(--bg) 88%, transparent); + --bg-sub: color-mix(in srgb, var(--sg-lavender-1) 45%, var(--white)); + --card: color-mix(in srgb, var(--sg-lavender-1) 30%, var(--white)); --card-light: var(--white); --color-scheme: light; - --divider: var(--gray); - --divider-light: var(--gray-lighter); + --divider: color-mix(in srgb, var(--sg-gray-1) 75%, var(--gray)); + --divider-light: color-mix(in srgb, var(--sg-lavender-1) 55%, var(--gray-lighter)); --link: var(--sg-violet); - --link-hover: var(--color-purple-700); + --link-hover: var(--sg-lavender-4); --code-block: var(--code-block-light); --code-simple: #505050; @@ -269,26 +272,44 @@ body.light { --heading: var(--sg-midnight); --body: var(--sg-gray-4); - --inline-lifted: var(--sg-midnight); + --inline-lifted: var(--sg-gray-5); --sub: var(--sg-gray-3); - --caption: var(--sg-gray-3); + --caption: var(--sg-gray-2); --important: var(--heading); --code-highlight: var(--heading); - --highlight: var(--sg-violet); + --highlight: var(--sg-teal-5); --font-h4: var(--heading); - --docs-card-surface: color-mix(in srgb, var(--card-light) 72%, var(--bg)); - --docs-card-border: color-mix(in srgb, var(--divider-light) 88%, transparent); - --docs-card-divider: color-mix(in srgb, var(--divider-light) 55%, transparent); - --docs-card-divider-strong: color-mix(in srgb, var(--divider-light) 72%, transparent); - --docs-card-glow: color-mix(in srgb, var(--brand) 9%, transparent); - --docs-card-inset: color-mix(in srgb, var(--bg) 55%, transparent); + --table-green: var(--color-teal-700); + --table-orange: #C65D17; + + --docs-card-surface: linear-gradient( + 165deg, + color-mix(in srgb, var(--white) 88%, var(--sg-lavender-1)) 0%, + var(--white) 42%, + color-mix(in srgb, var(--white) 94%, var(--sg-lavender-1)) 100% + ); + --docs-card-border: color-mix(in srgb, var(--sg-lavender-2) 28%, var(--gray-light)); + --docs-card-divider: color-mix(in srgb, var(--sg-lavender-2) 24%, var(--gray-lighter)); + --docs-card-divider-strong: color-mix(in srgb, var(--sg-lavender-2) 38%, var(--gray-light)); + --docs-card-glow: color-mix(in srgb, var(--sg-violet) 7%, transparent); + --docs-card-glow-foot: color-mix(in srgb, var(--sg-lavender-1) 55%, transparent); + --docs-card-inset: color-mix(in srgb, var(--sg-lavender-1) 38%, var(--white)); + --docs-card-shadow: + 0 1px 2px rgba(16, 12, 33, 0.04), + 0 10px 32px rgba(16, 12, 33, 0.06); + + --callout-accent-soft-mix: 7%; + --callout-accent-border-mix: 28%; + --docs-card-top-accent-mix: 30%; + --docs-card-top-accent-center-mix: 65%; // Style guide background mesh (light): grid + data icons --docs-mesh-icons: url("/images/docs-mesh/data-icons-light.svg"); - --docs-mesh-dot: rgba(64, 61, 77, 0.095); - --docs-mesh-grid-minor: rgba(0, 0, 0, 0.024); - --docs-mesh-grid-major: rgba(0, 0, 0, 0.042); + --docs-mesh-icons-opacity: 0.25; + --docs-mesh-dot: rgba(64, 61, 77, 0.085); + --docs-mesh-grid-minor: rgba(64, 61, 77, 0.020); + --docs-mesh-grid-major: rgba(64, 61, 77, 0.035); --note: #fffad411; --note-border: #b9a61545; @@ -322,9 +343,9 @@ body.light { --border-subtle: rgba(0, 0, 0, 0.10); --border-faint: rgba(0, 0, 0, 0.06); - --offering-nested-border: rgba(0, 0, 0, 0.09); - --offering-nested-header-bg: color-mix(in srgb, var(--sg-gray-1) 70%, var(--white-light)); - --offering-nested-surface: color-mix(in srgb, var(--sg-gray-1) 22%, var(--white-light)); + --offering-nested-border: color-mix(in srgb, var(--sg-lavender-2) 20%, var(--gray-lighter)); + --offering-nested-header-bg: color-mix(in srgb, var(--sg-lavender-1) 75%, var(--white)); + --offering-nested-surface: color-mix(in srgb, var(--sg-lavender-1) 32%, var(--white)); --offering-edition-label: var(--sg-violet); --offering-edition-heading: var(--sg-gray-3); @@ -352,7 +373,8 @@ body { overflow-x: hidden; position: relative; - &::before { + &::before, + &::after { content: ""; inset: 0; pointer-events: none; @@ -384,16 +406,25 @@ body { &.light::before { background-color: var(--bg); - @include docs-page-mesh-grid-layers; + @include docs-page-mesh-grid-layers-no-icons; background-position: center; background-repeat: repeat; - @include docs-page-mesh-size( - var(--docs-mesh-icons-step), + @include docs-page-mesh-grid-size( var(--docs-mesh-grid-major-step), var(--docs-mesh-grid-minor-step), var(--docs-mesh-dot-step) ); - mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.66) 45%, rgba(0, 0, 0, 0.46) 100%); + mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.72) 45%, rgba(0, 0, 0, 0.58) 100%); + } + + &.light::after { + background-color: transparent; + background-image: var(--docs-mesh-icons); + background-position: center; + background-repeat: repeat; + background-size: var(--docs-mesh-icons-step) var(--docs-mesh-icons-step); + mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.72) 45%, rgba(0, 0, 0, 0.58) 100%); + opacity: var(--docs-mesh-icons-opacity); } @media (max-width: 850px) { @@ -408,17 +439,21 @@ body { } &.light::before { - @include docs-page-mesh-size( - var(--docs-mesh-icons-step-sm), + @include docs-page-mesh-grid-size( var(--docs-mesh-grid-major-step-sm), var(--docs-mesh-grid-minor-step-sm), var(--docs-mesh-dot-step-sm) ); } + + &.light::after { + background-size: var(--docs-mesh-icons-step-sm) var(--docs-mesh-icons-step-sm); + } } @media (prefers-reduced-motion: reduce) { - &::before { + &::before, + &::after { background-attachment: scroll; } } diff --git a/doc/user/assets/sass/_content.scss b/doc/user/assets/sass/_content.scss index 29311d7673483..03ef44dc02995 100644 --- a/doc/user/assets/sass/_content.scss +++ b/doc/user/assets/sass/_content.scss @@ -324,8 +324,34 @@ p+p { .whats-new-callout { --callout-item-surface: var(--docs-card-inset); + --callout-item-border: var(--docs-card-divider-strong); - @include docs-feature-card($top-accent: true); + a:not(.whats-new-callout__item) { + border-bottom: 0; + text-decoration: none; + } + + &::before { + background: linear-gradient( + 90deg, + transparent 0%, + color-mix(in srgb, var(--brand) var(--docs-card-top-accent-mix, 45%), transparent) 35%, + color-mix(in srgb, var(--brand) var(--docs-card-top-accent-center-mix, 90%), var(--sg-lavender-2)) 50%, + color-mix(in srgb, var(--brand) var(--docs-card-top-accent-mix, 45%), transparent) 65%, + transparent 100% + ); + border-radius: var(--table-radius) var(--table-radius) 0 0; + content: ""; + height: 2px; + left: 0; + pointer-events: none; + position: absolute; + right: 0; + top: 0; + z-index: 1; + } + + @include docs-feature-card; color: var(--body); font-family: var(--font-body); margin: var(--x-small) 0 var(--large); @@ -338,11 +364,6 @@ p+p { box-sizing: border-box; } - a { - border-bottom: 0; - text-decoration: none; - } - svg { display: block; flex-shrink: 0; @@ -446,12 +467,14 @@ p+p { @include callout-item-accent("--sg-violet"); align-items: center; - background: var(--callout-item-surface); - border: 1px solid var(--docs-card-divider-strong); + background-color: var(--callout-item-surface); + border: 1px solid var(--callout-item-border); border-radius: 10px; + color: inherit; display: flex; gap: 12px; padding: 14px 16px; + text-decoration: none; transition: background-color 0.18s ease, border-color 0.18s ease, @@ -467,26 +490,18 @@ p+p { &:hover, &:focus { - background: linear-gradient( - 90deg, - var(--callout-accent-soft), - color-mix(in srgb, var(--callout-item-surface) 88%, transparent) - ); + background-color: color-mix(in srgb, var(--callout-accent-soft) 20%, var(--callout-item-surface)); border-color: var(--callout-accent-border); - box-shadow: 0 0 0 1px color-mix(in srgb, var(--callout-accent) 8%, transparent); + box-shadow: none; .whats-new-callout__item-heading { color: var(--heading); } .whats-new-callout__item-icon { - background: linear-gradient( - 145deg, - color-mix(in srgb, var(--callout-accent) 24%, transparent), - color-mix(in srgb, var(--callout-accent) 8%, transparent) - ); + background-color: color-mix(in srgb, var(--callout-accent-soft) 55%, var(--callout-item-surface)); border-color: var(--callout-accent-border); - box-shadow: 0 0 20px color-mix(in srgb, var(--callout-accent) 14%, transparent); + box-shadow: none; color: var(--heading); } } @@ -494,7 +509,7 @@ p+p { &__item-icon { align-items: center; - background: color-mix(in srgb, var(--callout-accent-soft) 85%, transparent); + background-color: color-mix(in srgb, var(--callout-accent-soft) 70%, var(--callout-item-surface)); border: 1px solid var(--callout-accent-border); border-radius: 8px; color: color-mix(in srgb, var(--callout-accent) 72%, var(--heading)); @@ -565,7 +580,7 @@ p+p { } &__footer { - border-top: 1px solid var(--docs-card-divider); + border-top: 1px solid var(--callout-item-border); color: var(--body); font-size: var(--sm); font-weight: var(--weight-body); @@ -1312,6 +1327,68 @@ p+p { } } + body.light & { + .whats-new-callout { + --callout-item-surface: var(--white); + --callout-item-border: var(--sg-gray-1); + + &__sparkle { + background: linear-gradient( + 145deg, + color-mix(in srgb, var(--sg-lavender-1) 92%, var(--sg-violet)), + color-mix(in srgb, var(--white) 88%, var(--sg-lavender-1)) + ); + border-color: color-mix(in srgb, var(--sg-lavender-2) 38%, transparent); + box-shadow: 0 2px 10px color-mix(in srgb, var(--sg-violet) 7%, transparent); + color: var(--sg-lavender-4); + } + + &__version { + background: color-mix(in srgb, var(--sg-lavender-1) 72%, var(--white)); + border-color: color-mix(in srgb, var(--sg-lavender-2) 42%, transparent); + color: var(--sg-lavender-4); + } + + &__badge--new { + background: color-mix(in srgb, var(--color-teal-100) 88%, var(--white)); + border-color: color-mix(in srgb, var(--sg-teal-3) 28%, transparent); + color: var(--sg-teal-5); + } + + &__badge--preview { + background: color-mix(in srgb, #FFF4EB 92%, var(--white)); + border-color: color-mix(in srgb, var(--table-orange) 24%, transparent); + color: color-mix(in srgb, var(--table-orange) 82%, var(--sg-midnight)); + } + } + + .mz-offerings { + &__headers { + background: linear-gradient( + 180deg, + color-mix(in srgb, var(--sg-lavender-1) 55%, var(--white)) 0%, + color-mix(in srgb, var(--white) 92%, var(--sg-lavender-1)) 100% + ); + } + + &__footer { + background: color-mix(in srgb, var(--sg-lavender-1) 28%, var(--white)); + } + + &__row--cloud { + --offering-action-bg: color-mix(in srgb, var(--color-teal-100) 75%, var(--white)); + --offering-action-border: color-mix(in srgb, var(--table-green) 22%, transparent); + --offering-action-hover: color-mix(in srgb, var(--color-teal-100) 92%, var(--white)); + } + + &__row--emulator { + --offering-action-bg: color-mix(in srgb, #FFF4EB 88%, var(--white)); + --offering-action-border: color-mix(in srgb, var(--table-orange) 24%, transparent); + --offering-action-hover: color-mix(in srgb, #FFE8D6 92%, var(--white)); + } + } + } + pre { background-color: var(--code-block); border-radius: 4px; diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index eb0f8f88dca56..3621b83cd8bf7 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -656,6 +656,63 @@ table.inline-headings { } } +body.light { + .nav { + a:not([class*="btn"]) { + color: var(--body); + + &:hover, + &:focus { + color: var(--heading); + } + + &.active { + color: var(--highlight); + } + } + + &-logo { + color: var(--heading); + } + } + + .sidebar { + a { + color: var(--body); + } + + li.level-1 > a { + color: var(--heading); + font-weight: var(--weight-heading); + } + + a:hover, + a:focus { + color: var(--heading); + } + + a.active { + color: var(--highlight); + } + } + + .toc { + h2 { + color: var(--heading); + } + + a { + color: var(--body); + + &:hover, + &:focus, + &.active { + color: var(--heading); + } + } + } +} + body.dark { .theme-switcher { diff --git a/doc/user/assets/sass/_mixins.scss b/doc/user/assets/sass/_mixins.scss index c3027041f31ac..ac13e90aafe64 100644 --- a/doc/user/assets/sass/_mixins.scss +++ b/doc/user/assets/sass/_mixins.scss @@ -8,9 +8,10 @@ // Homepage promo blocks: What's new callout + offerings table @mixin docs-feature-card($top-accent: false) { + $glow-foot: var(--docs-card-glow-foot, color-mix(in srgb, var(--docs-card-glow) 45%, transparent)); $surface: - radial-gradient(120% 85% at 50% -35%, var(--docs-card-glow), transparent 58%), - linear-gradient(180deg, transparent 55%, color-mix(in srgb, var(--docs-card-glow) 45%, transparent) 100%), + radial-gradient(120% 90% at 50% -22%, var(--docs-card-glow), transparent 62%), + linear-gradient(180deg, transparent 48%, #{$glow-foot} 100%), var(--docs-card-surface, var(--table-surface)); @if $top-accent { @@ -18,11 +19,11 @@ linear-gradient( 90deg, transparent 0%, - color-mix(in srgb, var(--brand) 45%, transparent) 35%, - color-mix(in srgb, var(--brand) 90%, var(--sg-lavender-2)) 50%, - color-mix(in srgb, var(--brand) 45%, transparent) 65%, + color-mix(in srgb, var(--brand) var(--docs-card-top-accent-mix, 45%), transparent) 35%, + color-mix(in srgb, var(--brand) var(--docs-card-top-accent-center-mix, 90%), var(--sg-lavender-2)) 50%, + color-mix(in srgb, var(--brand) var(--docs-card-top-accent-mix, 45%), transparent) 65%, transparent 100% - ) 0 0 / 100% 2px no-repeat border-box, + ) 0 0 / 100% 2px no-repeat, $surface; } @else { background: $surface; @@ -30,19 +31,13 @@ border: 1px solid var(--docs-card-border, var(--table-border)); border-radius: var(--table-radius); - box-shadow: - 0 1px 0 color-mix(in srgb, var(--heading) 4%, transparent) inset, - 0 16px 40px color-mix(in srgb, var(--bg) 35%, transparent); - - @if $top-accent { - border-top: 2px solid transparent; - } + box-shadow: var(--docs-card-shadow); } @mixin callout-item-accent($token) { --callout-accent: var(#{$token}); - --callout-accent-soft: color-mix(in srgb, var(#{$token}) 10%, transparent); - --callout-accent-border: color-mix(in srgb, var(#{$token}) 22%, transparent); + --callout-accent-soft: color-mix(in srgb, var(#{$token}) var(--callout-accent-soft-mix, 10%), transparent); + --callout-accent-border: color-mix(in srgb, var(#{$token}) var(--callout-accent-border-mix, 22%), transparent); } @mixin offering-row-theme($accent, $cta: null) { @@ -68,6 +63,15 @@ radial-gradient(circle, var(--docs-mesh-dot) var(--docs-mesh-dot-size), transparent var(--docs-mesh-dot-size)); } +@mixin docs-page-mesh-grid-layers-no-icons() { + background-image: + linear-gradient(to right, var(--docs-mesh-grid-major) 1px, transparent 1px), + linear-gradient(to bottom, var(--docs-mesh-grid-major) 1px, transparent 1px), + linear-gradient(to right, var(--docs-mesh-grid-minor) 1px, transparent 1px), + linear-gradient(to bottom, var(--docs-mesh-grid-minor) 1px, transparent 1px), + radial-gradient(circle, var(--docs-mesh-dot) var(--docs-mesh-dot-size), transparent var(--docs-mesh-dot-size)); +} + @mixin docs-page-mesh-size($icons-step, $major-step, $minor-step, $dot-step, $accent-cover: null) { @if $accent-cover { background-size: @@ -88,3 +92,12 @@ $dot-step $dot-step; } } + +@mixin docs-page-mesh-grid-size($major-step, $minor-step, $dot-step) { + background-size: + $major-step $major-step, + $major-step $major-step, + $minor-step $minor-step, + $minor-step $minor-step, + $dot-step $dot-step; +} diff --git a/doc/user/static/images/docs-mesh/data-icons-dark.svg b/doc/user/static/images/docs-mesh/data-icons-dark.svg index 0aa0a9fb1634e..87a2c0be0cfbc 100644 --- a/doc/user/static/images/docs-mesh/data-icons-dark.svg +++ b/doc/user/static/images/docs-mesh/data-icons-dark.svg @@ -1,7 +1,7 @@ - + @@ -11,9 +11,9 @@ - - - + + + @@ -23,9 +23,9 @@ - - - + + + @@ -45,6 +45,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/user/static/images/docs-mesh/data-icons-light.svg b/doc/user/static/images/docs-mesh/data-icons-light.svg index 967f2414983ab..a3aac80afbaf4 100644 --- a/doc/user/static/images/docs-mesh/data-icons-light.svg +++ b/doc/user/static/images/docs-mesh/data-icons-light.svg @@ -1,43 +1,111 @@ - + + + - - - + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 42ea6fd1e93d99dd9f15f7ef54c534eda07cf6ff Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Mon, 29 Jun 2026 23:39:33 -0400 Subject: [PATCH 16/25] avoid the glitch in the sidenav when the theme is changed. --- doc/user/assets/sass/_layout.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/user/assets/sass/_layout.scss b/doc/user/assets/sass/_layout.scss index 3621b83cd8bf7..ac82f5da8d8e9 100644 --- a/doc/user/assets/sass/_layout.scss +++ b/doc/user/assets/sass/_layout.scss @@ -236,6 +236,7 @@ table.inline-headings { text-decoration: none; word-wrap: break-word; white-space: initial; + transition: color 0.2s ease, background-color 0.2s ease; &.active { color: var(--highlight); @@ -683,7 +684,6 @@ body.light { li.level-1 > a { color: var(--heading); - font-weight: var(--weight-heading); } a:hover, From a5c43c723c527a7da3a971b506df7af331aade60 Mon Sep 17 00:00:00 2001 From: Nisar Hassan Naqvi Date: Tue, 30 Jun 2026 00:52:50 -0400 Subject: [PATCH 17/25] improve the linkbox cards design. --- doc/user/assets/sass/_content.scss | 269 ++++++++++++++++-- doc/user/layouts/shortcodes/linkbox.html | 9 +- .../multilink-box-native-connectors.md | 6 +- .../images/connectors/category-brokers.svg | 6 + .../images/connectors/category-databases.svg | 5 + .../images/connectors/category-webhooks.svg | 4 + 6 files changed, 262 insertions(+), 37 deletions(-) create mode 100644 doc/user/static/images/connectors/category-brokers.svg create mode 100644 doc/user/static/images/connectors/category-databases.svg create mode 100644 doc/user/static/images/connectors/category-webhooks.svg diff --git a/doc/user/assets/sass/_content.scss b/doc/user/assets/sass/_content.scss index 03ef44dc02995..b3d5eb91b96fe 100644 --- a/doc/user/assets/sass/_content.scss +++ b/doc/user/assets/sass/_content.scss @@ -642,81 +642,243 @@ p+p { } .multilinkbox { - display: flex; - gap: 12px; - margin: var(--small) 0; + align-items: stretch; + display: grid; + gap: 10px; + grid-template-columns: repeat(3, minmax(0, 1fr)); + margin: var(--xx-small) 0; @media(max-width: 860px) { - flex-direction: column; + grid-template-columns: 1fr; } } .linkbox { - background: var(--table-surface); - border: 1px solid var(--table-border); - border-radius: var(--table-radius); - box-shadow: var(--table-shadow); - flex: 1; + --linkbox-accent: var(--sg-gray-2); + --linkbox-accent-border: color-mix(in srgb, var(--linkbox-accent) 22%, transparent); + --linkbox-accent-soft: color-mix(in srgb, var(--linkbox-accent) 10%, transparent); + --linkbox-divider: var(--docs-card-divider-strong); + --linkbox-icon-bg: color-mix(in srgb, var(--linkbox-accent-soft) 70%, var(--docs-card-inset)); + --linkbox-label: white; + --linkbox-link: var(--sg-lavender-2); + --linkbox-surface: var(--docs-card-surface); + + background: var(--linkbox-surface); + border: 1px solid var(--linkbox-divider); + border-radius: 10px; + color: var(--body); + display: grid; font-family: var(--font-body); + grid-template-rows: auto 1fr; + height: 100%; min-width: 0; overflow: hidden; position: relative; - &::before { + &--databases { + --linkbox-accent: var(--sg-teal-3); + --linkbox-label: white; + } + + &--brokers { + --linkbox-accent: var(--sg-violet); + --linkbox-label: white; + } + + &--webhooks { + --linkbox-accent: var(--orchid); + --linkbox-label: white; + } + + &--databases, + &--brokers, + &--webhooks { + @include docs-feature-card; + + --docs-card-glow: color-mix(in srgb, var(--linkbox-accent) 8%, transparent); + + background-color: var(--linkbox-surface); + box-shadow: var(--docs-card-shadow); + min-height: 100%; + transition: + background-color 0.18s ease, + border-color 0.18s ease; + + &:hover, + &:focus-within { + background-color: color-mix(in srgb, var(--linkbox-accent-soft) 20%, var(--linkbox-surface)); + border-color: var(--linkbox-accent-border); + + .linkbox__category-icon { + background-color: color-mix(in srgb, var(--linkbox-accent-soft) 55%, var(--linkbox-surface)); + border-color: var(--linkbox-accent-border); + color: var(--heading); + } + } + } + + &.materialize::before, + &.book::before, + &.bulb::before, + &.doc::before, + &.touch::before { content: ""; width: 32px; height: 32px; position: absolute; top: rem(2); + left: 0; background-size: contain; } - &.materialize::before { - background-image: url("../images/materialize_favicon_32.png"); - margin-left: -10px; - } - + &.materialize::before { background-image: url("../images/materialize_favicon_32.png"); } &.book::before { background-image: url("../images/icon_book.png"); } &.bulb::before { background-image: url("../images/icon_bulb.png"); } &.doc::before { background-image: url("../images/icon_doc.png"); } &.touch::before { background-image: url("../images/icon_touch.png"); } + &.book .title, + &.bulb .title, + &.doc .title, + &.touch .title, + &.materialize .title { + padding-left: 28px; + } + + &__header { + align-items: center; + border-bottom: 1px solid var(--linkbox-divider); + display: flex; + flex-shrink: 0; + gap: 12px; + padding: 16px; + } + + &__category-icon { + align-items: center; + background: var(--linkbox-icon-bg); + border: 1px solid var(--linkbox-accent-border); + border-radius: 7px; + color: color-mix(in srgb, var(--linkbox-accent) 72%, var(--heading)); + display: flex; + flex-shrink: 0; + height: 32px; + justify-content: center; + transition: + background-color 0.18s ease, + border-color 0.18s ease, + color 0.18s ease; + width: 32px; + + &::before { + background: currentColor; + content: ""; + display: block; + height: 16px; + mask-position: center; + mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-position: center; + -webkit-mask-repeat: no-repeat; + -webkit-mask-size: contain; + width: 16px; + } + + &--databases::before { + mask-image: url("../images/connectors/category-databases.svg"); + -webkit-mask-image: url("../images/connectors/category-databases.svg"); + } + + &--brokers::before { + mask-image: url("../images/connectors/category-brokers.svg"); + -webkit-mask-image: url("../images/connectors/category-brokers.svg"); + } + + &--webhooks::before { + mask-image: url("../images/connectors/category-webhooks.svg"); + -webkit-mask-image: url("../images/connectors/category-webhooks.svg"); + } + } + .title { - background: var(--table-surface-header); - border-bottom: 1px solid var(--table-grid); - color: var(--table-text); - font-family: var(--font-heading); - font-size: 11px; - font-weight: 500; + background: transparent; + border-bottom: none; + color: var(--linkbox-label); + flex: 1; + font-family: var(--font-body); + font-size: var(--xsm); + font-weight: var(--weight-heading); letter-spacing: var(--tracking-eyebrow); - padding: 12px 20px; + line-height: 1.3; + margin: 0; + padding: 0; text-transform: uppercase; } - ul { + > ul { + align-self: start; + display: block; list-style: none; margin: 0; - padding: 6px 0; + padding: 14px 16px 18px; } li { margin: 0; } - a { - color: var(--link); + a, + a strong { + color: var(--linkbox-link); display: block; font-size: var(--sm); font-weight: var(--weight-body); - padding: 7px 20px; + line-height: 1.55; + padding: 4px 0; text-decoration: none; - transition: color 0.15s, background-color 0.15s; + transition: color 0.15s ease; &:hover, - &:focus { - background: rgba(255, 255, 255, 0.03); + &:focus-visible { + border-bottom: none; + color: var(--heading); + text-decoration: none; + } + } + + &:not([class*="linkbox--"]) { + background: var(--table-surface); + border-color: var(--table-border); + box-shadow: var(--table-shadow); + border-radius: var(--table-radius); + height: auto; + + .linkbox__header { border-bottom: none; - color: var(--important); + display: block; + padding: 0; + } + + .title { + background: var(--table-surface-header); + border-bottom: 1px solid var(--table-grid); + color: var(--table-text); + font-family: var(--font-heading); + font-size: 11px; + font-weight: 500; + padding: 12px 20px; + } + + a { + color: var(--link); + display: block; + padding: 7px 20px; + + &:hover, + &:focus-visible { + background: rgba(255, 255, 255, 0.03); + color: var(--important); + } } } } @@ -1387,6 +1549,51 @@ p+p { --offering-action-hover: color-mix(in srgb, #FFE8D6 92%, var(--white)); } } + + .linkbox--databases, + .linkbox--brokers, + .linkbox--webhooks { + --linkbox-divider: color-mix(in srgb, var(--sg-gray-1) 80%, transparent); + --linkbox-icon-bg: color-mix(in srgb, var(--linkbox-accent) 14%, var(--white)); + --linkbox-link: var(--sg-violet); + --docs-card-surface: var(--white); + + border-color: color-mix(in srgb, var(--sg-gray-1) 85%, transparent); + + .linkbox__header { + border-bottom-color: var(--linkbox-divider); + } + + a, + a strong { + color: var(--linkbox-link); + + &:hover, + &:focus-visible { + color: var(--sg-midnight); + } + } + } + + .linkbox--databases { + --linkbox-label: color-mix(in srgb, var(--sg-teal-5) 55%, var(--sg-gray-3)); + } + + .linkbox--brokers { + --linkbox-label: color-mix(in srgb, var(--sg-violet) 45%, var(--sg-gray-3)); + } + + .linkbox--webhooks { + --linkbox-label: color-mix(in srgb, var(--orchid) 45%, var(--sg-gray-3)); + } + + .linkbox--databases, + .linkbox--brokers, + .linkbox--webhooks { + .linkbox__category-icon::before { + background: var(--linkbox-accent); + } + } } pre { diff --git a/doc/user/layouts/shortcodes/linkbox.html b/doc/user/layouts/shortcodes/linkbox.html index c52815a1ca9e7..5b0f606910255 100644 --- a/doc/user/layouts/shortcodes/linkbox.html +++ b/doc/user/layouts/shortcodes/linkbox.html @@ -1,6 +1,9 @@ -