public/style/base.css (332 lines of code) (raw):

/* General structure */ :root { --bg-purple: #2a0c55; --bg-table-hover: #f2e9ff; --bg-alert-purple-light: #cfe2ff; } /* Fonts */ :root { font-family: "Inter", sans-serif; } @supports (font-variation-settings: normal) { :root { font-family: "InterVariable", sans-serif; font-optical-sizing: auto; } } html { height: 100%; background-color: #2a0c55; } body { font-family: "Inter", sans-serif; background-color: var(--bg-purple); color: white; } header { text-align: center; } a { text-decoration: none; } a:hover { text-decoration: underline; } nav svg { fill: whitesmoke; margin-top: 0.5em; } h1 { font-weight: 400; } h2, h3 { font-weight: 300; } .table { margin: 0 auto; width: 100%; } .table td, .table th { padding-left: 0.5rem; padding-right: 0.5rem; } .force-default-bg { box-shadow: unset !important; } /* home page */ #homepage h1 { font-size: 3.5rem; margin-bottom: 2em; } #homepage :is(h1, h2, h3) { margin-top: 1em; } #homepage img { width: 70%; } /* Milestones caption on top of list */ body[id^='release_'] caption { caption-side: top; } #release_esr table + .table th { text-align: center; } .table-fxt-clean, .table-fxt-clean th, .table-fxt-clean td { border-color: #f2e9ff; } .table-fxt-clean { border-radius: 6px; border-spacing: 0; border-collapse: separate; border: 1px solid black; overflow: hidden; } #release_esr .table + .table td { width: 6em; } body[id^='release_'] .table td { text-align: right; white-space: nowrap; width: 9em; } #release_esr .table td:last-child { text-align: right; } #release_esr .table td { text-align: center; } body[id^='release_'] .table th details p { padding: 0.5rem; margin: 0.5em; border-left: 3px solid lightgray; font-size: small; font-weight: normal; } /* hide working days when <details> tag not popen */ body[id^='release_']:not(#release_esr) th:has(details) + td small { display:none; } body[id^='release_']:not(#release_esr) th:has(details[open]) + td small { display: inline; } body[id^='release_']:not(#release_esr) .table th summary::marker { color: lightgray; font-size: small; } @media only screen and (max-width: 460px) { /* deactivate bootstrap 50% & 75% width on narrow screens */ .w-50, .w-75 { width: auto !important; } #homepage h1 { font-size: 2.5rem; margin-bottom: 0.5em; } #homepage :is(h1, h2, h3) { margin-top: 0.5em; } #homepage h3 { line-height: 2.7em; } #homepage div.col-sm { margin-bottom: 4em; } #homepage h3.text-center { margin-bottom: 1em; margin-top: 0; } #homepage .alert-primary { padding: 0.5rem 0.25rem; } /* Split the Last uplift tag on mobile */ body[id^='release_']:not(#release_esr) .table th small span::before{ content: "\a"; white-space: pre; } /* limit horizontal scroll */ body[id^='release_']:not(#release_esr) .table td { text-wrap: auto; } #beta table#summary ul { display: flex; flex-direction: column; } } /* About tooltip */ #homepage .information { color: white; } #homepage .information:hover { color: #ffe343; } /* About page */ #about h3 { margin-top: 1em; } footer { text-align: center; margin-top: 2em; } .text-color-1 { color: purple !important; text-shadow: -1px 0px 0px lightgray; } .anchor-link { visibility: hidden; display: inline-block; margin-left: -1em; } h3:hover .anchor-link { visibility: visible; } h3:target { color: #0dcaf0; } h3:target + table { box-shadow: 0px 0px 14px -1px #0dcaf0; } /* Nightly Page */ #nightly ul.list-group { word-break: break-word; } #nightly table { /* table-layout: fixed;*/ } #nightly table td a { word-wrap: break-word; } #nightly table tr th:nth-child(1) { width:6em; } #nightly table tr th:nth-child(2){ width: 15em; } #nightly table tr td:nth-child(2){ word-break: break-word; } #nightly table tr th:nth-child(3) { width: 5em; } /* bzimpact value table, avoid fields wrapping on 2 lines */ #nightly table tr table th:nth-child(1) { white-space: nowrap; } #nightly table thead tr th.sort-asc:after { content: "\00A0\25be"; } #nightly table thead tr th.sort-desc:after { content: "\00A0\25b4"; } #nightly .buildid { margin-left: -2em; } #nightly ol li::marker { color: rgb(110, 110,110); } #nightly ol li img { filter: grayscale(80%); } #nightly ol li img:hover { filter: none; } #nightly .bug-link { display:inline-block; width:100%; height:100%; } #nightly .score-card { visibility: hidden; position: absolute; margin-left: 3em; margin-top: -1em; min-width: 8em; max-width: 11em; box-shadow: 8px 10px 11px -1px rgba(128,127,127,0.58); } #nightly .score-pill:hover + .score-card { visibility: visible; } #beta .bz-enhancement::after { content: '\002B'; background-color: #2aba27; color: white; padding: 0; padding-bottom: 1 px; display: inline-block; border-radius: 3px; font-size: small; font-weight: bold; width: 14px; height: 15px; text-align: center; line-height: 13px; margin-top: 4px; margin-left:0.5em; } /* override Bootstrap striped styles as they don't allow background images */ :is(#beta, #nightly) table:not(#summary) tr:nth-child(odd) td:not(.text-light), :is(#beta, #nightly) table:not(#summary) tr:nth-child(even) td:not(.text-light) { box-shadow: none !important; background-color: white !important; } :is(#beta, #nightly) td.android { background-image: url("/assets/img/android.svg"); background-repeat: no-repeat; background-size: 1em; background-position: right 4px top 8px; } #beta table tr td:nth-child(1) { width: 8em; text-align: left; padding-left: 10px; } #beta #summary th span.badge { top: 5px; position:relative; font-weight:normal; } #beta table tr:not(:first-child) td:nth-child(2) { width: 18em; } #beta table .btn .badge { top: 0; } :is(#beta, #nightly) a[aria-expanded=false] .text-expanded { display: none; } :is(#beta, #nightly) a[aria-expanded=true] .text-collapsed { display: none; } #beta li.version { width: 7em; text-align: center; } #beta .bzlink svg { vertical-align: top; } #beta .bzlink:hover { display:inline-block; transform: rotate(45deg); } .w-10 { width: 10%; } /* Global dropdown menu spacing utility */ .fxt-ps-2 { padding-left: 2rem; } #nav nav + div a svg { width: 100px; fill: white; } #nav nav + div a svg:hover { fill: #00d230 !important; color: red; } /* hover effect on the menu icon */ nav svg:hover { fill: #0d6efd ; } .bg-purple { background-color: var(--bg-purple); } #homepage .card-text a { color: var(--bs-info); } /* Override default bootstrap hover to match our theme */ .table-hover > tbody > tr:hover > * { --bs-table-bg-state: var(--bg-table-hover); } .bg-card-color-purple-fxt { background-color: var(--bg-alert-purple-light) !important; border-color: var(--bg-alert-purple-light) !important; } #homepage .card-header:first-child, #homepage .border { border-color: var(--bg-alert-purple-light) !important; opacity: 0.9; }