@font-face {
  font-family: 'Mona Sans';
  src:
    url('Mona-Sans.woff2') format('woff2 supports variations'),
    url('Mona-Sans.woff2') format('woff2-variations');
  font-weight: 200 900;
  font-stretch: 75% 125%;
}

@font-face {
  font-family: 'Hubot Sans';
  src:
    url('Hubot-Sans.woff2') format('woff2 supports variations'),
    url('Hubot-Sans.woff2') format('woff2-variations');
  font-weight: 200 900;
  font-stretch: 75% 125%;
}

/* Desktops */
@media (min-width: 1921px) {
  :root {
    font-size: 17px;
  }
}

/* Laptops and small desktops */
@media (min-width: 1025px) and (max-width: 1920px) {
  :root {
    font-size: 16px;
  }
  :root .nav, :root .section, :root .stats-bar-inner {
    max-width: 1200px;
  }
  :root .listing > img {
    width: 210px;
    height: 140px;
  }
}

/* Portrait tablets and laptops */
@media (min-width: 769px) and (max-width: 1024px) {
  :root {
    font-size: 14px;
  }
}

/* Landscape phones and portrait tablets */
@media (max-width: 768px) {
  :root {
    font-size: 12.8px; /* I hate 13 */
  }
}

/* Make mobile friendly */
@media (max-width: 1024px) {
  :root .nav, :root .stats-bar-inner, :root .section {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  :root .nav .menu {
    display: none;
  }
  :root .nav .mobile-menu-trigger {
    display: flex;
  }
  :root .stats-bar-inner {
    width: fit-content;
  }
  :root .section {
    margin: 1.5rem auto;
    gap: 1.5rem;
  }
  :root .section.sm-gap {
    gap: 1rem;
  }
  :root .subsection {
    gap: 0.8em;
  }
  :root .subsection.lg-gap {
    gap: 1.2em;
  }
  :root .row.lg-gap {
    gap: 0.7em;
  }
  :root .full-width-on-mobile {
    width: 100%;
  }
  :root .hide-on-mobile {
    display: none;
  }
  :root .listing {
    gap: 0.3rem;
  }
  :root .listing > img {
    width: 135px;
    height: 90px;
  }
  :root .three-cards {
    visibility: hidden;
    height: 0;
    width: 0;
    margin: 0;
  }
  :root .carousel {
    display: block !important;
  }
  :root .modal {
    display: flex;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border-radius: 0;
  }
  :root .feeling-lucky {
    left: 0;
    right: 0;
    margin: 0 auto;
    border: 2px solid var(--gold);
    border-radius: 10px;
    background: white;
  }
  /* Home */
  :root .email-signup {
    flex-direction: column;
  }
  /* Hall of Fame */
  :root .hall-of-fame {
    font-size: 0.9em;
  }
  /* Listing Page */
  :root .listing-page, :root .user-page {
    flex-direction: column;
    gap: 1.5rem;
  }
  :root .listing-page .subsection {
    width: 100%;
  }
  :root .related-listings .listing {
    flex-basis: calc(50% - 1rem);
  }
  /* About Page */
  :root .about-page {
    flex-direction: column;
  }
  /* Intelligence Page */
  :root .for-sellers {
    padding-top: 0;
  }
  :root .for-sellers > .section {
    flex-direction: column;
  }
  /* Search */
  :root .search {
    position: static;
  }
  :root .search-listing > img {
    width: 75px;
    height: 50px;
  }
  :root .search-autocomplete {
    position: absolute;
    top: 4rem;
    left: 0;
    background: white;
    border-radius: 0;
    box-shadow: 0px 5px 10px -5px rgba(0, 0, 0, 0.2);
  }
  :root .search-results .listing > img {
    width: 120px;
    height: auto;
    aspect-ratio: 3/2;
    object-fit: cover;
  }
}

body {
  margin: 0;
  width: 100%;
  font-family: Mona Sans, sans-serif;
  box-sizing: border-box;
  --red: #E73636;
  --darkred: #C91818;
  --orange: #F39B53;
  --darkorange: #EF7A1A;
  --light: #EBEBEB;
  --lightgray: #D8D8D8;
  --gray: #6C6C6C;
  --charcoal: #264653;
  --green: #31CB00;
  --darkgreen: #27A200;
  --darkestgreen: #1D7A00;
  --yellow: #FFCE47;
  --gold: #FFBE0B;
  --silver: #AAA9AD;
  --bronze: #B08D57;
  --purple: #9E0059;
  --darkpurple: #5F0F40;
  --blue: #0096c7;
  --batcolor: #D80000;
  --xcolor: #14171A;
  --fbcolor: #4267B2;
  --txtcolor: #312f2b;
  color: #312f2b;
  fill: #312f2b;
}

input, button {
  font-family: Mona Sans, sans-serif;
  font-size: max(1.1em, 16px); /* Setting to 16px prevents autozoom in mobile */
}

input {
  padding: 5px;
}

button {
  border: 1px solid var(--txtcolor);
  background: none;
  padding: 8px 10px;
  border-radius: 5px;
  cursor: pointer;
}

a {
  color: var(--txtcolor);
  text-decoration: none;
}

.container {
  position: relative;
}

.header {
  height: 4rem;
  display: flex;
  border-bottom: 1px solid var(--lightgray);
  box-sizing: border-box;
}

.nav, .section {
  width: 100%;
  max-width: 1400px;
  box-sizing: border-box;
  display: flex;
  padding-left: 3.5rem;
  padding-right: 3.5rem;
}

.nav {
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
  gap: 1.4rem;
}

.nav .heading {
  font-family: Hubot Sans, sans-serif;
}

.nav .menu {
  display: flex;
  gap: 1.2rem;
}

.nav .mobile-menu-trigger {
  cursor: pointer;
  display: none;
  width: 2.4em;
}

.mobile-menu a {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.content {
  box-sizing: border-box;
  min-height: calc(100vh - 8rem); /* header height is 4rem and footer height is 5rem */
}

.section {
  margin: 2rem auto;
  gap: 2rem;
}

.col-100 {
  width: 100%;
}

.col-70 {
  width: 70%;
}

.col-60 {
  width: 60%;
}

.col-50 {
  width: 50%;
}

.col-40 {
  width: 40%;
}

.col-33 {
  width: calc(100% / 3);
}

.col-30 {
  width: 30%;
}

.col-20 {
  width: 20%;
}

.semibold {
  font-weight: 500;
}

.bold {
  font-weight: 600;
}

.italic {
  font-style: italic;
  font-synthesis: none;
}

.nowrap {
  white-space: nowrap;
}

.white {
  color: white;
  fill: white;
  stop-color: white;
}

.lightgray {
  color: var(--lightgray);
  fill: var(--lightgray);
  stop-color: var(--lightgray);
}

.gray {
  color: var(--gray);
  fill: var(--gray);
  stop-color: var(--gray);
}

.charcoal {
  color: var(--charcoal);
  fill: var(--charcoal);
  stop-color: var(--charcoal);
}

.green {
  color: var(--green);
  fill: var(--green);
  stop-color: var(--green);
}

.darkgreen {
  color: var(--darkgreen);
  fill: var(--darkgreen);
  stop-color: var(--darkgreen);
}

.darkestgreen {
  color: var(--darkestgreen);
  fill: var(--darkestgreen);
  stop-color: var(--darkestgreen);
}

.yellow {
  color: var(--yellow);
  fill: var(--yellow);
  stop-color: var(--yellow);
}

.gold {
  color: var(--gold);
  fill: var(--gold);
  stop-color: var(--gold);
}

.red {
  color: var(--red);
  fill: var(--red);
  stop-color: var(--red);
}

.orange {
  color: var(--orange);
  fill: var(--orange);
  stop-color: var(--orange);
}

.blue {
  color: var(--blue);
  fill: var(--blue);
  stop-color: var(--blue);
}

.purple {
  color: var(--purple);
  fill: var(--purple);
  stop-color: var(--purple);
}

.uppercase {
  text-transform: uppercase;
}

.subsection {
  display: flex;
  flex-direction: column;
  gap: 1em;
}

.subsection.lg-gap {
  gap: 1.5em;
}

.vertical {
  flex-direction: column;
}

.carousel {
  display: none !important;
  padding: 0 !important;
}

.carousel-card {
  width: calc(100vw - 4rem);
  height: 240px !important;
  box-sizing: border-box;
  margin: 0.7em;
}

.card {
  padding: 1em;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
  border-radius: 10px;
}

.justify > :last-child {
  margin-left: auto;
}

.listing > img {
  width: 240px;
  height: 160px;
  object-fit: cover;
  border-radius: 10px;
  flex-shrink: 0;
}

.text-130 {
  font-size: 1.3em;
}

.text-120 {
  font-size: 1.2em;
}

.text-110 {
  font-size: 1.1em;
}

.text-90 {
  font-size: 0.9em;
}

.text-80 {
  font-size: 0.8em;
}

.text-75 {
  font-size: 0.75em;
}

.text-70 {
  font-size: 0.7em;
}

.text-center {
  text-align: center;
}

.column {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}

.column.sm-gap {
  gap: 0.25em;
}

.column.lg-gap {
  gap: 1em;
}

.row {
  display: flex;
  align-items: center;
  gap: 0.5em;
}

.row.nocenter {
  align-items: start;
}

.row.lg-gap {
  gap: 1em;
}

.row.sm-gap {
  gap: 0.25em;
}

ul {
  margin: 0;
}

ul > li:not(:first-child) {
  margin-top: 0.5em;
}

.tooltip-container {
  position: relative;
}

.tooltip-container svg {
  flex-shrink: 0;
  width: 1.1em;
  height: 1em;
  cursor: pointer;
}

.tooltip {
  display: none;
  position: absolute;
  padding: 1em;
  background: var(--charcoal);
  color: white;
  border-radius: 5px;
  z-index: 3;
  width: 15rem;
  cursor: auto;
}

.tooltip.bottom {
  top: 100%;
  margin-left: -7.5rem;
  margin-top: 1em;
}

.tooltip.bottom::after {
  content: " ";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -0.7em;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent var(--charcoal) transparent;
}

.tooltip.right {
  left: 2.5em;
}

.tooltip.right::after {
  content: " ";
  position: absolute;
  top: calc(50% - 5px);
  left: 0%;
  margin-left: -10px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent var(--charcoal) transparent transparent;
}

.good-value {
  background: var(--green);
  padding: 0.3em 0.8em;
  border-radius: 10px;
}

.good-value svg {
  height: 1.4em;
  width: 1.4em;
}

.appreciating-model {
  fill: var(--blue);
}

.depreciating-model {
  fill: var(--purple);
}

.appreciating-model svg, .depreciating-model svg {
  height: 1.5em;
  width: 1.5em;
}

.value {
  font-weight: 600;
  color: var(--charcoal);
  white-space: nowrap;
}

.value svg {
  height: 1.2em;
  width: 0.6em;
}

.value-block {
  width: 2.4em;
  height: 1.8em;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  color: white;
  border-radius: 5px;
  flex-shrink: 0;
}

.loading, .connectivity-error {
  position: absolute;
  margin: 40vh auto;
  top: 0;
  left: 0;
  right: 0;
  font-size: 2rem;
}

.loading {
  width: 9rem;
}

.loading:after {
  overflow: hidden;
  display: inline-block;
  vertical-align: bottom;
  -webkit-animation: ellipsis steps(4, end) 1.5s infinite;
  animation: ellipsis steps(4, end) 1.5s infinite;
  content: "\2026"; /* ascii code for the ellipsis character */
  width: 0px;
}

@keyframes ellipsis {
  to {
    width: 0.8em;
  }
}

@-webkit-keyframes ellipsis {
  to {
    width: 0.8em;
  }
}

.sparkle {
  position: relative;
}

.star {
  position: absolute;
  animation: growAndShrink 600ms ease-in-out forwards;
}

.star svg {
  fill: var(--yellow);
  animation: spin 600ms linear forwards;
}

@keyframes growAndShrink {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(180deg);
  }
}

.modal {
  position: fixed;
  display: flex;
  padding: 1.5rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: white;
  width: 55em;
  height: 40em;
  border-radius: 5px;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
  z-index: 3;
  overflow-y: scroll;
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.modal.small {
  width: 28em;
  height: 32em;
  border-radius: 5px;
}

.modal::-webkit-scrollbar {
  display: none;
}

:root .modal img {
  width: 90px;
  height: 60px;
}

.modal-mask {
  position: fixed;
  display: none;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.4);
}

.modal .rank {
  width: 1rem;
  flex-shrink: 0;
}

.close-modal {
  cursor: pointer;
  height: 1.6em;
  width: 1.6em;
}

.connectivity-error {
  text-align: center;
}

.footer {
  display: none;
  align-items: center;
  justify-content: center;
  height: 5rem;
  box-sizing: border-box;
  color: white;
  background: var(--charcoal);
}

.footer.visible {
  display: flex;
}

/**********************/
/* Only for Home page */
/**********************/

.home {
  display: none; /* Set to flex after successfully fetching data */
}

.stats-bar {
  border-bottom: 1px solid var(--lightgray);
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.stats-bar::-webkit-scrollbar {
  display: none;
}

.stats-bar-inner {
  width: 100%;
  max-width: 1400px;
  box-sizing: border-box;
  display: flex;
  padding-left: 3.5rem;
  padding-right: 3.5rem;
  margin: 0.5rem auto;
  justify-content: space-between;
  gap: 1em;
}

.listing-trophy {
  position: absolute;
  margin-left: -45px;
  width: 30px;
}

.popular-list .listing:nth-child(1) .listing-trophy {
  fill: var(--gold);
}

.popular-list .listing:nth-child(2) .listing-trophy {
  fill: var(--silver);
}

.popular-list .listing:nth-child(3) .listing-trophy {
  fill: var(--bronze);
}

.flames {
  display: flex;
  width: 2rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}

.flames div {
  display: flex;
  gap: 0;
}

.flames svg {
  width: 1em;
  height: 1.1em;
}

.email-signup {
  padding: 2em 1.6em 2.1em 1.6em;
  background: var(--charcoal);
  border-radius: 10px;
  color: white;
}

.email-signup .input-container {
  position: relative;
}

.email-signup .input-container input {
  position: relative;
  border: none;
  outline: none;
  padding: 8px 10px;
  border-radius: 5px;
  width: 100%;
  max-width: 220px;
}

.email-signup .input-container button {
  border: none;
  background: var(--orange);
  color: white;
  padding: 8px 10px;
  border-radius: 5px;
  cursor: pointer;
}

.email-signup .input-container button:hover {
  background: white;
  color: var(--orange);
}

.email-signup .input-container .validation-msg {
  display: none;
  position: absolute;
  top: 3em;
}

.home .rank {
  width: 0.8em;
  flex-shrink: 0;
}

:root .popular-7d img, :root .best-deals img {
  width: 69px;
  height: 46px;
}

.feeling-lucky {
  position: absolute;
  bottom: 6.5em;
  right: 5em;
  cursor: pointer;
  width: fit-content;
  padding: 0.3em 0.6em;
}

.feeling-lucky.hidden {
  display: none;
}

.feeling-lucky.fixed {
  position: fixed;
}

.shimmer {
  color: rgba(255, 255, 255, 0.1);
  background: -webkit-gradient(linear, left top, right top, from(#312f2b), to(#312f2b), color-stop(0.5, #FFBE0B));
  background: gradient(linear, left top, right top, from(#312f2b), to(#312f2b), color-stop(0.5, #FFBE0B));
  -webkit-background-size: 800px 400px;
  background-size: 800px 400px;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-animation-name: shimmer;
  animation-name: shimmer;
  -webkit-animation-duration: 4s;
  animation-duration: 4s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-color: #312f2b;
}

@-webkit-keyframes shimmer {
  0% {
      background-position: top left;
  }
  100% {
      background-position: top right;
  }
}

@keyframes shimmer {
  0% {
      background-position: top left;
  }
  100% {
      background-position: top right;
  }
}

.see-more {
  cursor: pointer;
}

/******************************/
/* Only for Hall of Fame page */
/******************************/

.hall-of-fame .rank {
  width: 1rem;
  flex-shrink: 0
}

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-button {
  cursor: pointer;
  border: 1px solid rgb(144, 144, 144);
  padding: 0.5em 0.7em;
  border-radius: 5px;
  text-align: center;
}

.dropdown-button span {
  pointer-events: none;
}

.dropdown-button svg {
  height: 1.4em;
  pointer-events: none;
  vertical-align: middle;
}

.category-btn {
  width: 12rem;
}

.year-btn {
  width: 4.8rem;
}

.dropdown-content {
  display: none;
  flex-direction: column;
  width: 100%;
  position: absolute;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
  border-radius: 5px;
  margin-top: 10px;
  right: 0;
  background: white;
  text-align: center;
}

.dropdown-content a {
  padding: 12px 16px;
  text-decoration: none;
  display: flex;
}

.dropdown-content a:hover {
  background-color: #f1f1f1;
}

/* Show the dropdown menu (use JS to add this class to the .dropdown-content container when the user clicks on the dropdown button) */
.show {
  display: flex !important;
}

.hidden {
  display: none;
}

/*************************/
/* Only for Listing page */
/*************************/

.listing-images > * {
  border-radius: 10px;
}

.primary-image {
  width: 100%;
  aspect-ratio: 3/2;
  object-fit: cover;
}

.image-icons {
  display: flex;
  justify-content: center;
}

.image-icons > img {
  width: calc(100% / 5);
  cursor: pointer;
  aspect-ratio: 3/2;
  object-fit: cover;
}

.image-icons > img:first-child {
  border-radius: 10px 0 0 10px;
}

.image-icons > img:last-child {
  border-radius: 0 10px 10px 0;
}

.bat-link {
  color: var(--batcolor);
}

.bat-link > svg {
  fill: var(--batcolor);
}

.x-link {
  color: var(--xcolor);
}

.x-link {
  fill: var(--xcolor);
}

.fb-link {
  color: var(--fbcolor);
}

.fb-link > svg {
  fill: var(--fbcolor);
}

.stats-block {
  display: none; /* Set to flex after successfully fetching stats */
}

.stats-block > .column > .row {
  padding: 1em 1em;
  background: var(--light);
  border-radius: 10px;
  fill: var(--charcoal);
  color: var(--charcoal);
  display: none;
}

.stats-block svg {
  width: auto;
  height: 1.2em;
}

.stat-rank-or-percentile-live, .stat-rank-or-percentile-model {
  display: none;
}

.comment svg {
  width: 1em;
  flex-shrink: 0;
}

.comment:nth-child(1) svg {
  fill: var(--gold);
}

.comment:nth-child(2) svg {
  fill: var(--silver);
}

.comment:nth-child(3) svg {
  fill: var(--bronze);
}

.comment .view-more {
  cursor: pointer;
}

.related-listings {
  margin: 0 auto 3.5rem 0;
}

.related-listings > .row {
  flex-wrap: wrap;
  justify-content: center;
}

.related-listings .listing {
  width: 12em;
}

.related-listings .listing > img {
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: cover;
}

/**********************/
/* Only for User Page */
/**********************/

.profile-img-container {
  width: 5em;
  height: 5em;
  overflow: hidden;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.profile-img-container img {
  max-height: 100%;
  height: auto;
  display: block;
}

.user-stats {
  padding: 1em 1em;
  background: var(--light);
  border-radius: 10px;
  fill: var(--charcoal);
  color: var(--charcoal);
}

/*******************/
/* Only for Search */
/*******************/

.search {
  width: 100%;
  max-width: 650px;
  position: relative;
  border: 1px solid var(--lightgray);
  border-radius: 10px;
}

.search:focus-within {
  outline: 2px solid var(--charcoal);
}

.search svg {
  fill: var(--gray);
  margin-left: 10px;
}

.search input {
  width: 100%;
  padding: 5px 5px 5px 0;
  border: none;
  outline: none;
  border-radius: 10px;
}

.search input:focus::placeholder {
  color: transparent;
}

.search-autocomplete {
  display: none;
  position: absolute;
  top: 44px;
  background: white;
  border-radius: 10px;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
  width: 100%;
  z-index: 1;
}

.search-autocomplete-results {
  padding: 5px;
}

.empty-listing {
  padding: 8px 5px;
}

.search-loading:after {
  overflow: hidden;
  display: inline-block;
  vertical-align: bottom;
  -webkit-animation: ellipsis steps(4, end) 1s infinite;
  animation: ellipsis steps(4, end) 1s infinite;
  content: "\2026"; /* ascii code for the ellipsis character */
  width: 0px;
}

.search-listing {
  display: flex;
  align-items: center;
  gap: 1em;
  padding: 5px;
}

.search-listing > img {
  width: 90px;
  height: 60px;
  object-fit: cover;
  border-radius: 10px;
}

.search-tips {
  padding: 10px;
  border-top: 1px solid var(--lightgray);
}

/***************************/
/* Only for Search Results */
/***************************/

.search-results .listing > img {
  width: 150px;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: cover;
}

.filter-button {
  cursor: pointer;
  border: 1px solid rgb(144, 144, 144);
  padding: 0.5em 0.7em;
  border-radius: 5px;
  text-align: center;
}

.filter-button span {
  pointer-events: none;
}

.filter-button svg {
  height: 1.4em;
  pointer-events: none;
  vertical-align: middle;
}

.search-options input {
  width: 100%;
}

.search-options button {
  position: absolute;
  bottom: 1.5rem;
  width: calc(100% - 3rem);
  color: var(--txtcolor);
}

.auction-status-dropdown {
  width: 15rem;
}

.auction-status-dropdown div {
  cursor: pointer;
}

/******************/
/* Only for About */
/******************/

.about-faq {
  margin: 0;
}

.about-faq > div > div {
  margin-top: 0.5em;
}

.about-faq svg {
  height: 1.25em;
  width: 1.25em;
}

/*****************************/
/* Only for Intelligence */
/*****************************/

.for-sellers {
  display: flex;
  align-items: center;
  background: var(--charcoal);
  color: white;
}

.seller-signup {
  padding: 2em 1.6em 2.1em 1.6em;
  border-radius: 10px;
  border: 2px solid white;
  color: white;
}

form input, form textarea {
  width: 100%;
  padding: 8px 10px;
  border: none;
  outline: none;
  border-radius: 5px;
  font-family: Mona Sans, sans-serif;
  font-size: 1em;
  box-sizing: border-box;
}

form label {
  display: block;
  margin-bottom: 0.3em;
}

form button {
  width: 100%;
  border: none;
  background: var(--orange);
  color: white;
  padding: 8px 10px;
  border-radius: 5px;
  cursor: pointer;
}

/******************/
/* Only for Admin */
/******************/

.analytics {
  display: none;
}

.analytics .rank {
  width: 1em;
  flex-shrink: 0;
}

.analytics .listing > img {
  width: 90px;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: cover;
}
