
@import url("https://fonts.googleapis.com/css?family=PT+Serif:400,700,400italic,700italic|Open+Sans:400italic,700italic,400,700");

body {
    font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
body,
body.pretext-article,
body.pretext-book,
body.standalone {
    margin: 0;
    padding: 0;
/*
    font-size: unset;
*/
}

body, html body { background: #fff; }

a {
    color: inherit;
    text-decoration: none;
}

/* so that we can position things (like .autopermalink) absolutely wrt these items */
.pretext-content section,
.pretext-content article,
.pretext-content figure,
.pretext-content figcaption,
.pretext-content .exercisegroup,
.pretext-content p {
    position: relative;
}

/* Oscar leving figured out the cause of chrome showing a funny border focus */
.pretext-content .knowl p {
    position: unset;
}

/* CSS defult values:
https://www.w3schools.com/cssref/css_default_values.asp
*/

/* the default margin for pre is "1em 0", so we over-ride
so that we can set our own later */
.pretext-content pre {
    margin: 0;
    padding: 0;
    border: none;
}
.pretext-content textarea {
    padding: 0;
}

/* p and other block-level elements should have space at the top, and not the bottom */
.pretext-content h1, .pretext-content h2, .pretext-content h3, .pretext-content h4, .pretext-content h5, .pretext-content h6 {
    margin: 0;
}

.pretext-content .heading {
    line-height: 1.1;
}

/* spacing around and after p, and around and after article */

.pretext-content p {
    margin-top: 1.25em;
    margin-bottom: 0;
    line-height: 1.35;
}
.pretext-content .aside-like > p:first-child,
.pretext-content td > p:first-child,
.pretext-content .solution-like > p:first-child {
    margin-top: 0;
}
/* for assemblages without a title */
.pretext-content .assemblage-like > p:first-of-type {
    margin-top: 0.25em;
}
.pretext-content p.intertext {
    margin-top: -0.25em;
    text-indent: 0;
}

.pretext-content p + table {
    margin-top: 1em;
}

.pretext-content table tr td p + p {
    margin-top: 1em;
}

.pretext-content table + p {
    margin-top: 1.5em;
}

.pretext-content p + figure.figure-like > table {
    margin-top: 1em;
}

/* 1.25 = ol top + li top ?  looked too big with 0.75 below */
.pretext-content .exercise-like p + ol {  
    margin-top: 0.5em;
}

.pretext-content p + pre.prettyprint,
.pretext-content p + pre.plainprint {
    margin-top: 1.25em;
}
.pretext-content p + .code-box {
    margin-top: 1.25em;
}
.pretext-content .code-box > .console{
    margin-left: 1.5em;
}










/* this > may be too restrictive.  The purpose is to not put a
   top margin on an article at the top of a knowl */
.pretext-content section > article, .pretext-content section > section.paragraphs, .pretext-content .paragraphs > article {
    margin-top: 1.25em;
}
.pretext-content section article + article,
.pretext-content section p + article,
.pretext-content section .posterior + article {
    margin-top: 1.75em;
}
.pretext-content section article > .introduction + article {
    margin-top: 1em;
}
.pretext-content article + .hidden-knowl-wrapper {
    margin-top: 1em;
}
.pretext-content article + .posterior {
    margin-top: 0.5em;
}
.pretext-content section p + .tabular-box {
    margin-top: 0.75em;
}
.pretext-content section .proof {
    margin-top: 0.75em;
}

.pretext-content section > pre, .pretext-content p + pre {
    margin-top: 1.25em;
}

.pretext-content ol p + p, .pretext-content ul p + p {
    margin-top: 1em;
}

/* see Ex 29 https://yoshiwarabooks.org/linear-functions.html 
and ex 2.91 in 
https://yoshiwarabooks.org/mfg/MathModels.html */
.pretext-content .introduction + .sidebyside,
.pretext-content p + .sidebyside,
.pretext-content ol + .sidebyside,
.pretext-content ul + .sidebyside {
    margin-top: 1em;
}








.pretext-content ol, .pretext-content ul {
    margin-bottom: 0;
}
.pretext-content li {
    margin-bottom: 0;
}
/* next two: li titles were in a .heading, and then were cahnged to span.title */
/* so the first if these two pairs can be deleted after 0.31 */
.pretext-content section li > .heading,
.pretext-content section li > .title {
    font-size: 100%;
    font-weight: normal;
    font-style: italic;
}
.pretext-content section article.theorem-like li > .heading,
.pretext-content section article.theorem-like li > .title {
    font-weight: 600;
    font-style: normal;
    font-size: 96%;
}

.pretext-content figure {
    margin-bottom: 0;
}


.pretext-content .heading {
    margin-top: 0;
    margin-bottom: 0;
}

.pretext-content .conclusion {
    margin-top: 1em;
}
.pretext-content .conclusion > p:first-child {
    margin-top: 0.5em;
}

.pretext-content ol, .pretext-content ul {
    margin-top: 0.75em;
}
.pretext-content .exercise-like > ol:first-child,
.pretext-content .exercise-like > ul:first-child {
    margin-top: 0;
}
.pretext-content .heading + ol, .pretext-content .heading + ul {
    margin-top: 0.45em;
}
.pretext-content li > .heading + ol, .pretext-content li > .heading + ul {
    margin-top: 0.25em;
}
.pretext-content li > .heading + ol > li:nth-child(1),
.pretext-content li > .heading + ul > li:nth-child(1) {
    margin-top: 0;
}
.pretext-content li > .heading + ol.cols2 > li:nth-child(2),
.pretext-content li > .heading + ul.cols2 > li:nth-child(2) {
    margin-top: 0;
}

.pretext-content dl {
    margin-top: 1em;
}
.pretext-content li {
    margin-top: 0.5em;
}
.pretext-content li > p:first-child {
    margin-top: 0;
}
.pretext-content article p:first-child {
    margin-top: 0;
}

.pretext-content ol ol, .pretext-content ol ul,  .pretext-content ul ol, .pretext-content ul ul {
    margin-top: 0.5em;
}

.pretext-content dl dt, .pretext-content dl dd {
    margin-top: 1.5em;
}
.pretext-content dl dd p {
    margin-top: 1em;
}
.pretext-content dl dt > p:first-child, .pretext-content dl dd > p:first-child {
    margin-top: 0;
}

.pretext-content dl dt:first-of-type, .pretext-content dl dd:first-of-type {
    margin-top: 0;
}
.pretext-content dl.glossary dd {
    margin-top: 0;
}

.pretext-content .frontmatter > .heading {
    display: block;
    text-align: center;
}
.pretext-content .frontmatter > .heading .title, .pretext-content .book > .heading .title {
    font-size: 1.3em;
}
.pretext-content .frontmatter > .heading .subtitle, .pretext-content .book > .heading .subtitle {
    display: block;
    font-weight: normal;
    color: #666666;
    font-size: 0.875em;
    line-height: 1.42857em;
    margin-top: 0.35714em;
}

.pretext-content .frontmatter .author:first-of-type {
    margin-top: 4em;
}
.pretext-content .frontmatter > p:first-of-type {
    margin-top: 4em;
}
.pretext-content .frontmatter > .author,
.pretext-content .frontmatter > .credit {
    margin-top: 2em;
    text-align: center;
}
.pretext-content .frontmatter .date {
    display: block;
    margin-top: 2em;
    text-align: center;
}
.pretext-content .frontmatter .credit .title {
    font-size: 1em;
}
.pretext-content .frontmatter .credit .author {
    font-size: 0.9em;
    margin-top: 0.75em;
}
.pretext-content .frontmatter .author-info {
    font-size: 90%;
}
.pretext-content a[href^="mailto:"] {
    white-space: pre;
}
/*
.pretext-content a[href^="mailto:"] {
    font-size: 120%;
}
.pretext-content a[href^="mailto:"] {
    font-style: normal;
    font-family: monospace;
}
*/
/* look into where .preface and .frontmatter are used */
/*
.pretext-content .preface a[href^="mailto:"] {
    font-size: 110%;
}
*/


.pretext-content article > .heading + p {
    margin-top: 0;
}
.pretext-content section .heading + p,
.pretext-content section .title + p, /* list items have bare .title, not in a .heading */
.pretext-content section .heading + .introduction > p:first-child,
.pretext-content section .blob > p:first-child,
.pretext-content section .permalink + p {
    margin-top: 0.25em;
}
.pretext-content section .heading + article { /* , .pretext-content section header + article { */
    margin-top: 1em;
}
.pretext-content section .heading + .sidebyside {
    margin-top: 1em;
}

.pretext-content a > .heading { display: inline;}

.pretext-content section .heading,
.pretext-content article .heading {
    font-family: "PT Serif", "Times New Roman", Times, serif;
    font-weight: 700;
    color: inherit;
}
.pretext-content article .exercise-stage {
    font-family: "PT Serif", "Times New Roman", Times, serif;
    font-weight: 700;
    color: inherit;
    font-size: 100%;
    margin-top: 0.4em;
}

/*
.pretext-content a article .heading {
    font-weight: 500;
}
*/

.pretext-content section > .heading {
    font-size: 1.75em;
    line-height: 1.42857em;
    margin-top: 1em;
}
.pretext-content section section > .heading {
    font-size: 1.5em;
    line-height: 1.25em;
}
/*
.pretext-content section section.paragraphs > .heading {
*/
.pretext-content .paragraphs > .heading {
    font-size: 1.125em;
    line-height: 1.125em;
}
.pretext-content article .paragraphs > .heading {
    font-size: 1.05em;
}
.pretext-content section section section > .heading {
    font-size: 1.40em;
    line-height: 1.15em;
    margin-top: 0.75em;
}
@media screen and (max-width: 480px) {
    .pretext-content section > .heading {
        font-size: 1.5em;
        line-height: 1.33em;
        margin-top: 1em;
    }
    .pretext-content section section > .heading {
        font-size: 1.3em;
        line-height: 1.15em;
    }
    .pretext-content section section section > .heading {
        font-size: 1.15em;
        line-height: 1em;
    }
}

.pretext-content section article > .heading,
.pretext-content section section article > .heading,
.pretext-content section article > a .heading,
.pretext-content section section article > a .heading,
.pretext-content .abstract > .heading {
    font-size: 1.125em;
    line-height: 1.125em;
    margin-top: 0;
    display: inline;
}
.pretext-content section article > .heading::after,
.pretext-content section section.paragraphs > .heading::after,
.pretext-content section section article > .heading::after,
.pretext-content section article > a > .heading::after,
.pretext-content section section article > a > .heading::after,
.pretext-content .abstract > .heading::after {
    content: "\2009";
}
/* Currently only for Solution to example */
.pretext-content .posterior .heading {
    font-weight: normal;
    font-size: 1.125em;
    line-height: 1.125em;
    margin-top: 0;
}

/*
.pretext-content .appendix .heading + .heading {
    display: block;
    font-size: 1.2em;
    margin-top: 0.3em;
}
*/
.pretext-content .appendix .heading > .type {
    display: inline;
}
.pretext-content .heading.hide-type > .type {
    display: none;
}

/*
 * Contents of articles
 */
.pretext-content section article > .heading + p,
.pretext-content section article > .heading + .introduction,
.pretext-content section article > .heading + .introduction > p:first-child {
    display: inline;
}
/* when a list is the only thing in an environment with a border,
   there is too much space to the left */
.pretext-content section article > .heading + ol,
.pretext-content section article > .heading + ul {
    padding-left: 1.5em;
}
.pretext-content section article.theorem-like p,
.pretext-content section article.theorem-like li {
    font-style: italic;
}
.pretext-content section article.theorem-like .emphasis {
    font-weight: 700;
}

/*
 *  .hiddenproof
 */

/* knowlified proofs are in an article.hiddenproof */
/* .pretext-content .hiddenproof .heading,   ???? can't happen, because the a does the hiding? */
.pretext-content .hiddenproof > a > .heading {
    font-style: italic;
    font-weight: normal;
}

/* show wide equation overflow even when no scroll bars,
from Jiří Lebl */
.pretext-content .MJXc-display, .pretext-content .knowl-output .knowl-output .knowl-output .knowl-output .MJXc-display ,
.pretext-content pre.prettyprint,
.pretext-content pre.plainprint, 
.pretext-content pre.console,
.pretext-content .code-box {
    background-image: linear-gradient(to right, white, white), linear-gradient(to right, white, white), linear-gradient(to right, rgba(0,0,0,.25), rgba(255,255,255,0)), linear-gradient(to left, rgba(0,0,0,.25), rgba(255,255,255,0));
    background-position: left center, right center, left center, right center;
    background-repeat: no-repeat;
    background-color: inherit;
    background-size: 20px 100%, 20px 100%, 10px 100%, 10px 100%;
    background-attachment: local, local, scroll, scroll;
}
.pretext-content .knowl-output .MJXc-display {
    background-image: linear-gradient(to right, var(--knowlbackground), var(--knowlbackground)), linear-gradient(to right, var(--knowlbackground), var(--knowlbackground)), linear-gradient(to right, rgba(0,0,0,.25), var(--knowlbackground)), linear-gradient(to left, rgba(0,0,0,.25), var(--knowlbackground));
}
/* this should have a variable name, maybe? */
.pretext-content .knowl-output.original .MJXc-display {
    background: inherit;
}

.pretext-content .assemblage-like .MJXc-display {
/*
    background-image: none;
    background-image: linear-gradient(to right, #f4f4fe, #f4f4fe), linear-gradient(to right, #f4f4fe, #f4f4fe), linear-gradient(to right, rgba(0,0,0,.25), rgba(242,242,254,0)), linear-gradient(to left, rgba(0,0,0,.25), rgba(242,242,254,0));
*/
    background-image: linear-gradient(to right, var(--assemblagebackground), var(--assemblagebackground)), linear-gradient(to right, var(--assemblagebackground), var(--assemblagebackground)), linear-gradient(to right, rgba(0,0,0,.25), var(--assemblagebackground)), linear-gradient(to left, rgba(0,0,0,.25), var(--assemblagebackground));
}


.pretext-content .knowl-output .knowl-output .MJXc-display {
    background-image: none;
    background-image: linear-gradient(to right, #fffff5, #fffff5), linear-gradient(to right, #fffff5, #fffff5), linear-gradient(to right, rgba(0,0,0,.25), rgba(255,255,243,0)), linear-gradient(to left, rgba(0,0,0,.25), rgba(255,255,243,0));
}
.pretext-content .knowl-output .knowl-output .knowl-output .MJXc-display {
    background-image: none;
    background-image: linear-gradient(to right, #fff5fe, #fff5fe), linear-gradient(to right, #fff5fe, #fff5fe), linear-gradient(to right, rgba(0,0,0,.25), rgba(255,243,254,0)), linear-gradient(to left, rgba(0,0,0,.25), rgba(255,243,254,0));
}



/* not sure where this was being used, but it made short knowls
 * look bad, like the hint here:
 * SAFurtherReading.html
*/
.pretext-content .knowl-output .knowl-content > *:last-child:not(.incontext) {
    margin-bottom: 0.5em;
}

.pretext-content .knowl-content > article:first-child,
.pretext-content .knowl-content > .solution:first-child {
/* padding, not margin, to det colored background (and not be absorbed) */
    padding-top: 0.5em;
}
.pretext-content .knowl-footer {
    display: none;
}

.pretext-content section p.credit + p.credit {
    margin-top: 0.25em;
}
.pretext-content section p.credit > .title {
    font-weight: 700;
    margin-right: 0.5em;
}
/* .pretext-content section p.credit > .title::after {
    content: ": ";
} */

.pretext-content section p.copyright {
    margin-top: 2.5em;
}
.pretext-content section p.license {
    margin-top: 2.5em;
}

body > a.assistive {
	padding:6px;
	position: absolute;
	top:-40px;
	left:0px;
	color:white;
	border-right:1px solid white;
	border-bottom:1px solid white;
	border-bottom-right-radius:8px;
	background:transparent;
    z-index: 100;
}

body > a.assistive:focus {
	position:absolute;
	left:0px;
	top:0px;
	background:#BF1722;
	outline:0;	
    transition: top .1s ease-in, background .5s linear;
}
.heading > p.assistive {
    margin-top: 0;
}
/* stacked headings in the solutions backmatter */
.pretext-content section.solutions > .heading,
.pretext-content section.solutions section > .heading {
    display: block;
}
.pretext-content section.solutions > .heading + .heading,
.pretext-content section.solutions section > .heading + .heading {
    margin-top: 0;
} 
.pretext-content section.solutions > h3.heading,
.pretext-content section.solutions section > h3.heading {
    font-size: 1.6em;
}
.pretext-content section.solutions > h4.heading,
.pretext-content section.solutions section > h4.heading {
    font-size: 1.45em;
}
.pretext-content section.solutions > h5.heading,
.pretext-content section.solutions section > h5.heading {
    font-size: 1.35em;
}
.pretext-content section.solutions > h6.heading,
.pretext-content section.solutions section > h6.heading {
    font-size: 1.25em;
}
/*
.heading > p.assistive + p.assistive {
    font-size: 94%;
}
.heading > p.assistive + p.assistive + p.assistive {
    font-size: 90%;
}
.heading > p.assistive + p.assistive + p.assistive + p.assistive {
    font-size: 87%;
}
.heading > p.assistive + p.assistive + p.assistive + p.assistive + p.assistive {
    font-size: 85%;
}
*/

.collectedworks .knowl-output {
    border: 12px 
    solid #D6E3FF;
    background: none repeat scroll 0% 0% #FAFCFF;
    border-radius: 4px;
    margin-bottom: 1.25em;
}

.collectedworks .subjectwork {
    max-width: 750px;
}

.collectedworks .bib {
    margin-bottom: 1em;
}

.collectedworks .bibitem + .bibentry {
    display: inline;
}

.collectedworks .bibitem {
    display: inline;
    font-weight: bold;
    margin-right: 1em;
}
.collectedworks .work .title a {
    text-decoration: none;
    color: #009;
}
.collectedworks .work .title {
}

.pretext-content .bibitem + .bibentry {
    display: inline-block;
    width: 90%;
}
.pretext-content .bibitem {
    display: inline-block;
    vertical-align: top;
    width: 7%;
    margin-right: 0;
}
/*
.pretext-content .bibitem {
    float: left;
}
.pretext-content .bibitem {
    clear: left;
}
*/

#primary-navbar .navbar-top-buttons .toolbar-align-right .toolbar-item {
   /* for the prev/next svg from SL2X */
    margin-top: -8px;
    border-left: 0;
}

#primary-navbar .navbar-top-buttons .toolbar-align-right {
   /* also for the prev/next svg from SL2X */
    border-right: 0;
}

#primary-navbar .navbar-top-buttons .toolbar-align-right .toolbar-item-left {
    float: left;
    padding: 3px 6px 3px 6px;
    margin: 4px 10px 0px 5px;
    border: 1px solid #aaf;
    background-color: #def;
/*
    border: 1px solid #aaf;
    margin: 8px 10px 0px 10px;
*/
    font-size: 90%;
}

#primary-navbar .navbar-top-buttons .toolbar-align-right .toolbar-item-left a {
    color: #00a;
/*
    padding: 3px 6px 3px 6px;
    margin: 4px 10px 0px 5px;
    margin: 0;
    border: 1px solid #aaf;
    background-color: #def;
*/
}


