@page {margin: 0.4cm}

/* Make page transitions with a sideways sweep gesture in Opera Reader */
@media projection {
  @page { margin: 0 }
  html {overflow: -o-paged-x}
}

/* Progress meter on left instead of top */
/*
p.progress {top: 5.5em; left: 0; width: 1em; z-index: 2;
  padding: 0.5em 0.5em 0.5em 0; border-radius: 0 0.6em 0.6em 0;
  text-align: left; line-height: 1.2; color: #468}
p.progress a {display: block}
p.progress .cur ~ * {color: #9BE; color: #ACF}
p.progress .part {font-size: 140%}
*/

/* On hover, also show the titles */
/*
p.progress:hover {width: auto; right: auto; max-width: 90%; overflow: hidden;
  box-shadow: 0.2em 0.2em 0.5em; background: rgba(70,40,0,0.7)}
p.progress:hover a:after {content: " " attr(title) "\A0";
  white-space: nowrap; color: white; vertical-align: baseline;
  font-size: 100%}
*/

/* Progress meter on bottom instead of top */
p.progress {top: auto; bottom: 0; color: #468; font-size: 30%}
p.progress a {vertical-align: middle; position: relative}
p.progress a.part {font-size: 140%}
/*
*/

/* Progress meter on bottom, and no page numbers
h1::before, h1::after {content: none}
p.progress {top: auto; bottom: 1em; /* left: auto; right: 1em */}
p.progress a {vertical-align: middle}
p.progress .cur {text-decoration: none; font-size: 200%}
/*
*/

/*
x p.progress a:hover {font-size: 500%; vertical-align: bottom;
  line-height: 0.8; color: #468; background: none}
p.progress a:hover::before {content: attr(title); text-align: center;
  font-size: 2rem; color: #468; font-weight: bold;
  text-shadow: 2px 2px 4px yellow, -2px -2px 4px yellow,
    2px -2px 4px yellow, -2px 2px 4px yellow;
  position: absolute; bottom: 2em; left: -20em; right: -20em}
x p.progress .cur ~ a:hover {color: black}
*/

body {font-size-adjust: 0.45}	/* x-height of Gill Sans */

.illustration, .illustration2 {width: 30%; padding: 0}
.illustration {float: right; margin: 0 0 0.2em 1em; text-align: right}
.illustration2 {float: left; margin: 0 1em 0.2em 0}

img, object {max-width: 100%}

.figure {text-align: center; margin: 1.2em 1em; font-style: italic}
.figure img {max-height: 11em}
.figure object {height: 11em}
.figure em {font-style: normal}
.figure p {margin: 0}

table {border-collapse: collapse; font-size: smaller}
td, th {border: 2px solid silver; text-align: center; padding: 0 0.2em}
th:empty {border: none}
/* tr {vertical-align: baseline} */

/* A table with horizontal rules and the THEAD hidden */
table.description {font-size; inherit; border: hidden}
table.description td, table.description th {text-align: left; border: none;
  vertical-align: baseline; padding: 0.25em 0 0.25em 1em}
table.description td:first-child,
table.description th:first-child {padding-left: 0}
table.description tr {border-bottom: 2px solid silver}
table.description thead {display: none}

.me {font-family: "Handwriting - Dakota", Brush Script Std,
  Brush Script MT, cursive; line-height: 0.8;
  background: url(highlighter.png) center center repeat-x;
  background-size: auto 100%}

/* A long and incomplete list, items progressively smaller and dimmer */
.incomplete {margin-left: 0}
.incomplete li {display: inline; margin: 0; padding: 0}
.incomplete li:before {content: " • "}
.incomplete > *:nth-child(1) {font-size: 1em}
.incomplete > *:nth-child(2) {font-size: .9em}
.incomplete > *:nth-child(3) {font-size: .81em}
.incomplete > *:nth-child(4) {font-size: .729em}
.incomplete > *:nth-child(5) {font-size: .6561em}
.incomplete > *:nth-child(6) {font-size: .59049em}
.incomplete > *:nth-child(7) {font-size: .531441em}
.incomplete > *:nth-child(8),
.incomplete > *:nth-child(8) ~ * {font-size: .4782969em}
.incomplete > *:nth-child(9) {opacity: .9}
.incomplete > *:nth-child(10) {opacity: .81}
.incomplete > *:nth-child(11) {opacity: .729}
.incomplete > *:nth-child(12) {opacity: .6561}
.incomplete > *:nth-child(13) {opacity: .59049}
.incomplete > *:nth-child(14) {opacity: .531441}
.incomplete > *:nth-child(15) {opacity: .4782969}
.incomplete > *:nth-child(16) {opacity: .43046721}
.incomplete > *:nth-child(17) {opacity: .387420489}
.incomplete > *:nth-child(18) {opacity: .3486784401}
.incomplete > *:nth-child(19) {opacity: .3138105960}
.incomplete > *:nth-child(20) {opacity: .2824295364}
.incomplete > *:nth-child(21) {opacity: .2541865827}
.incomplete > *:nth-child(22),
.incomplete > *:nth-child(22) ~ * {opacity: .2287679244}

