@charset "UTF-8";
/* O'Reilly Media, 2019 */
/* reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* end reset */
@page {
margin: 5px !important;
}
p {
margin: 10px 0 0;
line-height: 125%;
text-align: left;
}
/* author byline */
p.byline {
text-align: left;
margin: -33px auto 35px;
font-style: italic;
font-weight: bold;
}
/* author byline at end of preface */
div.preface p + p.byline { margin: 1em 0 0 !important; }
div.preface p.byline + p.byline { margin: 0 !important; }
/* author bylines after A-Head */
div.sect1 > p.byline { margin: -0.25em 0 1em; }
div.sect1 > p.byline + p.byline { margin-top: -1em; }
/* ----------------- inlines; code and monospace in the code section below ----------------- */
em {
font-style: italic;
font-family: inherit;
}
em strong, strong em {
font-weight: bold;
font-style: italic;
font-family: inherit;
}
strong, span.bold { font-weight: bold; }
em.replaceable { font-style: italic; }
strong.userinput {
font-weight: bold;
font-style: normal;
}
span.bolditalic {
font-weight: bold;
font-style: italic;
}
a.ulink, a.xref, a.email, a.link, a {
text-decoration: none;
color: #8e0012;
}
span.lineannotation {
font-style: italic;
color: #a62a2a;
font-family: serif;
}
span.underline { text-decoration: underline; }
span.strikethrough { text-decoration: line-through; }
span.smallcaps { font-variant: small-caps; }
span.cursor { background: #000; color: #ffffff; } /* for Learning GNU Emacs, 3e */
span.smaller { font-size: 75%; }
/* added for special formatting in Regular Expressions Cookbook, 1e (9780596802783.EBOOK) */
.boxedtext, .keycap {
border-style: solid;
border-width: 1px;
border-color: #000;
padding: 1px;
}
span.gray50 {
color: #7F7F7F; /* 50 % gray */
}
/* ----------------- headings ----------------- */
/* shared heading styles */
h1, div.toc-title, h2, h3, h4, h5 {
-webkit-hyphens: none;
hyphens: none;
adobe-hyphenate: none;
font-weight: bold;
text-align: left;
page-break-after: avoid !important;
font-family: sans-serif, "DejaVuSans";
}
div.toc-title {
font-size: 1.5em;
margin-top: 20px !important;
margin-bottom: 30px !important;
}
section[data-type="sect1"] h1 {
font-size: 1.3em;
color: #8e0012;
margin: 40px 0 8px 0;
}
section[data-type="sect2"] h2 {
font-size: 1.1em;
margin: 30px 0 8px 0 !important;
}
section[data-type="sect3"] h3 {
font-size: 1em;
color: #555;
margin: 20px 0px 8px 0px !important;
}
section[data-type="sect4"] h4 {
font-size: 1em;
font-weight: normal;
font-style: italic;
margin: 15px 0px 6px 0px !important;
}
section[data-type="chapter"] > div > h1,
section[data-type="preface"] > div > h1,
section[data-type="appendix"] > div > h1,
section[data-type="glossary"] > div > h1,
section[data-type="bibliography"] > div > h1,
section[data-type="index"] > div > h1 { /* larger chapter title */
font-size: 2em;
line-height: 1;
margin-bottom: 50px;
color: #000;
padding-bottom: 10px;
border-bottom: 1px solid #000;
}
span.label,
span.keep-together {
font-size: inherit;
font-weight: inherit;
}
/* ----------------- parts ----------------- */
div[data-type="part"] h1 {
font-size: 2em;
text-align: center;
margin-top: 0px !important;
margin-bottom: 50px;
padding: 50px 0 10px 0;
border-bottom: 1px solid #000;
}
/* ----------------- images ----------------- */
/* Use this class to set width to 90% */
img.width-ninety { width: 90% }
img {
max-width: 95%;
margin: 0 auto;
padding: 0;
}
div.figure {
background-color: transparent;
text-align: center !important;
margin: 15px 0px 15px 0px !important;
page-break-inside: avoid;
}
figure {
margin: 15px 0px 15px 0px !important;
page-break-inside: avoid;
}
div.figure h6,
figure h6,
figure figcaption {
font-size: 0.9rem !important;
text-align: center;
font-weight: normal !important;
font-style: italic;
font-family: serif !important;
text-transform: none !important;
letter-spacing: normal !important;
color: #000;
padding-top: 0.25em !important;
margin-top: 0 !important;
page-break-before: avoid;
}
div.informalfigure {
text-align: center !important;
padding: 5px 0 !important;
}
/* ----------------- sidebars ----------------- */
div.sidebar {
margin: 15px 0px 10px 0px !important;
border: 1px solid #DCDCDC;
background-color: #F7F7F7;
padding: 15px !important;
page-break-inside: avoid;
}
aside[data-type="sidebar"] {
margin: 15px 0px 10px 0px !important;
page-break-inside: avoid;
}
div.sidebar-title, aside[data-type="sidebar"] h5 {
font-weight: bold;
font-size: 1em;
font-family: sans-serif;
text-transform: uppercase;
letter-spacing: 1px;
text-align: center;
margin: 4px 0 6px 0 !important;
page-break-inside: avoid;
}
div.sidebar ol, div.sidebar ul,
aside[data-type="sidebar"] ol, aside[data-type="sidebar"] ul { margin-left: 1.25em !important; }
div.sidebar div.figure p.title,
aside[data-type="sidebar"] figcaption,
div.sidebar div.informalfigure div.caption {
font-size: 90%;
text-align: center;
font-weight: normal;
font-style: italic;
font-family: serif !important;
color: #000;
padding: 5px !important;
page-break-before: avoid;
page-break-after: avoid;
}
div.sidebar div.tip, div.sidebar div[data-type="tip"],
div.sidebar div.note, div.sidebar div[data-type="note"],
div.sidebar div.warning, div.sidebar div[data-type="warning"],
div.sidebar div[data-type="caution"],
div.sidebar div[data-type="important"] {
margin: 20px auto 20px auto !important;
font-size: 90%;
width: 85%;
}
/* author bylines in sidebars */
aside[data-type="sidebar"] p.byline {
font-size: 90%;
font-weight: bold;
font-style: italic;
text-align: center;
text-indent: 0;
margin: 5px auto 6px;
page-break-after: avoid;
}
/* ----------------- code ----------------- */
pre {
white-space: pre-wrap;
font-family: "Ubuntu Mono", monospace;
margin: 25px 0 25px 20px;
font-size: 85%;
display: block;
-webkit-hyphens: none;
hyphens: none;
adobe-hyphenate: none;
overflow-wrap: break-word;
}
div.note pre.programlisting, div.tip pre.programlisting,
div.warning pre.programlisting, div.caution pre.programlisting,
div.important pre.programlisting {
margin-bottom: 0;
}
code {
font-family: "Ubuntu Mono", monospace;
-webkit-hyphens: none;
hyphens: none;
adobe-hyphenate: none;
overflow-wrap: break-word;
}
code strong em,
code em strong,
pre em strong,
pre strong em,
strong code em code,
em code strong code,
span.bolditalic code { /* yes, all of these variations are needed */
font-weight: bold;
font-style: italic;
font-family: "Ubuntu Mono BoldItal", monospace;
}
code em,
em code,
pre em,
em.replaceable {
font-family: "Ubuntu Mono Ital", monospace;
font-style: italic;
}
code strong, strong code, pre strong, strong.userinput {
font-family: "Ubuntu Mono Bold", monospace;
font-weight: bold;
}
div[data-type="example"] {
margin: 10px 0 15px 0 !important;
}
div[data-type="example"] h1,
div[data-type="example"] h2,
div[data-type="example"] h3,
div[data-type="example"] h4,
div[data-type="example"] h5,
div[data-type="example"] h6 {
font-style: italic;
font-weight: normal;
text-align: left !important;
text-transform: none !important;
font-family: serif !important;
margin: 10px 0 5px 0 !important;
border-bottom: 1px solid #000;
}
li pre.example {
padding: 10px 0 !important;
}
div[data-type="example"] pre[data-type="programlisting"], div[data-type="example"] pre[data-type="screen"] { margin: 0; }
/* ----------------- title and copyright page ----------------- */
section[data-type="titlepage"] > div > h1 {
font-size: 2em;
margin: 50px 0 10px 0 !important;
line-height: 1;
text-align: center;
}
/* Styling for subtitle */
section[data-type="titlepage"] h2,
section[data-type="titlepage"] p.subtitle,
section[data-type="titlepage"] p[data-type="subtitle"] {
font-size: 1.3em;
font-weight: normal;
text-align: center;
margin-top: 0.5em;
color: #555;
}
section[data-type="titlepage"] > div > h2[data-type="author"],
section[data-type="titlepage"] p.author {
font-size: 1.3em;
font-family: serif !important;
font-weight: bold;
margin: 50px 0 !important;
text-align: center;
}
section[data-type="titlepage"] p.edition {
text-align: center;
text-transform: uppercase;
margin-top: 2em;
}
section[data-type="titlepage"] { text-align: center; }
section[data-type="titlepage"]:after {
content: url('css_assets/titlepage_footer_ebook.png');
margin: 0 auto;
max-width: 80%;
}
div.book div.titlepage div.publishername {
margin-top: 60%;
margin-bottom: 20px;
text-align: center;
font-size: 1.25em;
}
div.book div.titlepage div.locations p {
margin: 0;
text-align: center;
}
div.book div.titlepage div.locations p.cities {
font-size: 80%;
text-align: center;
margin-top: 5px;
}
section.preface[title="Dedication"] > div.titlepage h2.title {
text-align: center;
text-transform: uppercase;
font-size: 1.5em;
margin-top: 50px;
margin-bottom: 50px;
}
ul.stafflist { margin: 15px 0 15px 20px !important; }
ul.stafflist li {
list-style-type: none;
padding: 5px 0;
}
ul.printings li { list-style-type: none; }
section.preface[title="Dedication"] p {
font-style: italic;
text-align: center;
}
div.colophon h1.title {
font-size: 1.3em;
margin: 0 !important;
font-family: serif !important;
font-weight: normal;
}
div.colophon h2.subtitle {
margin: 0 !important;
color: #000;
font-family: serif !important;
font-size: 1em;
font-weight: normal;
}
div.colophon div.author h3.author {
font-size: 1.1em;
font-family: serif !important;
margin: 10px 0 0 !important;
font-weight: normal;
}
div.colophon div.editor h4, div.colophon div.editor h3.editor {
color: #000;
font-size: 0.8em;
margin: 15px 0 0 !important;
font-family: serif !important;
font-weight: normal;
}
div.colophon div.editor h3.editor {
font-size: 0.8em;
margin: 0 !important;
font-family: serif !important;
font-weight: normal;
}
div.colophon div.publisher {
margin-top: 10px;
}
div.colophon div.publisher p,
div.colophon div.publisher span.publishername {
margin: 0;
font-size: 0.8em;
}
div.legalnotice p, div.timestamp p {
font-size: 0.8em;
}
div.timestamp p {
margin-top: 10px;
}
div.colophon[title="About the Author"] h1.title, div.colophon[title="Colophon"] h1.title {
font-size: 1.5em;
margin: 0 !important;
font-family: sans-serif !important;
}
/* ----------------- epigraphs, blockquotes, attributions ----------------- */
section.chapter div.titlepage div.author {
margin: 10px 0 10px 0;
}
section.chapter div.titlepage div.author div.affiliation {
font-style: italic;
}
div.attribution {
margin: 5px 0 0 50px !important;
}
h3.author span.orgname { display: none; } /* to work around bug */
div.epigraph {
margin: 10px 0 10px 20px !important;
page-break-inside: avoid;
font-size: 90%;
}
div.epigraph p {
font-style: italic;
}
blockquote, div.blockquote {
margin: 10px !important;
page-break-inside: avoid;
font-size: 95%;
}
blockquote p, div.blockquote p {
font-style: italic;
margin: 0.75em 0 0 !important;
}
blockquote div.attribution,
blockquote p[data-type="attribution"] {
margin: 5px 0 10px 30px !important;
text-align: right;
width: 80%;
}
blockquote div.attribution p,
blockquote p[data-type="attribution"] {
font-style: normal;
margin-top: 5px;
}
blockquote div.attribution p:before,
blockquote p[data-type="attribution"]:before {
font-style: normal;
content: "\2014";
-webkit-hyphens: none;
hyphens: none;
adobe-hyphenate: none;
}
p.right {
text-align: right;
margin: 0;
}
/* ----------------- footnotes ----------------- */
div[data-type="footnotes"] {
border-top: 1px solid black;
margin-top: 2em;
}
sub, sup {
font-size: 75%;
line-height: 0;
position: relative;
}
sup { top: -0.5em; }
sub { bottom: -0.25em; }
p[data-type="footnote"] {
font-size: 90% !important;
line-height: 1.2em !important;
margin-left: 2.5em !important;
text-indent: -2.3em !important;
}
p[data-type="footnote"] sup {
display: inline-block !important;
position: static !important;
width: 2em !important;
text-align: right !important;
font-size: 100% !important;
padding-right: 0.5em !important;
}
p[data-type="footnote"] a[href$="-marker"] {
font-family: sans-serif !important;
font-size: 90% !important;
color: #8e0012 !important;
}
/* Special handling to account for Platform number (in footnote) spacing issue */
p[data-type="footnote"] a[data-type="xref"] {
margin: 0 !important;
padding: 0 !important;
text-indent: 0 !important;
}
a[data-type="noteref"] {
font-family: sans-serif !important;
color: #8e0012;
margin-left: 0;
padding-left: 0;
}
/*----------handling for reference sections----------*/
div.refentry p.refname {
font-size: 1em;
font-family: sans-serif, "DejaVuSans";
font-weight: bold;
margin-bottom: 5px;
overflow: auto;
width: 100%;
}
div.refentry {
width: 100%;
display: block;
margin-top: 2em;
}
div.refsynopsisdiv { display: block; clear: both; }
div.refentry header {
page-break-inside: avoid !important;
display: block;
break-inside: avoid !important;
padding-top: 0;
border-bottom: 1px solid #000;
}
div.refsect1 h6 {
font-size: 0.9em;
font-family: sans-serif, "DejaVuSans";
font-weight: bold;
}
div.refsect1 {margin-top: 3em;}
/* ----------------- lists ----------------- */
dt {
padding-top: 10px !important;
padding-bottom: 0 !important;
line-height: 1.25rem;
font-style: italic;
}
dd {
margin-left: 1.5em !important;
margin-bottom: 0.25em;
}
dd ol,
dd ul { padding-left: 1em; }
dd li { margin-top: 0; margin-bottom: 0; }
dd, li { text-align: left; }
ul,
ul > li,
ol ul,
ol ul > li,
ul ol ul,
ul ol ul > li { list-style-type: disc; }
ul ul,
ul ul > li { list-style-type: square; }
ul ul ul,
ul ul ul > li { list-style-type: circle; }
ol,
ol > li,
ol ul ol,
ol ul ol > li,
ul ol,
ul ol > li { list-style-type: decimal; }
ol ol,
ol ol > li { list-style-type: lower-alpha; }
ol ol ol,
ol ol ol > li { list-style-type: lower-roman; }
ol, ul {
list-style-position: outside;
margin: 15px 0 15px 1.25em;
padding-left: 2.25em;
}
ol li, ul li {
margin: .5em 0 .65em;
line-height: 125%;
}
div.orderedlistalpha { list-style-type: upper-alpha; }
table.simplelist, /* table for legacy titles */
ul.simplelist { margin: 15px 0 15px 20px !important; }
ul.simplelist li {
list-style-type: none;
padding: 5px 0;
}
table.simplelist td { border: none; }
table.simplelist tr {
border-bottom: none;
}
table.simplelist tr:nth-of-type(even) {
background-color: transparent;
}
dl.calloutlist p:first-child {
margin-top: -25px !important;
}
dl.calloutlist dd {
padding-left: 0;
margin-top: -25px;
}
dl.calloutlist img,
a.co img { padding: 0; }
/* ----------------- html toc ----------------- */
div.toc ol {
margin-top: 8px !important;
margin-bottom: 8px !important;
margin-left: 0px !important;
padding-left: 0px !important;
}
div.toc ol ol {
margin-left: 30px !important;
padding-left: 0px !important;
}
div.toc ol li {
list-style-type: none;
}
div.toc a {
color: #8e0012;
}
div.toc ol a {
font-size: 1em;
font-weight: bold;
}
div.toc ol > li > ol a {
font-weight: bold;
font-size: 1em;
}
div.toc ol > li > ol > li > ol a {
text-decoration: none;
font-weight: normal;
font-size: 1em;
}
/* ----------------- admonitions ----------------- */
div.tip,
div[data-type="tip"],
div.note,
div[data-type="note"],
div.warning,
div[data-type="warning"],
div[data-type="caution"],
div[data-type="important"] {
margin: 30px !important;
font-size: 90%;
padding: 10px 8px 20px 8px !important;
page-break-inside: avoid;
}
div.tip ol, div.tip ul,
div[data-type="tip"] ol, div[data-type="tip"] ul,
div.note ol, div.note ul,
div[data-type="note"] ol, div[data-type="note"] ul,
div.warning ol, div.warning ul,
div[data-type="warning"] ol, div[data-type="warning"] ul,
div[data-type="caution"] ol, div[data-type="caution"] ul,
div[data-type="important"] ol, div[data-type="important"] ul { margin-left: 1.5em !important; }
div.tip,
div[data-type="tip"],
div.note,
div[data-type="note"] {
border: 1px solid #BEBEBE;
background-color: transparent;
}
div.warning,
div[data-type="warning"],
div[data-type="caution"],
div[data-type="important"] {
border: 1px solid #BC8F8F;
}
div.tip h3,
div[data-type="tip"] h6,
div[data-type="tip"] h1,
div.note h3,
div[data-type="note"] h6,
div[data-type="note"] h1,
div.warning h3,
div[data-type="warning"] h6,
div[data-type="warning"] h1,
div[data-type="caution"] h6,
div[data-type="caution"] h1,
div[data-type="important"] h1,
div[data-type="important"] h6 {
font-weight: bold;
font-size: 110%;
font-family: sans-serif !important;
text-transform: uppercase;
letter-spacing: 1px;
text-align: center;
margin: 4px 0 6px !important;
}
div[data-type="tip"] figure h6,
div[data-type="note"] figure h6,
div[data-type="warning"] figure h6,
div[data-type="caution"] figure h6,
div[data-type="important"] figure h6 { font-family: serif !important; }
div.tip h3,
div[data-type="tip"] h6,
div.note h3,
div[data-type="note"] h6,
div[data-type="tip"] h1,
div[data-type="note"] h1 {
color: #737373;
}
div.warning h3,
div[data-type="warning"] h6,
div[data-type="caution"] h6,
div[data-type="important"] h6,
div[data-type="warning"] h1,
div[data-type="caution"] h1,
div[data-type="important"] h1 {
color: #C67171;
}
div.sect1[title="SafariĀ® Books Online"] div.note,
div.safarienabled {
background-color: transparent;
margin: 8px 0 0 !important;
border: 0px solid #BEBEBE;
font-size: 100%;
padding: 0px !important;
page-break-inside: avoid;
}
div.sect1[title="SafariĀ® Books Online"] div.note h3,
div.safarienabled h6 {
display: none;
}
/* ----------------- tables ----------------- */
div.table, table {
margin: 15px 0 30px 0 !important;
max-width: 95%;
border: none !important;
background: none;
display: table !important;
}
div.table, div.informaltable, table {
page-break-inside: avoid;
}
table li { margin: 10px 0 0 0.25em !important; }
tr,
tr td {
border-bottom: 1px solid #c3c3c3;
}
thead td,
thead th {
border-bottom: #9d9d9d 1px solid !important;
border-top: #9d9d9d 1px solid !important;
}
tr:nth-of-type(even) {
background-color: #f1f6fc;
}
thead {
font-family: sans-serif;
font-weight: bold;
}
td,
th {
display: table-cell;
padding: 0.3em;
text-align: left;
vertical-align: top;
font-size: 80%;
}
th { vertical-align: bottom; }
div.informaltable table {
margin: 10px auto !important;
}
div.informaltable table tr {
border-bottom: none;
}
div.informaltable table tr:nth-of-type(even) {
background-color: transparent;
}
div.informaltable td, div.informaltable th {
border: #9d9d9d 1px solid;
}
div.table-title,
table caption {
font-weight: normal;
font-style: italic;
font-family: serif;
font-size: 1em;
margin: 10px 0 10px 0 !important;
padding: 0;
page-break-after: avoid;
text-align: left !important;
}
table code {
font-size: smaller;
word-break: break-all;
}
table.border td { border-bottom: 0.25pt solid rgb-icc(#Grayscale, 0); }
table.border tbody > tr:last-child > td { border-bottom: transparent; }
/* ----------------- Equations ----------------- */
div.equation,
div[data-type="equation"] {
margin: 10px 0 15px 0 !important;
}
div.equation-title,
div[data-type="equation"] h5 {
font-style: italic;
font-weight: normal;
font-family: serif !important;
font-size: 90%;
margin: 20px 0 10px 0 !important;
page-break-after: avoid;
}
div.equation-contents {
margin-left: 20px;
}
/* Handling to allow true equations to resize based on screen width (STYL-1022) */
div[data-type="equation"] math { font-size: calc(0.35em + 1vw); }
/* ----------------- inline images and math images used fallbacks from MathML ----------------- */
span.inlinemediaobject { /* for iBooks, which overrides height and width on img, per the specs */
height: 0.85em;
display: inline-block;
margin-bottom: 0.2em;
}
span.inlinemediaobject img {
margin: 0;
height: 0.85em;
}
div.informalequation {
margin: 20px 0 20px 20px;
width: 75%;
}
div.informalequation img {
width: 75%;
}
/* ----------------- index ----------------- */
div.index {
text-indent: 0;
}
div.index h3 {
padding: 0.25em;
margin-top: 1em !important;
background-color: #F0F0F0;
}
div.index li {
line-height: 130%;
list-style-type: none;
}
div.index a.indexterm {
color: #8e0012 !important;
}
div.index ul {
margin-left: 0 !important;
padding-left: 0 !important;
}
div.index ul ul {
margin-left: 2em !important;
margin-top: 0 !important;
}
/* ----------------- syntax highlighting and coloring text in general ----------------- */
/* legacy stuff */
code.boolean, .navy {
color: rgb(0,0,128); /* navy */
}
code.character, .olive {
color: rgb(128,128,0); /* olive */
}
code.comment, .blue {
color: rgb(0,0,255); /* blue */
}
code.conditional, .limegreen {
color: rgb(50,205,50); /* limegreen */
}
code.constant, .darkorange {
color: rgb(255,140,0); /* darkorange */
}
code.debug, .darkred {
color: rgb(139,0,0); /* darkred */
}
code.define, .darkgoldenrod, .gold {
color: rgb(184,134,11); /* darkgoldenrod */
}
code.delimiter, .dimgray {
color: rgb(105,105,105); /* dimgray */
}
code.error, .red {
color: rgb(255,0,0); /* red */
}
code.exception, .salmon {
color: rgb(250,128,11); /* salmon */
}
code.float, .steelblue {
color: rgb(70,130,180); /* steelblue */
}
pre code.function, .green {
color: rgb(0,128,0); /* green */
}
code.identifier, .royalblue {
color: rgb(65,105,225); /* royalblue */
}
code.ignore, .gray {
color: rgb(128,128,128); /* gray */
}
code.include, .purple {
color: rgb(128,0,128); /* purple */
}
code.keyword, .sienna {
color: rgb(160,82,45); /* sienna */
}
code.label, .deeppink {
color: rgb(255,20,147); /* deeppink */
}
code.macro, .orangered {
color: rgb(255,69,0); /* orangered */
}
code.number, .brown {
color: rgb(165,42,42); /* brown */
}
code.operator, .black {
color: #000; /* black */
}
code.preCondit, .teal {
color: rgb(0,128,128); /* teal */
}
code.preProc, .fuschia {
color: rgb(255,0,255); /* fuschia */
}
code.repeat, .indigo {
color: rgb(75,0,130); /* indigo */
}
code.special, .saddlebrown {
color: rgb(139,69,19); /* saddlebrown */
}
code.specialchar, .magenta {
color: rgb(255,0,255); /* magenta */
}
code.specialcomment, .seagreen {
color: rgb(46,139,87); /* seagreen */
}
code.statement, .forestgreen {
color: rgb(34,139,34); /* forestgreen */
}
code.storageclass, .plum {
color: rgb(221,160,221); /* plum */
}
code.string, .darkred {
color: rgb(139,0,0); /* darkred */
}
code.structure, .chocolate {
color: rgb(210,106,30); /* chocolate */
}
code.tag, .darkcyan {
color: rgb(0,139,139); /* darkcyan */
}
code.todo, .black {
color: #000; /* black */
}
code.type, .mediumslateblue {
color: rgb(123,104,238); /* mediumslateblue */
}
code.typedef, .darkgreen {
color: rgb(0,100,0); /* darkgreen */
}
code.underlined {
text-decoration: underline; /* guess what */
}
/* 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 */
/* Special handling for sampler TOC entry rendering */
div.blockquote_sampler_toc {
width: 95%;
margin: 5px 5px 5px 10px !important;
}
/* keep this body statement last before custom placeholder */
body {
font-family: serif;
text-align: left;
}
/* Customizations for specific titles */
/* added for special formatting in Bioinformatics Programming Using Python, 1e (9781449378677.EBOOK) */
.gray-background, .reverse-video {
background: #2E2E2E;
color: #FFF;
}
/* added for special formatting in Working with Microsoft Visual Studio 2005, 1e (9780735649958.EBOOK) */
.light-gray-background {
background: #A0A0A0;
}
/* preserve whitespace in non-pre elements */
/* Used for special formatting in Using SQLite (9781449394042.EBOOK), which needs verbatim space preserved in a
or content to break (if too long) (STYL-1061) */
pre.break-code,
code.break-code,
.break-code pre,
.break-code code { word-break: break-all; }
/* Added for DOM Enlightenment 9781449342845 */
span.gray { color: #4C4C4C; }
/* Custom widths */
.width-10,
figure.width-10 img { width: 10% !important; }
.width-20,
figure.width-20 img { width: 20% !important; }
.width-30,
figure.width-30 img { width: 30% !important; }
.width-40,
figure.width-40 img { width: 40% !important; }
.width-50,
figure.width-50 img { width: 50% !important; }
.width-60,
figure.width-60 img { width: 60% !important; }
.width-70,
figure.width-70 img { width: 70% !important; }
.width-80,
figure.width-80 img { width: 80% !important; }
.width-90,
figure.width-90 img { width: 90% !important; }
.width-full,
.width-100 { width: 100% !important; }
/* ----------------- Platform-specific overrides ----------------- */
.sc { text-transform: none !important; }
.right { float: none !important; }
/* Fix xref spacing (STYL-1238) */
a.totri-footnote { padding: 0 !important; }
/* Adjust figure widths without affecting captions (STYL-1238) */
figure.width-10,
figure.width-20,
figure.width-30,
figure.width-40,
figure.width-50,
figure.width-60,
figure.width-70,
figure.width-80,
figure.width-90 { width: auto !important; }
/* Placeholder for custom series CSS: DO NOT EDIT OR DELETE */
/* fonts (keep at bottom); using DejaVu Serif and Sans as a fallback for its rich set of glyphs */
@font-face {
font-family: "Ubuntu Mono";
font-weight: normal;
font-style: normal;
src: url(UbuntuMono-Regular.otf);
}
@font-face {
font-family: "Ubuntu Mono Bold";
font-style: normal;
font-weight: bold;
src: url(UbuntuMono-Bold.otf);
}
@font-face {
font-family: "Ubuntu Mono BoldItal";
font-weight: bold;
font-style: italic;
src: url(UbuntuMono-BoldItalic.otf);
}
@font-face {
font-family: "Ubuntu Mono Ital";
font-weight: normal;
font-style: italic;
src: url(UbuntuMono-Italic.otf);
}