docs: Add design touch-ups (#17505)

Danilo Leal created

This PR adds several design tweaks to elements of the documentation,
most notably swapping the heading title font from `PPAgrandir` to
`Lora`, which makes the docs consistent with the new website. Aside from
this, there's also some tiny, low-hanging content adjustments to a few
pages.

--- 

Release Notes:

- N/A

Change summary

docs/src/completions.md                   |  2 
docs/src/contribute-to-zed.md             |  2 
docs/src/repl.md                          |  2 
docs/theme/css/chrome.css                 | 38 ++++++++++++++++-----
docs/theme/css/general.css                | 44 ++++++++++++++++++------
docs/theme/css/variables.css              | 17 +++++---
docs/theme/fonts/Lora.var.woff2           |  0 
docs/theme/fonts/PPAgrandir-Regular.woff2 |  0 
docs/theme/fonts/fonts.css                | 12 +++---
9 files changed, 80 insertions(+), 37 deletions(-)

Detailed changes

docs/src/completions.md 🔗

@@ -15,7 +15,7 @@ When there is an appropriate language server available, Zed will by-default prov
 
 You can manually trigger completions with `ctrl-space` or by triggering the `editor::ShowCompletions` action from the command palette.
 
-For more information, see :
+For more information, see:
 
 - [Configuring Supported Languages](./configuring-languages.md)
 - [List of Zed Supported Languages](./languages.md).

docs/src/contribute-to-zed.md 🔗

@@ -12,4 +12,4 @@ If you're wanting to contribute by building out a feature, we recommend taking a
 
 ## Zed GitHub Repository
 
-Our codebase can be found [here](https://github.com/zed-industries/zed).
+Check [our codebase out on GitHub](https://github.com/zed-industries/zed).

docs/src/repl.md 🔗

@@ -4,7 +4,7 @@
 
 Bring the power of [Jupyter kernels](https://docs.jupyter.org/en/latest/projects/kernels.html) to your editor! The built-in REPL for Zed allows you to run code interactively in your editor similarly to a notebook with your own text files.
 
-<figure style="overflow: hidden; border-top-left-radius: 2px; border-top-right-radius: 2px;">
+<figure style="width: 100%; margin: 0; overflow: hidden; border-top-left-radius: 2px; border-top-right-radius: 2px;">
     <video loop controls playsinline>
         <source
             src="https://customer-snccc0j9v3kfzkif.cloudflarestream.com/aec66e79f23d6d1a0bee5e388a3f17cc/downloads/default.mp4"

docs/theme/css/chrome.css 🔗

@@ -279,7 +279,7 @@ pre:hover > .buttons {
 }
 pre > .buttons :hover {
   color: var(--sidebar-active);
-  border-color: var(--icons-hover);
+  border-color: var(--border-hover);
   background-color: var(--theme-hover);
 }
 pre > .buttons i {
@@ -287,19 +287,28 @@ pre > .buttons i {
 }
 pre > .buttons button {
   cursor: inherit;
-  margin: 0px 5px;
-  padding: 3px 5px;
+  margin: 0 4px;
+  height: 26px;
+  width: 26px;
   font-size: 14px;
-
   border-style: solid;
   border-width: 1px;
   border-radius: 4px;
-  border-color: var(--icons);
+  border-color: var(--border);
   background-color: var(--theme-popup-bg);
   transition: 100ms;
   transition-property: color, border-color, background-color;
   color: var(--icons);
 }
+
+pre > .playground {
+  border: none;
+  margin: 0;
+  box-shadow: none;
+  /* HACK: This serves to visually hide nested <pre> elements in "playground" code snippets.
+  A more robust solution would involve modifying the rendered HTML. */
+}
+
 @media (pointer: coarse) {
   pre > .buttons button {
     /* On mobile, make it easier to tap buttons. */
@@ -537,6 +546,7 @@ ul#searchresults span.teaser em {
   list-style: none outside none;
   padding-inline-start: 0;
   line-height: 2.2em;
+  margin: 0;
 }
 
 .chapter ol {
@@ -665,9 +675,19 @@ ul#searchresults span.teaser em {
 }
 
 .download-button {
-  background: #dde4f1;
-  color: var(--link-color);
+  background: hsl(220, 60%, 95%);
+  color: hsl(220, 60%, 30%);
   padding: 4px 8px;
-  border: 1px solid #a8bee9;
-  font-size: 14px;
+  border: 1px solid hsla(220, 60%, 40%, 0.2);
+  font-size: 1.4rem;
+  border-radius: 4px;
+  box-shadow: hsla(220, 40%, 60%, 0.1) 0px -2px 0px 0px inset;
+  transition: 100ms;
+  transition-property: box-shadow, border-color, background-color;
+}
+
+.download-button:hover {
+  background: hsl(220, 60%, 93%);
+  border-color: hsla(220, 60%, 50%, 0.2);
+  box-shadow: none;
 }

docs/theme/css/general.css 🔗

@@ -49,7 +49,7 @@ h4,
 h5,
 h6 {
   font-family: var(--title-font);
-  font-weight: normal;
+  font-weight: 480;
   color: var(--title-color);
 }
 
@@ -81,7 +81,7 @@ h6 code {
 
 h2,
 h3 {
-  margin-block-start: 2em;
+  margin-block-start: 1.5em;
   margin-block-end: 0;
 }
 h4,
@@ -152,14 +152,25 @@ h6:target::before {
   line-height: 1.625em;
 }
 .content div.video {
-  margin-top: 0.5rem;
-  margin-bottom: 3rem;
+  margin-top: 1rem;
+  border: 1px solid;
+  border-color: var(--border);
+  border-radius: 8px;
+  overflow: clip;
+}
+.content div.video iframe {
+  margin: 0;
 }
 .content ol {
-  line-height: 1.625em;
+  line-height: 1.8;
+  padding-left: 1.8em;
 }
 .content ul {
-  line-height: 1.625em;
+  line-height: 1.8;
+  padding-left: 1.8em;
+}
+.content li {
+  padding-left: 0.5em;
 }
 .content a {
   text-decoration: underline;
@@ -171,6 +182,10 @@ h6:target::before {
 .content img,
 .content video {
   max-width: 100%;
+  border: 1px solid;
+  border-color: var(--border);
+  border-radius: 8px;
+  overflow: clip;
 }
 .content .header:link,
 .content .header:visited {
@@ -187,11 +202,12 @@ iframe {
 }
 
 table {
-  margin: 0 auto;
+  width: 100%;
   border-collapse: collapse;
+  font-size: 1.4rem;
 }
 table td {
-  padding: 3px 20px;
+  padding: 4px 12px;
   border: 1px var(--table-border-color) solid;
 }
 table thead {
@@ -202,10 +218,13 @@ table thead td {
   border: none;
 }
 table thead th {
-  padding: 3px 20px;
+  padding: 6px 12px;
+  color: #000;
+  text-align: left;
+  border: 1px var(--table-border-color) solid;
 }
 table thead tr {
-  border: 1px var(--table-header-bg) solid;
+  border: 1px var(--table-border-color) solid;
 }
 /* Alternate background colors for rows */
 table tbody tr:nth-child(2n) {
@@ -323,6 +342,7 @@ kbd {
 .chapter li.part-title {
   font-size: 18px;
   font-family: var(--title-font);
+  font-weight: 520;
   color: var(--title-color);
   margin: 5px 0;
   margin-top: 2rem;
@@ -333,6 +353,6 @@ kbd {
 }
 
 code.hljs {
-  color: rgb(75, 83, 97) !important;
-  background-color: rgba(8, 76, 207, 0.1);
+  color: hsl(221, 13%, 10%) !important;
+  background-color: hsla(221, 93%, 42%, 0.1);
 }

docs/theme/css/variables.css 🔗

@@ -8,15 +8,18 @@
   --content-max-width: 750px;
   --menu-bar-height: 64px;
   --font: "IA Writer Quattro S", sans-serif;
-  --title-font: "Agrandir", "Helvetica Neue", Helvetica, Arial, sans-serif;
+  --title-font: "Lora", "Helvetica Neue", Helvetica, Arial, sans-serif;
   --mono-font: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
     Liberation Mono, Courier New, monospace;
   --code-font-size: 0.875em
     /* please adjust the ace font size accordingly in editor.js */;
 
-  --bg: rgb(246, 245, 240);
-  --fg: rgb(75, 83, 97);
-  --title-color: rgb(8, 76, 207);
+  --bg: hsl(48, 30%, 95%);
+  --fg: hsl(220, 13%, 34%);
+  --title-color: hsl(220, 92%, 42%);
+
+  --border: hsl(220, 13%, 80%);
+  --border-hover: hsl(220, 13%, 70%);
 
   --sidebar-fg: hsl(0, 0%, 0%);
   --sidebar-non-existant: #aaaaaa;
@@ -38,15 +41,15 @@
   --theme-hover: #e6e6e6;
 
   --quote-bg: hsl(197, 37%, 96%);
-  --quote-border: hsl(197, 37%, 88%);
+  --quote-border: hsl(197, 37%, 84%);
 
   --warning-border: hsl(25, 100%, 85%);
   --warning-bg: hsl(42, 100%, 60%, 0.1);
   --warning-icon: hsl(42, 100%, 30%);
 
+  --table-header-bg: hsl(219, 50%, 90%, 0.4);
   --table-border-color: hsl(219, 93%, 42%, 0.15);
-  --table-header-bg: hsl(0, 0%, 80%);
-  --table-alternate-bg: hsl(0, 0%, 97%);
+  --table-alternate-bg: hsl(219, 10%, 90%, 0.4);
 
   --searchbar-border-color: #aaa;
   --searchbar-bg: #fafafa;

docs/theme/fonts/fonts.css 🔗

@@ -1,17 +1,17 @@
 /* Open Sans is licensed under the Apache License, Version 2.0. See http://www.apache.org/licenses/LICENSE-2.0 */
 /* Source Code Pro is under the Open Font License. See https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL */
-
 /* open-sans-300 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
+
 @font-face {
-  font-family: "Agrandir";
+  font-family: "IA Writer Quattro S";
   font-style: normal;
   font-weight: 400;
-  src: url("PPAgrandir-Regular.woff2") format("woff2");
+  src: url("iAWriterQuattroS-Regular.woff2") format("woff2");
 }
 
 @font-face {
-  font-family: "IA Writer Quattro S";
+  font-family: "Lora";
+  src: url("Lora.var.woff2") format("woff2-variations");
+  font-weight: 100 900;
   font-style: normal;
-  font-weight: 400;
-  src: url("iAWriterQuattroS-Regular.woff2") format("woff2");
 }