/* An element with two images as children, toggle between them with hover */
.toggle > *:first-child + * {display: none}
.toggle:hover > *:first-child {display: none}
.toggle:hover > *:first-child + * {display: inline}

/* Little images; genie typically floats, icon typically inline */
img.genie {vertical-align: middle; max-width: 4em; max-height: 4em}
img.icon {vertical-align: bottom; height: 1.2em}

/* A decorative little image in the bottom right corner */
img.deco {height: 4em; position: absolute; bottom: 1.5em; right: 1.5em}

/* Style for code examples */
/* code, pre {font-family: Chalkboard, monospace} */
/* code, pre {font-family: Apple Casual, Casual, monospace} */
/* code, pre {font-family: "1942 report", monospace; letter-spacing: -0.15em} */
/* code, pre {font-family: Marker Felt, Marker Felt Thin, monospace} */
/* code, pre {font-family: Caflisch Script Pro, monospace; line-height: 1.1} */
pre b, code b {background: url(highlighter) 100% 50% repeat-x;
  background-size: 100% 100%}
/* pre b, code b {color: red} */
pre .unimportant {font-size: 70%}

/* For advertisement on last slide */
.join {background: url(MMI-dotpattern-rl-500.png) no-repeat right;
  background-size: auto 90%; position: relative}
.join > div {position: relative; background: rgba(243,249,251,0.8);
  border: solid 1px; border-radius: 1em; padding: 0.5em;
  box-shadow: 0.12em 0.12em 0.36em rgba(0,0,0,0.7);
  width: 29em; left: 50%; margin-left: -14em; top: 0.5em;
  color: #005A9C; text-align: center; line-height: 1.5; font-size: 60%;
  -o-transform: rotate(-3deg); -khtml-transform: rotate(-3deg);
  -moz-transform: rotate(-3deg); transform: rotate(-3deg)}
.join img {float: left; height: 10.59em; height: 9em; margin-right: 0.5em}
.join p {margin: 0}
.join a:link, .join a:visited {text-decoration: none}

/* If the UA supports animation, show only one join box at a time. */
/*@supports (animation: swap3 30s infinite linear) {*/

  @keyframes swap3 {		/* Cycle through three boxes */
    from {opacity: 0.0; z-index: 1}
    5% {opacity: 1.0; z-index: 1}
    33.33% {opacity: 1.0; z-index: 2}
    38.33% {opacity: 0.0; z-index: 2}
    to {opacity: 0.0; z-index: 1}
  }
  @-webkit-keyframes swap2 {
    from {opacity: 0.0}
    5% {opacity: 1.0}
    50% {opacity: 1.0}
    55% {opacity: 0.0}
    to {opacity: 0.0}
  }
  @keyframes swap2 {		/* Toggle between two boxes */
    from {opacity: 0.0}
    5% {opacity: 1.0}
    50% {opacity: 1.0}
    55% {opacity: 0.0}
    to {opacity: 0.0}
  }
  .join {height: 7em}
  .join.swap2 > div {animation: swap2 20s infinite; position: absolute}
  .join.swap3 > div {animation: swap3 30s infinite; position: absolute}
  .join > div:nth-child(1) {animation-delay: -10s}
  .join > div:nth-child(2) {animation-delay: -20s}
/*}*/

/* Show a small red arrow before instead of a red asterisk after links */
a:link:after, a:visited:after {content: none}
a:link:before, a:visited:before {content: "\27A0" /*"\2192"*/;
  vertical-align: 0.5em; vertical-align: middle; line-height: 0.5; color: red}
p.letterhead a:before, p.letterhead a:after,
p.signature a:before, p.signature a:after,
p.progress a:before, p.progress a:after {
  content: none}

/* Some demos reguire an experimental viewer */
a.o:after, a.moz:after, a.webkit:after, a.pdf:after {border-radius: 50%;
  background: #ADC4D5; color: #005A9C; line-height: 1; font-size: 40%;
  padding: 0.2em; vertical-align: top; margin-left: 0.3em; height: 0.9em}
a.o:after {content: "o"; font-size: 50%; height: 0.8em}
a.moz:after {content: "moz"}
a.webkit:after {content: "webkit"; font-size: 30%}
a.pdf:after {content: "pdf"}