#feedback {position: relative;
        margin-top: 30px; /* negative value of footer height */
        height: 30px;
        margin-left: 30px;
        font-size: 70%;
        text-align: bottom;
        clear:both;
} 

.pretext-content figcaption {
    font-weight: normal;
}

.pretext-content figcaption {
    margin-top: 0.6em;
    margin-left: auto;
    margin-right: auto;
/*  Commenting this out because the initial letter of some captions were cut off
    text-indent: -30px;
*/
}

.pretext-content figure.table-like figcaption:first-child {
    font-style: oblique;
    margin-top: 0;
}
.pretext-content figure.table-like figcaption:first-child .type,
.pretext-content figure.table-like figcaption:first-child .codenumber {
    font-style: normal;
}

.pretext-content section figcaption .codenumber,
.pretext-content section figcaption .type {
    font-weight: 700;
    font-size: inherit;
}

.pretext-content figcaption .codenumber:after {
    content: "\2002";
}
.pretext-content figcaption .type:last-of-type::after {
   /* so, not followed by a span.codenumber */
   /* not sure where this is used */
    content: "\2002";
}

.pretext-content figcaption code.code-inline {
    white-space: pre;
}

.pretext-content figure > figcaption:first-child {
    margin-top: 1.5em;
}

.pretext-content figcaption + .named-list-content {
    margin-top: 0.6em;
}
.pretext-content figcaption + .named-list-content > .introduction > p:first-child {
    margin-top: 0;
}
.pretext-content figcaption + table,
.pretext-content figcaption + .tabular-box {
    margin-top: 0.5em;
}

/* should be .emphasis instead of em */
.pretext-content .definition-like p > em {
    font-weight: 700;
}
.pretext-content em.alert {
    font-weight: bold;
}

.unprocessed {
    padding: 8px;
    background-color: rgb(255,230,230)
}

.unprocessed .unprocessed {
    margin: 8px;
    background-color: rgb(255,200,255)
}

.unprocessed .unprocessed .unprocessed {
    margin: 8px;
    background-color: rgb(205,205,255)
}

.pretext-content section.introduction + section {
    margin-top: 2em;
}

.pretext-content {
    margin: 0;
}

/* delete the .paragraphs after 0.31 */
.pretext-content .paragraphs .heading {
    display: inline;
}

.pretext-content .paragraphs .heading + p {
    display: inline;
}

/* the next are to avoid styping a p as inline, because
 * inline styling messes up the meaning of line-height.
 * */

/* delete the .paragraphs after 0.31 */
.pretext-content .paragraphs p .title {
    font-family: "PT Serif", "Times New Roman", Times, serif;
    font-size: 1.125em;
    font-weight: 700;
}

/* can that happen?
.pretext-content .paragraphs p .heading {
    display: inline;
}
*/

.pretext-content section .paragraphs .heading {
    margin-top: 0;
}

.pretext-content section .paragraphs + .paragraphs {
    margin-top: 3em;
}

.pretext-content section section + section {
    margin-top: 3em;
}


.pretext-content .sidebyside > p, .pretext-content .sidebyside > figure, .pretext-content .sidebyside > img, .pretext-content .sidebyside > table, .pretext-content .sidebyside > tabular, .pretext-content .sidebyside > section, .pretext-content .sidebyside > .paragraphs {
    display: inline-block;
    margin: 0;
}
.pretext-content .sidebyside .sbspanel > table {
/* see Sec 23.12 of sample article */
 /*   display: block;
    width: 100%;
*/
    overflow-x: auto;
    margin-left: auto;
    margin-right: auto;
}

.pretext-content .sidebyside figcaption {
    padding-left: 1em; 
    padding-right: 0;
    padding-bottom: 0;
    margin: 0.75em 0 0 0;
}


.pretext-content figcaption {
    font-family: "PT Serif", "Times New Roman", Times, serif;
}

.pretext-content .sidebyside > p {   /* what about sbspanel? */
    width: 32%;
    vertical-align: top;
}

.pretext-content .sidebyside > p.left, .pretext-content .sidebyside > p.middle, .pretext-content .sidebyside > p.right {
    vertical-align: middle;
}

.pretext-content .sidebyside > p + img {
    vertical-align: middle;
}

.pretext-content .sidebyside .sbsrow .sbsheader {
    margin-top: 0;
}

.pretext-content .sbsgroup {
    width: 100%;
}

.pretext-content .sidebyside {
    width: 100%;
}

.pretext-content .sbsrow {
    display: flex;
    justify-content: space-between;
}

/* Components of three types of "sbsrow" */

/* titles, totally centered text */
.pretext-content .sbsheader {
    text-align: center;
    justify-content: center;
    font-size: 1em;
}

