/* general blocks */ p, dd { /* general text styles */ font-family: sans-serif; text-indent: 20px; font-size: 1em; line-height: 125%; } section[data-type="preface"] > h1 + p, div[data-type="part"] > h1 + p, section[data-type="chapter"] > h1 + p, section[data-type="chapter"] > h1 + div.author p, section[data-type="sect1"] > h1 + p, section[data-type="sect2"] > h2 + p, section[data-type="sect3"] > h3 + p { text-indent: 0px; /* first paragraph following a heading has no indent */ } /* general inlines */ p a { display: inline; } /* frontmatter */ section[data-type="titlepage"] h1 { font-family: serif; } section[data-type="titlepage"] h2, section[data-type="copyright-page"] h1 { font-family: sans-serif; } section[data-type="halftitlepage"] { display: none; } section[data-type="titlepage"] { text-align: left; page-break-after: always; } section[data-type="titlepage"] h1 { border-bottom: 1px solid #333; margin-top: 100px; padding-bottom: 10px; } section[data-type="titlepage"] h1 { font-size: 2em; line-height: 120%; } section[data-type="titlepage"] h2 { font-size: 1.2em; line-height: 120%; margin-top: 20px; } /* styling and positioning for author names and other text */ section[data-type="titlepage"] p:first-of-type { margin-top: 82pt; } section[data-type="titlepage"] p { font-family: sans-serif; font-size: 13pt; line-height: 16pt; margin-top: 0pt; margin-bottom: 0pt; float: none; text-indent: 0; } /* copyright page */ section[data-type="copyright-page"] { margin-top: 100px; page-break-after: always; } section[data-type="copyright-page"] h1 { font-size: 0.8em; } section[data-type="copyright-page"] p { font-family: sans-serif; font-size: 0.8em; margin: 0; text-indent: 0; } /* dedication */ section[data-type="dedication"] { font-family: serif; font-style: italic; page-break-after: always; text-align: center; padding-top: 100px; } /* table of contents */ /* global styles for the table of contents */ /* table of contents is a series of nested lists in a nav element */ nav[data-type="toc"] a { /* all table of contents entries are also links */ font-style: normal; } nav[data-type="toc"] li { /* no list marker on table of contents entries */ list-style-type: none; } nav[data-type="toc"] > h1 { /* table of contents heading */ font-size: 1.5em; line-height: 120%; margin-top: 80px; margin-bottom: 50px; text-align: center; } /* defining fonts for the table of contents */ nav[data-type="toc"] a { text-decoration: none; } nav[data-type="toc"] li { font-family: sans-serif; } nav[data-type="toc"] li[data-type="chapter"], nav[data-type="toc"] li[data-type="part"], nav[data-type="toc"] li[data-type="appendix"] { font-size: 1em; line-height: 120%; margin-left: 0; text-indent: 0; } /* entries for parts in the table of contents */ nav[data-type="toc"] li[data-type="part"] { margin-top: 25px; } nav[data-type="toc"] li[data-type="part"] > a { border-bottom: 1px solid #333; width: 100%; display: inline-block; } nav[data-type="toc"] li[data-type="part"] ol { margin-left: 0; text-indent: 0; } /* entries for chapters and appendixes in the table of contents */ nav[data-type="toc"] li[data-type="chapter"] { margin-top: 20px; } nav[data-type="toc"] li[data-type="chapter"]:last-of-type, nav[data-type="toc"] li[data-type="appendix"] { margin-bottom: 20px; } /* entries for sub-sections */ nav[data-type="toc"] li[data-type="chapter"] ol { font-family: sans-serif; font-size: 1em; line-height: 120%; margin-left: 20px; text-indent: -10px; } nav[data-type="toc"] li[data-type="chapter"] ol ol { margin-left: 10px; text-indent: -10px; } /* front and backmatter in the table of contents */ nav[data-type="toc"] li[data-type="preface"], nav[data-type="toc"] li[data-type="foreword"], nav[data-type="toc"] li[data-type="glossary"], nav[data-type="toc"] li[data-type="index"] { font-size: 1em; line-height: 120%; } nav[data-type="toc"] li[data-type="preface"] ol, nav[data-type="toc"] li[data-type="foreword"] ol { display: none; } /* page breaks after all chapter-level sections */ section[data-type="preface"], div[data-type="part"], section[data-type="chapter"], section[data-type="appendix"] { page-break-after: always; } /* preface, chapter, and appendix headings */ /* heading font is sans serif */ nav[data-type="toc"] > h1, div[data-type="part"] > h1, section[data-type="preface"] > h1, section[data-type="chapter"] > h1, section[data-type="appendix"] > h1, section[data-type="sect1"] h1 { font-family: serif; line-height: 120%; } section[data-type="sect2"] h2, section[data-type="sect3"] h3 { font-family: sans-serif; line-height: 120%; } /* shared styles for all chapter-level headings */ section[data-type="preface"] > h1, section[data-type="chapter"] > h1, section[data-type="appendix"] > h1 { font-size: 1.8em; margin-top: 70px; margin-bottom: 40px; text-align: left; } /* section headings */ section[data-type="sect1"] h1 { /* A-level headings */ font-size: 1.5em; margin-top: 40px; margin-bottom: 20px; } section[data-type="sect2"] h2 { /* B-level headings */ font-size: 1.1em; margin-top: 30px; margin-bottom: 10px; } section[data-type="sect3"] h3 { /* C-level headings */ font-size: 1.1em; margin-top: 20px; margin-bottom: 10px; } /* parts */ div[data-type="part"] > h1 { font-size: 1.8em; text-align: center; margin-top: 100px; margin-bottom: 70px; } /* lists */ ul, ol { /* bulleted and numbered lists */ margin: 10px 0 10px 0; } ul li, ol li, ul li p, ol li p { font-family: sans-serif; font-size: 1em; line-height: 120%; margin-top: 5px; text-indent: 0; } dl { /* definition lists */ margin-bottom: 15px; } dt { /* definition list terms */ font-family: sans-serif; font-size: 0.9em; line-height: 120%; margin-top: 15px; margin-bottom: 4px; } dd { /* definition list descriptions */ text-indent: 0; margin-left: 20px; } dd p { text-indent: 0; } /* tables */ table { margin-top: 30px; margin-bottom: 30px; border-bottom: 1px solid #888; border-collapse: collapse; } table caption { font-family: sans-serif; font-size: 0.8em; line-height: 120%; text-align: left; margin: 0 0 20px 0; padding: 0; } tr { border-width: 0px; } th { /* table heading rows */ font-family: sans-serif; font-size: 0.8em; line-height: 120%; text-align: left; margin-top: 0; border-top: 1px solid #888; border-bottom: 1px solid #888; } th, td { padding: 6px; } td, table p { /* table body text */ font-family: sans-serif; font-size: 12px; line-height: 120%; } table p { /* table body text */ text-indent: 0; margin-top: 6px; } td pre.programlisting, td pre.screen, td pre.literallayout, td code { /* allow code in tables to wrap */ white-space: pre-wrap; word-wrap: break-word; } /* figures */ figure { /* figure containers */ margin-top: 30px; margin-bottom: 30px; padding: 0; display: block; page-break-inside: avoid; } figure img { /* figure images */ border-top: 1px solid #888; border-bottom: 1px solid #888; padding: 5px 0 5px 0; max-width: 100%; margin: 0; } figcaption { font-family: serif; font-size: 0.8em; font-style: italic; line-height: 120%; display: block; } /* sidebars */ aside { /* sidebar containers */ background-color: #d8d8d8; border: 1px solid #d8d8d8; padding: 20px 20px 10px 20px; margin: 30px 0 30px 0; } aside h5 { /* sidebar titles */ font-family: sans-serif; font-size: 1em; line-height: 120%; text-align: center; margin: 0; padding: 0; } aside h6 { /* sidebar subtitles */ font-family: sans-serif; font-weight: bold; font-size: 0.9em; line-height: 120%; } aside p { /* sidebar text */ font-family: serif; font-size: 0.9em; line-height: 130%; text-indent: 0; margin-top: 6px; } /* admonitions */ div[data-type="note"], div[data-type="warning"] { /* admonition containers */ border-top: 2px solid #888; border-bottom: 1px solid #d8d8d8; padding: 10px 0; margin: 30px 30px 30px 30px; page-break-inside: avoid; /* avoid breaking admonitions across pages */ } div[data-type="note"] h1, div[data-type="warning"] h1 { /* admonition titles */ color: #000; font-family: sans-serif; font-weight: bold; font-size: 0.8em; text-transform: uppercase; text-align: center; margin: 4px 0; padding: 0; } div[data-type="note"] p, div[data-type="warning"] p { /* admonition text */ font-family: serif; font-size: 0.8em; line-height: 120%; text-indent: 0in; } /* code */ pre, code { /* monospace font for both code blocks and inline code */ font-family: monospace; } pre { /* code blocks */ font-size: 0.9em; line-height: 120%; margin: 10px; } code { /* inline code */ font-size: 0.9em; line-height: 120%; } table pre { /* code blocks within tables */ text-indent: 0; } div[data-type="note"] code, div[data-type="warning"] code, aside code, table code { /* inline code within notes, sidebars and tables */ font-size: inherit; line-height: inherit; } div[data-type="example"] h5 { /* titles for formal code examples */ font-family: sans-serif; font-size: 0.8em; line-height: 120%; border-bottom: 1px solid #d8d8d8; padding-bottom: 6px; margin-top: 30px; } /* blockquote */ blockquote { font-family: sans-serif; font-size: 0.8em; line-height: 130%; margin-left: 30px; margin-right: 30px; } blockquote p { text-indent: 0; } /* Syntax Highlighting */ /* Pygments with manni theme */ pre code.hll { background-color: #ffffcc } pre code.c { color: #0099FF; font-style: italic } /* Comment */ pre code.err { color: #AA0000 } /* Error */ pre code.k { color: #006699; font-weight: bold } /* Keyword */ pre code.o { color: #555555 } /* Operator */ pre code.cm { color: #35586C; font-style: italic } /* Comment.Multiline */ pre code.cp { color: #009999 } /* Comment.Preproc */ pre code.c1 { color: #35586C; font-style: italic } /* Comment.Single */ pre code.cs { color: #35586C; font-weight: bold; font-style: italic } /* Comment.Special */ pre code.gd { background-color: #FFCCCC } /* Generic.Deleted */ pre code.ge { font-style: italic } /* Generic.Emph */ pre code.gr { color: #FF0000 } /* Generic.Error */ pre code.gh { color: #003300; font-weight: bold } /* Generic.Heading */ pre code.gi { background-color: #CCFFCC } /* Generic.Inserted */ /* Overriding default manni style of #AAAAAA gray for Generic Output with #000000 black, which is better suited to ORM terminal output */ pre code.go { color: #000000 } /* Generic.Output */ pre code.gp { color: #000099; font-weight: bold } /* Generic.Prompt */ pre code.gs { font-weight: bold } /* Generic.Strong */ pre code.gu { color: #003300; font-weight: bold } /* Generic.Subheading */ pre code.gt { color: #99CC66 } /* Generic.Traceback */ pre code.kc { color: #006699; font-weight: bold } /* Keyword.Constant */ pre code.kd { color: #006699; font-weight: bold } /* Keyword.Declaration */ pre code.kn { color: #006699; font-weight: bold } /* Keyword.Namespace */ pre code.kp { color: #006699 } /* Keyword.Pseudo */ pre code.kr { color: #006699; font-weight: bold } /* Keyword.Reserved */ pre code.kt { color: #007788; font-weight: bold } /* Keyword.Type */ pre code.m { color: #FF6600 } /* Literal.Number */ pre code.s { color: #CC3300 } /* Literal.String */ pre code.na { color: #330099 } /* Name.Attribute */ pre code.nb { color: #336666 } /* Name.Builtin */ pre code.nc { color: #00AA88; font-weight: bold } /* Name.Class */ pre code.no { color: #336600 } /* Name.Constant */ pre code.nd { color: #9999FF } /* Name.Decorator */ pre code.ni { color: #999999; font-weight: bold } /* Name.Entity */ pre code.ne { color: #CC0000; font-weight: bold } /* Name.Exception */ pre code.nf { color: #CC00FF } /* Name.Function */ pre code.nl { color: #9999FF } /* Name.Label */ pre code.nn { color: #00CCFF; font-weight: bold } /* Name.Namespace */ pre code.nt { color: #330099; font-weight: bold } /* Name.Tag */ pre code.nv { color: #003333 } /* Name.Variable */ pre code.ow { color: #000000; font-weight: bold } /* Operator.Word */ pre code.w { color: #bbbbbb } /* Text.Whitespace */ pre code.mf { color: #FF6600 } /* Literal.Number.Float */ pre code.mh { color: #FF6600 } /* Literal.Number.Hex */ pre code.mi { color: #FF6600 } /* Literal.Number.Integer */ pre code.mo { color: #FF6600 } /* Literal.Number.Oct */ pre code.sb { color: #CC3300 } /* Literal.String.Backtick */ pre code.sc { color: #CC3300 } /* Literal.String.Char */ pre code.sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */ pre code.s2 { color: #CC3300 } /* Literal.String.Double */ pre code.se { color: #CC3300; font-weight: bold } /* Literal.String.Escape */ pre code.sh { color: #CC3300 } /* Literal.String.Heredoc */ pre code.si { color: #AA0000 } /* Literal.String.Interpol */ pre code.sx { color: #CC3300 } /* Literal.String.Other */ pre code.sr { color: #33AAAA } /* Literal.String.Regex */ pre code.s1 { color: #CC3300 } /* Literal.String.Single */ /* Overriding manni default yellow #FFCC33 with brown #AA6600, which is easier to read */ pre code.ss { color: #AA6600 } /* Literal.String.Symbol */ pre code.bp { color: #336666 } /* Name.Builtin.Pseudo */ pre code.vc { color: #003333 } /* Name.Variable.Class */ pre code.vg { color: #003333 } /* Name.Variable.Global */ pre code.vi { color: #003333 } /* Name.Variable.Instance */ pre code.il { color: #FF6600 } /* Literal.Number.Integer.Long */ /* Sanders's additions to manni */ pre code.g { color: #005500 } /* Generic */ pre code.l { color: #CC6600 } /* Literal */ pre code.l { color: #FF9900 } /* Literal.Date */ pre code.n { color: #000088 } /* Name */ pre code.nx { color: #000088 } /* Name.Other */ pre code.py { color: #9966FF } /* Name.Property */ pre code.p { color: #000000 } /* Punctuation */ pre code.x { color: #FF0066 } /* Other */ /* Add your custom CSS styles for the EPUB here */