Files
CSC110/tufte.css
Hykilpikonna 6fffdf686a deploy
2021-12-07 22:28:01 -05:00

553 lines
16 KiB
CSS

@charset "UTF-8";
/* Import ET Book styles
adapted from https://github.com/edwardtufte/et-book/blob/gh-pages/et-book.css */
@font-face { font-family: "et-book";
src: url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.eot");
src: url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.eot?#iefix") format("embedded-opentype"), url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.woff") format("woff"), url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.ttf") format("truetype"), url("et-book/et-book-roman-line-figures/et-book-roman-line-figures.svg#etbookromanosf") format("svg");
font-weight: normal;
font-style: normal; }
@font-face { font-family: "et-book";
src: url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot");
src: url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot?#iefix") format("embedded-opentype"), url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.woff") format("woff"), url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.ttf") format("truetype"), url("et-book/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.svg#etbookromanosf") format("svg");
font-weight: normal;
font-style: italic; }
@font-face { font-family: "et-book";
src: url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.eot");
src: url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.eot?#iefix") format("embedded-opentype"), url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.woff") format("woff"), url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.ttf") format("truetype"), url("et-book/et-book-bold-line-figures/et-book-bold-line-figures.svg#etbookromanosf") format("svg");
font-weight: bold;
font-style: normal; }
@font-face { font-family: "et-book-roman-old-style";
src: url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot");
src: url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot?#iefix") format("embedded-opentype"), url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.woff") format("woff"), url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.ttf") format("truetype"), url("et-book/et-book-roman-old-style-figures/et-book-roman-old-style-figures.svg#etbookromanosf") format("svg");
font-weight: normal;
font-style: normal; }
/* Tufte CSS styles */
html { font-size: 12pt; }
body { width: 87.5%;
margin-left: auto;
margin-right: auto;
padding-left: 12.5%;
font-family: et-book, Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
background-color: #fffff8;
color: #111;
max-width: 1400px;
counter-reset: sidenote-counter; }
h1 { font-weight: 400;
margin-top: 4rem;
margin-bottom: 1.5rem;
font-size: 3.2rem;
line-height: 1; }
h2 { font-style: italic;
font-weight: 400;
margin-top: 2.1rem;
margin-bottom: 1.4rem;
font-size: 2.2rem;
line-height: 1; }
h3 { font-style: italic;
font-weight: 400;
font-size: 1.7rem;
margin-top: 2rem;
margin-bottom: 1.4rem;
line-height: 1; }
hr { display: block;
height: 1px;
width: 55%;
border: 0;
border-top: 1px solid #ccc;
margin: 1em 0;
padding: 0; }
p.subtitle { font-style: italic;
margin-top: 1rem;
margin-bottom: 1rem;
font-size: 1.8rem;
display: block;
line-height: 1; }
.numeral { font-family: et-book-roman-old-style; }
.danger { color: red; }
article { position: relative;
padding: 5rem 0rem; }
section { padding-top: 1rem;
padding-bottom: 1rem; }
p, ol, ul { font-size: 1.4rem;
line-height: 2rem; }
p { margin-top: 1.4rem;
margin-bottom: 1.4rem;
padding-right: 0;
vertical-align: baseline; }
/* Chapter Epigraphs */
div.epigraph { margin: 5em 0; }
div.epigraph > blockquote { margin-top: 3em;
margin-bottom: 3em; }
div.epigraph > blockquote, div.epigraph > blockquote > p { font-style: italic; }
div.epigraph > blockquote > footer { font-style: normal; }
div.epigraph > blockquote > footer > cite { font-style: italic; }
/* end chapter epigraphs styles */
blockquote { font-size: 1.4rem; }
blockquote p { width: 55%;
margin-right: 40px; }
blockquote footer { width: 55%;
font-size: 1.1rem;
text-align: right; }
section > p,
section > footer,
section > table,
section div > p { width: 55%; }
/* 50 + 5 == 55, to be the same width as paragraph */
section > ol, section > ul,
section div > ol, section div > ul { width: 50%;
-webkit-padding-start: 5%; }
li:not(:first-child) { margin-top: 0.25rem; }
figure { padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
max-width: 55%;
-webkit-margin-start: 0;
-webkit-margin-end: 0;
margin: 0 0 3em 0; }
figcaption { float: right;
clear: right;
margin-top: 0;
margin-bottom: 0;
font-size: 1.1rem;
line-height: 1.6;
vertical-align: baseline;
position: relative;
max-width: 40%; }
figure.fullwidth figcaption { margin-right: 24%; }
/* Links: replicate underline that clears descenders */
a:link, a:visited { color: inherit; }
a:link { text-decoration: none;
background: -webkit-linear-gradient(#fffff8, #fffff8), -webkit-linear-gradient(#fffff8, #fffff8), -webkit-linear-gradient(#333, #333);
background: linear-gradient(#fffff8, #fffff8), linear-gradient(#fffff8, #fffff8), linear-gradient(#333, #333);
-webkit-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-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;
background-position: 0% 93%, 100% 93%, 0% 93%; }
@media screen and (-webkit-min-device-pixel-ratio: 0) { a:link { background-position-y: 87%, 87%, 87%; } }
a:link::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;
background: #b4d5fe; }
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;
background: #b4d5fe; }
/* Sidenotes, margin notes, figures, captions */
img { max-width: 100%; }
video { max-width: 100%; }
.sidenote, .marginnote { float: right;
clear: right;
margin-right: -60%;
width: 50%;
margin-top: 0;
margin-bottom: 0;
font-size: 1.1rem;
line-height: 1.3;
vertical-align: baseline;
position: relative; }
.margintable {
float: right;
clear: right;
margin-right: 12.5%;
width: 27.5%;
margin-top: 0;
margin-bottom: 0;
font-size: 1.1rem;
line-height: 1.3;
vertical-align: baseline;
position: relative;
}
.sidenote-number { counter-increment: sidenote-counter; }
.sidenote-number:after, .sidenote:before { font-family: et-book-roman-old-style;
position: relative;
vertical-align: baseline; }
.sidenote-number:after { content: counter(sidenote-counter);
font-size: 1rem;
top: -0.5rem;
left: 0.1rem; }
.sidenote:before { content: counter(sidenote-counter) " ";
font-size: 1rem;
top: -0.5rem; }
blockquote .sidenote, blockquote .marginnote { margin-right: -82%;
min-width: 59%;
text-align: left; }
div.fullwidth, table.fullwidth { width: 100%; }
.fullwidth p {
width: 100%;
}
div.table-wrapper { overflow-x: auto;
font-family: "Trebuchet MS", "Gill Sans", "Gill Sans MT", sans-serif; }
.sans { font-family: "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
letter-spacing: .03em; }
code { font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 1.2rem;
line-height: 1.42; }
.sans > code { font-size: 1.2rem; }
h1 > code, h2 > code, h3 > code { font-size: 0.85em; }
.marginnote > code, .sidenote > code { font-size: 1rem; }
pre.code,
pre.sourceCode {
font-size: 0.9rem;
width: 90%;
margin-left: 2.5%;
overflow-x: auto;
padding: 5px; }
.fullwidth pre.code,
.fullwidth pre.sourceCode {
width: 90%;
}
div.sourceCode::before,
div.sourceCode::after {
background-color: #c2c6d1;
content: "";
display: inline-block;
height: 2px;
width: 55%;
}
table div.sourceCode::before,
table div.sourceCode::after {
background-color: initial;
height: 0;
width: 0;
}
pre.code.textwidth,
pre.sourceCode.textwidth { width: 90%; }
.sourceCode a {
background: none;
}
.sourceCode.numberLines {
margin-left: 3.5%;
overflow-x: initial;
}
.fullwidth { max-width: 90%;
clear:both; }
span.newthought { font-variant: small-caps;
font-size: 1.2em; }
input.margin-toggle { display: none; }
label.sidenote-number { display: inline; }
label.margin-toggle:not(.sidenote-number) { display: none; }
.iframe-wrapper { position: relative;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0; }
.iframe-wrapper iframe { position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%; }
@media (max-width: 760px) { body { width: 84%;
padding-left: 8%;
padding-right: 8%; }
hr, section > p, section > footer, section > table { width: 100%; }
pre.code { width: 97%; }
section > ol { width: 90%; }
section > ul { width: 90%; }
figure { max-width: 90%; }
figcaption, figure.fullwidth figcaption { margin-right: 0%;
max-width: none; }
blockquote { margin-left: 1.5em;
margin-right: 0em; }
blockquote p, blockquote footer { width: 100%; }
label.margin-toggle:not(.sidenote-number) { display: inline; }
.sidenote, .marginnote { display: none; }
.margin-toggle:checked + .sidenote,
.margin-toggle:checked + .marginnote { display: block;
float: left;
left: 1rem;
clear: both;
width: 95%;
margin: 1rem 2.5%;
vertical-align: baseline;
position: relative; }
label { cursor: pointer; }
div.table-wrapper, table { width: 85%; }
img { width: 100%; } }
th {
text-align: left;
}
th, td {
vertical-align: baseline;
}
table code {
font-size: 1.2rem;
}
table {
font-size: 1.4rem;
}
caption {
font-size: 1.2rem;
}
.reference-table th {
background-color: #eee;
font-size: 1.2rem;
padding: .2em;
}
.reference-table td {
border-bottom: 1px solid grey;
font-size: 1.15rem;
line-height: 1.4rem;
padding: 5px;
}
.reference-table td p {
font-size: 1.15rem;
line-height: 1.4rem;
margin-bottom: 1rem;
margin-top: 0;
}
.reference-table td ol,
.reference-table td li {
font-size: 1.15rem;
line-height: 1.4rem;
}
.image-table td {
vertical-align: top;
}
@media print {
html { font-size: 11px; }
.page-break {
page-break-after: always;
}
.sidenote,
.marginnote {
display: block;
background-color: lightgray;
float: left;
left: 1rem;
clear: both;
width: 95%;
margin: 1rem 2.5%;
vertical-align: baseline;
position: relative;
border: 1px solid black;
padding: 3px;
}
}
/* MathJax */
.math {
font-size: 1.25rem;
}
/* Custom styling for memory model tables */
.memory-model-values {
width: 55%;
}
table .memory-model-values {
width: 100%;
}
table .memory-model-values table {
min-width: 90%;
}
.memory-model-values th {
font-weight: 400;
font-style: italic;
}
.memory-model-values td {
border-top: 1px solid darkgrey;
}
.memory-model-values table {
border: 1px solid black;
margin: 0.5rem auto;
min-width: 40%;
}
.memory-model-values caption {
background-color: lavender;
padding-left: 5px;
text-align: left;
}
.memory-model-values-inactive table {
background-color: lightgray;
}
.memory-model-values-inactive {
color: slategray;
}
.memory-model-values-inactive caption {
background-color: silver;
}
/* Math environments */
.definition > p:first-child::before {
content: "Definition. ";
display: inline;
font-style: italic;
}
.example > p:first-child::before {
content: "Example. ";
display: inline;
font-weight: bold;
}
.translation > p:first-child::before {
content: "Translation. ";
display: inline;
font-style: italic;
font-weight: normal;
}
.discussion > p:first-child::before {
content: "Discussion. ";
display: inline;
font-style: italic;
font-weight: normal;
}
.proof > p:first-child::before {
content: "Proof. ";
display: inline;
font-style: italic;
font-weight: normal;
}
.proof::after {
content: "◼";
float: left;
margin-top: -2.5em;
margin-left: 53%;
}
.analysis > p:first-child::before {
content: "Running time analysis. ";
display: inline;
font-style: italic;
font-weight: normal;
}
.analysis::after {
content: "◼";
float: left;
margin-top: -2.5em;
margin-left: 53%;
}
.theorem > p:first-child::before {
content: "Theorem. ";
display: inline;
font-weight: bold;
}
.claim > p:first-child::before {
content: "Claim. ";
display: inline;
font-style: italic;
}
.framed {
border: solid 1px black;
padding: 0 10px;
}
section > .framed {
width: 55%;
}
section > .framed.fullwidth {
width: 90%;
}
.framed p {
width: 100%;
}
.framed ol,
.framed ul {
width: 95%;
}
.framed .proof::after {
float: right;
margin-left: 0;
}