.pretext-content .sbspanel:empty { /* can only happen when partially created */
    height: 10em;
    background-color: rgb(221, 221, 255);
}
/* containers of desired width for actual content */
.pretext-content .sbspanel {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.pretext-content .sbspanel.top {  /* also the default */
    justify-content: flex-start;
}
.pretext-content .sbspanel.middle {
    justify-content: center;  /* should that be space-between? */
}
.pretext-content .sbspanel.bottom {
    justify-content: flex-end;
}

.pretext-content .sbspanel > p:first-child {
    margin-top: 0;
}

/* fixed-width items are centered horizontally in their panel */
/* always used in conjunction with sbspanel                   */
.pretext-content .fixed-width {
    align-items: center;
}

/* captions, centered until word-wrapped */
.pretext-content .sbscaption {
/*
    display: flex;
*/
    justify-content: center;
}


/*  good for table, bad for image
.pretext-content .sidebyside {
    overflow-x: scroll;
}
*/

.pretext-content table {
    border-spacing: 0;
}

.pretext-content table {
    border-collapse: collapse;
}

.pretext-content .image-box + table,
.pretext-content .image-box + .sidebyside > .sbsrow:first-child > .sbspanel > table:first-child {
    margin-top: 1.5em;
}

.pretext-content table tr td,
.pretext-content table tr th {
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 5px;
    padding-right: 5px;
}
.pretext-content table tr td {
    font-size: 90%;
}

.pretext-content table tr td.l {
    text-align: left;
}
.pretext-content table tr td.c {
    text-align: center;
}
.pretext-content table tr td.r {
    text-align: right;
}
.pretext-content table tr td.j {
    text-align: justify;
}
.pretext-content table tr td.lines {
        white-space: nowrap;
}


.pretext-content table tr td.t {
    vertical-align: top;
}
.pretext-content table tr td.b {
    vertical-align: bottom;
}
.pretext-content table tr td.m {
    vertical-align: middle;
}

.pretext-content table tr td.vv {
    border-left: 2px solid #000;
    border-right: 2px solid #000;
}

.pretext-content table tr td.vcv {
    border-left: 2px solid #000;
    border-right: 2px solid #000;
    text-align: center;
}

.pretext-content table tr td.vcvv {
    border-left: 2px solid #000;
    border-right: 4px solid #000;
    text-align: center;
}

.pretext-content table tr td.vlv {
    border-left: 2px solid #000;
    border-right: 2px solid #000;
    text-align: left;
}

.pretext-content table tr td.vrv {
    border-left: 2px solid #000;
    border-right: 2px solid #000;
    text-align: right;
}

.pretext-content table tr td.rv {
    border-right: 2px solid #000;
    text-align: right;
}

.pretext-content table tr td.vr {
    border-left: 2px solid #000;
    text-align: right;
}

.pretext-content table tr td.lv {
    border-right: 2px solid #000;
    text-align: left;
}

.pretext-content table tr td.vl {
    border-left: 2px solid #000;
    text-align: left;
}
.pretext-content table tr td.cv {
    border-right: 2px solid #000;
    text-align: center;
}

.pretext-content table tr td.Xv {
    border-right: 2px solid #000;
    text-align: left;
}

.pretext-content table tr td.vc {
    border-left: 2px solid #000;
    text-align: center;
}

.pretext-content table tr td.hline {
    padding: 0;
}

.pretext-content table tr td.hlinethick {

    padding-left: 0px;
    padding-right: 0px;

}

.pretext-content table tr td.hline hr  {

    margin-top:0;
    margin-bottom:0;
    margin-left: -1px;
    margin-right: -1px;
    border: 1px solid rgb(0,0,0);

}

.pretext-content table tr td.hlinethick hr  {

    margin-top:0;
    margin-bottom:0;
    margin-left: -1px;
    margin-right: -1px;
    border: 2px solid rgb(0,0,0);

}


.center table { 
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}


.pretext-content table tr th.b1,
.pretext-content table tr td.b1 {
    border-bottom: 1px solid #000;
}
.pretext-content table tr th.b2,
.pretext-content table tr td.b2 {
    border-bottom: 2px solid #000;
}
.pretext-content table tr th.b3,
.pretext-content table tr td.b3 {
    border-bottom: 3px solid #000;
}
.pretext-content table tr th.b0,
.pretext-content table tr td.b0 {
    border-bottom: none;
}
/* add more tr below */

.pretext-content table tr th.t1,
.pretext-content table tr td.t1 {
    border-top: 1px solid #000;
}
.pretext-content table tr th.t2,
.pretext-content table tr td.t2 {
    border-top: 2px solid #000;
}
.pretext-content table tr th.t3,
.pretext-content table tr td.t3 {
    border-top: 3px solid #000;
}
.pretext-content table tr th.t0,
.pretext-content table tr td.t0 {
    border-top: none;
}

.pretext-content table tr th.r1,
.pretext-content table tr td.r1 {
    border-right: 1px solid #000;
}
.pretext-content table tr th.r2,
.pretext-content table tr td.r2 {
    border-right: 2px solid #000;
}
.pretext-content table tr th.r3,
.pretext-content table tr td.r3 {
    border-right: 3px solid #000;
}
.pretext-content table tr th.r0,
.pretext-content table tr td.r0 {
    border-right: none;
}

.pretext-content table tr th.l1,
.pretext-content table tr td.l1 {
    border-left: 1px solid #000;
}
.pretext-content table tr th.l2,
.pretext-content table tr td.l2 {
    border-left: 2px solid #000;
}
.pretext-content table tr th.l3,
.pretext-content table tr td.l3 {
    border-left: 3px solid #000;
}
.pretext-content table tr th.l0,
.pretext-content table tr td.l0 {
    border-left: none;
}

.pretext-content table tr td img {
    max-width: 200px;
    margin-right: 30px;
}

.pretext-content table.notation-list tr th {
    text-align: left;
}
.pretext-content table.notation-list tr td {
    text-align:left;
    vertical-align:top;
}
.pretext-content table.notation-list tr th {
    margin-left: 2em;
}
.pretext-content table.notation-list tr td {
    margin-left: 1em;
}

.pretext-content table tr td span.decimal {
    float: left;
    text-align: right;
}

.pretext-content table tr.header-vertical th {
    writing-mode: vertical-rl;
    padding-left: 2em;
/*
    transform: rotate(180deg);
*/
}

.pretext-content table + article {
    margin-top: 1em;
}

/*
#pretext-SA #table-12 table  tr:first-of-type th {
    background: #faa;
    writing-mode: vertical-rl;
    transform: none!important;
}
*/

.pretext-content .hidden-knowl-wrapper .hiddenproof,
.pretext-content .blob > article.hiddenproof,
.pretext-content section > article.hiddenproof  {
    margin-top: 0.3em;
}

.pretext-content .hidden-knowl-wrapper article {
    display: inline;
}

.apretext-content figure.figure-like {
    overflow: auto;
}
.pretext-content figure.figure-like {
    margin-left: 0;
    margin-right: 0;
}
.pretext-content figure.table-like {
    margin-left: 30px;
    margin-right: 30px;
}

.pretext-content figure.figure-like figcaption {
    overflow: hidden;
}

/*
.pretext-content tt {
    font-size: 1.4em;
    font-size: 110%;
    margin-left: 0.2em;
    margin-right: 0.2em;
}
*/
.pretext-content a > tt {
    font-size: 110%;
}

.pretext-content section .videolink a:link {
    background-size: 0;
}
.pretext-content .playvideo {
    cursor: pointer;
}

.pretext-content .videobig {
    padding-right: 0.3em;
    padding-left: 0.3em;
    font-size: 85%;
/*    background: #ffff66;
*/
    background-color: rgba(255,255,100,0.9);
    display: inline-block;
    position: relative;
    top: 100px;
    cursor: zoom-in;
}
.pretext-content .videobig.nofigure {
    /* not actually used */
}
.pretext-content .knowl .videobig {
    display: none;
}

.pretext-content .videosmall {
    padding-right: 0.3em;
    padding-left: 0.3em;
    font-size: 80%;
    background-color: rgba(255,255,100,0.9);
    display: inline-block;
    position: absolute;
/*
    top: 1px;
*/
    left: -250px;
    z-index: 1001;
    cursor: zoom-out;
}


.pretext-content .exercise-like ol li table {
    margin-bottom: 0.5em;
}

.pretext-content .exercise-like > ol li + li {
    margin-top: 0.5em;
}
.pretext-content .solution > ol li + li {
    margin-top: 0.5em;
}

/* this should be obsolete, because the permalink is outside of the .heading */
/*
.pretext-content section .heading a.permalink {
    opacity: 0.1;
    font-size: 70%;
    color: #d00;
    display: inline-block;
}
*/

.pretext-content section > .heading,
.pretext-content section section > .heading,
.pretext-content section section section > .heading {
  display: inline-block;
}
.pretext-content section > .heading + .heading {
  display: block;
}
/* maybe delete the above and always do like worksheet after 0.31? */
.pretext-content section.worksheet > .heading,
.pretext-content section section.worksheet > .heading,
.pretext-content section section section.worksheet > .heading {
  display: block;
}
.pretext-content section.worksheet > .heading > .codenumber {
    display: inline-block;
    vertical-align: top;
}
.pretext-content section.worksheet > .heading > .title {
    display: inline-block;
    max-width: 70%;
}
.pretext-content .heading .print-links {
    display: inline-block;
    float: right;
    vertical-align: top;
    width: 19%;
    text-align: right;
}
.standalone .pretext-content .heading .print-links {
    display: none;
}
.standalone.worksheet #previousbutton,
.standalone.worksheet #upbutton,
.standalone.worksheet #nextbutton {
    display: none;
}
.standalone.worksheet #primary-navbar .sidebar-left-toggle-button {
    display: none;
}
.standalone.worksheet.has-sidebar-left #primary-navbar .navbar-top-buttons > .toolbar,
.standalone.worksheet.has-sidebar-left #primary-navbar-sticky-wrapper .navbar-top-buttons > .toolbar {
    margin-left: 0;
}
.standalone.worksheet .pretext-content [data-knowl]:hover,
.standalone.worksheet .pretext-content [data-knowl]:active,
.standalone.worksheet .pretext-content [data-knowl].active {
    background: none;
    color: black;
}
.standalone.worksheet .pretext-content [data-knowl]::after {
    border: none;
}
.standalone.worksheet .pretext-content .knowl-content {
    padding: 0;
}
.standalone.worksheet .pretext-content article > .knowl-output.original {
    margin: 0;
}

.pretext-content .heading .print-links > a {
    font-family: "Open Sans";
    font-size: 0.6em;
    font-weight: bold;
    padding: 0.1em 0.2em;
    background: #ffa;
    border: 2px solid green;
}
.pretext-content .heading .print-links > a.us {
    background: #eef;
    color: #9b1c2c;
    border-color: #041E42;
}
.pretext-content .heading .print-links > a + a {
    margin-left: 0.25em;
}

/* obsolete? */
.pretext-content section .heading + a.permalink {
    opacity: 0.2;
    color: #d00;
    font-weight: bold;
    display: inline-block;
    margin-left: 0.5em;
}
.pretext-content section section .heading + a.permalink {
    font-size: 90%;
}
.pretext-content section section section .heading + a.permalink {
    font-size: 80%;
}

/* temporary for runestone */
/*
.pretext-content section article .heading + div,
.pretext-content section article.exercise  .heading + div,
.pretext-content section article.exercise  .heading + div > p:first-child,
.pretext-content section article .heading + div.exercisegroup > div:first-child,
.pretext-content section article .heading + div.exercisegroup > div:first-child > p:first-child,
*/
/*
.pretext-content section article .heading + div.runestone,
.pretext-content section article .heading + div.runestone > div:first-child,
.pretext-content section article .heading + div.runestone > div:first-child > p:first-child {
    display: inline;
}
*/

/* after version 0.31, check the pretext code if a.permalink can still occur */
.pretext-content .heading a.permalink:hover {
    opacity: 1;
    color: #a32;
}

.pretext-content .heading a.permalink:focus {
    opacity: 1;
    color: #a32;
}
.pretext-content .autopermalink {
    position: absolute;
    display: inline-block;
    top: 3px;
    left: -1.9em;
    font-size: 85%;
    color: #a00;
    opacity: 0.05
}
.pretext-content .autopermalink > * {
    padding-left: 0.2em;
    padding-right: 0.2em;
}
/* when jumping to a permalink, push down so sticky navbar does not cover */
:target {
    /* scroll-snap-margin-top: 45px;   for safari, except it doesn't work */
    scroll-margin-top: 45px;
}

.pretext-content .exercises > .autopermalink,
.pretext-content .introduction > .autopermalink,
.pretext-content .glossary > .autopermalink {
    margin-top: 1em;
}
.pretext-content .appendix > .autopermalink,
.pretext-content .chapter > .autopermalink,
.pretext-content .index > .autopermalink,
.pretext-content .section > .autopermalink {
    margin-top: 2.7em;
}
.pretext-content .subsection > .autopermalink,
.pretext-content .references > .autopermalink,
.pretext-content .exercises > .autopermalink {
    margin-top: 2.0em;
}
.pretext-content .subsubsection > .autopermalink,
.pretext-content .exercisegroup > .autopermalink {
    margin-top: 1.4em;
}

.pretext-content .autopermalink:hover {
    opacity: 1;
    background: #eeddff;
}
.pretext-content .permalink-alert {
    position: absolute;
    top: -3em;
    left: 5em;
    padding: 1.5em 2em;
    background: #fff;
    border: 3px solid blue;
    z-index: 2001;
}

.mininav {
    float: left;
    padding-top: 0.7ex;
    padding-left: 1ex;
}

/* the index at the back of the book */

.indexnav {
    margin-left: 1.5ex;
    margin-top: 0.2ex;
    padding-top: 0;
    float: left;
    line-height: 0.95;
}

.indexnav a {
    padding-left: 2.5px;
    padding-right: 0.5px;
    width: 2.5ex;
/*
 *  *  omitted, because we put a space in the source
 *      padding-right: 3px;
 *      */
    margin-right: -1px;
    color: inherit;
    font-size: 80%;
/*
    display: inline-block;
*/
    text-align: center;
}
.indexnav a::after{
    content: "";
    display: inline-block;
}
.indexnav a:nth-of-type(14){
    padding-left: 1.8ex;
}
.indexnav a:last-child {
    padding-right: 10px;
}

.indexnav a:hover {
    background: #eeaaff;
}



.pretext-content .indexitem {
    margin-top: 2px;
}

.pretext-content .subindexitem {
    margin-left: 2em;
    font-size: 95%;
    margin-top: -1px;
}

.pretext-content .subsubindexitem {
    margin-left: 3.5em;
    font-size: 95%;
    margin-top: -1px;
}

.pretext-content .indexknowl {
    margin-left: 0.11em;
}
.pretext-content em + .indexknowl  {
    margin-left: -0.25em;
}
.pretext-content .indexknowl a {
    margin-left: 2em;
}

.pretext-content .indexitem .see,
.pretext-content .subindexitem .see,
.pretext-content .subsubindexitem .see {
    margin-left: 1em;
    margin-right: 0;
}
.pretext-content .indexitem .seealso,
.pretext-content .subindexitem .seealso,
.pretext-content .subsubindexitem .seealso {
    margin-left: 1em;
    margin-right: 0;
}
.pretext-content .indexitem .see em,
.pretext-content .subindexitem .see em,
.pretext-content .subsubindexitem .see em,
.pretext-content .indexitem .seealso em,
.pretext-content .subindexitem .seealso em,
.pretext-content .subsubindexitem .seealso em {
    margin-right: 0.25em;
    font-style: italic;
}
/*  note that multiple tings after "see" are in separate spans */
.pretext-content .indexitem .see + .see,
.pretext-content .subindexitem .see + .see,
.pretext-content .subsubindexitem .see + .see,
.pretext-content .indexitem .seealso + .seealso,
.pretext-content .subindexitem .seealso + .seealso,
.pretext-content .subsubindexitem .seealso + .seealso {
     margin-left: 0;
     margin-right: 0;
}

.pretext-content .indexitem .indexknowl {
    font-size: 90%;
}

.pretext-content .indexitem [data-knowl], .pretext-content .subindexitem [data-knowl], .pretext-content .indexitem [data-knowl]:hover {
    padding-right: 2px;
    padding-left: 2px;
}
.pretext-content .indexknowl [data-knowl]:hover, .pretext-content .indexknowl .active[data-knowl] {
    margin-left: 2em;
}

.pretext-content .subindexitem .indexknowl {
    font-size: 95%;
}
.pretext-content .subsubindexitem .indexknowl {
    font-size: 95%;
}

.pretext-content .indexletter {
    margin-top: 1.5em;
}

/* end index */

.pretext-content .hidden-knowl-wrapper .heading {
    display: inline;
}
.pretext-content .heading + .hidden-knowl-wrapper {
    display: inline;
}

.pretext-content .cols2 .knowl-output, .pretext-content .cols3 .knowl-output, .pretext-content .cols4 .knowl-output, .pretext-content .cols5 .knowl-output, .pretext-content .cols5 .knowl-output {
    width: 100%;
}

.pretext-content .cols2 + *, .pretext-content .cols3 + *, .pretext-content .cols4 + *, .pretext-content .cols5 + *, .pretext-content .cols6 + * {
    clear: both;
}
/* does the next line eliminate the need for the previous line? */
.pretext-content .cols2::after, .pretext-content .cols3::after, .pretext-content .cols4::after, .pretext-content .cols5::after, .pretext-content .cols6::after {
    content: "";
    display: block;
    clear: both;
}

.pretext-content section > ol:last-child,
.pretext-content section > ul:last-child {
    margin-bottom: 1.5em;
}
/* because of */
/* .pretext-content .colsN > li:last-child {
    padding-bottom: 1em;
}
*/
.pretext-content section > ol:last-child > li:last-child,
.pretext-content section > ul:last-child > li:last-child {
    padding-bottom: 0em;
}

