/* Google fonts are self-hosted so that there is no delay due to unavailable network or firewalls within the @import tag, not just for loading the font itself, which is resolvable with "font-display: swap", but for the css import itself, which may still delay for a network timeout period before allowing the page to load, particularly for static file documentation downloads. Google does not offer stable font URLs. Source: https://fonts.googleapis.com/css?family=Libre+Franklin:400,700 */ @font-face { font-family: "Libre Franklin"; font-style: normal; font-weight: 400; font-display: swap; src: url(https://www.sqlalchemy.org/fonts/google_libre_franklin_400.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: "Libre Franklin"; font-style: normal; font-weight: 700; font-display: swap; src: url(https://www.sqlalchemy.org/fonts/google_libre_franklin_700.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* global */ .body-background { background-color: #ffffff; } body { background-color: #ffffff; margin: 0 38px; color: #110000; } blockquote { margin-right: inherit; } a { font-weight: normal; text-decoration: none; } form { display: inline; } label > input { margin: 10px 0px; } /* hyperlinks */ a:link, a:visited, a:active { color: #BB0000; } a:hover { color: #FF0000; text-decoration: underline; } /* paragraph links after sections. These aren't visible until hovering over the <h> tag, then have a "reverse video" effect over the actual link */ a.headerlink { font-size: 0.8em; padding: 0 4px 0 4px; text-decoration: none; visibility: hidden; } *:hover > a.headerlink { visibility: visible; } a.headerlink:hover { background-color: #00f; /*background-color: #990000;*/ color: white; } /* Container setup */ #docs-container { max-width: 100em; margin: 0 auto; position: relative; font-size: 120%; line-height: 1.4em; } /* header/footer elements */ #docs-header { font-family: "Libre Franklin", sans-serif; font-size: 0.9em; position: relative; background-color: #ebebee; border: none; height: 75px; display: flex; align-items: center; } #docs-header h1 { font-size: 20px; color: #222222; margin-left: 10px; } #docs-sidebar-popout, #docs-bottom-navigation, #index-nav, #narrow-index-nav { font-family: "Libre Franklin", Verdana, sans-serif; background-color: #fbfbee; border: none; font-size: 0.8em; } #docs-bottom-navigation, #index-nav { padding: 10px; } #docs-version-header { position: absolute; right: 8px; bottom: 8px; } .docs-navigation-links { font-family: "Libre Franklin", sans-serif; } #docs-bottom-navigation { margin: 0 0 0 0; } #docs-bottom-navigation.withsidebar { margin-left: 360px; } #docs-copyright { font-size: 0.85em; padding: 5px 0px; } #docs-header h1, #docs-narrow-top-navigation h1, #docs-narrow-top-navigation h2 { font-family: "Libre Franklin", Arial, sans-serif; font-weight: normal; } #docs-top-page-control { position: absolute; right: 20px; bottom: 14px; } #docs-top-page-control ul { padding: 0; margin: 0; } #docs-top-page-control li { font-size: 0.9em; list-style-type: none; padding: 1px 8px; } #docs-container .version-num { font-weight: bold; } /* content container, sidebar */ #docs-body-container { position: relative; } #docs-body, #index-nav { font-family: "Libre Franklin", sans-serif; font-size: 0.9rem; line-height: 1.5em; } #docs-body h2, #index-nav h2 { line-height: 1.3em; } #docs-body { min-height: 700px; } #index-nav { position: relative; margin-top: 0; padding: 10px 10px 25px 10px; } #index-nav form { padding-top: 10px; float: right; } #sidebar-paginate { position: absolute; bottom: 4.5em; left: 10px; } #sidebar-search { margin: 10px 0px 10px 0px; } #docs-sidebar { top: 189px; width: 360px; margin-right: 40px; bottom: 0; min-height: 0; overflow-y: auto; overflow-x: hidden; margin-top: 5px; margin-right: 5px; z-index: 3; } #sidebar-banner { margin: 0px; padding: 0px; } #sidebar-prerelease, #sidebar-legacy, #sidebar-current, #sidebar-beta { text-transform: uppercase; font-weight: bold; font-size: 1.1em; padding: 2px 5px 2px 5px; width: 11em; text-align: center; } #sidebar-prerelease, #sidebar-legacy { background: #f11; color: #bbb; } #sidebar-beta { background: #ffff80; color: #555; } #sidebar-current { background: #4c4; color: #555; } #docs-version-header #sidebar-prerelease, #docs-version-header #sidebar-legacy, #docs-version-header #sidebar-current { width: 14em; font-size: 1em; } #docs-sidebar-inner { padding-left: 10px; margin-right: 40px; /*width:212px;*/ font-family: "Libre Franklin", Verdana, sans-serif; font-size: 0.85em; border: none; background-color: #efefef; } #docs-sidebar-inner > ul { font-size: 0.85em; } #docs-sidebar-inner span.link-container { display: block; margin-left: -100px; padding-left: 100px; padding-top: 3px; padding-bottom: 3px; } #docs-sidebar-inner li.current > span.link-container { background-color: #ddd; } #docs-sidebar-inner h3, #docs-sidebar-inner h4, #docs-sidebar-inner h5 { background-color: inherit; color: #222222; font-family: "Libre Franklin", Verdana, sans-serif; font-size: 1.1em; font-weight: normal; margin: 10px 0 0 -15px; padding: 15px 10px 5px 15px; text-shadow: 1px 1px 0 white; } #docs-sidebar-inner h3 a, #docs-sidebar-inner h4 a, #docs-sidebar-inner h5 a { color: #222222; } #docs-sidebar-inner h3:first-child { margin-top: 0px; } #docs-sidebar-inner ul { margin: 10px 0px 10px 0px; padding: 0; list-style: none outside none; } #docs-sidebar-inner ul ul { margin-bottom: 0; margin-top: 0; list-style: square outside none; margin-left: 20px; } #docs-sidebar-popout { height: 171px; max-height: 171px; width: auto; padding-left: 10px; padding-top: 10px; position: relative; line-height: 1.2em; font-size: 0.75em; } #docs-sidebar-popout p, #docs-sidebar-popout form { margin: 5px 0 5px 0px; } #docs-sidebar-popout h3 { margin: 0 0 10px 0; } #fixed-sidebar { position: relative; box-sizing: border-box; } #fixed-sidebar.withsidebar { position: absolute; float: left; width: 360px; top: 0; bottom: 0; background-color: #efefef; } #fixed-sidebar #docs-sidebar { position: absolute; } #fixed-sidebar #docs-sidebar:after { content: " "; display: block; height: 150px; } #docs-sidebar { position: fixed; } #docs-body { background-color: #ffffff; padding: 10px 10px 10px 10px; border: none; margin-top: 0; } #docs-body.withsidebar { margin-left: 360px; padding: 10px 45px 0 45px; } #docs-body.withsidebar div.section, #docs-body.withsidebar section { /* to limit text width inside the container */ /*max-width: 1024px;*/ } #docs-narrow-top-navigation { display: none; } #narrow-index-nav { display: none; } /* disable sidebar on mobile / narrow screens */ @media only screen and (max-width: 980px) { #fixed-sidebar { display: none; } #narrow-index-nav { display: block; padding: 1rem; margin: 0 0 0 0; } #docs-body.withsidebar { margin-left: 0; } #docs-bottom-navigation.withsidebar { margin-left: 0; } #docs-narrow-top-navigation { display: block; } #docs-top-navigation-container h1 { position: absolute; top: 10px; margin: 0; padding: 0; left: 8px; } #docs-header { height: 124px; } #docs-version-header { position: absolute; left: 8px; right: 0; bottom: 8px; } } #docs-narrow-top-navigation { border: none; background-color: #efefef; font-family: "Libre Franklin", Verdana, sans-serif; font-size: 0.85rem; } #docs-narrow-top-navigation h2 { margin: 16px 4px 7px 5px; font-size: 1.6em; } #docs-narrow-top-navigation p { margin: 0; } #docs-body h1, #docs-body h2, #docs-body h3, #docs-body h4, #docs-body h5, #docs-body .h2 { font-family: "Libre Franklin", Arial, sans-serif; font-weight: bold; /* don't put a clear:both here. use less floats */ } #docs-body #sqlalchemy-documentation h1 { /* hide the <h1> for each content section. */ display: none; font-size: 2em; } #docs-body h1 { font-size: 1.7rem; } #docs-body h2 { font-size: 1.6rem; border-top: 1px solid #ccc; padding-top: 20px; } #docs-body #sqlalchemy-documentation h2 { border-top: none; padding-top: 0; } #docs-body h3 { font-size: 1.4rem; } #docs-body h4 { font-size: 1.2rem; } #docs-body h5 { font-size: 1.05rem; } /* SQL popup, code styles */ .highlight { background: none; } #docs-container { /* python annotation key */ /* the [SQL] links used to display SQL */ } #docs-container pre { font-size: .85rem; background-color: #f0f0f0; border: 1px solid #ccc; padding: 10px; margin: 10px 10px 20px 0px; overflow: auto; line-height: 1.3em; clear: both; } @media only screen and (max-width: 1280px) { #docs-container pre { padding: 10px 10px 30px 10px; } } #docs-container div.code-annotations-key, #docs-container div.code-non-annotations-key { position: absolute; right: 1.2em; bottom: .05em; width: 180px; background-size: 180px; height: 30px; } #docs-container div.code-annotations-key { background-image: url("annotated.png"); } #docs-container div.code-non-annotations-key { background-image: url("nonannotated.png"); } #docs-container .sql_link { font-weight: normal; font-family: helvetica, arial, sans-serif; font-size: 0.9em; text-transform: uppercase; color: #990000; border: 1px solid; padding: 1px 2px 1px 2px; margin: 0px 10px 0px 15px; float: right; line-height: 1.2em; } #docs-container a.sql_link, #docs-container .sql_link { text-decoration: none; padding: 1px 2px; } #docs-container a.sql_link:hover { text-decoration: none; color: #fff; border: 1px solid #900; background-color: #900; } #docs-container a.changeset-link { font-size: 0.8em; padding: 0 4px 0 4px; text-decoration: none; } .popup_sql, .show_sql, .show_sql_print { padding: 5px 10px; margin: 10px -5px 10px -5px; border: 1px dashed; } .popup_sql, .show_sql { background-color: #fbfbee; } /* SQL popups are always on at the moment, disable the button */ .sql_link { display: none; } /* tables */ .sliding-table { width: 100%; overflow: auto; } .section > table.docutils, .sliding-table > table.docutils, section > table.docutils { border: none; border-collapse: collapse; } .section > table.docutils tr, .sliding-table > table.docutils tr, section > table.docutils tr { border-collapse: collapse; border-spacing: 0; empty-cells: show; } .section > table.docutils tr td, .section > table.docutils tr th, .sliding-table > table.docutils tr td, .sliding-table > table.docutils tr th, section > table.docutils tr td, section > table.docutils tr th { border: 1px solid #e1e4e5; background-color: transparent; vertical-align: middle; font-size: 90%; margin: 0; overflow: visible; padding: 8px 16px; } .section > table.docutils tr td.autosummary-name, .sliding-table > table.docutils tr td.autosummary-name, section > table.docutils tr td.autosummary-name { vertical-align: top; } .section > table.docutils tr.row-even td, .sliding-table > table.docutils tr.row-even td, section > table.docutils tr.row-even td { background-color: #f3f6f6; } /* docutils-specific elements */ th.field-name { text-align: right; position: absolute; padding: 0px; margin: 0px; } td.field-body { padding-top: 1em; } td.field-body ul.first { padding-left: 17px; padding-top: 1em; } div.faq { background-color: #efefef; } div.faq ul { list-style: square outside none; } /* box styles */ .footnote-reference { vertical-align: super; } dl.footnote { font-size: 0.95em; border: 1px solid #ccc; background-color: #f8f9f0; margin: 10px 10px 20px 0px; padding: 10px 20px 0 20px; } dl.footnote dt { float: left; background-color: #c5cec2; margin: -10px 0 0 -20px; padding: 0 10px 0 10px; } dl.footnote dd { margin-right: 40px; } dl.footnote dd p { margin-top: 0; } p.deprecated, div.deprecated { background-color: #fcf0f6; } .versionchanged, .versionadded, .versionmodified added { background-color: #f9f9d9; } div.warning .admonition-title { color: #ff0000; } div .admonition, div .sidebar, div .topic, div .docutils-header, div .docutils-footer { clear: both; padding: 0 20px 0 20px; background-color: #f8f9f0; border: 1px solid #ccc; margin: 10px 10px 20px 0px; } div .admonition .admonition-title, div .admonition .sidebar-title, div .admonition .topic-title, div .sidebar .admonition-title, div .sidebar .sidebar-title, div .sidebar .topic-title, div .topic .admonition-title, div .topic .sidebar-title, div .topic .topic-title, div .docutils-header .admonition-title, div .docutils-header .sidebar-title, div .docutils-header .topic-title, div .docutils-footer .admonition-title, div .docutils-footer .sidebar-title, div .docutils-footer .topic-title { background-color: #c5cec2; padding: 0 2em 0 1.5em; margin: 0 -20px 20px -20px; font-weight: bold; border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; } div .admonition > p, div .sidebar > p, div .topic > p, div .docutils-header > p, div .docutils-footer > p { font-size: 0.9em; } div.sidebar { background-color: #ffffee; float: right; width: 40%; margin: 10px 10px 5px 10px; } div.deprecated, div.versionadded, div.versionchanged, div.versionmodified { padding: 1rem 1em 2px 1rem; margin: 10px 10px 20px 0px; } div .versionwarning, div .version-warning { font-size: 12px; font-color: red; border: 1px solid #ccc; padding: 4px 4px; margin: 8px 0px 2px 0px; background: #ffbbbb; } div.note, div.warning { background-image: url("dragons.png"); background-color: #eeffef; background-position: 1em top; background-repeat: no-repeat; clear: right; min-height: 140px; padding-left: 140px; } div.note > .admonition-title, div.warning > .admonition-title { margin-left: -140px; } div.warning { background-color: #fcf0f6; } div.deepalchemy { background-image: url("deepalchemy.png"); background-size: auto 100px; background-position: 6px 9px; background-repeat: no-repeat; background-color: #f6e8fd; clear: right; min-height: 120px; padding-left: 140px; } div.deepalchemy > .admonition-title { margin-left: -140px; } div.legacy { background-color: #fcffc0; } @media only screen and (max-width: 980px) { div.note, div.warning { background-image: none; padding-left: 14px; } div.note > .admonition-title, div.warning > .admonition-title { margin-left: -14px; padding-left: 10px; } div.deepalchemy { background-image: none; padding-left: 14px; } div.deepalchemy > .admonition-title { margin-left: -14px; padding-left: 10px; } } /* grrr sphinx changing your document structures, removing classes.... */ .versionadded .versionmodified, .versionchanged .versionmodified, .deprecated .versionmodified, .versionadded > p:first-child > span:first-child, .versionchanged > p:first-child > span:first-child, .deprecated > p:first-child > span:first-child { color: #990000; font-weight: bold; } div.class-bases, div.class-members { border: 1px solid #ccc; padding: 5px 5px; padding: 1rem 1em 2px 1rem; font-size: 0.9em; margin: 10px 10px 20px 0px; } div.class-bases { background-color: #eefbfb; } div.class-members { background-color: #ebedfa; } div.inherited-member { border: 1px solid #ccc; padding: 5px 5px; font-size: 0.9em; background-color: #eefbfb; } div.inherited-member p { margin: 0; } .viewcode-back, .viewcode-link { float: right; } dl.function > dt, dl.attribute > dt, dl.classmethod > dt, dl.method > dt, dl.class > dt, dl.exception > dt { border: 1px solid #ccc; background-color: #efefef; margin: 25px -10px 10px 10px; padding: 8px 10px; } /* parameters / returns lists for functions and methods */ dl.field-list { border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; margin: 10px 10px 0 0; } dl.field-list li > p { margin: 0.5em 0 0.5em 0; } dl.field-list > dt { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; font-weight: bold; background-color: #efefef; padding: 0 2em 0 1.5em; } dl.glossary > dt { font-weight: bold; font-size: 1.1em; padding-top: 10px; } dt:target, span.highlight { background-color: #fbe54e; } .clearboth { clear: both; } .nowrap { white-space: nowrap; } /* copybutton styles requires https://sphinx-copybutton.readthedocs.io/ */ button.copybtn { top: 1em; right: 1.8em; width: 2.5em; height: 2.5em; } button.copybtn svg { width: 2em; height: 2em; } /* sphinx 1.3 now using 'code' and not 'tt' for code / docstring elements */ /* sphinx 1.4 now using 'span' and not 'code' for code / docstring elements */ span.descclassname, span.descname, code, tt { padding: 0 1px; color: #480717; font-family: "Courier New", Courier, fixed, monospace; font-weight: 400; font-size: 95%; } span.descname, code.descname, tt.descname { background-color: transparent; font-size: 1.2em; font-weight: bold; } span.descclassname, code.descclassname, tt.descclassname { background-color: transparent; } a code > .pre, a tt > .pre { color: #BB0000; } a span.sig-name, a code.sig-name { color: #BB0000; } /* syntax highlighting overrides */ .k, .kn { color: #0908ce; } .o { color: #bf0005; } .go { color: #804049; } /* special "index page" sections with specific formatting */ div#sqlalchemy-documentation { font-size: 0.95em; } div#sqlalchemy-documentation em { font-style: normal; } div#sqlalchemy-documentation .rubric { font-size: 14px; background-color: #eeffef; padding: 5px; border: 1px solid #bfbfbf; } div#sqlalchemy-documentation a, div#sqlalchemy-documentation li { padding: 5px 0px; } div#getting-started { border-bottom: 1px solid #ccc; } div#tutorials { border-bottom: 1px solid #ccc; } /* new index layout thing */ #docs-body.index { padding: 0; } div.left-right-container { display: flex; } div.left-right-container p.h2 { display: block; font-weight: bold; font-size: 1.4em; } div.left-right-container .container { border-bottom: 1px solid #ccc; padding-right: 10px; } div.left-right-container:last-of-type .container { border-bottom: none; } div.left-right-container .orm { background-color: #e2f3f4; margin-right: 0; } div.left-right-container .core { background-color: #aecaf7; margin-left: 0; } div.left-right-container .leftmost { width: 15em; max-width: 15em; background-color: #e4e4e8; padding-left: 10px; border-bottom: none; margin: 0; } div.left-right-container div { flex: 3; padding-left: 10px; } @media only screen and (max-width: 980px) { div#docs-header { padding-bottom: 1rem; } div.left-right-container { display: block; margin: 0; max-width: none; } div.left-right-container .leftmost { width: auto; max-width: none; padding: 10px 10px 10px 10px; } div.left-right-container div.container { padding-bottom: 1rem; max-width: none; margin: 0; } div.left-right-container .orm, div.left-right-container .core { padding-bottom: 1rem; } } /* legacy index layout thing */ div#sqlalchemy-documentation li p { margin: 0; } div#sqlalchemy-documentation > .section, div#sqlalchemy-documentation > section { padding-left: 10px; } div#sqlalchemy-documentation div#sqlalchemy-orm { float: left; width: 48%; min-height: 400px; padding-left: 10px; border-right: 1px solid #ccc; } div#sqlalchemy-documentation div#sqlalchemy-orm h2 { margin: 0; } div#sqlalchemy-documentation div#sqlalchemy-core { margin: 0; padding-left: 10px; min-height: 400px; padding-left: 50%; } div#sqlalchemy-documentation div#sqlalchemy-core h2 { margin: 0; } div#dialect-documentation { border-top: 1px solid #ccc; clear: both; } /* core/orm tabbed thing */ #docs-body div.orm-core h2, #docs-body div.orm-core h3, #docs-body div.orm-core h4, #docs-body div.orm-core h5, #docs-body section.orm-core h2, #docs-body section.orm-core h3, #docs-body section.orm-core h4, #docs-body section.orm-core h5 { border: none; } #docs-body div.orm-header, #docs-body section.orm-header { box-shadow: 0px 0px 2px #ccc; padding-top: 1px; padding-bottom: 1px; border-radius: 10px; border-left: 2.2em solid #e2f3f4; padding-left: 1em; padding-right: 1em; margin-bottom: 2em; } #docs-body div.orm-header h2, #docs-body section.orm-header h2 { border-top: none; } #docs-body div.orm-header > h2, #docs-body div.orm-header > h3, #docs-body section.orm-header > h2, #docs-body section.orm-header > h3 { border: none; padding-top: 0; } #docs-body div.core-header, #docs-body section.core-header { box-shadow: 0px 0px 2px #ccc; padding-top: 1px; padding-bottom: 1px; border-radius: 10px; border-right: 2.2em solid #aecaf7; padding-left: 1em; padding-right: 1em; margin-bottom: 2em; } #docs-body div.core-header h2, #docs-body section.core-header h2 { border-top: none; } #docs-body div.core-header > h2, #docs-body div.core-header > h3, #docs-body section.core-header > h2, #docs-body section.core-header > h3 { border: none; padding-top: 0; } #docs-body div.orm-dependency, #docs-body section.orm-dependency { border-left: 0.6em solid #e2f3f4; } #docs-body div.orm-addin, #docs-body section.orm-addin { box-shadow: 0px 0px 2px #ccc; padding-top: 1px; padding-bottom: 1px; border-radius: 10px; border-left: 0.6em solid #e2f3f4; padding-left: 10px; margin: 10px 0 10px 0; } #docs-body div.orm-addin h2, #docs-body section.orm-addin h2 { border-top: none; }