/* RetroBIOS theme on top of mkdocs-material */ :root { --rb-primary: #4a4e8a; --rb-primary-light: #6366a0; --rb-primary-dark: #363870; --rb-accent: #b42318; --rb-link: #273c8f; --rb-surface: #f5f6fa; --rb-border: #e0e3eb; --rb-text-secondary: #546e7a; } [data-md-color-scheme="slate"] { --rb-surface: #1e1e2e; --rb-border: #313244; --rb-text-secondary: #a6adc8; --rb-accent: #ff9a8f; --rb-link: #aebcff; } [data-md-color-scheme="default"] { --md-primary-fg-color: var(--rb-primary); --md-primary-fg-color--light: var(--rb-primary-light); --md-primary-fg-color--dark: var(--rb-primary-dark); --md-accent-fg-color: var(--rb-accent); } [data-md-color-scheme="slate"] { --md-primary-fg-color: var(--rb-primary-light); --md-accent-fg-color: var(--rb-accent); } /* Headline figures, read as one line of numbers */ .rb-stats { display: flex; flex-wrap: wrap; gap: 0.4rem 2rem; margin: 1rem 0 1.5rem; } .rb-stat .rb-stat-value { font-size: 1.25rem; font-weight: 700; display: block; } .rb-stat .rb-stat-label { font-size: 0.8rem; color: var(--rb-text-secondary); display: block; } .rb-badge { display: inline-block; padding: 0 0.4em; border-radius: 2px; font-size: 0.75rem; font-weight: 600; line-height: 1.6; white-space: nowrap; } .rb-badge-success { background: #e8f5e9; color: #1b5e20; } .rb-badge-warning { background: #fff3e0; color: #a33f00; } .rb-badge-danger { background: #ffebee; color: #b71c1c; } .rb-badge-info { background: #e3f2fd; color: #0d47a1; } .rb-badge-muted { background: #eceff1; color: #455a64; } [data-md-color-scheme="slate"] .rb-badge-success { background: #1b5e20; color: #a5d6a7; } [data-md-color-scheme="slate"] .rb-badge-warning { background: #e65100; color: #ffcc80; } [data-md-color-scheme="slate"] .rb-badge-danger { background: #b71c1c; color: #ef9a9a; } [data-md-color-scheme="slate"] .rb-badge-info { background: #0d47a1; color: #90caf9; } [data-md-color-scheme="slate"] .rb-badge-muted { background: #37474f; color: #b0bec5; } .md-typeset table:not([class]) th { position: sticky; top: 0; z-index: 1; } .md-typeset__scrollwrap { margin: 1rem 0; } .rb-timestamp { font-size: 0.8rem; color: var(--rb-text-secondary); margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--rb-border); } /* One block per file on emulator and system pages, separated by a rule */ .rb-file-entry, .rb-sys-file { border-top: 1px solid var(--rb-border); padding: 0.75rem 0 0.25rem; margin: 0; } .rb-file-entry > p:first-child, .rb-sys-file > p:first-child { margin-top: 0; } .rb-file-header code { font-size: 0.95rem; font-weight: 700; } .rb-file-entry ul, .rb-sys-file ul { margin: 0.3rem 0 0; padding-left: 1.2rem; font-size: 0.85rem; } .rb-file-entry li, .rb-sys-file li { margin: 0.1rem 0; } /* Hashes are printed whole so the search finds them, and wrap on phones */ .rb-hash { font-family: monospace; font-size: 0.78rem; color: var(--rb-text-secondary); overflow-wrap: anywhere; } .rb-meta-card table { margin: 1rem 0 !important; } .rb-meta-card th { display: none; } .rb-meta-card td:first-child { font-weight: 600; color: var(--rb-text-secondary); white-space: nowrap; width: 140px; } .md-typeset table .md-button { font-size: 0.75rem; min-height: 44px; padding: 0.55em 0.8em; } .md-typeset a:not(.md-button):not(.headerlink):not(.rb-badge) { color: var(--rb-link); text-decoration: underline; text-decoration-thickness: 0.08em; text-underline-offset: 0.14em; } .md-typeset a:not(.md-button):not(.headerlink):hover { text-decoration-thickness: 0.14em; } :where(a, button, input, select, textarea, [tabindex]):focus-visible { outline: 3px solid var(--rb-accent); outline-offset: 3px; } .md-typeset .md-button, .md-typeset button, .md-typeset input, .md-typeset select { min-height: 44px; } .rb-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; } .rb-table-filter { display: grid; grid-template-columns: minmax(14rem, 28rem) auto; gap: 0.35rem 0.8rem; align-items: end; margin: 1rem 0 0.45rem; } .rb-table-filter label { grid-column: 1 / -1; color: var(--rb-text-secondary); font-size: 0.78rem; font-weight: 700; } .rb-table-filter input { width: 100%; border: 1px solid var(--rb-text-secondary); border-radius: 2px; background: var(--md-default-bg-color); color: var(--md-default-fg-color); padding: 0.55rem 0.75rem; font: inherit; } .rb-table-filter-count { align-self: center; color: var(--rb-text-secondary); font-size: 0.8rem; white-space: nowrap; } .md-typeset__scrollwrap[role="region"]:focus-visible { outline: 3px solid var(--rb-accent); outline-offset: 2px; } /* Material's compact footer defaults sit just below WCAG AA on the dark bar. */ .md-footer-meta .md-copyright { color: #b5b5b5; } .md-footer-meta.md-typeset .md-copyright a { color: #b8c6ff !important; } @media (max-width: 600px) { .rb-table-filter { grid-template-columns: 1fr; } .rb-table-filter label { grid-column: auto; } } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; } } /* A file block can be cited by URL: its link shows on hover, and the block a link lands on is marked. */ .rb-permalink { margin-left: 0.4rem; color: var(--md-default-fg-color--light, var(--rb-border)); text-decoration: none; opacity: 0; } .rb-file-entry:hover .rb-permalink, .rb-sys-file:hover .rb-permalink, .rb-permalink:focus { opacity: 1; } .rb-file-entry:target, .rb-sys-file:target { background: var(--rb-surface); scroll-margin-top: 4rem; }