
    :root {
      --desk: #111111;
      --paper: #f9f9f7;
      --paper-dark: #efefe9;
      --ink: #161616;
      --graphite: #6e6e6a;
      --line: #d8d8d3;
      --accent: #d92525;

      --sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
      --mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
      --serif: "Iowan Old Style", "Apple Garamond", Baskerville, "Times New Roman", "Droid Serif", Times, serif;
    }

    * {
      box-sizing: border-box;
    }

    /* The canvas colour has to be on html, not just body. Until the parser
       reaches <body> there is no body background to propagate, so the first
       paint of a navigation would be white before turning dark. */
    html {
      background-color: var(--desk);
    }
    body {
      background-color: var(--desk);
      color: var(--ink);
      font-family: var(--sans);
      margin: 0;
      padding: 4vw;
      display: flex;
      justify-content: center;
      min-height: 100vh;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    .page {
      background-color: var(--paper);
      width: 100%;
      max-width: 1024px;
      box-shadow:
        0 40px 80px rgba(0,0,0,0.8),
        0 0 0 1px rgba(255,255,255,0.08);
      position: relative;
      display: flex;
      flex-direction: column;
    }

    a {
      color: inherit;
    }

    :focus-visible {
      outline: 2px solid var(--accent);
      outline-offset: 4px;
    }

    /* Target trick anchor: the hidden jump target the drawers close to.
       Lives here rather than inline because two pages need it. */
    .closed-target {
      position: absolute;
      top: 0;
      width: 1px;
      height: 1px;
      overflow: hidden;
    }