/* does this do anything which is not accomplished by the colsN::after above? */
/* seems not
.pretext-content .cols2:last-child::after, .pretext-content .cols3:last-child::after, .pretext-content .cols4:last-child::after, .pretext-content .cols5:last-child::after, .pretext-content .cols6:last-child::after {
    content: "";
    display: block;
    clear: both;
}
*/

.pretext-content .cols2 > li:nth-child(2n+1),
.pretext-content .cols3 > li:nth-child(3n+1),
.pretext-content .cols4 > li:nth-child(4n+1),
.pretext-content .cols5 > li:nth-child(5n+1),
.pretext-content .cols6 > li:nth-child(6n+1) {
    clear: left;
}
/* need to repeat for .colsN */
.pretext-content .exercise-like ol.cols2 li {
    margin-top: 0.5em;
}

.pretext-content .cols2 > li,
.pretext-content .cols3 > li,
.pretext-content .cols4 > li,
.pretext-content .cols5 > li,
.pretext-content .cols6 > li {
    float: left;
}

.pretext-content .incontext {
    display: block;
    font-size: 85%;
    text-align: right;
}

.pretext-content .terminology {
  font-style: italic;
  font-weight: bold;
}

.pretext-content .emphasis {
    font-style: italic;
}
.pretext-content .emphasis .emphasis {
    font-weight: bold;
}

/* the "pink flash" when navigating to a target
*/
:target {
    animation: target-fade 15s 1;
}
@-webkit-keyframes target-fade {
    0% { background-color: rgba(120,0,120,.3); }
    100% { background-color: inherit;
           opacity: 1; }
}
@-moz-keyframes target-fade {
    0% { background-color: rgba(120,0,120,.3); }
    100% { background-color: inherit;
           opacity: 1; }
}


.pretext-content .autoterm [knowl], .pretext-content .autoterm [knowl]:after {
    font-weight: inherit;
    color: inherit;
    padding: 0;
    margin-bottom: inherit;
    border-bottom: inherit;
    border-bottom-color: inherit;
}

.pretext-content .autoterm [knowl]:hover {
    background: #ffddff;
    border-top: 2px dotted purple;
    border-bottom: 1px dotted red;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.has-sidebar-left #primary-navbar-sticky-wrapper .navbar-top-buttons .toolbar, .has-sidebar-left #primary-navbar .navbar-top-buttons > .toolbar {
     border-right: 0;
}

#primary-navbar .toolbar.toolbar-divisor-3 > .toolbar-item:last-child, #primary-navbar-sticky-wrapper .toolbar.toolbar-divisor-3 > .toolbar-item:last-child {
    border-right: 1px solid #bababa;
}

.pretext-content ol li.custom-list-style-type {
    list-style-type: none;
}

.pretext-content ol li.custom-list-style-type:before {
     content: attr(label) "\00A0\00A0 ";
}

.pretext-content ol.no-marker,
.pretext-content ul.no-marker,
.pretext-content li.no-marker {
    list-style-type: none;
}

.pretext-content ol.decimal {
    list-style-type: decimal;
}
.pretext-content ol.lower-alpha {
    list-style-type: lower-alpha;
}
.pretext-content ol.upper-alpha {
    list-style-type: upper-alpha;
}
.pretext-content ol.lower-roman {
    list-style-type: lower-roman;
}
.pretext-content ol.upper-roman {
    list-style-type: upper-roman;
}
.pretext-content ul.disc {
    list-style-type: disc;
}
.pretext-content ul.square {
    list-style-type: square;
}
.pretext-content ul.circle {
    list-style-type: circle;
}
.pretext-content ol.no-marker,
.pretext-content ul.no-marker {
    list-style-type: none;
}

/* The dl should behave more like the default on a narrow screen,
 * with the term and definition on separate lines.
 */

.pretext-content dl.description-list {
    margin-left: 0;
    margin-bottom: 0;
    overflow: hidden;
}

.pretext-content dl > dt {
        font-weight: bold;
}

.pretext-content dl.description-list dt {
    float: left;
    clear: left;
    text-align: right;
    width: 18ex;
}
.pretext-content dl.description-list dd {
    margin-left: 22ex;
}

.pretext-content dl.description-list dl dt {
    width: 8ex;
}
.pretext-content dl.description-list dd dd {
    margin-left: 18ex;
}
.pretext-content dl.description-list dl dd {
    margin-left: 12ex;
}

.pretext-content dl.description-list dd::after {
    content: "";
    display: block;
    clear: left;
}
.pretext-content dl.description-list dt:first-of-type {
    clear: none;
}
.pretext-content dl.description-list.narrow dt {
    width: 8ex;
}
.pretext-content dl.description-list.narrow dd {
    margin-left: 12ex;
}
.pretext-content dl.description-list dd::after {
    content: "";
    display: block;
    height: 1em;
}
.pretext-content dl.description-list dd:last-child::after {
    height: 0;
}

.pretext-content dl.description-list.narrow dd {
    margin-left: 0;
    margin-top: 0;
    width: 31em;
    max-width: calc(100% - 12ex);
    float: right;
    clear: right;
}

.pretext-content dl.description-list.narrow dt {
margin-top: 0;
width: unset;
max-width: 58ex;
    float: left;
    text-align: left;
    clear: both;
    margin-right: 1ex;
}
.pretext-content dl.description-list.narrow dt {
    text-align: left;
}
.pretext-content dl.description-list + * {
    clear: both;
}
.pretext-content section,
.pretext-content article,
.pretext-content figure {
    clear: both;
}

/* 
.pretext-content dl.description-list.wide dt {
    float: none;
    text-align: left;
    width: 18ex;
}
.pretext-content dl.description-list.wide dt {
    width: unset;
    max-width: 58ex;
}
.pretext-content dl.description-list.wide dd {
    margin-left: 12ex;
    margin-top: 0;
}
*/

@media screen and (max-width: 480px) {
  .pretext-content dl.description-list dt {
    float: none;
    margin-left: 0;
    text-align: left;
  }
  .pretext-content dl.description-list dd {
    margin-top: 0.5em;
    margin-left: 3em;
  }
}

/* delete all the -narrow in the next CSS version (post 0.31) */
.pretext-content dl.description-list-narrow {
    margin-left: 0;
}
.pretext-content dl.description-list-narrow dt {
    float: left;
    clear: left;
    text-align: right;
    width: 8ex;
}
.pretext-content dl.description-list-narrow dt:first-of-type {
    clear: none;
}
.pretext-content dl.description-list-narrow dd {
    margin-left: 12ex;
}
.pretext-content dl.description-list-narrow dd:after {
    content: "";
    display: block;
    clear: left;
}
/* end of -narrow */

/*
#toc ul li.listprefix {
    list-style-type: none;
    display: inline-block;
}

#toc ul li.listprefix:before {
     content: attr(label) "\00A0\00A0 ";
     display: inline-block;
}
*/

.pretext-content [data-knowl] > mjx-mrow .TEX-I {
    font-family: MJXZERO !important;
    font-style: normal !important;
}
/* remove this when MathJax fixes the bug that was setting the width to 0 */
/* as in  $x=0$.  becomes  $x=0\text{.}$ */
.pretext-content .knowl mjx-mtext > mjx-utext {
    width: revert !important;
}
.pretext-content mjx-msup mjx-utext,
.pretext-content mjx-msub mjx-utext {
    display: inline;
}

/* to stop things being blue when rendering MathJax with SVG */
a.mjx-svg-href  {
    fill: inherit;
    stroke: inherit;
}

/* for long math formulas and tables to scroll on small screens */
@media screen and (max-width: 943px) {
  .pretext-content .displaymath {
     position: relative;
     overflow-x: auto;
  }
/* maybe the remainder of this case is subsumed by the above,
   and also does not apply to MJ3 */
  .pretext-content .mjx-chtml.MJXc-display {
    /*Allow users on smaller screens to scroll equations*/
    /*horizontally when they don't fit on the screen*/
    overflow-x: auto;
    overflow-y: hidden;
  }
  .pretext-content .figure-like {
    overflow-x: auto;
  }

  .pretext-content #MathJax_ZoomFrame {
    position: static;
    background: white;
  }
  .pretext-content #MathJax_Zoom {
    background-color: inherit;
    border: 0;
    padding: 0;
    position: absolute;
    overflow-x: auto;
    overflow-y: visible;
    left: 10% !important;
    max-height: none !important;
  }
}

/*  http://sites.wcsu.edu/mbxml/OER_Linear_Alg/glossary.html
   to fix the extra margin on top of the next term when
   the previous definition ends in display math
   May need to make less specific
*/
.pretext-content dd .displaymath:last-child .MJXc-display {
    margin-bottom: 0;
}

.floatnav {
    margin-top: 8px;
    margin-left: 50px;
}

.floatnav a {
    padding-left: 3px;
/*
 *  omitted, because we put a space in the source
    padding-right: 3px;
*/
    margin-right: -1px;
    color: inherit;
}

/* Example 4.8 of sample article (compare main page of sample book (4^{th} edition)`*/
.pretext-content a .heading .mjx-chtml {
    z-index: 1;
    background: #fff;
}
.pretext-content .hidden-knowl-wrapper [data-knowl]::after, .pretext-content .hidden-knowl-wrapper [data-knowl]:hover::after, .pretext-content .hidden-knowl-wrapper .active[data-knowl]::after {
    right: 7px;
}

.floatnav a:hover {
    background: #eeaaff;
}

.pretext-content .unselectable {  /* from Alex Jordan */
  user-select: none;           /* Non-prefixed version, currently
                                  not supported by any browser */
}

/* Adapted from William Hammond (attributed to David Carlisle) */
/* "mathjax-users" Google Group, 2015-12-27 */

.pretext-content .latex-logo {font-family: "PT Serif", "Times New Roman", Times, serif;}

.pretext-content .latex-logo .A {font-size: 75%; text-transform: uppercase; vertical-align: .5ex;
         margin-left: -.48em; margin-right: -.2em;}

.pretext-content .latex-logo .E {vertical-align:-.5ex; text-transform: uppercase;
         margin-left: -.18em; margin-right: -.12em; }

.pretext-content .fillin {
    display: inline-block;
    border-bottom-style: solid;
    border-width: 1px;
    margin-right: 0.1em;
    margin-bottom: -0.25em;
}

.pretext-content .exercisegroup {
    padding-top: 1.25em;
    margin-bottom: 1.0em;
}
.pretext-content section .exercisegroup > .heading {
    font-size: 1.10em;
    line-height: 1.05em;
    margin-top: 0.75em;
    display: inline;
}
.pretext-content section .exercisegroup > .heading + .introduction {
    display: inline;
}
.pretext-content section .exercisegroup > .heading + .introduction > p:first-child {
    display: inline;
}

.pretext-content .exercisegroup article.exercise-like p {
    margin-top: 0.5em;
}
.pretext-content .exercisegroup article.exercise-like .solution p:first-child {
    margin-top: -3px;  /* because of the 10px (instread of 7) on the .knowl-content */
}
.pretext-content .exercisegroup article.exercise-like li > p:first-child {
    margin-top: 0;
}

.pretext-content .exercisegroup article.exercise-like .heading {
    margin: 0;
}
.pretext-content article.exercise-like .task > .heading + .heading {
    font-weight: 600;  /* still looks same as bold to me */
}
.pretext-content article.exercise-like .task > .heading + .heading + p,
.pretext-content article.exercise-like .task > .heading + .heading + div {
    display: block;
    margin-top: 0;
}
.pretext-content .exercisegroup .conclusion .heading {
    margin-top: 0.5em;
}
.pretext-content .exercisegroup .hidden-knowl-wrapper {
    margin: 0;
}
.pretext-content .exercisegroup article + article {
    margin-top: 1em;
}

/* http://spot.pcc.edu/math/APEXCalculus/sec_interp_deriv.html */
.pretext-content .exercisegroup > article,
.pretext-content .exercisegroup-exercises > article {
    margin-left: 2em;
}
.pretext-content .exercisegroup .cols2 > article {
    margin-left: 1.25em;
}
.pretext-content .exercisegroup > .introduction,
.pretext-content .exercisegroup > .conclusion {
    margin-left: 0;
}
.pretext-content .exercisegroup > .introduction {
    margin-top: 1.25em;
    margin-top: 0;
}
.pretext-content .exercisegroup > .introduction > p:first-child::before {
    content: '\25a0\2009';
   /* font-size: 70%; */
    color: #06a;
    position: relative;
    top: -1px;
    right: 1px;
}
.pretext-content .exercisegroup > .heading + .introduction > p:first-child::before {
    content: '\2003';
}

.pretext-content .exercisegroup > .introduction > p:first-child {
    margin-top: 0;
}

.pretext-content .exercisegroup article + .hidden-knowl-wrapper {
    margin-left: 4em;
}

/* make it look like a list, and have entra indenting when already more indented */
.pretext-content .exercise-like .introduction + .hidden-knowl-wrapper,
.pretext-content .exercise-like .conclusion {
    margin-left: 1.0em;
}
.pretext-content .exercisegroup .exercise-like .introduction + .hidden-knowl-wrapper,
.pretext-content .exercisegroup .exercise-like .conclusion {
    margin-left: 1.5em;
}
.pretext-content section > .hidden-knowl-wrapper {
    margin-top: 1em;
}

.pretext-content .exercisegroup > .conclusion {
    margin-left: 1.5em;
}

.pretext-content .exercise-like .introduction {
    display: inline;
}
.pretext-content .exercise-like .introduction .heading {
    display: inline;
}
.pretext-content .exercise-like .introduction p:first-child {
    display: inline;
}
.pretext-content .exercise-like .introduction::after {
    content: "";
    display: block;
}
.pretext-content .exercise-like .conclusion::before {
    content: "";
    display: block;
    margin-top: 0.25em;
}


