| /* |
| * Copyright 2024 The Pigweed Authors |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); you may not |
| * use this file except in compliance with the License. You may obtain a copy of |
| * the License at |
| * |
| * https://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| * License for the specific language governing permissions and limitations under |
| * the License. |
| */ |
| |
| /********** General document and node styles ***********/ |
| /* Note: The final value of color variables like --pw-color-background-code |
| * is resolved when dark theme or light theme is chosen. */ |
| |
| :root { |
| /* PyData Sphinx Theme variables. */ |
| /* When you move your mouse over a table, pydata highlights the row that |
| * you're currently hovering over. Make this highlight color more muted. */ |
| --pst-color-table-row-hover-bg: var(--sd-color-primary-bg) !important; |
| --pst-font-size-h1: 2.75rem !important; |
| --pst-font-size-h2: 2rem !important; |
| --pst-font-size-h3: 1.25rem !important; |
| --pst-font-size-h4: 1.1rem !important; |
| --pst-font-size-h5: 1rem !important; |
| --pst-font-size-h6: 1rem !important; |
| /* Pigweed variables. */ |
| --pw-font-body: 'Noto Sans', sans-serif; |
| --pw-font-code: 'Roboto Mono', monospace; |
| --pw-font-headings: 'Lato', sans-serif; |
| /* All nodes should always scroll instantly. */ |
| scroll-behavior: auto !important; |
| --font-stack-monospace: var(--pw-font-code); |
| } |
| |
| a.external::after { |
| content: none !important; |
| } |
| |
| code { |
| /* Remove borders from inline code (i.e. code that appears within |
| * paragraphs. Note that code blocks should have borders; those are |
| * applied to the code block's pre element. */ |
| border: none !important; |
| } |
| |
| code, |
| pre { |
| background-color: var(--pw-color-background-code); |
| color: var(--pw-color-foreground-primary); |
| font-family: var(--pw-font-code); |
| } |
| |
| div, |
| li, |
| p { |
| font-family: var(--pw-font-body); |
| } |
| |
| figcaption { |
| color: var(--pw-color-foreground-primary) !important; |
| } |
| |
| h1, |
| h2, |
| h3, |
| h4, |
| h5, |
| h6 { |
| font-family: var(--pw-font-headings); |
| font-weight: bold; |
| margin: 2rem 0 1rem !important; |
| } |
| |
| /* Highlighted lines in code blocks. */ |
| .highlight .hll { |
| /* Make highlighted code easier to read. */ |
| background-color: var(--color-code-hll-background) !important; |
| } |
| |
| aside.topic div.highlight pre { |
| background-color: var(--pw-color-background-secondary) !important; |
| } |
| |
| details.sd-dropdown { |
| margin-top: 1em; |
| } |
| |
| #search-results { |
| overflow-y: hidden !important; |
| } |
| |
| /********** Dark mode styles ***********/ |
| /* https://pydata-sphinx-theme.readthedocs.io/en/stable/user_guide/styling.html#color-variables */ |
| |
| html[data-theme='dark'] { |
| /* PyData Sphinx Theme variables. */ |
| --pst-color-primary: #fb71fe; |
| --pst-color-secondary: #8be9fd; |
| /* Pigweed variables. */ |
| --pw-color-link: #2b8cee; |
| --pw-color-link-inactive: #9ca0a5; |
| --pw-color-background-primary: #1c2128; |
| --pw-color-background-secondary: #22272e; |
| --pw-color-background-code: #2d333b; |
| --pw-color-foreground-primary: #ffffffcc; |
| /* Doxygen/Breathe API reference customizations. */ |
| --color-api-function-border: #575757; |
| --color-api-function-background: #2b2b2b; |
| --color-api-class-background: #222c35; |
| --color-api-class-foreground: #87c1e5; |
| --color-api-class-border: #5288be; |
| --color-code-hll-background: #ffc55140; |
| } |
| |
| /********** Light mode styles ***********/ |
| /* https://pydata-sphinx-theme.readthedocs.io/en/stable/user_guide/styling.html#color-variables */ |
| |
| html[data-theme='light'] { |
| /* PyData Sphinx Theme variables. */ |
| --pst-color-primary: #b529aa; |
| --pst-color-secondary: #016074; |
| /* Pigweed variables. */ |
| --pw-color-link: #2a5adf; |
| --pw-color-link-inactive: #9ca0a5; |
| --pw-color-background-primary: #ffffff; |
| --pw-color-background-secondary: #f8f9fb; |
| --pw-color-background-code: #f8f8f8; |
| --pw-color-foreground-primary: ; |
| /* Doxygen/Breathe API reference customizations. */ |
| --color-api-function-border: #cccccc; |
| --color-api-function-background: #f0f0f0; |
| --color-api-class-background: #e7f2fa; |
| --color-api-class-foreground: #2980b9; |
| --color-api-class-border: #6ab0de; |
| --color-code-hll-background: #ffffcc; |
| } |
| |
| /********** pydata customizations ***********/ |
| /* These classes either come from our theme (pydata-sphinx-theme) |
| * or Sphinx extensions that pydata relies on. */ |
| |
| /* Announcement banner. Only visible when an announcement is set in conf.py. |
| * Is displayed at the very top of the page when enabled. |
| * https://pydata-sphinx-theme.readthedocs.io/en/stable/user_guide/announcements.html */ |
| .bd-header-announcement { |
| background-color: red; |
| color: white; |
| font-family: var(--pw-font-body); |
| a { |
| color: var(--pst-color-light); |
| font-weight: bold; |
| } |
| } |
| |
| /* Header container at the top of every page that contains the logo, |
| * top-level nav, search box, theme switcher, and social links. */ |
| .bd-header { |
| background-color: var(--pw-color-background-secondary) !important; |
| font-family: var(--pw-font-headings); |
| .logo__title { |
| font-size: 1.25em; |
| font-family: 'Lato', sans-serif; |
| font-weight: bold; |
| font-style: italic; |
| color: var(--pst-color-primary); |
| } |
| /* Top-level nav links. */ |
| .nav-item { |
| color: var(--pw-color-link-inactive); |
| /* On medium-width screens keep the text on a single row. */ |
| white-space: nowrap; |
| /* The currently visible top-level section. */ |
| .active { |
| color: var(--pst-color-primary); |
| } |
| :hover { |
| color: var(--pst-color-secondary); |
| } |
| } |
| .search-button__default-text { |
| font-family: var(--pw-font-body); |
| } |
| /* Theme toggle button. */ |
| .theme-switch-button:hover { |
| color: var(--pst-color-secondary); |
| } |
| } |
| |
| /* Container for the primary sidebar, main content, |
| * and secondary sidebar. */ |
| .bd-container { |
| background-color: var(--pw-color-background-primary); |
| } |
| |
| /* Breadcrumbs that appear above the main content. */ |
| .bd-breadcrumbs { |
| font-family: var(--pw-font-headings); |
| } |
| |
| /* "Section Navigation" container that appears to the left of |
| * the main content. */ |
| .bd-sidebar-primary { |
| background-color: var(--pw-color-background-primary); |
| font-family: var(--pw-font-body); |
| /* Hide the "Section Navigation" scrollbar. */ |
| scrollbar-width: none; |
| -ms-overflow-style: none; |
| ::-webkit-scrollbar { |
| display: none; |
| } |
| } |
| |
| /* Main content of the page. */ |
| .bd-article { |
| color: var(--pw-color-foreground-primary); |
| /* Links */ |
| a.reference { |
| color: var(--pw-color-link); |
| } |
| dd.field-odd { |
| margin-inline-start: 0; |
| padding-inline-start: 0; |
| } |
| } |
| |
| /* Container with "Previous" and "Next" links that appears at the |
| * end of the main content. */ |
| .prev-next-footer { |
| .prev-next-title { |
| color: var(--pw-color-link); |
| } |
| } |
| |
| /* "On this page" container that appears to the right of the main |
| * content. */ |
| .bd-sidebar-secondary { |
| background-color: var(--pw-color-background-primary); |
| font-family: var(--pw-font-body); |
| /* Links to jump to sections on this page. */ |
| .nav-item { |
| color: var(--pw-color-link-inactive); |
| /* The currently visible section. */ |
| .active { |
| color: var(--pst-color-primary); |
| } |
| } |
| } |
| |
| /* Footer container at the very bottom of every page. */ |
| .bd-footer { |
| background-color: var(--pw-color-background-secondary); |
| font-family: var(--pw-font-body); |
| a { |
| color: var(--pw-color-link); |
| } |
| } |
| |
| /********** sphinx-design component customizations ***********/ |
| /* Sphinx Design provides common UI components like cards, tabs, etc. |
| * https://pydata-sphinx-theme.readthedocs.io/en/stable/user_guide/web-components.html */ |
| |
| /* Tab customizations.*/ |
| |
| .sd-tab-content { |
| /* Tones down the border (the default is distracting). */ |
| border: 2px solid var(--pst-color-border) !important; |
| } |
| |
| .sd-tab-label { |
| /* Tones down the border (the default is distracting). */ |
| border-bottom: none !important; |
| border-color: var(--pst-color-border) !important; |
| border-width: 2px !important; |
| } |
| |
| /* Card customizations. */ |
| |
| .sales-pitch-cta-primary { |
| .sd-card-title { |
| border-bottom: 3px solid var(--pst-color-primary); |
| padding-bottom: 0.5rem; |
| } |
| } |
| |
| .sales-pitch-cta-secondary { |
| .sd-card-title { |
| border-bottom: 3px solid var(--pst-color-secondary); |
| padding-bottom: 0.5rem; |
| } |
| } |
| |
| /********** Pigweed component customizations ***********/ |
| |
| /* Pigweed module cards styles. At the top of Pigweed module docs |
| * we often display a card that displays metadata about the module, |
| * e.g. tagline, supported languages, status of the module, etc. |
| * See also: //pw_docgen/py/pw_docgen/sphinx/module_metadata.py */ |
| |
| .pw-topnav { |
| background-color: var(--color-background-primary); |
| padding: 0; |
| width: 100%; |
| } |
| |
| .pw-topnav-inline { |
| display: flex; |
| flex-direction: row; |
| padding: 1em 0 0 0; |
| } |
| |
| .pw-topnav-inline h1 { |
| padding: 0; |
| margin: 0; |
| } |
| |
| .pw-topnav-title { |
| font-size: 2.5em; |
| font-weight: 700; |
| line-height: 1.25; |
| padding: 0; |
| margin: 0; |
| } |
| |
| .pw-topnav-subtitle { |
| display: block; |
| font-size: larger; |
| font-weight: bold; |
| margin: 0.75em 0 0.5em 0; |
| padding: 0; |
| } |
| |
| .pw-text-center-align { |
| text-align: center; |
| } |
| |
| .pw-module-section-nav-group { |
| display: flex; |
| margin: 0 1em; |
| padding: 0; |
| } |
| |
| .pw-module-section-nav-link { |
| display: inline; |
| list-style-type: none; |
| margin: auto; |
| padding: 0 1em; |
| } |
| |
| .pw-module-section-nav-link p { |
| display: inline; |
| font-size: large; |
| } |
| |
| /********** Doxygen/Breathe customizations ***********/ |
| /* We use Doxygen and Breathe to auto-generate our C/C++ |
| * API references. The next styles tweak the auto-generated |
| * HTML and CSS. */ |
| |
| /* TODO: b/364322974 - Re-tweak Doxygen/Breathe-related styles. */ |