/* A subtly blinking background behind div.callout */
@-webkit-keyframes flash {
  from {background-position: -50% 0}
  8% {background-position: 150% 0}
  to {background-position: 150% 0}
}
@keyframes flash {
  from {background-position: -50% 0}
  8% {background-position: 150% 0}
  to {background-position: 150% 0}
}
div.callout {
  -webkit-animation: flash 10s 5s infinite;
  animation: flash 10s 5s infinite;
  background-position: -50% 0;
  background-repeat: no-repeat;
  background-size: 25% 100%;
  background-image: -o-linear-gradient(0deg, hsla(0,0%,100%,0),
    white, hsla(0,0%,100%,0));
  background-image: -moz-linear-gradient(0deg, hsla(0,0%,100%,0),
    white, hsla(0,0%,100%,0));
  background-image: -webkit-linear-gradient(0deg, hsla(0,0%,100%,0),
    white, hsla(0,0%,100%,0));
  background-image: linear-gradient(0deg, hsla(0,0%,100%,0),
    white, hsla(0,0%,100%,0))}

/* List bullets for 2nd, 3rd and 4th level */
ul ul {list-style: square}
ul ul ul {list-style: circle}
ul ul ul ul {list-style: disc}

/* A little wider: 46% instead of 45%. And rotate an initial H2 a bit */
.col {width: 46%; margin: 1em 3.5% 1em 0}
.col + .col {margin: 1em 0 1em 4%}
.col > h2:first-child {position: relative; color: #999;
  display: table;
  /* font-family: Caflisch Script Pro, fantasy; */
  /* font-family: Marker Felt, Marker Felt Thin, fantasy; */
  font-family: "1942 report", monospace; letter-spacing: -0.13em;
  background: url(highlighter) 100% 50% repeat-x;
  background-size: 100% 100%;
  -moz-transform-origin: 0 0;
  -khtml-transform-origin: 0 0;
  transform-origin: 0 0;
  -moz-transform: translate(0, 0.5em) rotate(-5deg);
  -khtml-transform: translate(0, 0.5em) rotate(-5deg);
  transform: translate(0, 0.5em) rotate(-5deg)}

/* Use a single element with class=columns instead of two with class=col */
.columns {columns: 2}
.columns li {break-inside: avoid}
ul.columns, ol.columns {margin-left: 0}
ul.columns > li, ol.columns > li {margin: 0.5em 0 0 1.5em}
ul.columns > li:first-child, ol.columns > li:first-child {margin-top: 0}

/* For slides or topics that are on the slides but won't be presented */
.skip {color: gray}
.slide.skip::after {content: " "; position: absolute; top: 0; left: 0;
  width: 100%; height: 100%; background: url(skip.png) no-repeat 50%;
  background-size: auto 90%; z-index: 1}

/* Avoid changes in line height (at the cost of a risk of overlap) */
sub, sup {line-height: 0}

/* Small, red notes to the right */
.note {white-space: normal; font: 90% Gill Sans, sans-serif;
  max-width: 45%; margin: 0 0 0.5em 0.3em; text-align: right;
  float: right; clear: right; color: #cc0000; font-style: italic}
.note::before {content: "\2190\A0"}

body {quotes: "“" "”" "‘" "’"}
cite::before {content: open-quote}
cite::after {content: close-quote}

/*

.slide:hover {
  background-image: url(CSS_color_tree2t.png);
  background-repeat: no-repeat;
  background-position: 240% 50%;
  background-size: auto 0%;
  background-color: #fff;
  -webkit-animation: tree 1s;
  animation: tree 1s;
}
.slide:hover * {-webkit-animation: slide 1s; animation: slide 1s}

@keyframes tree {
  from {background-position: -120% 50%; background-size: auto 90%}
  to {background-position: 240% 50%; background-size: auto 90%}
}
@-webkit-keyframes tree {
  from {background-position: -120% 50%; background-size: auto 90%}
  to {background-position: 240% 50%; background-size: auto 90%}
}

@keyframes slide {
  from {opacity: 0.0}
  70% {opacity: 0.0}
  to {opacity: 1.0}
}
@-webkit-keyframes slide {
  from {opacity: 0.0}
  70% {opacity: 0.0}
  to {opacity: 1.0}
}

*/

/* An element with two children. In projection mode, the second is
only shown on hover (see extra-proj.css) */
.details > :nth-child(2) {margin: 0; width: 90%; box-sizing: border-box;
  padding: 1em; border: 1px /*0.5em*/ solid #72A4C8; border-radius: 1em;
  background: white; overflow: auto}
.details h2 {margin-top: 0; text-align: center}