/* if hints and solutions are in .posterior, then
 * some of the above styling does not apply */

.pretext-content article.exercise-like + .posterior {
    margin-top: -0.75em;
}


.pretext-content article.example-like .hint {
    display: block;
    margin-top: -0.75em;
}


.pretext-content .exercisegroup .exercisegroup-exercises.cols2, .pretext-content .exercisegroup .exercisegroup-exercises.cols3, .pretext-content .exercisegroup .exercisegroup-exercises.cols4, .pretext-content .exercisegroup .exercisegroup-exercises.cols5, .pretext-content .exercisegroup .exercisegroup-exercises.cols6 {
    width: 100%;
    display:inline-flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:flex-start;
    align-items:flex-start;
    align-content:flex-start;
}

.pretext-content .exercisegroup .exercisegroup-exercises.cols1 {
    display:inline;
}

.pretext-content .exercisegroup .exercisegroup-exercises.cols1 .knowl-output {
    display: block;
}

.pretext-content .exercisegroup .cols1 > article.exercise-like {flex-basis: calc(100% - 2em);}
.pretext-content .exercisegroup .cols2 > article.exercise-like {flex-basis: calc(50% - 2em);}
.pretext-content .exercisegroup .cols3 > article.exercise-like {flex-basis: calc(33.33% - 2em);}
.pretext-content .exercisegroup .cols4 > article.exercise-like {flex-basis: calc(25% - 2em);}
.pretext-content .exercisegroup .cols5 > article.exercise-like {flex-basis: calc(20% - 2em);}
.pretext-content .exercisegroup .cols6 > article.exercise-like {flex-basis: calc(16.66% - 2em);}

/* math directly adajacent to words is wrapped to avoid bad line breaks */
.pretext-content .mathword {
    white-space: nowrap;
}

.pretext-content .unit,
.pretext-content .quantity {
    white-space: nowrap;
    word-spacing: -0.25ex;
    margin-right: 0.125em;
}
.pretext-content .unit sub,
.pretext-content .unit sup,
.pretext-content .quantity sub,
.pretext-content .quantity sup {
     word-spacing: normal;
}

.pretext-content .code-inline,
.pretext-content .code-block,
.pretext-content .console,
.pretext-content .program,
.pretext-content .program code {
    font-family: "Inconsolata", monospace;
}
.pretext-content .code-block,
.pretext-content .console,
.pretext-content .program {
    overflow-x: auto;
}

.pretext-content .code-inline {
    font-size: 1em;
    white-space: nowrap;
    color: inherit;
    background: #eeeeee;
    border: 1px solid #dddddd;
    padding: 0.0625em 0.25em;
    margin-left: 0.2em;
    margin-right: 0.2em;
    border-radius: 0.2em;
}
.pretext-content .code-inline:first-child {
    margin-left: 0;
}
.pretext-content .title .code-inline {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
}
.pretext-content a .code-inline {
    background: #f6f6f6;
}

.pretext-content .kbdkey {
    background: #f1f1f1;
    border: 1px solid #dddddd;
    border-radius: 3px;
    padding: 1px 2px 0 2px;
    vertical-align: 0.1em;
    font-size: 110%;
    line-height: 1;
    box-shadow: 2px 2px grey;
    display: inline-block;
    margin-right: 3px;
}

.pretext-content .sagecell_sessionOutput pre {
    font-family: 'Inconsolata', monospace;
}

.pretext-content .sagecell {
    margin-top: 1.25em;
    margin-bottom: 1.25em;
}
.pretext-content .sage-interact.sagecell {
    margin: 0;
}

