/* 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);
 }


/* bootstrap extension */
.w-10 {
    width: 10%;
}

/* bootstrap extension */
.fs-7 {
  font-size: 0.8rem !important;
}

/* 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;
}
