@ -39,442 +39,489 @@ html {
}
}
body {
body {
width : 87 . 5 % ;
width : 87 . 5 % ;
margin-left : auto ;
margin-left : auto ;
margin-right : auto ;
margin-right : auto ;
padding-left : 12 . 5 % ;
padding-left : 12 . 5 % ;
font-family : "EB Garamond" , serif ;
font-family : "EB Garamond" , serif ;
background-color : # fffff8 ;
background-color : # fffff8 ;
color : # 111 ;
color : # 111 ;
max-width : 1400px ;
max-width : 1400px ;
counter-reset : sidenote-counter ;
counter-reset : sidenote-counter ;
}
}
/* Adds dark mode */
/* Adds dark mode */
@ media ( prefers-color-scheme : dark ) {
@ media ( prefers-color-scheme : dark ) {
body {
body {
background-color : # 151515 ;
background-color : # 151515 ;
color : # ddd ;
color : # ddd ;
}
}
}
}
h1 {
h1 {
font-weight : 400 ;
font-weight : 400 ;
margin-top : 4rem ;
margin-top : 4rem ;
margin-bottom : 1 . 5rem ;
margin-bottom : 1 . 5rem ;
font-size : 3 . 2rem ;
font-size : 3 . 2rem ;
line-height : 1 ;
line-height : 1 ;
}
}
h2 {
h2 {
font-style : italic ;
font-style : italic ;
font-weight : 400 ;
font-weight : 400 ;
margin-top : 2 . 1rem ;
margin-top : 2 . 1rem ;
margin-bottom : 1 . 4rem ;
margin-bottom : 1 . 4rem ;
font-size : 2 . 2rem ;
font-size : 2 . 2rem ;
line-height : 1 ;
line-height : 1 ;
}
}
h3 {
h3 {
font-style : italic ;
font-style : italic ;
font-weight : 400 ;
font-weight : 400 ;
font-size : 1 . 7rem ;
font-size : 1 . 7rem ;
margin-top : 2rem ;
margin-top : 2rem ;
margin-bottom : 1 . 4rem ;
margin-bottom : 1 . 4rem ;
line-height : 1 ;
line-height : 1 ;
}
}
hr {
hr {
display : block ;
display : block ;
height : 1px ;
height : 1px ;
width : 55 % ;
width : 55 % ;
border : 0 ;
border : 0 ;
border-top : 1px solid # ccc ;
border-top : 1px solid # ccc ;
margin : 1em 0 ;
margin : 1em 0 ;
padding : 0 ;
padding : 0 ;
}
}
p . subtitle {
p . subtitle {
font-style : italic ;
font-style : italic ;
margin-top : 1rem ;
margin-top : 1rem ;
margin-bottom : 1rem ;
margin-bottom : 1rem ;
font-size : 1 . 8rem ;
font-size : 1 . 8rem ;
display : block ;
display : block ;
line-height : 1 ;
line-height : 1 ;
}
}
. numeral {
. numeral {
font-family : "EB Garamond" , serif ;
font-family : "EB Garamond" , serif ;
}
}
. danger {
. danger {
color : red ;
color : red ;
}
}
article {
article {
padding : 5rem 0rem ;
padding : 5rem 0rem ;
}
}
section {
section {
padding-top : 1rem ;
padding-top : 1rem ;
padding-bottom : 1rem ;
padding-bottom : 1rem ;
}
}
p ,
p ,
dl ,
dl ,
ol ,
ol ,
ul {
ul {
font-size : 1 . 4rem ;
font-size : 1 . 4rem ;
line-height : 2rem ;
line-height : 2rem ;
}
}
p {
p {
margin-top : 1 . 4rem ;
margin-top : 1 . 4rem ;
margin-bottom : 1 . 4rem ;
margin-bottom : 1 . 4rem ;
padding-right : 0 ;
padding-right : 0 ;
vertical-align : baseline ;
vertical-align : baseline ;
}
}
/* Chapter Epigraphs */
/* Chapter Epigraphs */
div . epigraph {
div . epigraph {
margin : 5em 0 ;
margin : 5em 0 ;
}
}
div . epigraph > blockquote {
div . epigraph > blockquote {
margin-top : 3em ;
margin-top : 3em ;
margin-bottom : 3em ;
margin-bottom : 3em ;
}
}
div . epigraph > blockquote ,
div . epigraph > blockquote ,
div . epigraph > blockquote > p {
div . epigraph > blockquote > p {
font-style : italic ;
font-style : italic ;
}
}
div . epigraph > blockquote > footer {
div . epigraph > blockquote > footer {
font-style : normal ;
font-style : normal ;
}
}
div . epigraph > blockquote > footer > cite {
div . epigraph > blockquote > footer > cite {
font-style : italic ;
font-style : italic ;
}
}
/* end chapter epigraphs styles */
/* end chapter epigraphs styles */
blockquote {
blockquote {
font-size : 1 . 4rem ;
font-size : 1 . 4rem ;
}
}
blockquote p {
blockquote p {
width : 55 % ;
width : 55 % ;
margin-right : 40px ;
margin-right : 40px ;
}
}
blockquote footer {
blockquote footer {
width : 55 % ;
width : 55 % ;
font-size : 1 . 1rem ;
font-size : 1 . 1rem ;
text-align : right ;
text-align : right ;
}
}
section > p ,
section > p ,
section > footer ,
section > footer ,
section > table {
section > table {
width : 55 % ;
width : 55 % ;
}
}
/* 50 + 5 == 55, to be the same width as paragraph */
/* 50 + 5 == 55, to be the same width as paragraph */
section > dl ,
section > dl ,
section > ol ,
section > ol ,
section > ul {
section > ul {
width : 50 % ;
width : 50 % ;
-webkit-padding-start : 5 % ;
-webkit-padding-start : 5 % ;
}
}
dt : not ( : first-child ) ,
dt : not ( : first-child ) ,
li : not ( : first-child ) {
li : not ( : first-child ) {
margin-top : 0 . 25rem ;
margin-top : 0 . 25rem ;
}
}
figure {
figure {
padding : 0 ;
padding : 0 ;
border : 0 ;
border : 0 ;
font-size : 100 % ;
font-size : 100 % ;
font : inherit ;
font : inherit ;
vertical-align : baseline ;
vertical-align : baseline ;
max-width : 55 % ;
max-width : 55 % ;
-webkit-margin-start : 0 ;
-webkit-margin-start : 0 ;
-webkit-margin-end : 0 ;
-webkit-margin-end : 0 ;
margin : 0 0 3em 0 ;
margin : 0 0 3em 0 ;
}
}
figcaption {
figcaption {
float : right ;
float : right ;
clear : right ;
clear : right ;
margin-top : 0 ;
margin-top : 0 ;
margin-bottom : 0 ;
margin-bottom : 0 ;
font-size : 1 . 1rem ;
font-size : 1 . 1rem ;
line-height : 1 . 6 ;
line-height : 1 . 6 ;
vertical-align : baseline ;
vertical-align : baseline ;
position : relative ;
position : relative ;
max-width : 40 % ;
max-width : 40 % ;
}
}
figure . fullwidth figcaption {
figure . fullwidth figcaption {
margin-right : 24 % ;
margin-right : 24 % ;
}
}
/* Links: replicate underline that clears descenders */
/* Links: replicate underline that clears descenders */
a : link ,
a : link ,
a : visited {
a : visited {
color : inherit ;
color : inherit ;
}
}
. no-tufte-underline : link {
. no-tufte-underline : link {
background : unset ;
background : unset ;
text-shadow : unset ;
text-shadow : unset ;
}
}
a : link , . tufte-underline , . hover-tufte-underline : hover {
a : link , . tufte-underline , . hover-tufte-underline : hover {
text-decoration : none ;
text-decoration : none ;
background : -webkit-linear-gradient ( # fffff8 , # fffff8 ) , -webkit-linear-gradient ( # fffff8 , # fffff8 ) , -webkit-linear-gradient ( currentColor , currentColor ) ;
background : -webkit-linear-gradient ( # fffff8 , # fffff8 ) , -webkit-linear-gradient ( # fffff8 , # fffff8 ) , -webkit-linear-gradient ( currentColor , currentColor ) ;
background : linear-gradient ( # fffff8 , # fffff8 ) , linear-gradient ( # fffff8 , # fffff8 ) , linear-gradient ( currentColor , currentColor ) ;
background : linear-gradient ( # fffff8 , # fffff8 ) , linear-gradient ( # fffff8 , # fffff8 ) , linear-gradient ( currentColor , currentColor ) ;
-webkit-background-size : 0 . 05em 1px , 0 . 05em 1px , 1px 1px ;
-webkit-background-size : 0 . 05em 1px , 0 . 05em 1px , 1px 1px ;
-moz-background-size : 0 . 05em 1px , 0 . 05em 1px , 1px 1px ;
-moz-background-size : 0 . 05em 1px , 0 . 05em 1px , 1px 1px ;
background-size : 0 . 05em 1px , 0 . 05em 1px , 1px 1px ;
background-size : 0 . 05em 1px , 0 . 05em 1px , 1px 1px ;
background-repeat : no-repeat , no-repeat , repeat-x ;
background-repeat : no-repeat , no-repeat , repeat-x ;
text-shadow : 0 . 03em 0 # fffff8 , -0 . 03em 0 # fffff8 , 0 0 . 03em # fffff8 , 0 -0 . 03em # fffff8 , 0 . 06em 0 # fffff8 , -0 . 06em 0 # fffff8 , 0 . 09em 0 # fffff8 , -0 . 09em 0 # fffff8 , 0 . 12em 0 # fffff8 , -0 . 12em 0 # fffff8 , 0 . 15em 0 # fffff8 , -0 . 15em 0 # fffff8 ;
text-shadow : 0 . 03em 0 # fffff8 , -0 . 03em 0 # fffff8 , 0 0 . 03em # fffff8 , 0 -0 . 03em # fffff8 , 0 . 06em 0 # fffff8 , -0 . 06em 0 # fffff8 , 0 . 09em 0 # fffff8 , -0 . 09em 0 # fffff8 , 0 . 12em 0 # fffff8 , -0 . 12em 0 # fffff8 , 0 . 15em 0 # fffff8 , -0 . 15em 0 # fffff8 ;
background-position : 0 % 93 % , 100 % 93 % , 0 % 93 % ;
background-position : 0 % 93 % , 100 % 93 % , 0 % 93 % ;
}
}
@ media screen and ( -webkit-min-device-pixel-ratio : 0 ) {
@ media screen and ( -webkit-min-device-pixel-ratio : 0 ) {
a : link , . tufte-underline , . hover-tufte-underline : hover {
a : link , . tufte-underline , . hover-tufte-underline : hover {
background-position-y : 87 % , 87 % , 87 % ;
background-position-y : 87 % , 87 % , 87 % ;
}
}
}
}
/* Adds dark mode */
/* Adds dark mode */
@ media ( prefers-color-scheme : dark ) {
@ media ( prefers-color-scheme : dark ) {
a : link , . tufte-underline , . hover-tufte-underline : hover {
a : link , . tufte-underline , . hover-tufte-underline : hover {
text-shadow : 0 . 03em 0 # 151515 , -0 . 03em 0 # 151515 , 0 0 . 03em # 151515 , 0 -0 . 03em # 151515 , 0 . 06em 0 # 151515 , -0 . 06em 0 # 151515 , 0 . 09em 0 # 151515 , -0 . 09em 0 # 151515 , 0 . 12em 0 # 151515 , -0 . 12em 0 # 151515 , 0 . 15em 0 # 151515 , -0 . 15em 0 # 151515 ;
text-shadow : 0 . 03em 0 # 151515 , -0 . 03em 0 # 151515 , 0 0 . 03em # 151515 , 0 -0 . 03em # 151515 , 0 . 06em 0 # 151515 , -0 . 06em 0 # 151515 , 0 . 09em 0 # 151515 , -0 . 09em 0 # 151515 , 0 . 12em 0 # 151515 , -0 . 12em 0 # 151515 , 0 . 15em 0 # 151515 , -0 . 15em 0 # 151515 ;
}
}
}
}
a : link :: selection ,
a : link :: selection ,
a : link :: -moz-selection {
a : link :: -moz-selection {
text-shadow : 0 . 03em 0 # b4d5fe , -0 . 03em 0 # b4d5fe , 0 0 . 03em # b4d5fe , 0 -0 . 03em # b4d5fe , 0 . 06em 0 # b4d5fe , -0 . 06em 0 # b4d5fe , 0 . 09em 0 # b4d5fe , -0 . 09em 0 # b4d5fe , 0 . 12em 0 # b4d5fe , -0 . 12em 0 # b4d5fe , 0 . 15em 0 # b4d5fe , -0 . 15em 0 # b4d5fe ;
text-shadow : 0 . 03em 0 # b4d5fe , -0 . 03em 0 # b4d5fe , 0 0 . 03em # b4d5fe , 0 -0 . 03em # b4d5fe , 0 . 06em 0 # b4d5fe , -0 . 06em 0 # b4d5fe , 0 . 09em 0 # b4d5fe , -0 . 09em 0 # b4d5fe , 0 . 12em 0 # b4d5fe , -0 . 12em 0 # b4d5fe , 0 . 15em 0 # b4d5fe , -0 . 15em 0 # b4d5fe ;
background : # b4d5fe ;
background : # b4d5fe ;
}
}
/* Sidenotes, margin notes, figures, captions */
/* Sidenotes, margin notes, figures, captions */
img {
img {
max-width : 100 % ;
max-width : 100 % ;
}
}
. sidenote ,
. sidenote ,
. marginnote {
. marginnote {
float : right ;
float : right ;
clear : right ;
clear : right ;
margin-right : -60 % ;
margin-right : -60 % ;
width : 50 % ;
width : 50 % ;
margin-top : 0 . 3rem ;
margin-top : 0 . 3rem ;
margin-bottom : 0 ;
margin-bottom : 0 ;
font-size : 1 . 1rem ;
font-size : 1 . 1rem ;
line-height : 1 . 3 ;
line-height : 1 . 3 ;
vertical-align : baseline ;
vertical-align : baseline ;
position : relative ;
position : relative ;
}
}
. sidenote-number {
. sidenote-number {
counter-increment : sidenote-counter ;
counter-increment : sidenote-counter ;
}
}
. sidenote-number : after ,
. sidenote-number : after ,
. sidenote : before {
. sidenote : before {
font-family : "EB Garamond" , serif ;
font-family : "EB Garamond" , serif ;
position : relative ;
position : relative ;
vertical-align : baseline ;
vertical-align : baseline ;
}
}
. sidenote-number : after {
. sidenote-number : after {
content : counter ( sidenote-counter ) ;
content : counter ( sidenote-counter ) ;
font-size : 1rem ;
font-size : 1rem ;
top : -0 . 5rem ;
top : -0 . 5rem ;
left : 0 . 1rem ;
left : 0 . 1rem ;
}
}
. sidenote : before {
. sidenote : before {
content : counter ( sidenote-counter ) " " ;
content : counter ( sidenote-counter ) " " ;
font-size : 1rem ;
font-size : 1rem ;
top : -0 . 5rem ;
top : -0 . 5rem ;
}
}
blockquote . sidenote ,
blockquote . sidenote ,
blockquote . marginnote {
blockquote . marginnote {
margin-right : -82 % ;
margin-right : -82 % ;
min-width : 59 % ;
min-width : 59 % ;
text-align : left ;
text-align : left ;
}
}
div . fullwidth ,
div . fullwidth ,
table . fullwidth {
table . fullwidth {
width : 100 % ;
width : 100 % ;
}
}
div . table-wrapper {
div . table-wrapper {
overflow-x : auto ;
overflow-x : auto ;
font-family : "Trebuchet MS" , "Gill Sans" , "Gill Sans MT" , sans-serif ;
font-family : "Trebuchet MS" , "Gill Sans" , "Gill Sans MT" , sans-serif ;
}
}
. sans {
. sans {
font-family : "Gill Sans" , "Gill Sans MT" , Calibri , sans-serif ;
font-family : "Gill Sans" , "Gill Sans MT" , Calibri , sans-serif ;
letter-spacing : . 03em ;
letter-spacing : . 03em ;
}
}
code , pre > code {
code , pre > code {
font-family : Consolas , "Liberation Mono" , Menlo , Courier , monospace ;
font-family : Consolas , "Liberation Mono" , Menlo , Courier , monospace ;
font-size : 1 . 0rem ;
font-size : 1 . 0rem ;
line-height : 1 . 42 ;
line-height : 1 . 42 ;
-webkit-text-size-adjust : 100 % ; /* Prevent adjustments of font size after orientation changes in iOS. See https://github.com/edwardtufte/tufte-css/issues/81#issuecomment-261953409 */
-webkit-text-size-adjust : 100 % ; /* Prevent adjustments of font size after orientation changes in iOS. See https://github.com/edwardtufte/tufte-css/issues/81#issuecomment-261953409 */
}
}
. sans > code {
. sans > code {
font-size : 1 . 2rem ;
font-size : 1 . 2rem ;
}
}
h1 > code ,
h1 > code ,
h2 > code ,
h2 > code ,
h3 > code {
h3 > code {
font-size : 0 . 80em ;
font-size : 0 . 80em ;
}
}
. marginnote > code ,
. marginnote > code ,
. sidenote > code {
. sidenote > code {
font-size : 1rem ;
font-size : 1rem ;
}
}
pre > code {
pre > code {
font-size : 0 . 9rem ;
font-size : 0 . 9rem ;
width : 52 . 5 % ;
width : 52 . 5 % ;
margin-left : 2 . 5 % ;
margin-left : 2 . 5 % ;
overflow-x : auto ;
overflow-x : auto ;
display : block ;
display : block ;
}
}
pre . fullwidth > code {
pre . fullwidth > code {
width : 90 % ;
width : 90 % ;
}
}
. fullwidth {
. fullwidth {
max-width : 90 % ;
max-width : 90 % ;
clear : both ;
clear : both ;
}
}
span . newthought , p . newthought :: first-line {
span . newthought , p . newthought :: first-line {
font-variant : small-caps ;
font-variant : small-caps ;
font-size : 1 . 2em ;
font-size : 1 . 2em ;
}
}
input . margin-toggle {
input . margin-toggle {
display : none ;
display : none ;
}
}
label . sidenote-number {
label . sidenote-number {
display : inline-block ;
display : inline-block ;
max-height : 2rem ; /* should be less than or equal to paragraph line-height */
max-height : 2rem ; /* should be less than or equal to paragraph line-height */
}
}
label . margin-toggle : not ( . sidenote-number ) {
label . margin-toggle : not ( . sidenote-number ) {
display : none ;
display : none ;
}
}
. iframe-wrapper {
. iframe-wrapper {
position : relative ;
position : relative ;
padding-bottom : 56 . 25 % ; /* 16:9 */
padding-bottom : 56 . 25 % ; /* 16:9 */
padding-top : 25px ;
padding-top : 25px ;
height : 0 ;
height : 0 ;
}
}
. iframe-wrapper iframe {
. iframe-wrapper iframe {
position : absolute ;
position : absolute ;
top : 0 ;
top : 0 ;
left : 0 ;
left : 0 ;
width : 100 % ;
width : 100 % ;
height : 100 % ;
height : 100 % ;
}
}
@ media ( max-width : 760px ) {
@ media ( max-width : 760px ) {
body {
body {
width : 84 % ;
width : 84 % ;
padding-left : 8 % ;
padding-left : 8 % ;
padding-right : 8 % ;
padding-right : 8 % ;
}
}
hr ,
hr ,
section > p ,
section > p ,
section > footer ,
section > footer ,
section > table {
section > table {
width : 100 % ;
width : 100 % ;
}
}
pre > code {
pre > code {
width : 97 % ;
width : 97 % ;
}
}
section > dl ,
section > dl ,
section > ol ,
section > ol ,
section > ul {
section > ul {
width : 90 % ;
width : 90 % ;
}
}
figure {
figure {
max-width : 90 % ;
max-width : 90 % ;
}
}
figcaption ,
figcaption ,
figure . fullwidth figcaption {
figure . fullwidth figcaption {
margin-right : 0 % ;
margin-right : 0 % ;
max-width : none ;
max-width : none ;
}
}
blockquote {
blockquote {
margin-left : 1 . 5em ;
margin-left : 1 . 5em ;
margin-right : 0em ;
margin-right : 0em ;
}
}
blockquote p ,
blockquote p ,
blockquote footer {
blockquote footer {
width : 100 % ;
width : 100 % ;
}
}
label . margin-toggle : not ( . sidenote-number ) {
label . margin-toggle : not ( . sidenote-number ) {
display : inline ;
display : inline ;
}
}
. sidenote ,
. sidenote ,
. marginnote {
. marginnote {
display : none ;
display : none ;
}
}
. margin-toggle : checked + . sidenote ,
. margin-toggle : checked + . sidenote ,
. margin-toggle : checked + . marginnote {
. margin-toggle : checked + . marginnote {
display : block ;
display : block ;
float : left ;
float : left ;
left : 1rem ;
left : 1rem ;
clear : both ;
clear : both ;
width : 95 % ;
width : 95 % ;
margin : 1rem 2 . 5 % ;
margin : 1rem 2 . 5 % ;
vertical-align : baseline ;
vertical-align : baseline ;
position : relative ;
position : relative ;
}
}
label {
label {
cursor : pointer ;
cursor : pointer ;
}
}
div . table-wrapper ,
div . table-wrapper ,
table {
table {
width : 85 % ;
width : 85 % ;
}
}
img {
img {
width : 100 % ;
width : 100 % ;
}
}
}
/* contents navigator */
details # chapters {
position : fixed ;
right : 2px ;
top : 2px ;
z-index : 300 ;
max-height : 80 % ;
overflow : auto ;
background-color : # 151515 ;
color : # fffff8 ;
text-align : center ;
border : 3px solid # fffff8 ;
border-radius : 2px ;
}
details # chapters summary {
cursor : pointer ;
display : block ;
padding : 2px 5px 5px ;
}
details # chapters summary :: marker {
list-style : none ;
}
details # chapters summary :: after {
content : "❮ ❮ " ;
}
details # chapters [ open ] summary :: after {
content : "❯ ❯ " ;
}
details # chapters ul {
padding : 3px ;
}
details # chapters li {
list-style : none ;
margin : 5px 10px ;
}
details # chapters a {
text-shadow : none ;
}
}