.pretext-content .sagecell_evalButton {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  padding: 0 0.65em;
}
.pretext-content .sagecell_evalButton {
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
/*
  *vertical-align: auto;
*/
  zoom: 1;
/*
  *display: inline;
*/
  /* Disable accidental text-selection */
  user-select: none;
  /* Truncate overflowing text with ellipsis */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-width: 1px;
  border-style: solid;
  font-weight: bold;
  border-radius: 3px;
}
.pretext-content .sagecell_evalButton {
  color: #383838;
  background-image: linear-gradient(#f7f7f7, #bbbbbb);
  border-color: #c4c4c4;
}
.pretext-content .sagecell_evalButton:hover {
  color: #181868;
  background-image: linear-gradient(#bbbbbb, #f7f7f7);
}
.pretext-content .sagecell_evalButton:focus,
.pretext-content .sagecell_evalButton:active {
  color: #20160b;
  background-image: linear-gradient(#ff6852, #ffd7d1);
  border-color: #ff2822;
}

.pretext-content .sagecell .sagecell_editor {
  margin-bottom: 8px;
}


/*
.pretext-content .sagecell .CodeMirror-fullscreen {
    z-index: 400;
    top: 300px;
    padding-top: 50px;
    margin-top: 100px;
    height: inherit;
}
*/

.pretext-content .booktitle {
    font-style: oblique;
}

.pretext-content .poem {
    margin-top: 1.5em;
}

.pretext-content .objectives > .heading,
.pretext-content .outcomes > .heading {
    font-size: 1.25em;
}

/* Born-hidden example with a very long title */
/* http://physics.thomasmore.edu/ConnectedPhysics/sss-netforce.html */
.pretext-content a .heading {
    white-space: normal;
}


.pretext-content .solutions > a, .pretext-content .solutions > a:hover, .pretext-content .solutions > a.active {
    display: inline-block;
    margin-right: 1.5em;
}

/* Can .solutions .solution actually happen any more?  Or is that
   replaced by .solutions a ? */
.pretext-content .solutions .solution .type + .codenumber {
    margin-left: 0.4em;
}
.pretext-content .solutions .solution .title:last-child {
    margin-left: 0.2em;
    font-size: 90%;
}

/* When the knowl is a Hint, Answer, or Solution, put a little
   triangle in front of it */
.pretext-content .solutions > a::before {
    content: '\25ba';
    font-size: 70%;
    color: #06a;
    position: relative;
    top: -2px;
    right: 3px;
}
.pretext-content .solutions > a.active::before {
    content: '\25bc';
    animation-name: solutiontriangle;
    animation-duration: 3s;
    animation-iteration-count: 1;
}
.pretext-content .solutions > a[data-knowl]::after {
    left: 12px;
}
@keyframes solutiontriangle {
    from {content: '\25ba';}
    to {content: '\25bc';}
}

.pretext-content section.solutions {
    font-size: 90%;
    padding-left: 1em;
    border-left: 1em solid #eeeeee;
}

/* these were taken from the local add-on.css.
 * need to check if the are needed.
 */

.pretext-content article > figure:first-child {
    margin-top: 0;
}

.pretext-content figure + figure,
.pretext-content figure + .sidebyside,
.pretext-content .sidebyside + .sidebyside,
.pretext-content article + figure,
.pretext-content .sidebyside + figure {
    padding-top: 1.0em;
}


.pretext-content img {
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
}

/* is .cs for commutative diagrams? */
.pretext-content img.cs {
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
}

.pretext-content img:not(.cs) {
    max-width: 650px;
}

.pretext-content .tabular-box table {
    margin-left: auto;
    margin-right: auto;
}

figure img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

figure img + img {
    margin-top: 30px;
}

div.center img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

div.center + div.center > img {
    margin-top: 60px;
}

div.center > img + img {
    margin-top: 60px;
}

figure table {
    margin-left: auto;
    margin-right: auto;
}

.caption {
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    font-size: 100%;
    text-align: center;
}


figure.wrap img {
    width: 250px;
}
figure.wrap {
    float: right;
    margin-right: 0;
    margin-left: 30px;
}
figure img.wrap {
    float: right;
    margin: 0;
}

figure figcaption.wrap {
    margin: 10px;
    font-size: 100%;
    text-align: center;
}

.pretext-content figure, .pretext-content .image-box {
    margin-top: 0.5em;
}
.pretext-content figure .image-box {
    margin-top: 0;
}
.pretext-content .sidebyside figure {
    margin-top: 0;
}
.pretext-content .image-box img,  /* See sample article Graphics section */
.pretext-content img.contained,  /* See sample article Graphics section */
.pretext-content .sbspanel img {
   /* previously these were hard-coded in the HTML */
    width: 100%;
    height: auto;
}

/* In 0.2 all of the below are needed.  Possibly in a later version
   only the .image-box > img is needed, because all img are in an image-box.
*/
.pretext-content .image-box > img:not(.draw_on_me):not(.mag_popup),
.pretext-content .sbspanel > img:not(.draw_on_me):not(.mag_popup),
.pretext-content figure > img:not(.draw_on_me):not(.mag_popup),
.pretext-content figure > div > img:not(.draw_on_me):not(.mag_popup) {
    cursor: zoom-in;
}
.pretext-content img.mag_popup {
    border: 1px solid #666;
    box-shadow: 4px 6px 4px #999;
    cursor: zoom-out;
    max-width: 600px;
/*
    margin-right: 50px;
*/
}
.pretext-content .mag_popup_container {
    width:100%;
    position:absolute;
    z-index:1001;
    overflow-x: visible;
}

.pretext-content .image-box,
.pretext-content .audio-box,
.pretext-content .video-box,
.pretext-content .asymptote-box {
    position: relative;
}
.pretext-content .image-box .asymptote-box iframe.asymptote,
.pretext-content iframe.asymptote,
.pretext-content .video-box .video,
.pretext-content .video-box .video-poster {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}
.pretext-content section > .audio-box,
.pretext-content section > .video-box,
.pretext-content section > .image-box {
    margin-top: 0.75em;
}

.pretext-content .audio {
    width: 100%;
}

.caption .heading {
    font-weight: bold;
}

.caption .counter {
    font-weight: bold;
}

div.quote {
    padding-left: 40px;
    padding-right: 10px;
    margin-bottom: 1em;
}

.minipage  + .minipage {
    display: inline-block;
}

code.inline {
    background: none;
    border: none;
}

/* These next are frp Prism */
.pretext-content pre.program,
.pretext-content pre.program code {
    line-height: 1.1;
}
.pretext-content section > .code-box,
.pretext-content p + .code-box {
    margin-top: 1em;
}

.pretext-content pre.program {
    margin-top: 0;
    padding-left: 15px;
    border-left: 1px solid #aaa;
    font-size: 93%;
    overflow: auto;
    background: inherit;  /* over-ride Prism's #f5f2f0 */
}
.pretext-content pre.program:before {
    content:' ';
    font-size: 50%;
    border-top: 1px solid #aaa;
    display: block;
    margin-right: auto;
    margin-left: -15px;
    width: 3.0em;
}

/* next os for the old code formatting js */
.pretext-content pre.prettyprint,
.pretext-content pre.plainprint {
    margin-top: 0;
    padding-left: 15px;
    border-left: 1px solid #aaa;
    font-size: 93%;
    overflow: auto;
/* preveiously turned off the border and padding from pretty.css */
}

.pretext-content pre.prettyprint:before,
.pretext-content pre.plainprint:before {
    content:'';
    font-size: 50%;
    border-top: 1px solid #aaa;
    display: block;
    margin-right: auto;
    margin-left: -15px;
/*
    padding-bottom: 0.25em;
*/
    width: 2.5em;
}

.pretext-content .objectives {
    margin-bottom: 1.25em;
}


.pretext-content ol > li {
    padding-left: 0.25em;
}
.pretext-content ol.cols2 > li, .pretext-content ul.cols2 > li { width: calc(49% - 1.75em); min-width: 190px}
.pretext-content ol.cols3 > li, .pretext-content ul.cols3 > li { width: calc(33% - 1.25em); min-width: 160px}
.pretext-content ol.cols4 > li, .pretext-content ul.cols4 > li { width: calc(24.5% - 1.25em); min-width: 100px}
.pretext-content ol.cols5 > li, .pretext-content ul.cols5 > li { width: calc(19.5% - 0.75em); min-width: 90px}
.pretext-content ol.cols6 > li, .pretext-content ul.cols6 > li { width: calc(16.3% - 0.5em); min-width: 80px}
/* sample-article sec 5 */
.pretext-content ul.cols2 > li, .pretext-content ol.cols2 > li {
   padding-right: 1.5em;
}

.pretext-content .cols2 > li:first-child,
.pretext-content .cols3 > li:first-child,
.pretext-content .cols4 > li:first-child,
.pretext-content .cols5 > li:first-child,
.pretext-content .cols6 > li:first-child {
    margin-top: 0.5em;
}

.pretext-content .exercisegroup-exercises > article.exercise-like {
    margin-top: 1em;
}


/* see http://bob.cs.sonoma.edu/IntroCompOrg-RPi/exercises-10.html
  for examples of an odd number of items in a cols2, followed by
  a hint */
.pretext-content .cols2 > li:last-child:nth-child(odd) {
    float: none !important;
    padding-top: 0.5em;
}


/* http://spot.pcc.edu/math/APEXCalculus/sec_prod_quot_rules.html
 * solution to Example 2.4.14
 */
.pretext-content .solution ol li { 
    margin-top: 1em;
    padding-left: 0.5em;
}

/* solution to Example 4.2.12 in http://spot.pcc.edu/math/orcca-draft/orcca/section-radical-expressions-and-rational-exponents.html
*/
.pretext-content .solution ol li > p:first-child, .pretext-content .solution ol li > .displaymath:first-child {
    vertical-align: top;
    display: inline-block;
    margin-top: 0;
}
.pretext-content .solution ol li > .displaymath:first-child .MJXc-display {
    margin-top: 0;
}


.pretext-content .exercise-like ol li {
    margin-top: 1em;
    padding-left: 0.5em;
}

.pretext-content .exercise-like > .cols2 > li { width: calc(49% - 2.5em)}
.pretext-content .exercise-like > .cols3 > li { width: calc(33% - 2.5em)}
.pretext-content .exercise-like > .cols4 > li { width: calc(24.5% - 2.5em)}
.pretext-content .exercise-like > .cols5 > li { width: calc(19.5% - 2.5em)}
.pretext-content .exercise-like > .cols6 > li { width: calc(16.3% - 2.5em)}

/* because .colsN uses float, the margin-top of the folowing
element is ignored */
/* but now this is not needed because we add an "::after" on cols n,
   which is an empty non-floating block 
.pretext-content .cols2 > li:last-child,
.pretext-content .cols3 > li:last-child,
.pretext-content .cols4 > li:last-child,
.pretext-content .cols5 > li:last-child,
.pretext-content .cols6 > li:last-child {
    padding-bottom: 1em;
}
*/

/* A colsN in a knowl needs to be narrower because of the margin/padding of the knowl */
.pretext-content .knowl .exercise-like > .cols2 > li { width: calc(49% - 2em)}
/* next 4 not actually checked: just copied from cols2 */
.pretext-content .knowl .exercise-like > .cols3 > li { width: calc(33% - 2em)}
.pretext-content .knowl .exercise-like > .cols4 > li { width: calc(24.5% - 2em)}
.pretext-content .knowl .exercise-like > .cols5 > li { width: calc(19.5% - 2em)}
.pretext-content .knowl .exercise-like > .cols6 > li { width: calc(16.3% - 2em)}


.pretext-content .exercise-like ol li > p:first-child {
    vertical-align: top;
    display: inline-block;
    margin-top: 0;
}

.pretext-content .contributor .contributor-name {
    font-variant: small-caps;
}
.pretext-content .contributor .contributor-info {
    font-size: 88%;
    font-style: italic;
    margin-left: 3ex;
}
.pretext-content .contributor {
    margin-top: 3ex;
}
.pretext-content .contributor + .contributor {
    margin-top: 1.5ex;
}

.pretext-content .contributor + p {
    margin-top: 3ex;
}

.pretext-content .frontmatter .contributors, .pretext-content .book .contributors {
    text-align: center;
    font-style: normal;
}


.searchwrapper {
    max-width: 900px;
    position: absolute;
    right: 0;
    bottom: 0; 
    margin-bottom: 39px; 
}
body.sidebar-left-closed .searchwrapper {
    margin-bottom: -2px; 
}

body.sidebar-left-open .searchwrapper {
    top: 74px;
}

body.sidebar-left-closed .searchwrapper {
    top: 74px;
    margin-bottom: -2px;
}


@media screen and (max-width: 800px) {
body.sidebar-left-closed .searchwrapper {
    top: 129px;
}
}

@media screen and (max-width: 480px) {
body.sidebar-left-closed .searchwrapper {
    top: 174px;
}
}


.searchwrapper .cse .gsc-control-cse, .searchwrapper .gsc-control-cse  {
    padding: 0;
    border: none;
    width: 25ex;
}
.searchwrapper .cse .gsc-search-button input.gsc-search-button-v2, .searchwrapper input.gsc-search-button-v2 {
    padding: 2px 2px;
}
.searchwrapper form.gsc-search-box {
    margin: 0;
}
.searchwrapper table.gsc-search-box {
    margin: 0;
}
.searchwrapper .gsc-search-box-tools .gsc-search-box .gsc-input {
    padding: 0;
}
.searchwrapper .gsib_a {
    padding: 0 0 0 5px;
}
.searchwrapper .gsc-input-box {
    height: 3.0ex;
}
.searchwrapper form.gsc-search-box {
    font-size: 12px;
}

/* turn off the green parentheses Alex does not like */
.pretext-content div.CodeMirror span.CodeMirror-matchingbracket {color: #090;}

.pretext-content .image-archive {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;  /* was auto */
    margin-top: 0.75em;
    padding-bottom: 0.25em;
    text-align: center;
}
.pretext-content .image-archive > a {
    display: inline-block;
    padding-left: 0.5em;
    padding-right: 0.5em;
    font-family: monospace;
}

.pretext-content iframe {
    margin: 0;
    border: none;
    box-sizing: border-box;
}

.pretext-content .times-sign {
    font-size: larger;
    vertical-align: -0.15ex;
}
/* temporary for Geogebra development: replace with a more
  restrictive selector for articles */
.pretext-content article.notranslate {
    margin-top: 0;
}

/*
nested tasks. see
https://pretextbook.org/examples/sample-article/html/interesting-corollary.html#aBc
*/

.pretext-content .exercise-like > .exercise-like {
    margin-left: 40px;
}
.pretext-content .exercise-like > .exercise-like.task {
    margin-left: 20px;
}
.pretext-content .exercise-like > .exercise-like > p {
    margin-top: 1.25em;
/*    margin-bottom: 0.25em; */
}
.pretext-content .example-like > .heading + .introduction {
    display: inline;
}
.pretext-content .example-like > .heading + .introduction > p:first-child {
    display: inline;
}
.pretext-content .example-like > .exercise-like > p {
    margin-top: 1.25em;
}

/* end of nested tasks */

/* genus and species in italics */
.pretext-content .taxon {
    font-style: italic;
}

/* Sage stuff */
.pretext-content .sageanswer {
    font-family: monospace;
    white-space: pre;
    margin-left: 3em;
    margin-bottom: 2em;
} 
.pretext-content .sageanswer .key {
    display: inline-block;
    vertical-align: top;
    margin-right: 1em;
}
.pretext-content .sageanswer .output {
    display: inline-block;
    vertical-align: top;
}
.pretext-content .CodeMirror-code pre.CodeMirror-line {
    padding-bottom: 5px;
/* the next item is the CodeMirror default, which was
 previously over-ridden */
    padding-left: 6px;
}

/* used when knowl content is hidden in the page */
.pretext-content .hidden-content, .pretext-book .hidden-content, .pretext-article .hidden-content, .hidden-content {
    display: none;
}

.pretext-content hr.pagebreak {
    width: 30em;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2.0em;
    margin-top: 0;
    height: 4em;
    border: 0;
    border-bottom: 1px dashed #ccc;
}

.pretext-content hr.pagebreak:after {
    content: "page";
    display: inline-block;
    position: relative;
    top: 4.0em;
    font-size: 80%;
    padding: 0 0.25em;
    background: white;
}

/*
   See 10.1.8c in http://faculty.valpo.edu/calculus3ibl/ch10_01_gradient.html
and condider having this replace line 3338 of the general code (which uses .heading + p)
*/
.pretext-content .example-like > .exercise-like > p:first-of-type {
    display: inline;
}
.pretext-content .example-like > .exercise-like > .aside-like {
    margin-top: -3em;
}
.pretext-content .example-like > .exercise-like > .aside-like.front {
    margin-top: 0;
}

.pretext-content meta {
    display: none;
}

.pretext-content .summary-links a {
  color: #671d12;
  background: #f0f0f0;
  text-decoration: none;
  cursor: pointer;
}
.pretext-content .summary-links a:hover, .pretext-content .summary-links a:focus {
  color: white;
  background: #671d12;
}
.pretext-content .summary-links a .codenumber {
  color: #303030;
  margin-right: 0.41667em;
}

.pretext-content .summary-links a:hover .codenumber, .pretext-content .summary-links a:focus .codenumber {
  color: #f0f0f0;
}



.pretext-content .summary-links {
    margin-top: 4em;
}
.pretext-content section + .summary-links {
    margin-top: 2em;
}
.pretext-content .summary-links ul {
    list-style-type:none;
}
.pretext-content .summary-links li {
    margin-top: 0;
}
.pretext-content .summary-links a {
  position: relative;
  display: block;
  font-size: 1.5em;
  line-height: 1.25em;
  padding: 0.41667em 0.83333em;
  margin-top: 0.20833em;
  border-radius: 3px;
  padding-right: 2.06667em;
}
.pretext-content .summary-links a:after {
  right: 0.83333em;
}
.pretext-content .summary-links a:after {
  content: "";
  position: absolute;
  /* center vertically */
  top: 50%;
  margin-top: -0.4em;
  width: 0;
  height: 0;
  border-top: 0.4em solid transparent;
  border-bottom: 0.4em solid transparent;
  border-left: 0.4em solid #c9c9c9;
}
.pretext-content .summary-links a, .pretext-content .summary-links a:link, .pretext-content .summary-links a:visited {
  cursor: pointer;
}
.pretext-content .summary-links a:hover:after {
  width: 0;
  height: 0;
  border-top: 0.4em solid transparent;
  border-bottom: 0.4em solid transparent;
  border-left: 0.4em solid white;
}
.pretext-content .summary-links a {
  font-family: "PT Serif", "Times New Roman", Times, serif;
}
@media screen and (max-width: 480px) {
  .pretext-content .summary-links a {
    font-size: 1em;
    line-height: 1.25em;
  }
}
.pretext-content .summary-links a .codenumber {
  margin-right: 0.41667em;
}

.pretext-content .summary-links a:active {
  position: relative;
  color: white;
  background: #932919;  
  text-decoration: none;
  box-shadow: rgba(0, 0, 0, 0.2) 0 2px 5px 5px inset;
}
.pretext-content .summary-links a:active:after {
  width: 0;
  height: 0;
  border-top: 0.4em solid transparent;
  border-bottom: 0.4em solid transparent;
  border-left: 0.4em solid white;
}
.pretext-content .summary-links a:focus {
  outline: thin dotted #333;
  outline-offset: -2px;
  /**
   * Remove stupid inner dotted border applied by Firefox on focus
   * See http://stackoverflow.com/a/199319/1599617
   */
}


@media print {
    .navbar { display:none; }
    .has-sidebar-left #masthead #primary-navbar-sticky-wrapper { display:none; }
    .has-sidebar-left #masthead.smallbuttons {
        border:none;
    }
    .has-sidebar-left .page > #sidebar-left-sticky-wrapper { display:none; }
    .searchwrapper { display:none; }
    .has-sidebar-left.mathbook-loaded .page .main {
        margin-left:0;
        left:auto;
        border:none;
        box-shadow:none;
        padding: 0;
    }
/*    .has-sidebar-left.mathbook-loading.sidebar-left-open .page > .main,
*/
    .has-sidebar-left.mathbook-loaded.sidebar-left-open .page > .main {
        margin-left:0;
        padding: 0;
    }
    .has-sidebar-left.mathbook-loaded.sidebar-left-open .page .main #content { margin-top:0 }
    .has-sidebar-left.mathbook-loaded.sidebar-left-open .page .main #content.pretext-content section { margin-top:1em }
    .has-sidebar-left.mathbook-loaded.sidebar-left-open .page .main #content.pretext-content section .heading { margin-top:0 }
}

/* also see section > heading for worksheets, maybe around line 1200 */
/* one-page documents in the browser */

body.standalone.worksheet .pretext-content .onepage > .heading {
    margin-top: 0;
    font-size: 1.3em;
}
body.standalone.worksheet .pretext-content .onepage > .introduction {
    margin-top: 0.4em;
}
body.standalone.worksheet .pretext-content .onepage > .introduction > .heading {
    font-size: 1.1em;
}
body.standalone.worksheet .pretext-content .onepage .solutions {
    display: none;
}
body.standalone .pretext-content .worksheet {
/*
    padding: 40px 45px 45px 55px;
*/
    padding: 40px 0 45px 0;
    border: 2px solid grey;
    margin: 0;
/* height: 1243px; */
}

body.standalone .pretext-content .onepage {
/*    padding: 40px 45px 45px 55px;
    padding: 0 0 45px 0;
*/
    padding: 40px 45px 45px 55px;
    border-bottom: 2px solid grey;
    margin: 0;
/* height: 1243px; */
}
body.standalone .pretext-content .onepage + .onepage {
/*
    padding-top: 40px;
*/
    border-top: 2px solid grey;
}
/* there may be worksheet content before the first page
   or after the last page
*/
body.standalone .pretext-content .onepage.firstpage {
    padding-top: 0
}
body.standalone .pretext-content .onepage.lastpage {
    padding-bottom: 0;
    border-bottom: none;
}

body.standalone .pretext-content .worksheet > *:last-child {
    padding-bottom: 0 !important
}
.pretext-content .onepage + .onepage {
    margin-top: 2.5em;
    padding-top: 1.5em;
    border-top: 1px dashed #aaa;
}
.pretext-content .onepage + .onepage::before {
    content: "pagebreak";
    text-align: center;
    margin-left: 40%;
    padding-left: 1em;
    padding-right: 1em;
    position: absolute;
    top: -0.8em;
    font-size: 80%;
    font-style: italic;
    background: white;
}

body.standalone .pretext-content .onepage + .onepage {
    margin-top: 10px;
}
body.standalone .pretext-content .onepage + .onepage::before {
    content: none;
}

body.standalone .pretext-content .onepage article {
    padding-left: 0;
    border: none;
}
body.standalone .pretext-content .onepage article::after {
    all: unset;
}
.pretext-content .onepage > p:first-child,
.pretext-content .onepage > article:first-child {
    margin-top: 0;
}
.pretext-content section + .onepage.firstpage,
.pretext-content article + .onepage.firstpage,
.pretext-content p + .onepage.firstpage {
    margin-top: 1.25em;
}

/* not good, because of image next to image
.pretext-content .onepage .sbspanel + .sbspanel {
    padding-left: 1.25em;
    border-left: 1px solid grey;
    margin-left: -1.25em;
}
*/
body.worksheet .pretext-content .onepage .sbspanel + .sbspanel > .exercise::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    padding-left: 1.25em;
    border-left: 1px solid grey;
    margin-left: -1.25em;
    z-index: -100;  /* to not block editable content */
}

body.standalone.worksheet .pretext-content section article.task {
    margin-left: 0;
}
body.standalone.worksheet .pretext-content section article.task > .heading {
    font-weight: normal;
}

body.standalone .autopermalink {
    display: none;
}

body.standalone.worksheet .pretext-content .onepage .workspace {
    border: 2px dotted grey;
    background: #f3fff3;
/*  Sally suggests light and dark blue 
    background: linear-gradient(
        #eef 0px, #eef 200px,
        #eef 200px, #99f 205px,
        #99f 205px, #99f 100%)
*/
}
body.standalone.worksheet .pretext-content .onepage .workspace.squashed {
    border: 2px dotted grey;
    background: #ffe;
}

body.standalone.worksheet .pretext-content .onepage .workspace.squashed.tight {
    border: 15px solid;
    border-image: repeating-linear-gradient(
      -35deg,
      #f33,
      #f33 10px,
      #000 10px,
      #000 20px
    ) 20; 
/*
    background: linear-gradient(
        #ff0 0%, #ff0 8%,
        #000 8%, #000 9%,
        #ff6 9%, #ff6 17%,
        #555 17%, #555 19%,
        #ff8 19%, #ff8 26%,
        #777 26%, #777 29%,
        #ffa 29%, #ffa 37%,
        #aaa 37%, #aaa 41%,
        #ffd 41%, #ffd 48%,
        #ccc 48%, #ccc 52%,
        #ffd 52%, #ffd 59%,
        #aaa 59%, #aaa 63%,
        #ffa 63%, #ffa 71%,
        #777 71%, #777 74%,
        #ff8 74%, #ff8 81%,
        #555 81%, #555 83%,
        #ff6 83%, #ff6 91%,
        #000 91%, #000 92%,
        #ff0 92%, #ff0 100%
        );
*/
    background: yellow;
}

body.standalone.worksheet #sidebar-left {
    display: none;
}
body.has-sidebar-left.mathbook-loaded.standalone.worksheet .page .main {
    margin-left: 0;
}
body.standalone.worksheet .page > .main #content {
    max-width: 1030px;
    width: 1030px;
    margin-right: 0;
}
body.standalone.worksheet.a4 .page > .main #content {
    max-width: 1001px;
    width: 1001px;
}

