about summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2024-03-17 00:02:45 +0000
committerGitHub <noreply@github.com>2024-03-17 00:02:45 +0000
commitb74fe245b89e186a81898ce672c810881b881617 (patch)
treeb1a1633f841e31d3d37e23bdc0c8e4b915d154d5 /doc
parent0c201249012028f3e636606adfb9875924d73cef (diff)
parent2178d8d8574be160b52888ddd02cc3b9225ac920 (diff)
Merge staging-next into staging
Diffstat (limited to 'doc')
-rw-r--r--doc/anchor-use.js3
-rw-r--r--doc/anchor.min.js9
-rw-r--r--doc/default.nix5
-rw-r--r--doc/languages-frameworks/haskell.section.md7
-rw-r--r--doc/overrides.css22
-rw-r--r--doc/style.css523
6 files changed, 345 insertions, 224 deletions
diff --git a/doc/anchor-use.js b/doc/anchor-use.js
new file mode 100644
index 0000000000000..06ec24883aa3a
--- /dev/null
+++ b/doc/anchor-use.js
@@ -0,0 +1,3 @@
+document.addEventListener('DOMContentLoaded', function(event) {
+  anchors.add('h1:not(div.note h1, div.warning h1, div.tip h1, div.caution h1, div.important h1), h2:not(div.note h2, div.warning h2, div.tip h2, div.caution h2, div.important h2), h3:not(div.note h3, div.warning h3, div.tip h3, div.caution h3, div.important h3), h4:not(div.note h4, div.warning h4, div.tip h4, div.caution h4, div.important h4), h5:not(div.note h5, div.warning h5, div.tip h5, div.caution h5, div.important h5), h6:not(div.note h6, div.warning h6, div.tip h6, div.caution h6, div.important h6)');
+});
diff --git a/doc/anchor.min.js b/doc/anchor.min.js
new file mode 100644
index 0000000000000..00f80c058f6de
--- /dev/null
+++ b/doc/anchor.min.js
@@ -0,0 +1,9 @@
+// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
+//
+// AnchorJS - v5.0.0 - 2023-01-18
+// https://www.bryanbraun.com/anchorjs/
+// Copyright (c) 2023 Bryan Braun; Licensed MIT
+//
+// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
+!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(globalThis,function(){"use strict";return function(A){function u(A){A.icon=Object.prototype.hasOwnProperty.call(A,"icon")?A.icon:"",A.visible=Object.prototype.hasOwnProperty.call(A,"visible")?A.visible:"hover",A.placement=Object.prototype.hasOwnProperty.call(A,"placement")?A.placement:"right",A.ariaLabel=Object.prototype.hasOwnProperty.call(A,"ariaLabel")?A.ariaLabel:"Anchor",A.class=Object.prototype.hasOwnProperty.call(A,"class")?A.class:"",A.base=Object.prototype.hasOwnProperty.call(A,"base")?A.base:"",A.truncate=Object.prototype.hasOwnProperty.call(A,"truncate")?Math.floor(A.truncate):64,A.titleText=Object.prototype.hasOwnProperty.call(A,"titleText")?A.titleText:""}function d(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],u(this.options),this.add=function(A){var e,t,o,i,n,s,a,r,l,c,h,p=[];if(u(this.options),0!==(e=d(A=A||"h2, h3, h4, h5, h6")).length){for(null===document.head.querySelector("style.anchorjs")&&((A=document.createElement("style")).className="anchorjs",A.appendChild(document.createTextNode("")),void 0===(h=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(A):document.head.insertBefore(A,h),A.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",A.sheet.cssRules.length),A.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",A.sheet.cssRules.length),A.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",A.sheet.cssRules.length),A.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',A.sheet.cssRules.length)),h=document.querySelectorAll("[id]"),t=[].map.call(h,function(A){return A.id}),i=0;i<e.length;i++)if(this.hasAnchorJSLink(e[i]))p.push(i);else{if(e[i].hasAttribute("id"))o=e[i].getAttribute("id");else if(e[i].hasAttribute("data-anchor-id"))o=e[i].getAttribute("data-anchor-id");else{for(r=a=this.urlify(e[i].textContent),s=0;n=t.indexOf(r=void 0!==n?a+"-"+s:r),s+=1,-1!==n;);n=void 0,t.push(r),e[i].setAttribute("id",r),o=r}(l=document.createElement("a")).className="anchorjs-link "+this.options.class,l.setAttribute("aria-label",this.options.ariaLabel),l.setAttribute("data-anchorjs-icon",this.options.icon),this.options.titleText&&(l.title=this.options.titleText),c=document.querySelector("base")?window.location.pathname+window.location.search:"",c=this.options.base||c,l.href=c+"#"+o,"always"===this.options.visible&&(l.style.opacity="1"),""===this.options.icon&&(l.style.font="1em/1 anchorjs-icons","left"===this.options.placement)&&(l.style.lineHeight="inherit"),"left"===this.options.placement?(l.style.position="absolute",l.style.marginLeft="-1.25em",l.style.paddingRight=".25em",l.style.paddingLeft=".25em",e[i].insertBefore(l,e[i].firstChild)):(l.style.marginLeft=".1875em",l.style.paddingRight=".1875em",l.style.paddingLeft=".1875em",e[i].appendChild(l))}for(i=0;i<p.length;i++)e.splice(p[i]-i,1);this.elements=this.elements.concat(e)}return this},this.remove=function(A){for(var e,t,o=d(A),i=0;i<o.length;i++)(t=o[i].querySelector(".anchorjs-link"))&&(-1!==(e=this.elements.indexOf(o[i]))&&this.elements.splice(e,1),o[i].removeChild(t));return this},this.removeAll=function(){this.remove(this.elements)},this.urlify=function(A){var e=document.createElement("textarea");return e.innerHTML=A,A=e.value,this.options.truncate||u(this.options),A.trim().replace(/'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),A=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||A||!1}}});
+// @license-end
diff --git a/doc/default.nix b/doc/default.nix
index bcbc20b9f983b..76aba1a03eaf2 100644
--- a/doc/default.nix
+++ b/doc/default.nix
@@ -122,16 +122,17 @@ in pkgs.stdenv.mkDerivation {
       ${pkgs.documentation-highlighter}/mono-blue.css \
       ${pkgs.documentation-highlighter}/loader.js
 
-    cp -t out ./overrides.css ./style.css
+    cp -t out ./style.css ./anchor.min.js ./anchor-use.js
 
     nixos-render-docs manual html \
       --manpage-urls ./manpage-urls.json \
       --revision ${pkgs.lib.trivial.revisionWithDefault (pkgs.rev or "master")} \
       --stylesheet style.css \
-      --stylesheet overrides.css \
       --stylesheet highlightjs/mono-blue.css \
       --script ./highlightjs/highlight.pack.js \
       --script ./highlightjs/loader.js \
+      --script ./anchor.min.js \
+      --script ./anchor-use.js \
       --toc-depth 1 \
       --section-toc-depth 1 \
       manual.md \
diff --git a/doc/languages-frameworks/haskell.section.md b/doc/languages-frameworks/haskell.section.md
index bec72cb3c0d39..5d7796b554de4 100644
--- a/doc/languages-frameworks/haskell.section.md
+++ b/doc/languages-frameworks/haskell.section.md
@@ -113,7 +113,7 @@ Each of those compiler versions has a corresponding attribute set built using
 it. However, the non-standard package sets are not tested regularly and, as a
 result, contain fewer working packages. The corresponding package set for GHC
 9.4.5 is `haskell.packages.ghc945`. In fact `haskellPackages` is just an alias
-for `haskell.packages.ghc927`:
+for `haskell.packages.ghc964`:
 
 ```console
 $ nix-env -f '<nixpkgs>' -qaP -A haskell.packages.ghc927
@@ -1020,6 +1020,11 @@ failing because of e.g. a syntax error in the Haddock documentation.
 : Sets `doCheck` to `false` for `drv`. Useful if a package has a broken,
 flaky or otherwise problematic test suite breaking the build.
 
+`dontCheckIf condition drv`
+: Sets `doCheck` to `false` for `drv`, but only if `condition` applies.
+Otherwise it's a no-op. Useful to conditionally disable tests for a package
+without interfering with previous overrides or default values.
+
 <!-- Purposefully omitting the non-list variants here. They are a bit
 ugly, and we may want to deprecate them at some point. -->
 
diff --git a/doc/overrides.css b/doc/overrides.css
deleted file mode 100644
index 73901a3f543bf..0000000000000
--- a/doc/overrides.css
+++ /dev/null
@@ -1,22 +0,0 @@
-.docbook .xref img[src^=images\/callouts\/],
-.screen img,
-.programlisting img,
-.literallayout img,
-.synopsis img {
-    width: 1em;
-}
-
-.calloutlist img {
-    width: 1.5em;
-}
-
-.prompt,
-.screen img,
-.programlisting img,
-.literallayout img,
-.synopsis img {
-    -moz-user-select: none;
-    -webkit-user-select: none;
-    -ms-user-select: none;
-    user-select: none;
-}
diff --git a/doc/style.css b/doc/style.css
index 474dd32e3fb14..fddf4f4823c76 100644
--- a/doc/style.css
+++ b/doc/style.css
@@ -1,291 +1,416 @@
-/* Copied from http://bakefile.sourceforge.net/, which appears
-   licensed under the GNU GPL. */
-
-
-/***************************************************************************
-                             Basic headers and text:
- ***************************************************************************/
+html {
+    line-height: 1.15;
+    -webkit-text-size-adjust: 100%;
+}
 
-body
-{
-    font-family: "Nimbus Sans L", sans-serif;
-    font-size: 1em;
-    background: white;
-    margin: 2em 1em 2em 1em;
+body {
+    margin: 0;
 }
 
-h1, h2, h3, h4
-{
-    color: #005aa0;
+.book {
+    margin: auto;
+    width: 100%;
 }
 
-h1 /* title */
-{
-    font-size: 200%;
+@media screen and (min-width: 768px) {
+    .book {
+        max-width: 46rem;
+    }
 }
 
-h2 /* chapters, appendices, subtitle */
-{
-    font-size: 180%;
+@media screen and (min-width: 992px) {
+    .book {
+        max-width: 60rem;
+    }
 }
 
-div.book
-{
-    text-align: center;
+@media screen and (min-width: 1200px) {
+    .book {
+        max-width: 73rem;
+    }
 }
 
-div.book > div
-{
-    /*
-     * based on https://medium.com/@zkareemz/golden-ratio-62b3b6d4282a
-     * we do 70 characters per line to fit code listings better
-     * 70 * (font-size / 1.618)
-     * expression for emacs:
-     * (* 70 (/ 1 1.618))
-     */
-    max-width: 43.2em;
-    text-align: left;
-    margin: auto;
+.book .list-of-examples {
+    display: none;
 }
 
-/* Extra space between chapters, appendices. */
-div.chapter > div.titlepage h2, div.appendix > div.titlepage h2
-{
-    margin-top: 1.5em;
+h1 {
+    font-size: 2em;
+    margin: 0.67em 0;
 }
 
-div.section > div.titlepage h2 /* sections */
-{
-    font-size: 150%;
-    margin-top: 1.5em;
+hr {
+    box-sizing: content-box;
+    height: 0;
+    overflow: visible;
 }
 
-h3 /* subsections */
-{
-    font-size: 125%;
+pre {
+    font-family: monospace, monospace;
+    font-size: 1em;
 }
 
-div.simplesect h2
-{
-    font-size: 110%;
+a {
+    background-color: transparent;
 }
 
-div.appendix h3
-{
-    font-size: 150%;
-    margin-top: 1.5em;
+strong {
+    font-weight: bolder;
 }
 
-div.refnamediv h2, div.refsynopsisdiv h2, div.refsection h2 /* refentry parts */
-{
-    margin-top: 1.4em;
-    font-size: 125%;
+code {
+    font-family: monospace, monospace;
+    font-size: 1em;
 }
 
-div.refsection h3
-{
-    font-size: 110%;
+sup {
+    font-size: 75%;
+    line-height: 0;
+    position: relative;
+    vertical-align: baseline;
 }
 
+sup {
+    top: -0.5em;
+}
 
-/***************************************************************************
-                               Examples:
- ***************************************************************************/
+::-webkit-file-upload-button {
+    -webkit-appearance: button;
+    font: inherit;
+}
 
-div.example
-{
-    border: 1px solid #b0b0b0;
-    padding: 6px 6px;
-    margin-left: 1.5em;
-    margin-right: 1.5em;
-    background: #f4f4f8;
-    border-radius: 0.4em;
-    box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
+pre {
+    overflow: auto;
 }
 
-div.example p.title
-{
-    margin-top: 0em;
+*,
+*::before,
+*::after {
+    box-sizing: border-box;
 }
 
-div.example pre
-{
-    box-shadow: none;
+html {
+    font-size: 100%;
+    line-height: 1.77777778;
 }
 
+@media screen and (min-width: 4000px) {
+    html {
+        background: #000;
+    }
 
-/***************************************************************************
-                            Screen dumps:
- ***************************************************************************/
+    html body {
+        margin: auto;
+        max-width: 250rem;
+    }
+}
 
-pre.screen, pre.programlisting
-{
-    border: 1px solid #b0b0b0;
-    padding: 3px 3px;
-    margin-left: 0.5em;
-    margin-right: 0.5em;
+@media screen and (max-width: 320px) {
+    html {
+        font-size: calc(16 / 320 * 100vw);
+    }
+}
 
-    background: #f4f4f8;
-    font-family: monospace;
-    border-radius: 0.4em;
-    box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
+body {
+    font-size: 1rem;
+    font-family: 'Roboto', sans-serif;
+    font-weight: 300;
+    color: #000000;
+    background-color: #ffffff;
+    min-height: 100vh;
+    display: flex;
+    flex-direction: column;
 }
 
-div.example pre.programlisting
-{
-    border: 0px;
-    padding: 0 0;
-    margin: 0 0 0 0;
+@media screen and (max-width: 767.9px) {
+    body {
+        padding-left: 1rem;
+        padding-right: 1rem;
+    }
 }
 
-/***************************************************************************
-                               Notes, warnings etc:
- ***************************************************************************/
+a {
+    text-decoration: none;
+    border-bottom: 1px solid;
+    color: #405d99;
+}
 
-.note, .warning
-{
-    border: 1px solid #b0b0b0;
-    padding: 3px 3px;
-    margin-left: 1.5em;
-    margin-right: 1.5em;
-    margin-bottom: 1em;
-    padding: 0.3em 0.3em 0.3em 0.3em;
-    background: #fffff5;
-    border-radius: 0.4em;
-    box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
+ul {
+    padding: 0;
+    margin-top: 0;
+    margin-right: 0;
+    margin-bottom: 1rem;
+    margin-left: 1rem;
 }
 
-div.note, div.warning
-{
-    font-style: italic;
+table {
+    border-collapse: collapse;
+    width: 100%;
+    margin-bottom: 1rem;
 }
 
-div.note h3, div.warning h3
-{
-    color: red;
-    font-size: 100%;
-    padding-right: 0.5em;
-    display: inline;
+thead th {
+    text-align: left;
 }
 
-div.note p, div.warning p
-{
-    margin-bottom: 0em;
+hr {
+    margin-top: 1rem;
+    margin-bottom: 1rem;
 }
 
-div.note h3 + p, div.warning h3 + p
-{
-    display: inline;
+h1 {
+    font-weight: 800;
+    line-height: 110%;
+    font-size: 200%;
+    margin-bottom: 1rem;
+    color: #6586c8;
 }
 
-div.note h3
-{
-    color: blue;
-    font-size: 100%;
+h2 {
+    font-weight: 800;
+    line-height: 110%;
+    font-size: 170%;
+    margin-bottom: 0.625rem;
+    color: #6586c8;
 }
 
-div.navfooter *
-{
-    font-size: 90%;
+h2:not(:first-child) {
+    margin-top: 1rem;
 }
 
+h3 {
+    font-weight: 800;
+    line-height: 110%;
+    margin-bottom: 1rem;
+    font-size: 150%;
+    color: #6586c8;
+}
 
-/***************************************************************************
-                        Links colors and highlighting:
- ***************************************************************************/
+.note h3,
+.tip h3,
+.warning h3,
+.caution h3,
+.important h3 {
+    font-size: 120%;
+}
 
-a { text-decoration: none; }
-a:hover { text-decoration: underline; }
-a:link { color: #0048b3; }
-a:visited { color: #002a6a; }
+h4 {
+    font-weight: 800;
+    line-height: 110%;
+    margin-bottom: 1rem;
+    font-size: 140%;
+    color: #6586c8;
+}
 
+h5 {
+    font-weight: 800;
+    line-height: 110%;
+    margin-bottom: 1rem;
+    font-size: 130%;
+    color: #6a6a6a;
+}
 
-/***************************************************************************
-                              Table of contents:
- ***************************************************************************/
+h6 {
+    font-weight: 800;
+    line-height: 110%;
+    margin-bottom: 1rem;
+    font-size: 120%
+}
 
-div.toc
-{
-    font-size: 90%;
+strong {
+    font-weight: bold;
 }
 
-div.toc dl
-{
-    margin-top: 0em;
-    margin-bottom: 0em;
+p {
+    margin-top: 0;
+    margin-bottom: 1rem;
 }
 
+dt>*:first-child,
+dd>*:first-child {
+    margin-top: 0;
+}
 
-/***************************************************************************
-                               Special elements:
- ***************************************************************************/
+dt>*:last-child,
+dd>*:last-child {
+    margin-bottom: 0;
+}
 
-tt, code
-{
-    color: #400000;
+pre,
+code {
+    font-family: monospace;
 }
 
-.term
-{
-    font-weight: bold;
+code {
+    color: #ff8657;
+    background: #f4f4f4;
+    display: inline-block;
+    padding: 0 0.5rem;
+    border: 1px solid #d8d8d8;
+    border-radius: 0.5rem;
+    line-height: 1.57777778;
+}
+
+div.book .programlisting,
+div.appendix .programlisting {
+    border-radius: 0.5rem;
+    padding: 1rem;
+    overflow: auto;
+    background: #f2f8fd;
+    color: #000000;
+}
+
+div.book .note,
+div.book .tip,
+div.book .warning,
+div.book .caution,
+div.book .important,
+div.appendix .note,
+div.appendix .tip,
+div.appendix .warning,
+div.appendix .caution,
+div.appendix .important {
+    margin-bottom: 1rem;
+    border-radius: 0.5rem;
+    padding: 1.5rem;
+    overflow: auto;
+    background: #f4f4f4;
+}
+
+div.book .note>.title,
+div.book .tip>.title,
+div.book .warning>.title,
+div.book .caution>.title,
+div.book .important>.title,
+div.appendix .note>.title,
+div.appendix .tip>.title,
+div.appendix .warning>.title,
+div.appendix .caution>.title,
+div.appendix .important>.title {
+    font-weight: 800;
+    /* font-family: 'Overpass', serif; */
+    line-height: 110%;
+    margin-bottom: 1rem;
+    color: inherit;
+    margin-bottom: 0;
+}
+
+div.book .note> :first-child,
+div.book .tip> :first-child,
+div.book .warning> :first-child,
+div.book .caution> :first-child,
+div.book .important> :first-child,
+div.appendix .note> :first-child,
+div.appendix .tip> :first-child,
+div.appendix .warning> :first-child,
+div.appendix .caution> :first-child,
+div.appendix .important> :first-child {
+    margin-top: 0;
+}
+
+div.book .note> :last-child,
+div.book .tip> :last-child,
+div.book .warning> :last-child,
+div.book .caution> :last-child,
+div.book .important> :last-child,
+div.appendix .note> :last-child,
+div.appendix .tip> :last-child,
+div.appendix .warning> :last-child,
+div.appendix .caution> :last-child,
+div.appendix .important> :last-child {
+    margin-bottom: 0;
+}
+
+div.book .note,
+div.book .tip,
+div.appendix .note,
+div.appendix .tip {
+    color: #5277c3;
+    background: #f2f8fd;
+}
+
+div.book .warning,
+div.book .caution,
+div.appendix .warning,
+div.appendix .caution {
+    color: #cc3900;
+    background-color: #fff5e1;
+}
+
+div.book .section,
+div.appendix .section {
+    margin-top: 2em;
+}
+
+div.book div.example,
+div.appendix div.example {
+    margin-top: 1.5em;
+}
 
+div.book br.example-break,
+div.appendix br.example-break {
+    display: none;
 }
 
-div.variablelist dd p, div.glosslist dd p
-{
-    margin-top: 0em;
+div.book div.footnotes>hr,
+div.appendix div.footnotes>hr {
+    border-color: #d8d8d8;
 }
 
-div.variablelist dd, div.glosslist dd
-{
-    margin-left: 1.5em;
+div.book div.footnotes>br,
+div.appendix div.footnotes>br {
+    display: none;
 }
 
-div.glosslist dt
-{
-    font-style: italic;
+div.book dt,
+div.appendix dt {
+    margin-top: 1em;
 }
 
-.varname
-{
-    color: #400000;
+div.book .toc dt,
+div.appendix .toc dt {
+    margin-top: 0;
 }
 
-span.command strong
-{
-    font-weight: normal;
-    color: #400000;
+div.book .list-of-examples dt,
+div.appendix .list-of-examples dt {
+    margin-top: 0;
 }
 
-div.calloutlist table
-{
-    box-shadow: none;
+div.book code,
+div.appendix code {
+    padding: 0;
+    border: 0;
+    background-color: inherit;
+    color: inherit;
+    font-size: 100%;
+    -webkit-hyphens: none;
+    -moz-hyphens: none;
+    hyphens: none;
 }
 
-table
-{
-    border-collapse: collapse;
-    box-shadow: 0.4em 0.4em 0.5em #e0e0e0;
+div.book div.toc,
+div.appendix div.toc {
+    margin-bottom: 3em;
+    border-bottom: 0.0625rem solid #d8d8d8;
 }
 
-table.simplelist
-{
-    text-align: left;
-    color: #005aa0;
-    border: 0;
-    padding: 5px;
-    background: #fffff5;
-    font-weight: normal;
-    font-style: italic;
-    box-shadow: none;
-    margin-bottom: 1em;
+div.book div.toc dd,
+div.appendix div.toc dd {
+    margin-left: 2em;
 }
 
-div.navheader table, div.navfooter table {
-    box-shadow: none;
+div.book span.command,
+div.appendix span.command {
+    font-family: monospace;
+    -webkit-hyphens: none;
+    -moz-hyphens: none;
+    hyphens: none;
 }
 
-div.affiliation
-{
-    font-style: italic;
+div.book .informaltable th,
+div.book .informaltable td,
+div.appendix .informaltable th,
+div.appendix .informaltable td {
+    padding: 0.5rem;
 }