/*
 * Fonts
 */
@font-face {
  font-family: "Inria Serif";
  src: local("Inria Serif"), local("InriaSerif"), local("InriaSerif-Regular"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Regular.eot") format("embedded-opentype"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Regular.woff") format("woff"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Regular.ttf") format("truetype"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Regular.svg") format("svg");
  font-style: normal; }
@font-face {
  font-family: "Inria Serif";
  src: local("Inria Serif Bold"), local("InriaSerifBold"), local("InriaSerif-Bold"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Bold.eot") format("embedded-opentype"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Bold.woff") format("woff"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Bold.ttf") format("truetype"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Bold.svg") format("svg");
  font-style: normal;
  font-weight: bold; }
@font-face {
  font-family: "Inria Serif";
  src: local("Inria Serif Italic"), local("InriaSerifItalic"), local("InriaSerif-Italic"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Italic.eot") format("embedded-opentype"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Italic.woff") format("woff"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Italic.ttf") format("truetype"), url("/assets/InriaFonts/fonts/InriaSerif/Web/InriaSerif-Italic.svg") format("svg");
  font-style: italic; }
@font-face {
  font-family: "Inria Sans";
  src: local("Inria Sans"), local("InriaSans"), local("InriaSans-Regular"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Regular.eot") format("embedded-opentype"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Regular.woff") format("woff"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Regular.ttf") format("truetype"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Regular.svg") format("svg");
  font-style: normal; }
@font-face {
  font-family: "Inria Sans";
  src: local("Inria Sans Bold"), local("InriaSansBold"), local("InriaSans-Bold"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Bold.eot") format("embedded-opentype"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Bold.woff") format("woff"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Bold.ttf") format("truetype"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Bold.svg") format("svg");
  font-style: normal;
  font-weight: bold; }
@font-face {
  font-family: "Inria Sans";
  src: local("Inria Sans Italic"), local("InriaSansItalic"), local("InriaSans-Italic"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Italic.eot") format("embedded-opentype"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Italic.woff") format("woff"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Italic.ttf") format("truetype"), url("/assets/InriaFonts/fonts/InriaSans/Web/InriaSans-Italic.svg") format("svg");
  font-style: italic; }
:root {
  --font-sans: Inria Sans, sans-serif;
  --font-serif: Inria Serif, serif; }

section {
  margin-bottom: calc( 2rem + 10vh ); }

.measure {
  max-width: var(--content-width);
  margin: 0 auto;
  padding: 0.5rem;
  font-size: 16px; }

:root {
  --wide-offset-left: 0;
  --wide-padding-left: 1rem;
  --wide-width: calc( 100% - 1rem;);
  --c-hue: 199; }

@media (min-width: 31rem) {
  :root {
    --wide-offset-left: calc( -1 * (100vw - 1rem - var(--content-width))/4 );
    --wide-width: calc( ( 2 * (100vw - 1rem - var(--content-width))/4 ) + var(--content-width) ); } }
@media (min-width: 35rem) {
  /* 35 is what works for a smooth transition
   * between this rule and the 1rem rule;
   * I'm not sure of the math behind this
   */
  :root {
    --wide-padding-left: calc( -1 * var( --wide-offset-left ) ); } }
.alignwide,
figure {
  position: relative;
  left: var(--wide-offset-left);
  width: var(--wide-width); }

figure {
  margin: 1rem 0; }
  figure img {
    max-width: 100%;
    margin: 0 auto;
    display: block; }
  figure iframe {
    display: block; }

figcaption {
  border: 1px solid gray;
  padding: 1rem var(--wide-padding-left); }

.draft-notice,
.author-note,
header {
  position: relative;
  left: var(--wide-offset-left);
  width: var(--wide-width);
  padding: 1rem var(--wide-padding-left);
  border: 1px solid gray;
  box-sizing: border-box; }

.author-note {
  border-color: hsl(var(--c-hue, 199), 98%, 32%); }

header + .author-note {
  margin-top: 1rem; }

.author-note,
header + p,
header + style + section,
header + section,
.author-note + p,
footer {
  margin-top: calc( 2rem + 10vh ); }

footer {
  margin-bottom: calc( 2rem + 10vh ); }

nav a {
  text-decoration: none; }

nav ul {
  margin-top: 0; }

nav li {
  list-style-type: upper-roman; }

nav h3 {
  margin-bottom: 0.1em; }

ol .breadcrumbs {
  padding-left: 0; }
  ol .breadcrumbs li {
    list-style-type: none; }
    ol .breadcrumbs li::before {
      content: "\2923";
      display: inline-block;
      width: 1em;
      margin-left: -1em;
      text-align: left; }

.subtitle {
  font-size: 1.3rem;
  font-weight: bold; }

h1::first-letter, h2::first-letter, h3::first-letter, h4::first-letter, h5::first-letter, h6::first-letter,
hr + p::first-letter,
.browsewrap + p::first-letter,
.browsewrap + style + p::first-letter,
.author-note p:first-child::first-letter,
.author-note::first-letter,
i::first-letter,
blockquote p:first-child::first-letter {
  font-feature-settings: "ss01"; }

table {
  font-feature-settings: "tnum"; }

dl cite {
  opacity: 0.8; }

dl cite:active,
dl cite:hover {
  opacity: 1; }

dt {
  font-weight: bold; }
  dd + dt {
    margin-top: 0.5em; }

dt,
dd {
  margin-bottom: 0.25em; }

ul,
ol,
nav ul,
nav span,
nav h3 {
  padding-left: 2rem; }

li p:first-child {
  margin-top: 0; }
li p:last-child {
  margin-bottom: 0; }

dd {
  margin-left: 2rem; }

/*
 * remove dots on checklist
 *
 * there's no way to add a dot in front of an li that doesn't have a checkbox;
 * the markup for a list where the second item is not a checklist item is as follows:
 *     ul.task-list
 *         li.task-list-item
 *             input.task-list-item-checkbox
 *         li.task-list-item
 *         li.task-list-item
 *             input.task-list-item-checkbox
 * There's no difference in markup. There's also no way to do parent selectors.
 */
ul.task-list {
  list-style: none; }
  ul.task-list li {
    position: relative; }
  ul.task-list .task-list-item-checkbox {
    width: 1em;
    position: absolute;
    left: -1.5em;
    margin: 0.5em 0.3em;
    height: 1em; }

blockquote {
  padding: 0 1rem;
  margin: 1rem 0;
  box-sizing: border-box;
  border: 2px solid hsl(var(--c-hue, 199), 98%, 88%); }

p,
blockquote > cite {
  display: block;
  margin-top: 1em;
  margin-bottom: 1em; }

blockquote > cite:last-child {
  text-align: right; }

abbr {
  text-decoration-skip-ink: none; }

mark {
  background-color: hsl(var(--c-hue, 199), 98%, 88%);
  box-shadow: 0px -0.15em 2px 2px hsl(var(--c-hue, 199), 98%, 88%);
  color: black; }

del {
  text-decoration: line-through; }

ins {
  font-style: italic; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  text-decoration: none; }
  h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
    text-decoration: underline; }

a {
  text-decoration-skip: edges ink;
  text-decoration-skip-ink: auto;
  color: hsl(var(--c-hue, 199), 98%, 32%); }
  a:hover, a:active {
    color: hsl(var(--c-hue, 199), 98%, 50%); }
  a:visited {
    color: hsl(var(--c-hue, 199), 98%, 12%); }
    a:visited:hover {
      color: hsl(var(--c-hue, 199), 98%, 50%); }

.stars {
  background-color: black;
  color: white;
  font-family: "Inria Sans", sans-serif;
  /* background by SVGBackgrounds.com */
  background-color: #000000;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='100' height='50' viewBox='0 0 100 50'%3E%3Cdefs%3E%3Crect stroke='%23000000' stroke-width='0.8' width='1' height='1' id='s'/%3E%3Cpattern id='a' width='2' height='2' patternUnits='userSpaceOnUse'%3E%3Cg stroke='%23000000' stroke-width='0.8'%3E%3Crect fill='%23050505' width='1' height='1'/%3E%3Crect fill='%23000000' width='1' height='1' x='1' y='1'/%3E%3Crect fill='%230a0a0a' width='1' height='1' y='1'/%3E%3Crect fill='%230f0f0f' width='1' height='1' x='1'/%3E%3C/g%3E%3C/pattern%3E%3Cpattern id='b' width='5' height='11' patternUnits='userSpaceOnUse'%3E%3Cg fill='%23141414'%3E%3Cuse xlink:href='%23s' x='2' y='0'/%3E%3Cuse xlink:href='%23s' x='4' y='1'/%3E%3Cuse xlink:href='%23s' x='1' y='2'/%3E%3Cuse xlink:href='%23s' x='2' y='4'/%3E%3Cuse xlink:href='%23s' x='4' y='6'/%3E%3Cuse xlink:href='%23s' x='0' y='8'/%3E%3Cuse xlink:href='%23s' x='3' y='9'/%3E%3C/g%3E%3C/pattern%3E%3Cpattern id='c' width='7' height='7' patternUnits='userSpaceOnUse'%3E%3Cg fill='%231a1a1a'%3E%3Cuse xlink:href='%23s' x='1' y='1'/%3E%3Cuse xlink:href='%23s' x='3' y='4'/%3E%3Cuse xlink:href='%23s' x='5' y='6'/%3E%3Cuse xlink:href='%23s' x='0' y='3'/%3E%3C/g%3E%3C/pattern%3E%3Cpattern id='d' width='11' height='5' patternUnits='userSpaceOnUse'%3E%3Cg fill='%23000000'%3E%3Cuse xlink:href='%23s' x='1' y='1'/%3E%3Cuse xlink:href='%23s' x='6' y='3'/%3E%3Cuse xlink:href='%23s' x='8' y='2'/%3E%3Cuse xlink:href='%23s' x='3' y='0'/%3E%3Cuse xlink:href='%23s' x='0' y='3'/%3E%3C/g%3E%3Cg fill='%231f1f1f'%3E%3Cuse xlink:href='%23s' x='8' y='3'/%3E%3Cuse xlink:href='%23s' x='4' y='2'/%3E%3Cuse xlink:href='%23s' x='5' y='4'/%3E%3Cuse xlink:href='%23s' x='10' y='0'/%3E%3C/g%3E%3C/pattern%3E%3Cpattern id='e' width='47' height='23' patternUnits='userSpaceOnUse'%3E%3Cg fill='%2300bba4'%3E%3Cuse xlink:href='%23s' x='2' y='5'/%3E%3Cuse xlink:href='%23s' x='23' y='13'/%3E%3Cuse xlink:href='%23s' x='4' y='18'/%3E%3Cuse xlink:href='%23s' x='35' y='9'/%3E%3C/g%3E%3C/pattern%3E%3Cpattern id='f' width='61' height='31' patternUnits='userSpaceOnUse'%3E%3Cg fill='%2300bba4'%3E%3Cuse xlink:href='%23s' x='16' y='0'/%3E%3Cuse xlink:href='%23s' x='13' y='22'/%3E%3Cuse xlink:href='%23s' x='44' y='15'/%3E%3Cuse xlink:href='%23s' x='12' y='11'/%3E%3C/g%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23a)' width='100' height='50'/%3E%3Crect fill='url(%23b)' width='100' height='50'/%3E%3Crect fill='url(%23c)' width='100' height='50'/%3E%3Crect fill='url(%23d)' width='100' height='50'/%3E%3Crect fill='url(%23e)' width='100' height='50'/%3E%3Crect fill='url(%23f)' width='100' height='50'/%3E%3C/svg%3E");
  background-attachment: scroll;
  background-size: cover;
  background-size: contain; }

.stars a {
  color: hsl(var(--c-hue, 199), 98%, 68%); }
.stars a:hover {
  color: hsl(var(--c-hue, 199), 98%, 88%); }
.stars section,
.stars article {
  background-color: black; }

body {
  font-family: "Inria Serif", serif;
  line-height: 1.3; }