body.standalone.worksheet .pretext-content .goal-like {
    border: none;
    padding: 0;
}
body.standalone.worksheet .pretext-content .goal-like > .heading {
    margin-top: -0.5em;
    padding: 0;
    margin: 0;
    font-size: 1.1em;
}
body.standalone.worksheet .pretext-content section.worksheet > .heading {
    display: inline;
    font-size: 1.1em;
}
/* becaues the worksheet has no side margins but the .onepage does */
body.standalone.worksheet .pretext-content section.worksheet > .heading,
body.standalone.worksheet .pretext-content section.worksheet > .objectives,
body.standalone.worksheet .pretext-content section.worksheet > .introduction,
body.standalone.worksheet .pretext-content section.worksheet > .conclusion {
    margin-left: 55px;
    margin-right: 40px;
}
body.standalone.worksheet .pretext-content section.worksheet > .heading + p {
    display: inline;
}

/* [data-urlstub="calcvr.org"] temporary for worksheets in the browser */

body[data-urlstub="calcvr.org"].standalone.worksheet .page > .main #content {
    width: auto;
}

body[data-urlstub="calcvr.org"].standalone.worksheet .pretext-content .onepage .workspace,
body[data-urlstub="calcvr.org"].standalone.worksheet .pretext-content .onepage .workspace.squashed.tight {
        background: #eef !important;
}


/* printing for one-page worksheets */

@media print {
    body.standalone .pretext-content .worksheet {
        border: none;
    }
    body.standalone.worksheet #masthead {
        display: none;
    }

    body.standalone.worksheet.has-sidebar-left.mathbook-loaded .page .main {
        margin: 0;
    }

    body[data-urlstub="calcvr.org"].standalone.worksheet .page > .main #content {
        width: 1030px;
    }

    body.standalone.worksheet .page > .main #content {
        margin: 0;
    }
    body.standalone.worksheet .pretext-content .onepage {
        max-height: 100%;
        max-width: 100%;
        overflow: hidden;
        page-break-after: always;
/*
        height: 1243px;
*/
        border: none;
        page-break-inside: avoid;
     }
     body.standalone.worksheet .pretext-content .onepage.lastpage {
        page-break-after: auto;
     }
    body.standalone.worksheet.a4 .pretext-content .onepage {
/*
        height: 1320px;
*/
    }
    body[data-urlstub="calcvr.org"].standalone.worksheet .pretext-content .onepage .workspace,
    body[data-urlstub="calcvr.org"].standalone.worksheet .pretext-content .onepage .workspace.squashed.tight,
    body.standalone.worksheet .pretext-content .onepage .workspace,
    body.standalone.worksheet .pretext-content .onepage .workspace.squashed.tight {
        border: none;
        padding: 0;
        background: none !important;
    }
    body.standalone.worksheet a {
        color: black;
    }

    body.standalone.worksheet .page  .main {
        padding: 0;
    }

    body.standalone.worksheet.mathbook-loaded .page .main #content.pretext-content section.onepage {
        padding-bottom: 20px;  /* to help prevent flow onto the next page, particularly in Safari */
                              /* the page is not full length, but what is missing was blank anyway */
/*
        margin: 0;
*/
    }

    @page { margin: 0 }
}

.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-draggable.ui-resizable {
    left: 0 !important;
    top: 0 !important;
}

/* move to the color file(s) and figure out next comment */
/* delete the first one of both as obsolete */
.pretext-content a.xref,
.pretext-content a.internal {
    color: #900;
}
.pretext-content a.xref:hover,
.pretext-content a.internal:hover {
    background-color: #ddf;
}
.pretext-content a.url,
.pretext-content a.external {
    color: #22a;
}
.pretext-content a.url:hover,
.pretext-content a.external:hover {
    background: #ffd;
}

.pretext-content a.internal:hover,
.pretext-content a.external:hover,
.pretext-content a.internal:focus,
.pretext-content a.external:focus {
    text-decoration: underline;
}

/* style for poems */

.pretext-content .poem {
    display: table;
    margin-top: 1.5em;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    width: auto;
    max-width: 90%;
}

.pretext-content .poem > .heading {
    display: block;
    text-align: center;
}
.pretext-content section article.poem > .heading::after {
    content: "";
}
.pretext-content .poem > .heading > .title {
    font-weight: bold;
    font-size: 1.2em;
    line-height: 1.2em;
}

.pretext-content .poem .author {
    font-style: italic;
    margin-top: 0.75em;
}
.pretext-content .poem .author.left {
    text-align: left;
}
.pretext-content .poem .author.center {
    text-align: center;
}
.pretext-content .poem .author.right {
    text-align: right;
}

.pretext-content .poem .stanza > .heading {
    text-align: center;
    font-weight: bold;
    font-size: 1em;
    line-height: 1em;
}
.pretext-content .poem .stanza + .stanza {
    margin-top: 1em;
}
.pretext-content .poem .heading + .stanza {
    margin-top: 0.2em;
}
.pretext-content .poem .heading + .line {
    margin-top: 0.2em;
}

.pretext-content .poem .line.left {
    text-align: left;
    margin-left: 4em;
    text-indent: -4em;
}
.pretext-content .poem .line.center {
    text-align: center;
}
.pretext-content .poem .line.right {
    text-align: right;
}
.pretext-content .poem .tab {
    margin-left: 2em;
}

/* GeoGebra calculator */

#calculator-container {
    position: fixed;
    z-index: 100;
    bottom: 5px;
    right: 5px;
/*
    width: 320px;
*/
    width: 253px;
/*
    height: 600px;
*/
    height: 460px;
}
@media screen and (max-width: 800px) {
    #calculator-container {
         bottom: 50px !important;
    }
}

.toolBPanel {
    overflow: hidden !important;
}
.toolBPanel:hover {
    overflow: auto !important;
}

/* Preview of annual edition */

main p.newstuff {
    border-right: 6px solid #6f6;
    background:  #dfd;
}
main li.newstuff {
    border-right: 6px solid #66f;
    background:  #eef;
}
main li.newstuff p.newstuff {
    border-right: none;
    background: inherit;
}
main article.newstuff {
    border-right: 6px solid #ff6;
    background:  #ffd;
}
main section.newstuff {
    border-right: 10px solid #f6f;
}
main a[data-knowl].newstuff {
    border: 1px solid #f33;
    background: #fdd;
}

#aboelkins-ACS .main #content > section:first-of-type > section:first-of-type > .project-like:first-of-type li {
    font-size: 300%
}
/*  WW problems */

.pretext-content .wwprob table.attemptResults {
    margin-left: 2em;
    background: #efefef;
    padding: 0.2em;
}
.pretext-content .wwprob table.attemptResults + .attemptResultsSummary {
    margin-top: 1em;
}

.pretext-content .wwprob .problem-main-form {
    margin-top: 1em;
    background: #eeeeff;
    padding: 0.5em;
}
.pretext-content .wwprob td.ResultsWithoutError {
    background: #9f9;
}
.pretext-content .wwprob td.ResultsWithError {
    background: #f99;
}

.pretext-content .wwprob tr th {
    text-align: center;
    padding: 0.2em 1em 0.2em 1em;
}
.pretext-content .wwprob tr td {
    text-align: center;
}
.pretext-content .wwprob tr td:empty {
    background: #fff;
}

.pretext-content .wwprob ol, .pretext-content .wwprob ul {
    margin-top: 0.75em !important;
}

.pretext-content .wwprob .problem {
/*    padding: 1em;
    border: 0.5px solid #aaa;
*/
    background: #fdfdfd;
}

.pretext-content .wwprob .problem a {
    text-decoration: none;
}

.pretext-content .wwprob #footer {
    font-size: 70%;
    text-align: right;
}

.pretext-content .marginresource {
    position: relative;
    height: 0;
    left: 40em;
    top: 1em;
}
.pretext-content .marginresource a {
    color: blue;
}
.pretext-content .marginresource a[knowl] {
    border-bottom: 1px dotted blue;
}
.pretext-content .marginresource .icon {
    font-size: 200%;
    margin-right: 1em;
    display: inline-block;
}
/*
.pretext-content .marginresource .icon.slides {
    margin-top: 2em;
}
*/
.pretext-content .marginresource .resource_description {
    display: inline-block;
}
.pretext-content .marginresource .resource_links {
    display: block;
    margin-left: 2em;
}

.iconlegend {
    position: absolute;
    margin-top: 0.5em;
    top: 0;
    left: 920px;
    line-height: 1;
}

.iconlegend .icon_name {
    font-size: 90%;
    margin-right: 1em;
}
.icongroup + .icongroup {
    margin-left: 1em;
}

/* interactive WeBWorK */

label.webwork {
display:inline-flex;
flex-direction:column;
}

label.correct .status {
background-color: #a0f0a0;
}

label.partly-correct .status {
 color: #ffcc66;
}

label.incorrect .status {
  color: #b00;
}
label.incorrect .status::before {
    content: " ";
}

.feedback {
 word-wrap:break-word;
}

label.correct .feedback {
 background-color: #00ffcc;
}

label.partly-correct .feedback {
 color: #ffcc66;
}

label.incorrect .feedback {
 color: #e07070;
}


.pretext-content .webwork-button {
    border-radius: 3px;
    padding: 0px 3px 0px 3px;
    border: 1px solid #999;
    background-color: #ffffff;
}

.pretext-content .webwork-button:hover {
    cursor: pointer;
    background-color: #e0e0ff;
    border: 1px solid #000;
}
.pretext-content .webwork-button:active {
    cursor: pointer;
    background-color: #a0a0a0;
    border: 1px solid #999;
}

.webwork img, .webwork + .knowl-output img {max-width:100%;}

.pretext-content .exercise-wrapper form button {
    border-radius: 3px;
    padding: 0px 3px 0px 3px;
    border: 1px solid #999;
    color: black;
    background-color: #ffffff;
}
/* hack for runestone */
/*
.pretext-content .exercise-wrapper form button.btn-success {
    background-color: #5cb85c;
}
*/
.pretext-content .exercise-wrapper form button:hover {
    cursor: pointer;
    background-color: #e0e0ff;
    border: 1px solid #000;
}
.pretext-content .exercise-wrapper form button:active {
    background-color: #f0f0f0;
}
.pretext-content .exercise-wrapper form button + button {
    margin-left: 0.8em;
}

.pretext-content .exercise-wrapper,
.pretext-content .exercise-wrapper form, 
.pretext-content .exercise-wrapper form > div:first-child {
    display: inline-block;
    vertical-align: top;
    width: 100%; // for live ww to open at 100% wide
}
.pretext-content .knowl .exercise-wrapper,
.pretext-content .knowl .exercise-wrapper form,
.pretext-content .knowl .exercise-wrapper form > div:first-child {
    width: 100%;
}
/*
.pretext-content .exercise-wrapper form {
     max-width: 95%;
}
*/
.pretext-content .exercise-wrapper > p:first-child,
.pretext-content .exercisegroup .exercise-wrapper > p:first-child {
    margin-top: 0;
    display: inline;
}
/* next is realted to having exercises start in-line with their exercise number,
   including when a static WW problem is made interactive */
/* not sure this was the right way to do it */
/* see https://opentext.uleth.ca/apex-calculus/sec_antider.html#exercise-722 */
.pretext-content .heading + .exercise-wrapper {
    display: inline-block;
    max-width: 95%;
    width: 100%;
}
/*
.pretext-content .exercisegroup .heading + .exercise-wrapper {
    width: auto;
}
*/
.pretext-content .cols2 .heading + .exercise-wrapper {
    width: auto;
}

/* next two need to be separate due to limitations in Chrome and Safari */
@media screen and (max-width: 600px) {
    .pretext-content .exercisegroup .cols2 > article.exercise-like {flex-basis: calc(100% - 2em);}
    .pretext-content .exercisegroup .cols3 > article.exercise-like {flex-basis: calc(100% - 2em);}
    .pretext-content .exercisegroup .cols4 > article.exercise-like {flex-basis: calc(50% - 2em);}
    .pretext-content .exercisegroup .cols5 > article.exercise-like {flex-basis: calc(50% - 2em);}
    .pretext-content .exercisegroup .cols6 > article.exercise-like {flex-basis: calc(33.3% - 2em);}
    .pretext-content .exercisegroup .cols2 .heading + .exercise-wrapper { max-width: 100%; }
}
@media screen and (max-width: 850px) and (min-width: 786px) {
    .pretext-content .exercisegroup .cols2 > article.exercise-like {flex-basis: calc(100% - 2em);}
    .pretext-content .exercisegroup .cols3 > article.exercise-like {flex-basis: calc(100% - 2em);}
    .pretext-content .exercisegroup .cols4 > article.exercise-like {flex-basis: calc(50% - 2em);}
    .pretext-content .exercisegroup .cols5 > article.exercise-like {flex-basis: calc(50% - 2em);}
    .pretext-content .exercisegroup .cols6 > article.exercise-like {flex-basis: calc(33.3% - 2em);}
    .pretext-content .exercisegroup .cols2 .heading + .exercise-wrapper { max-width: 100%; }
}

/* CAT  */

#edit_menu_holder {
    position: relative;
    left: 15em;
    bottom: 1.5em;
    z-index: 1000;
/*
    display: inline;
*/
}
#edit_menu_holder li {
    font-style: normal;
}
p > #edit_menu_holder,
.creator > #edit_menu_holder {
    display: inline;
}
/*
article > #edit_menu_holder {
    bottom: 3.7em;
}
ol > #edit_menu_holder {
    bottom: -2.2em;
}
li > p > #edit_menu_holder {
    bottom: -1.2em;
}
em #edit_menu_holder,
h6 #edit_menu_holder {
    left: -0.5em;
}
*/
p > #edit_menu_holder {
    bottom: 4.2em;
}
#local_menu_holder {
    position: relative;
    left: 20em;
    bottom: 1.5em;
    z-index: 1000;
}
#edit_menu,
#enter_choice {
    background: #fee;
    position: absolute;
    left: 0;
    white-space: nowrap;
    z-index: 1000;
    font-size: 95%;
    font-weight: normal;
}
#edit_menu.past {
    background: #ffe;
    color: #999;
}
.past > li {
    background: #fff9f9;
    color: #aaa;
}
#enter_choice {
    padding: 0.25em 0.5em 0 0.5em;
    background: yellow;
    bottom: -1.2em;
    border-radius: 0.5em 0.5em 0 0; 
    font-style: italic;
}
.may_enter #enter_choice {
    background: #ccccee;
}
.may_enter {
/*    box-shadow: -10px -10px 5px #ccccee;
*/
    margin-top: 1.25em;
    background: #eeeeff !important;
}
.may_enter > [data-editable] {
    background: #feeedf !important;
}
.may_enter > [data-editable="99"] {
    background: #ffffdd !important;
}

p > #edit_menu_holder > #enter_choice {
    bottom: -2.7em;
}
blockquote > #edit_menu_holder > #enter_choice {
    bottom: -1.2em;
}
blockquote.may_leave + #edit_menu_holder > #enter_choice {
    bottom: -2.3em;
}
article.project-like > #edit_menu_holder > #enter_choice {
    bottom: -0.5em;
}
article.theorem-like > #edit_menu_holder > #enter_choice,
article.definition-like > #edit_menu_holder > #enter_choice {
    bottom: -0.2em;
}
/*
article.project-like > ol > #edit_menu_holder > #enter_choice {
    bottom: -1.3em;
}
*/
.pretext-content section article.project-like.may-enter > .heading,
.pretext-content section article.project-like.may-leave > .heading {
    background-color: inherit;
}

ol > #edit_menu_holder > #enter_choice {
    bottom: -1.3em;
}
ol.may_leave + #edit_menu_holder > #enter_choice {
    bottom: -3.3em;
}
li > p > #edit_menu_holder > #enter_choice {
    bottom: -4.1em;
}
#enter_choice[data-location="inline"] {
    bottom: -0.2em;
    left: -0.5em;
}

#edit_menu_holder + p {
    margin-top: 0;
}
/*
.heading + p > #edit_menu_holder {
    bottom: -0.2em;
    left: -0.5em;
}
*/
li > #edit_menu_holder {
    display: block;
}
.may_leave + #edit_menu_holder #enter_choice {
    position: absolute;
    padding: 0em 0.5em 0.25em 0.25em;
    background: #FFD6D9;
    bottom: -1.9em;
    border-radius: 0 0 0.5em 0.5em;
    list-style-type: none;
 /*   margin: 0 0.25em 0.25em 0.25em;
*/
    font-style: italic;
}
section.may_leave + #edit_menu_holder #enter_choice {
    bottom: -3.3em;
}
article.may_leave + #edit_menu_holder #enter_choice {
    bottom: -2.3em;
}
.may_leave + #edit_menu_holder #enter_choice li {
    padding: 0;
    padding-left: 0.25em;
    padding-right: 0.25em;
}

#edit_menu li.chosen,
#edit_menu #choose_current {
    background: #ddf;
    color: #000;
}
#edit_menu.past > .choose {
    background: #eef;
    color: #000;
}
#edit_menu {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0;
    list-style-type: none;
}
#edit_menu li {
    margin-top: 0;
    padding-right: 1.4em;
    padding-left: 0.4em;
    padding-bottom: 0.1em;
}
#edit_menu li:last-of-type {
    padding-bottom: 0.3em;
}
#edit_menu_holder ol.past {
    box-shadow: -0.25em 0.25em 0 #ccc;
}
#edit_menu_holder ol:not(.past) {
    border: 0.1em solid #999;
/*
    border-right: none;
    border-bottom: none;
*/
    box-shadow: 0.15em 0.15em 0.05em #ccc;
}
#edit_menu li#choose_current {
    background: #ddf;
}
#edit_menu li.choosen {
    background: #ddf;
}
#edit_menu li ol {
    position: absolute;
    left: 8em;
    bottom: -0.5em;
    margin-top: 0;
    padding-left: 0;
    list-style-type: none;
    background: #fdd;
}
#edit_menu li.choose {
    background: #eef;
}
#edit_menu .wrap_to_submenu {
    float: right;
}
.past > li > .wrap_to_submenu {
    display: none;
}
#edit_menu .to_submenu {
    position: absolute;
    padding-left: 0.5em;
}
.text_source {
    font-size: 95%;
}
/*
.may_select {
    box-shadow: -10px -5px 5px yellow;
    margin-top: 1.25em;
    background: #ffffee;
}
*/
.may_select > p:first-of-type {
    margin-top: 0;
}
/*
.may_select.inline {
    box-shadow: none;
    border-top: 0.5em solid yellow;
    border-bottom: 0.5em solid yellow;
}
*/
.sbspanel.may_select {
    margin-top: 0;
}
sbspanel:empty { /* can only happen when partially created */
    height: 10em;
    background-color: rgb(221, 221, 255);
}
.pretext-content .sbspanel:empty + .sbspanel:empty {
    background-color: #dfd;
}
.pretext-content .sbspanel:empty + .sbspanel:empty + .sbspanel:empty {
    background-color: #eee;
}

/*
.may_leave {
    box-shadow: -10px 5px 5px #FFD6D9;
    background: #ffeeee !important;
}
*/
#actively_editing {
    margin-top: 1em;
}
#actively_editing_id {
    float: right;
    width: 8em;
    margin-bottom: 0;
}
#actively_editing[data-component="title"] {
    display: inline-block;
    min-width: 10em;
    margin-top: 0;
    margin-left: 0.75em;
    background: #fff;
    border: 1px dotted black;
}
.title > #edit_menu_holder {
    display: inline;
}
.space + .title {
    margin-left: 0.5em;
}

/*
.in_edit_tree {
    border-right: 1px solid blue;
    margin-right: 0.25em;
}
*/
/* do we really need the top and bottom edge of the structure bracket?  It messes up some other things
.in_edit_tree:before,
.in_edit_tree:after {
    content: ' ';
    font-size: 50%;
    border-top: 1px solid blue;
    display: block;
    margin-right: 0em;
    margin-left: auto;
    width: 0.75em;
}
*/

#edit_menu .in_edit_tree {
    border: none;
}
#edit_menu .in_edit_tree:before,
#edit_menu .in_edit_tree:before {
    display: none;
}

.in_edit_tree > .workspace {
    min-height: 3em;
    background: #efe;
    border: 1px dotted #aaa;
}
.in_edit_tree > .workspace::before {
    content: "optional workspace (in printed worksheet)";
    font-size: 90%;
    font-style: italic;
    padding-left: 0.25em;
}
/* why not collapse the next groups of 4? */
.in_edit_tree > .placeholder.proof,
.in_edit_tree > .placeholder.hint,
.in_edit_tree > .placeholder.answer, 
.in_edit_tree > .placeholder.solution {
    min-height: 1em;
    background: #fee;
} 
.in_edit_tree > .placeholder.proof::before,
.in_edit_tree > .placeholder.hint::before,
.in_edit_tree > .placeholder.answer::before,
.in_edit_tree > .placeholder.solution::before {
    font-size: 90%;
    font-style: italic;
    padding-left: 0.25em;
}
.in_edit_tree > .placeholder.proof::before {
    content: "optional proof";
}
.in_edit_tree > .placeholder.hint::before {
    content: "optional hint";
}
.in_edit_tree > .placeholder.answer::before {
    content: "optional answer";
}
.in_edit_tree > .placeholder.solution::before {
    content: "optional solution";
}

.group_description {
    font-size: 75%;
    font-color: #caa;
    font-style: italic;
}
[data-objecttype="theorem-like"] p {
    font-style: italic;
} 
[data-objecttype="theorem-like"] p ol {
    font-style: normal;
} 

.paragraph_input {
    width: 98%;
    min-height: 3em;
    border: 3px dashed #999;
}
.paragraph_input:focus {
    border: 1px solid #000;
    padding: 2px;
}
.edit_inline_math {
    font-family: "Inconsolata";
    margin-left: 0.5em;
    margin-right: 0.5em;
    background-color: #ddf;
}
#actively_editing em {
    background-color: #fdf;
}
#actively_editing q {
    background-color: #eef;
}
#actively_editing span {
    background-color: #dfd;
}
#actively_editing code {
    background-color: #ddd;
}
#actively_editing dfn {
    background-color: #fee;
}
.pretext-content section.may_enter > .heading {
    margin-top: 0;
}
.pretext-content #deleting {
    transition: all 0.5s;
    background: #666;
    height: 5em;
    margin-right: 20em;
    margin-left: 15em;
    font-size: 5%;
    box-shadow: -2px -1px 1px #770000;
}

.pretext-content #phantomobject.move {
    margin-left: 5em;
    margin-right: 2em;
    padding: 1.5em;
    box-shadow: 1em 0.7em rgba(180, 180, 180,0.96);
    margin-top: -1.5em;
    margin-bottom: -1.5em;
    z-index: 100;
    background: rgba(239, 223,256,0.9);
    font-size: 110%;
    font-style: italic;
/*
    background: #edf;
    opacity: 0.8;
*/
    position: relative;
}
.pretext-content #phantomobject.move + p {
    margin-top: 0;
}
.pretext-content #phantomobject.move .done {
    margin-left: 1em;
    margin-top: 0em;
/*
    float: right;
*/
}
.pretext-content #phantomobject.move .movearrow  {
    position: relative;
    z-index: 101;
    background: rgba(243, 225,256,1);
/*
    background: #edf;
    opacity: 1;
*/
}
.pretext-content #phantomobject.move .movearrow .arrow {
    font-size: 200%;
    margin-right: 0.6em;
    margin-top: -0.5em;
}
.pretext-content #phantomobject.move .movearrow p {
    margin-top: 0.4em;
}
.pretext-content #phantomobject.move .movearrow p.up {
    margin-top: 0;
    margin-bottom: -1em;
}
.pretext-content #phantomobject.move .movearrow p.down {
    margin-top: 0.0em;
}
.pretext-content #phantomobject.move .movearrow > * {
    display: inline-block;
}

.pretext-content .ref.tmp {
    background: #dfd;
}
.pretext-content .may_enter q {
    background: #ddf;
}
.pretext-content .may_enter abbr {
    background: #adf;
}

/* new editing css */
.pretext-content p.may_select {
    display: block !important;
}
.pretext-content .may_select {
    background: #fef;
    border: 2px solid #999;
}

.pretext-content .onepage.in_edit_tree,
.pretext-content .in_edit_tree .onepage {
    border: 6px double #600 !important;
    padding: 0.5em;
}


.pretext-content p.in_edit_tree,
.pretext-content section.in_edit_tree,
.pretext-content article.in_edit_tree {
    border: 3px solid #666 !important;
    padding: 0.5em;
}
.pretext-content .in_edit_tree p,
.pretext-content .in_edit_tree .displaymath,
.pretext-content .in_edit_tree section,
.pretext-content .in_edit_tree article {
    border: 3px solid blue !important;
    padding: 0.5em;
}
.pretext-content .in_edit_tree p {
    border: 3px solid #4a9 !important;
    background: #ffd;
    padding: 0.5em;
}
.pretext-content .in_edit_tree figcaption,
.pretext-content .in_edit_tree blockquote {
    border: 3px dotted #9a0 !important;
    background: #efd;
    padding: 0.5em;
}
.pretext-content .in_edit_tree img {
    border: 3px dotted #09a !important;
    background: #fbd;
    padding: 0.5em;
}
.pretext-content .in_edit_tree .displaymath,
.pretext-content .in_edit_tree figure {
    border: 3px solid #92a !important;
    background: #efe;
    padding: 0.5em;
}
.pretext-content .in_edit_tree * section,
.pretext-content .in_edit_tree * article {
    border: 3px solid green !important;
    padding: 0.5em;
}
.pretext-content .in_edit_tree * * p,
.pretext-content .in_edit_tree * * .displaymath,
.pretext-content .in_edit_tree * * section,
.pretext-content .in_edit_tree * * article {
    border: 3px dashed grey !important;
    padding: 0.5em;
}


.pretext-content .in_edit_tree .heading + p {
    display: block;
}
.pretext-content .in_edit_tree::before,
.pretext-content .in_edit_tree::after,
.pretext-content .in_edit_tree *::before,
.pretext-content .in_edit_tree *::after {
    all: reset;
}
