/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme {
  :root, :host {
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
    monospace;
    --spacing: 0.25rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: 1.33333;
    --text-sm: 0.875rem;
    --text-sm--line-height: 1.42857;
    --text-base: 1rem;
    --text-base--line-height: 1.5;
    --text-2xl: 1.5rem;
    --text-2xl--line-height: 1.33333;
    --font-weight-normal: 400;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  }
  :root, :host {}
}
@layer utilities {
  .col-span-1 {
    grid-column: span 1 / span 1;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .col-span-3 {
    grid-column: span 3 / span 3;
  }
  .col-span-4 {
    grid-column: span 4 / span 4;
  }
  .col-span-5 {
    grid-column: span 5 / span 5;
  }
}
.advanced-search-page .help-wrapper h3, .advanced-search-page  fieldset h3 {
  font-size: 1.25rem;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.advanced-search-page fieldset {
  display: grid;
  gap: 1rem;
}
.advanced-search-page .filter-row {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  @media (width >= 48rem) {
    display: grid;
  }
  @media (width >= 48rem) {
    grid-template-columns: 1fr 3fr;
  }
  @media (width >= 48rem) {
    grid-template-areas: 'empty code''label input';
  }
  code {
    margin: 0px;
    display: inline-block;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    background-image: none;
    padding: 0px;
    @media (width < 48rem) {
      margin-inline: 2rem;
    }
    grid-area: code;
    font-size: 90%;
    span {
      display: inline-block;
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
  }
  > label {
    align-content: center;
    grid-area: label;
  }
  > input, select, .radios {
    margin: 0px;
    @media (width < 48rem) {
      margin-inline: 2rem;
    }
    grid-area: input;
  }
  select {
    display: block;
  }
  input[type=number] {
    display: block;
    width: 100px;
  }
  select[multiple] {
    height: auto;
    overflow: auto;
  }
  input[type=radio] + label {
    margin-right: 1rem;
    display: inline-block;
  }
}
.advanced-search-page .advanced-search-wrapper-card {
  position: sticky;
  top: 0px;
  z-index: 100;
}
@media (width < 48rem) {
  .advanced-search-page .advanced-search-wrapper {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
}
@media (width >= 48rem) {
  .advanced-search-page .advanced-search-wrapper {
    display: grid;
    grid-template-columns: 1fr 3fr;
  }
}
.advanced-search-page .advanced-search-wrapper > h1 {
  margin: 0px;
  display: flex;
  align-items: center;
}
.advanced-search-page .advanced-search-wrapper > div {
  flex: auto;
}
.advanced-search-page .advanced-search-wrapper .invisible-query {
  opacity: 0%;
}
.advanced-search-page .advanced-search-wrapper .input-wrapper {
  position: relative;
  margin-right: 0.75rem;
  flex: auto;
  input, button {
    margin-bottom: 0px;
  }
}
.advanced-search-page .advanced-search-wrapper form {
  margin-bottom: 0px;
}
.advanced-search-page #custom-query {
  width: 100%;
  &:focus + #advanced-query {
    opacity: 80%;
  }
}
.advanced-search-page #form button {
  margin: 0px;
}
.advanced-search-page #advanced-query {
  pointer-events: none;
  position: absolute;
  top: 0px;
  right: 0px;
  left: 0px;
  overflow: hidden;
  padding: 7px 11px;
  white-space: nowrap preserve;
}
.advanced-search-page .help-wrapper h3 {
  display: inline-block;
}
.advanced-search-page .help-wrapper[data-expanded=true] > div {
  display: block;
}
.advanced-search-page .help-wrapper[data-expanded=true] svg.fa-chevron-down, .advanced-search-page .help-wrapper  svg.fa-chevron-right {
  display: inline-block;
}
.advanced-search-page .help-wrapper[data-expanded=true] svg.fa-chevron-right, .advanced-search-page .help-wrapper  svg.fa-chevron-down {
  display: none;
}
.advanced-search-page .help-wrapper > div {
  display: none;
  padding: 0.625rem;
}
.advanced-search-page .help-wrapper ul {
  margin: 0px;
  padding: 0px;
  padding-left: 0.625rem;
  border-left: 2px solid #6c6c6c;
}
.dashboard-page .card {
  margin-bottom: 0px;
}
.dashboard-page .links-layout {
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  row-gap: 1.25rem;
  @media (width >= 48rem) {
    display: grid;
  }
  @media (width >= 64rem) {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
  grid-template-columns: 1fr 1fr 1fr;
  .card {
    display: grid;
    grid-template-rows: auto 1fr auto;
  }
}
.dashboard-page .table-layout {
  display: flex;
  flex-direction: column-reverse;
  gap: 2rem;
  @media (width >= 64rem) {
    display: grid;
  }
  grid-template-columns: 1fr 1fr 1fr;
  .left-col {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-template-rows: auto auto 1fr;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    row-gap: 1.25rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media (width >= 48rem) {
      grid-template-rows: 1fr auto;
    }
    @media (width >= 64rem) {
      display: flex;
    }
    @media (width >= 64rem) {
      flex-direction: column;
    }
    div:first-of-type {
      @media (width >= 48rem) {
        grid-row: span 2 / span 2;
      }
      @media (width >= 64rem) {
        grid-row: span 1 / span 1;
      }
    }
  }
  .right-col {
    grid-column: span 2 / span 2;
  }
  .filters-table {
    margin-bottom: 1.5rem;
    .filter-header, .filter-row {
      display: grid;
      align-items: center;
      gap: 0.875rem;
      padding: 0.75rem;
      @media (width < 48rem) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      @media (width < 48rem) {
        row-gap: 0.25rem;
      }
      @media (width >= 48rem) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      div:first-of-type {
        grid-area: col1;
      }
      div:nth-of-type(2) {
        grid-area: col2;
      }
      div:nth-of-type(3) {
        grid-area: col3;
      }
    }
    .filter-header {
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      @media (width < 48rem) {
        grid-template-areas: 'col1 col3';
      }
      @media (width >= 48rem) {
        grid-template-areas: 'col1 col2 col3';
      }
      div:nth-of-type(2) {
        @media (width < 48rem) {
          display: none;
        }
      }
    }
    .filter-row {
      border-top-style: var(--tw-border-style);
      border-top-width: 1px;
      @media (width < 48rem) {
        grid-template-areas: 'col1 col3''col2 col3';
      }
      @media (width >= 48rem) {
        grid-template-areas: 'col1 col2 col3';
      }
      border-color: var(--table-td-border-color);
      div:first-of-type {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
      }
      &:last-of-type {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
        border-color: var(--table-td-border-color);
      }
    }
  }
  .filter-buttons {
    gap: 0.5rem;
    @media (width < 48rem) {
      display: grid;
    }
    @media (width < 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media (width < 48rem) {
      grid-template-areas: 'btn1 btn1''btn2 btn3';
    }
    @media (width >= 48rem) {
      display: flex;
    }
    @media (width >= 48rem) {
      flex-direction: row-reverse;
    }
    .button {
      &:first-of-type {
        grid-area: btn1;
      }
      &:nth-child(2) {
        grid-area: btn2;
      }
      &:nth-child(3) {
        grid-area: btn3;
      }
    }
  }
}
.dashboard-page #quick-links {
  display: grid;
  gap: 0.625rem;
  > div {
    display: flex;
    gap: 0.625rem;
  }
}
.domain-page .domain-grid {
  display: grid;
  font-family: var(--font-mono);
  @media (width < 48rem) {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  @media (width >= 48rem) {
    grid-template-columns: 9fr 3fr;
  }
  @media (width >= 48rem) {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
  @media (width >= 48rem) {
    row-gap: 2rem;
  }
}
.download-page .download-layout {
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  row-gap: 1.25rem;
  @media (width >= 48rem) {
    display: grid;
  }
  @media (width >= 64rem) {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
  grid-template-columns: 2fr 1fr;
}
.download-page #downloadProgress {
  position: relative;
  margin: 0px;
  padding: 3px;
  font-family: var(--font-mono);
}
.download-page #downloadStatus {
  position: absolute;
  width: 100%;
  text-align: center;
}
.download-page #downloadBar {
  background-color: var(--color-success);
  color: var(--color-success-content);
  height: 20px;
  width: 0%;
  transition: width 0.2s ease-in;
}
.download-page .download-info {
  font-size: 0.75rem;
}
.download-page ol.download-faqs {
  counter-reset: item;
  &> li {
    counter-increment: item;
    :before {
      display: inline-block;
      text-align: right;
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      content: counter(item) ".";
      padding-right: 0.5em;
      width: 1.5em;
    }
  }
}
.examples-page .sample-card {
  gap: 0.5rem;
  .button {
    aspect-ratio: 1 / 1;
    flex-shrink: 0;
    align-self: flex-start;
  }
}
.examples-page .sample-query {
  margin-inline: 0px;
  margin-top: 0.5rem;
  display: inline-block;
  white-space: break-spaces;
}
.explore-page .browse-categories {
  margin-bottom: 2rem;
  a {
    margin: 0px;
    display: block;
    height: 125px;
    width: 100%;
    max-width: 100%;
    background-size: cover;
    background-position: center;
  }
  span {
    position: absolute;
    bottom: 0px;
    left: 0px;
    padding-inline: 0.625rem;
    padding-block: 5px;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
}
#category-banner {
  display: grid;
  grid-template-rows: min-content 1fr;
  background-size: cover !important;
  height: 200px;
  .heading-highlight {
    align-self: flex-end;
    span {
      margin: 0px;
      margin-bottom: 0.5rem;
      display: inline-block;
      padding-inline: 0px;
      padding-block: 0px;
    }
  }
}
#category-banner h3.heading-highlight {
  margin-bottom: 0;
}
.explore-category-page {
  padding-block: 2.5rem;
  --tw-shadow: 0 0 #0000;
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .card-no-shadow {
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .category-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
    row-gap: 3.75rem;
    padding: 2.5rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media (width >= 48rem) {
      row-gap: 2.5rem;
    }
    > * {
      flex: 1 1 350px;
      background-color: transparent;
      > p, > img {
        margin-bottom: 0.75rem;
      }
    }
  }
}
.host-page #host-map {
  position: absolute;
  height: 100%;
  width: 100%;
  overflow: hidden;
  z-index: -1;
}
.host-page .host-title {
  margin-top: 5rem;
  margin-bottom: 0px;
  display: inline-block;
  padding-inline: 0.625rem;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  background-image: none !important;
  font-family: Arial;
}
.host-page .host-header-links {
  margin-left: 0.625rem;
  display: inline-flex;
  gap: 0.625rem;
  vertical-align: bottom;
  @media (width < 48rem) {
    margin: 0px;
  }
  @media (width < 48rem) {
    margin-top: 0.625rem;
  }
  @media (width < 48rem) {
    display: flex;
  }
  a {
    display: inline-block;
    padding-inline: 0.375rem;
    vertical-align: bottom;
    font-size: 0.9375rem;
  }
}
.host-page #ports {
  margin-top: 0.625rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  a {
    margin-bottom: 0px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    font-size: 0.75rem;
    width: 48px;
    height: 48px;
  }
}
.host-page .banner-title span {
  font-size: 0.875rem;
}
.host-page .screenshot {
  margin-top: 0.625rem;
  width: 100%;
}
.host-page #http-components {
  -moz-columns: 1;
       columns: 1;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
  padding-inline: 1rem;
  @media (width >= 40rem) {
    -moz-columns: 2;
         columns: 2;
  }
  .category {
    page-break-inside: avoid;
    -moz-column-break-inside: avoid;
         break-inside: avoid-column;
    padding-bottom: 1rem;
  }
  .category-heading {
    padding-bottom: 0.75rem;
    white-space: nowrap;
    text-transform: capitalize;
    font-size: 0.9375rem;
    font-weight: 600;
  }
  .technologies {
    display: grid;
    gap: 0.5rem;
    padding-left: 0.5rem;
    a {
      display: grid;
      align-items: center;
      -moz-column-gap: 0.5rem;
           column-gap: 0.5rem;
      overflow: hidden;
      text-decoration-line: none;
      grid-template-areas: 'icon name';
      grid-template-columns: auto 1fr;
      &:has(:nth-child(3)) {
        grid-template-areas: 'icon name' 'icon version';
      }
      .technology-icon {
        flex-shrink: 0;
        overflow: hidden;
        border-radius: 50%;
        grid-area: icon;
        width: 32px;
        height: 32px;
        background-size: 16px 16px;
        background-repeat: no-repeat;
        background-position: center;
        background-color: #fff;
        img {
          margin: auto;
          display: block;
          height: 16px;
          width: 16px;
        }
      }
      .technology-name {
        grid-area: name;
        font-size: 0.8125rem;
        letter-spacing: 1px;
      }
      .technology-versions {
        display: flex;
        flex-wrap: wrap;
        gap: 0.25rem;
        font-family: var(--font-mono);
        grid-area: version;
        span {
          padding-inline: 0.25rem;
          padding-block: 0px;
          border-radius: 2px;
          font-size: 0.625rem;
          vertical-align: middle;
        }
      }
    }
  }
}
.host-page .cve-list {
  text-align: right;
  margin-top: 8px;
}
.host-page .banner-cves {
  display: flex;
  flex-direction: row;
  gap: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  margin-top: 4px;
}
.host-page .banner-cves .cve-tag {
  font-family: var(--font-mono);
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  min-width: 26px;
}
.host-page .banner-cves a.cve-tag {
  cursor: pointer;
}
.host-page h1#vulns {
  display: flex;
  align-items: center;
  div {
    flex: 1;
    text-align: right;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  select {
    margin-bottom: 0px;
    &:first-of-type {
      margin-right: 0.25rem;
    }
  }
}
.host-page .collapsible {
  position: relative;
  overflow: hidden;
  > input {
    display: none;
    &:checked {
      ~ .expand-button {
        display: none;
      }
    }
  }
  &:not(:has(> input:checked)) {
    .hidden-row {
      display: none !important;
    }
  }
  > .expand-button {
    margin-top: 1.25rem;
    width: 100%;
    cursor: pointer;
    text-align: center;
  }
}
.host-page #vulns-table .vuln-title-row {
  margin-top: 1.5rem;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  font-size: 1.125rem;
  svg {
    margin-right: 0.25rem;
  }
  span {
    margin-left: 0.25rem;
    font-family: var(--font-mono);
    font-size: 0.8125rem;
  }
}
.host-page #vulns-table .vuln-row {
  margin-left: 1.5rem;
  display: block;
  gap: 1rem;
  padding-block: 0.75rem;
  @media (width >= 64rem) {
    display: flex;
  }
  border-bottom: 1px solid var(--table-td-border-color);
  a {
    display: block;
    flex-shrink: 0;
    text-align: left;
    font-family: var(--font-mono);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    @media (width < 64rem) {
      margin-bottom: 0.5rem;
    }
    font-size: 0.75rem;
  }
  > div {
    overflow-wrap: anywhere;
  }
}
.host-page #vulns-table .vuln-title-row.vuln-highlight, .host-page #vulns-table  .vuln-row.vuln-highlight {
  animation: anim-highlight ease-in 0.5s 1;
}
.host-page #vulns-table .tag {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.host-page .http-title {
  margin-bottom: 0.625rem;
  display: flex;
  gap: 0.5rem;
  a, span {
    vertical-align: middle;
    font-size: 0.9375rem;
  }
  a {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
}
.host-page {
  @keyframes anim-highlight {
    0% {
      background-color: #fcfc8c;
      opacity: 1;
    }
  }
}
.host-page *[data-clipboard] {
  cursor: pointer;
}
.host-page *[data-clipboard]::after {
  text-transform: none !important;
}
.host-page #host ul, .host-page  #host pre {
  margin-bottom: 0;
}
.host-page .top-info {
  margin-bottom: 1rem;
  display: flex;
  flex-direction: row-reverse;
  gap: 1rem;
  @media (width < 48rem) {
    flex-direction: column;
  }
  > .grid-heading:first-of-type {
    margin-bottom: auto;
  }
  .grid-heading {
    margin: 0px;
  }
}
.host-page #tags {
  flex: 1;
  flex-wrap: wrap;
  h6 {
    display: inline;
    vertical-align: middle;
  }
}
.host-page .banner pre {
  margin-bottom: 0px;
  word-break: break-all;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.host-page .banner-title .favicon {
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
}
.host-page :target {
  animation: flash ease-in 0.5s 1;
}
.host-page {
  @keyframes flash {
    0% {
      background-color: yellow;
      opacity: 1;
    }
  }
}
.host-page .hashes-table > h2 {
  margin-bottom: 0.625rem;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  font-size: 1.125rem;
}
.host-page .hashes-table > div {
  display: grid;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  font-family: var(--font-mono);
  grid-template-columns: min-content min-content;
  font-size: 0.75rem;
  a {
    display: inline-block;
    text-align: right;
  }
}
.host-page h6.grid-heading {
  display: flex;
  gap: 0.375rem;
  > div.text-secondary {
    flex: 1;
    align-content: center;
    text-align: right;
    font-family: var(--font-mono);
    font-size: 0.75rem;
    a.button {
      aspect-ratio: 1 / 1;
      height: auto;
      padding: 0.25rem;
    }
  }
}
.host-page .host-grid {
  display: grid;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  @media (width < 64rem) {
    display: flex;
  }
  @media (width < 64rem) {
    flex-direction: column;
  }
  grid-template-columns: 1fr 1fr;
  grid-template-rows: min-content 1fr;
  .right-column {
    grid-row: span 2;
  }
}
.host-page .grid-table {
  display: grid;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  @media (width < 64rem) {
    display: flex;
  }
  @media (width < 64rem) {
    flex-direction: column;
  }
  @media (width < 64rem) {
    gap: 0.375rem;
  }
  grid-template-columns: fit-content(150px) 1fr;
  .grid-border {
    grid-column: span 2;
    border-bottom: 1px solid var(--table-td-border-color);
    margin: 12px 0;
  }
  > div {
    @media (width < 64rem) {
      margin-left: 1.25rem;
    }
  }
  label {
    margin: 0px;
    align-self: center;
    padding: 0px;
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    @media (width < 64rem) {
      align-self: flex-start;
    }
  }
}
.host-page .domains {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  a.button {
    text-transform: none;
    font-size: 0.75rem;
  }
}
.host-history-page .history-grid {
  display: grid;
  @media (width >= 48rem) {
    grid-template-columns: 1fr 5fr;
  }
  @media (width >= 48rem) {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
  @media (width >= 48rem) {
    row-gap: 4rem;
  }
}
@media (width < 48rem) {
  .host-history-page .port-info {
    top: 0px;
    z-index: 10;
  }
}
@media (width >= 48rem) {
  .host-history-page .port-info > div {
    position: sticky;
    top: 1rem;
    z-index: 10;
  }
}
@media (width < 48rem) {
  .host-history-page .port-info > div .heading-highlight {
    --tw-shadow: 0px 4px 0px var(--tw-shadow-color, #00000026);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
}
.host-history-page .port-info > div .heading-highlight span {
  display: block;
  padding-inline: 1rem;
  text-align: right;
}
.host-history-page .banner-row {
  margin-bottom: 20px;
}
.host-history-page .timestamp {
  margin-bottom: 1rem;
  font-family: var(--font-mono);
  padding: 2px 10px;
  font-size: 0.75rem;
}
.host-history-page .banner pre {
  word-break: break-all;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.host-history-page .port-history-grid {
  display: grid;
  gap: 1rem;
  @media (width < 48rem) {
    margin-bottom: 2rem;
  }
  @media (width >= 48rem) {
    grid-template-columns: 1fr 3fr;
  }
  .port-info-wrapper {
    position: sticky;
    top: 1rem;
  }
}
.host-raw-page .tag svg {
  margin-right: 4px;
}
.host-raw-page .underscore-link {
  vertical-align: text-bottom;
  h6 {
    margin: 0px 3px;
    border-bottom: 2px solid #2196f3;
    &:hover {
      border-bottom-color: #42a5f5;
    }
  }
}
.host-raw-page .external-link-icon {
  margin-left: 4px;
}
.products-page .products-grid {
  margin-bottom: 2rem;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.5rem;
  @media (width >= 40rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 64rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .card {
    margin: 0px;
    display: grid;
    grid-template-rows: auto 1fr auto;
    .button {
      margin: 0px;
      width: 100%;
    }
  }
}
.public-page .banner {
  display: grid;
  gap: 1rem;
  padding: 0px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  grid-template-areas: 'main-text main-text''tagline tagline''image image';
  @media (width >= 48rem) {
    padding-top: 5rem;
  }
  @media (width >= 48rem) {
    padding-bottom: 5rem;
  }
  @media (width >= 48rem) {
    grid-template-areas: 'main-text main-text''tagline image';
  }
  @media (width >= 64rem) {
    grid-template-areas: 'main-text image''tagline image';
  }
  font-family: Arial;
  grid-template-columns: 5fr 7fr;
  h1 {
    margin: 0px;
    text-align: left;
    grid-area: main-text;
    color: #efefef;
    font-size: 2.5rem;
    font-weight: bold;
    span {
      background-color: black;
      line-height: 1.4;
    }
  }
  .tagline {
    grid-area: tagline;
    h2 {
      text-align: left;
      font-size: 1.25rem;
    }
  }
  .image {
    grid-area: image;
  }
}
.public-page .explore-section {
  padding-block: 2rem;
  .layout {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0px;
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    @media (width >= 48rem) {
      -moz-column-gap: 1.5rem;
           column-gap: 1.5rem;
    }
  }
}
.public-page .clients-section {
  padding-block: 2rem;
  .layout {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0px;
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    @media (width >= 48rem) {
      -moz-column-gap: 2rem;
           column-gap: 2rem;
    }
    h5 {
      margin: 0px;
      @media (width >= 64rem) {
        text-align: center;
      }
    }
  }
}
.public-page .features-section {
  padding-bottom: 2rem;
  background-color: var(--card-bg);
  .monitor-section, .developer-section {
    display: grid;
    gap: 1rem;
    padding: 0px;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    @media (width >= 48rem) {
      padding-top: 2rem;
    }
    @media (width >= 48rem) {
      padding-bottom: 2rem;
    }
    grid-template-rows: fit-content(100%) 1fr;
    > h4 {
      margin: 0px;
      text-align: left;
      grid-area: main-text;
    }
    > div:first-of-type {
      grid-area: description;
    }
    > .img-container, > img {
      margin-inline: auto;
      margin-block: 0px;
      grid-area: image;
    }
  }
  .monitor-section {
    grid-template-areas: 'main-text main-text''image image''description description';
    @media (width >= 48rem) {
      grid-template-areas: 'main-text main-text''description image';
    }
    @media (width >= 64rem) {
      grid-template-areas: 'main-text image''description image';
    }
  }
  .developer-section {
    grid-template-areas: 'main-text main-text''image image''description description';
    @media (width >= 48rem) {
      grid-template-areas: 'main-text main-text''image description';
    }
    @media (width >= 64rem) {
      grid-template-areas: 'image main-text''image description';
    }
  }
  .extras-section {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    grid-template-rows: auto auto;
    gap: 1rem;
    @media (width >= 48rem) {
      grid-auto-flow: column;
    }
    @media (width >= 48rem) {
      grid-template-columns: 1fr 1fr;
    }
    p {
      margin-bottom: 0px;
    }
  }
}
.search-page .tile-ssl ul {
  margin: 0px;
  margin-left: 5px;
  padding: 0px;
}
.search-page .tile-ssl li > span {
  display: block;
}
.search-page .l-search-results {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  row-gap: 1rem;
  overflow: hidden;
  @media (width >= 40rem) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    -moz-column-gap: 4rem;
         column-gap: 4rem;
  }
  font-family: Arial;
  .results {
    grid-column: span 3 / span 3;
    @media (width < 40rem) {
      padding: 0px;
    }
    @media (width >= 40rem) {
      padding: 1.25rem;
    }
  }
  .summary {
    @media (width < 40rem) {
      padding: 0px;
    }
    @media (width >= 40rem) {
      padding: 1.25rem;
    }
    h6 {
      border-bottom: 1px dashed var(--color-content);
      font-size: 0.75rem;
      margin-bottom: 5px;
      text-transform: uppercase;
    }
    ul {
      li {
        a {
          --tw-font-weight: var(--font-weight-bold);
          font-weight: var(--font-weight-bold);
          font-size: 0.8125rem;
        }
        span {
          font-family: var(--font-mono);
          font-size: 0.75rem;
        }
      }
    }
  }
  .result {
    padding-bottom: 30px;
    .heading {
      margin-bottom: 0.125rem;
      display: flex;
      align-items: center;
      -moz-column-gap: 0.375rem;
           column-gap: 0.375rem;
      line-height: 1rem;
      .title {
        overflow: hidden;
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 1.0625rem;
        line-height: 1.6;
      }
    }
    .host {
      display: inline-block;
      margin-right: 4px;
      font-size: 0.75rem;
    }
    .timestamp {
      margin-left: 2.5px;
      flex: 1;
      text-align: right;
    }
    .result-container {
      display: flex;
      flex-wrap: wrap;
      row-gap: 0.625rem;
      padding-inline: 0.625rem;
      -moz-column-gap: min(20px, 4%);
           column-gap: min(20px, 4%);
      > div {
        flex: 1;
        min-width: max(180px, 13.33%);
        &:last-of-type {
          flex-grow: 10;
          min-width: 350px;
        }
      }
    }
    .tile.minecraft {
      text-align: center;
    }
    .columns {
      padding: 0px;
    }
    .hostnames {
      word-break: break-all;
    }
    pre {
      margin: 0px;
    }
    .flag {
      margin-right: 0.25rem;
      display: inline-block;
      vertical-align: bottom;
    }
  }
  .result-details {
    line-height: 1.2;
    font-size: 0.6875rem;
    ul {
      margin-bottom: 0.625rem;
      padding: 0px;
    }
    li {
      margin-bottom: 3px;
      &.components {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.625rem;
        padding-top: 0.375rem;
        .http-tech {
          display: inline-block;
        }
      }
      &.tags {
        display: flex;
        flex-direction: row;
        gap: 0.5rem;
        padding-top: 0.375rem;
      }
    }
  }
  .tile-ssl {
    font-size: 0.6875rem;
  }
  .favicon {
    flex-shrink: 0;
  }
}
.search-page img.screenshot {
  margin-top: 0.625rem;
  width: 100%;
}
.search-page .tile {
  font-size: 0.6875rem;
}
.search-page .tile h1 {
  margin-bottom: 5px;
  font-size: 0.875rem;
}
.search-page #worldmap {
  margin-inline: 0px;
  margin-block: 0.5rem;
  aspect-ratio: 2;
}
.search-page #shodan-links {
  margin-bottom: 0.625rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.625rem;
  @media (width >= 48rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    grid-template-columns: repeat(auto-fit,minmax(0,1fr));
  }
  a {
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding-inline: 0.5rem;
    padding-block: 0.25rem;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
    &::after {
      position: absolute;
      inset: 0px;
      top: -100%;
      height: 100%;
      width: 100%;
      --tw-duration: 100ms;
      transition-duration: 100ms;
      content: '';
    }
    &.card-orange::after {
      background-color: var(--color-orange);
    }
    &.card-blue::after {
      background-color: var(--color-blue);
    }
    &.card-red::after {
      background-color: var(--color-red);
    }
    &.card-purple::after {
      background-color: var(--color-purple);
    }
    &.card-light-green::after {
      background-color: var(--color-light-green);
    }
    &.card-light-red::after {
      background-color: var(--color-light-red);
    }
    &:hover {
      &.card-orange {
        color: var(--color-orange-content);
      }
      &.card-blue {
        color: var(--color-blue-content);
      }
      &.card-red {
        color: var(--color-red-content);
      }
      &.card-purple {
        color: var(--color-purple-content);
      }
      &.card-light-green {
        color: var(--color-light-green-content);
      }
      &.card-light-red {
        color: var(--color-light-red-content);
      }
      &::after {
        top: 0px;
        z-index: -10;
      }
    }
  }
}
.search-page .facet-list li {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  @media (width >= 40rem) {
    flex-direction: column;
  }
  @media (width >= 64rem) {
    flex-direction: row;
  }
  @media (width >= 64rem) {
    align-items: flex-start;
  }
  -moz-column-gap: 10px;
       column-gap: 10px;
  a {
    font-size: 0.875rem;
    white-space: wrap;
  }
}
@media (width < 64rem) {
  .search-page .total-results {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.facet-searchbox {
  gap: 0.625rem;
  @media (width < 40rem) {
    display: grid;
  }
  @media (width < 40rem) {
    grid-template-columns: 1fr 1fr;
  }
  @media (width < 40rem) {
    grid-template-areas: 'query query''facet button';
  }
  @media (width >= 40rem) {
    display: flex;
  }
  @media (width >= 40rem) {
    flex-wrap: wrap;
  }
  .query {
    grid-area: query;
    flex: 1;
    min-width: 300px;
  }
  .facet {
    grid-area: facet;
  }
  button {
    grid-area: button;
  }
}
.facets-card {
  display: grid;
  grid-template-columns: 4fr auto 2fr;
  align-items: center;
  -moz-column-gap: 0.625rem;
       column-gap: 0.625rem;
  row-gap: 0.375rem;
  .name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .value {
    text-align: right;
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .bar {
    height: 100%;
    min-height: 1.25rem;
    padding-block: 0.125rem;
    > div {
      height: 100%;
    }
  }
}
.facet-report {
  font-size: 2rem;
  line-height: 0;
}
.btn-group {
  display: inline-flex;
  border: 1px solid #4caf50;
  overflow: hidden;
}
.btn-toggle {
  padding: 6px 14px;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background: transparent;
  border-right: 1px solid #4caf50;
  font-size: 14px;
  color: #4caf50;
  margin-bottom: 0;
}
.btn-toggle:last-child {
  border-right: none;
}
.btn-toggle input {
  display: none;
}
.btn-toggle.active {
  background: #4caf50;
  border-color: #4caf50;
  color: black;
}
.padding-y {
  padding: 20px 0;
}
.whois-html > pre {
  font-size: 14px;
}
.last-update {
  margin-top: 4px;
}
.report-page .header-wrapper {
  display: flex;
  flex-direction: column;
  align-items: baseline;
  gap: 0.5rem;
  @media (width >= 48rem) {
    flex-direction: row;
  }
}
.report-page ul.facet-list {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  li {
    display: flex;
    gap: 1rem;
    a {
      overflow: hidden;
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    span {
      font-family: var(--font-mono);
    }
    &.more {
      margin: 0px;
      padding-top: 0.5rem;
    }
  }
}
.report-page .grid-layout {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  @media (width >= 48rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 48rem) {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  @media (width >= 64rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .worldmap-card {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  &.ssl-grid-layout {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .jarm-card {
      @media (width >= 48rem) {
        grid-column: span 2 / span 2;
      }
    }
  }
}
.jsonTree {
  margin-left: .5rem;
  font-family: monospace;
  font-size: .875rem;
}
.jsonTree ol ol,.jsonTree ol ul,.jsonTree ul ol,.jsonTree ul ul {
  font-size: 100%;
}
.jsonTree li {
  list-style: none;
}
.jsonTree .jsonTree-child-nodes {
  margin-bottom: 0;
  margin-left: 0;
  padding-left: 2.5rem;
  line-height: 2;
  display: none;
}
.jsonTree .jsonTree-expand-button {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTEiIGhlaWdodD0iMjIiPjxnIHN0cm9rZT0iIzAwMCIgZmlsbD0ibm9uZSI+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEyOS41IC0zMzMuODYyKSB0cmFuc2xhdGUoMCAuMTg4KSI+PHJlY3QgdHJhbnNmb3JtPSJtYXRyaXgoLjk2MiAwIDAgLjk3MSA0Ljk0MyAxMS41NDgpIiByeT0iMiIgcng9IjIiIHk9IjMzMi4zNjIiIHg9IjEzMCIgaGVpZ2h0PSIxMC4zMzciIHdpZHRoPSIxMC40MzIiIG9wYWNpdHk9Ii41Ii8+PGc+PHBhdGggZD0iTTEzMiAzMzkuMTc1aDYiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZD0iTTEzNSAzMzYuMTc1djYiIG9wYWNpdHk9Ii41Ii8+PC9nPjwvZz48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTI5LjUgLTMzMy44NjIpIj48cmVjdCB3aWR0aD0iMTAuNDMyIiBoZWlnaHQ9IjEwLjMzNyIgeD0iMTMwIiB5PSIzMzIuMzYyIiByeD0iMiIgcnk9IjIiIHRyYW5zZm9ybT0ibWF0cml4KC45NjIgMCAwIC45NzEgNC45NDMgMjIuNzM2KSIgb3BhY2l0eT0iLjUiLz48cGF0aCBkPSJNMTMyIDM1MC4zNjJoNiIgb3BhY2l0eT0iLjUiLz48L2c+PC9nPjwvc3ZnPgo=);
  width: 11px;
  height: 11px;
  display: block;
  position: absolute;
  top: 3px;
  left: -15px;
}
.jsonTree .jsonTree-show-more {
  cursor: pointer;
  padding: 0 8px;
  display: inline-block;
}
.jsonTree .jsonTree-node-expanded>.jsonTree-label-wrapper>.jsonTree-label>.jsonTree-expand-button {
  background-position: 0 -11px;
}
.jsonTree .jsonTree-node-expanded>.jsonTree-value-wrapper>.jsonTree-value>.jsonTree-show-more {
  display: none;
}
.jsonTree .jsonTree-node-expanded>.jsonTree-value-wrapper>.jsonTree-value>.jsonTree-child-nodes {
  display: block;
}
.jsonTree .jsonTree-label-wrapper {
  float: left;
  margin-right: 1rem;
}
.jsonTree .jsonTree-label {
  vertical-align: top;
  padding: 1px;
  font-weight: 400;
  position: relative;
}
.jsonTree .jsonTree-node-marked>.jsonTree-label-wrapper>.jsonTree-label {
  border-radius: 0;
  background: var(--jsonTree-node-label-marked,#ff0) !important;
  color: var(--jsonTree-node-label-marked-content,#000) !important;
}
.jsonTree .jsonTree-node-marked>.jsonTree-value-wrapper>.jsonTree-value {
  padding: 1px;
  background: var(--jsonTree-node-value-marked) !important;
  color: var(--jsonTree-node-value-marked-content) !important;
}
.jsonTree .jsonTree-node-complex>.jsonTree-value-wrapper {
  overflow: inherit;
}
.jsonTree .jsonTree-node-empty>.jsonTree-label-wrapper>.jsonTree-label>.jsonTree-expand-button,.jsonTree .jsonTree-node-empty>.jsonTree-value-wrapper>.jsonTree-value>.jsonTree-show-more {
  display: none !important;
}
.jsonTree .jsonTree-node-empty>.jsonTree-label-wrapper>.jsonTree-label {
  cursor: default;
}
.jsonTree .jsonTree-node-complex:not(.jsonTree-node-empty)>.jsonTree-label-wrapper>.jsonTree-label,.jsonTree .jsonTree-node-complex:not(.jsonTree-node-empty)>.jsonTree-label-wrapper>.jsonTree-label * {
  cursor: pointer;
}
.jsonTree .jsonTree-value-wrapper {
  display: block;
  overflow: hidden;
}
.jsonTree .jsonTree-value {
  word-break: break-word;
  vertical-align: top;
  display: inline;
}
.jsonTree .jsonTree-value a {
  text-decoration: underline;
}
.jsonTree .jsonTree-value pre {
  white-space: break-spaces;
  max-height: 400px;
  margin: 0;
  font-size: 14px;
  overflow: auto;
}
.jsonTree .jsonTree-value-null,.jsonTree .jsonTree-value-string,.jsonTree .jsonTree-value-number,.jsonTree .jsonTree-value-boolean {
  font-weight: 700;
}
.jsonTree .jsonTree-value-string img+span {
  margin-left: 4px;
}
:is([data-theme="dark"], [data-theme="cyberpunk"], [data-theme="outrun"]) .jsonTree-expand-button {
  filter: invert(80%) sepia(75%) saturate(473%) hue-rotate(28deg) brightness(105%) contrast(101%);
}
.svgMap-container, .svgMap-wrapper {
  position: relative;
}
.svgMap-block-zoom-notice {
  position: absolute;
  z-index: 2;
  top: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  pointer-events: none;
  opacity: 0;
  color: #fff;
  transition: opacity 250ms;
}
.svgMap-block-zoom-notice-active .svgMap-block-zoom-notice {
  pointer-events: all;
  top: 0;
  opacity: 1;
}
.svgMap-block-zoom-notice > div {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  text-align: center;
  padding: 0 32px;
  transform: translateY(-50%);
  font-size: 28px;
}
@media (max-width: 900px) {
  .svgMap-block-zoom-notice > div {
    font-size: 22px;
  }
}
.svgMap-map-wrapper {
  position: relative;
  width: 100%;
  padding-top: 50%;
  overflow: hidden;
  background: #d9ecff;
  color: #111;
}
.svgMap-map-wrapper * {
  box-sizing: border-box;
}
.svgMap-map-wrapper :focus:not(:focus-visible) {
  outline: 0;
}
.svgMap-map-wrapper .svgMap-map-image {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}
.svgMap-map-wrapper .svgMap-map-controls-wrapper {
  position: absolute;
  z-index: 1;
  display: flex;
  overflow: hidden;
  border-radius: 2px;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}
.svgMap-map-wrapper .svgMap-map-controls-wrapper.svgMap-controls-position-bottomLeft {
  bottom: 10px;
  left: 10px;
}
.svgMap-map-wrapper .svgMap-map-controls-wrapper.svgMap-controls-position-bottomRight {
  bottom: 10px;
  right: 10px;
}
.svgMap-map-wrapper .svgMap-map-controls-wrapper.svgMap-controls-position-topLeft {
  top: 10px;
  left: 10px;
}
.svgMap-map-wrapper .svgMap-map-controls-wrapper.svgMap-controls-position-topRight {
  top: 10px;
  right: 10px;
}
.svgMap-map-wrapper .svgMap-map-controls-wrapper.svgMap-disabled {
  display: none;
}
.svgMap-map-wrapper .svgMap-map-controls-move, .svgMap-map-wrapper .svgMap-map-controls-zoom {
  display: flex;
  margin-right: 5px;
  overflow: hidden;
  background: #fff;
}
.svgMap-map-wrapper .svgMap-map-controls-move:last-child, .svgMap-map-wrapper .svgMap-map-controls-zoom:last-child {
  margin-right: 0;
}
.svgMap-map-wrapper .svgMap-control-button {
  background-color: #fff;
  border: 0;
  border-radius: 0;
  color: #fff;
  font: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0;
  overflow: visible;
  text-transform: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  width: 32px;
  height: 32px;
  position: relative;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button::after, .svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #ccc;
  transition: background-color 250ms;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button::before {
  width: 11px;
  height: 3px;
}
@media (hover: hover) {
  .svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button:hover::after, .svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button:hover::before {
    background: #000;
  }
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button:active::after, .svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button:active::before {
  background: #000;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-zoom-reset-button::before {
  width: 11px;
  height: 11px;
  background: 0 0;
  border: 2px solid #ccc;
  transition: border-color 250ms;
}
@media (hover: hover) {
  .svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-zoom-reset-button:hover::before {
    background: 0 0;
    border-color: #000;
  }
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-zoom-reset-button:active::before {
  background: 0 0;
  border-color: #000;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-disabled::after, .svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-disabled::before {
  background: #eee;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-zoom-reset-button.svgMap-disabled {
  cursor: default;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-button.svgMap-zoom-reset-button.svgMap-disabled::before {
  border: 2px solid #eee;
  background: 0 0;
}
.svgMap-map-wrapper .svgMap-control-button.svgMap-zoom-in-button::after {
  width: 3px;
  height: 11px;
}
.svgMap-map-wrapper .svgMap-map-continent-controls-wrapper {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 1;
  display: flex;
  border-radius: 2px;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}
.svgMap-map-wrapper .svgMap-country {
  fill: var(--svg-map-country-fill, #e2e2e2);
  stroke: #fff;
  stroke-width: 1;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  transition: fill 250ms, stroke 250ms;
}
.svgMap-map-wrapper .svgMap-country[data-link], .svgMap-wrapper.svgMap-country-click-callback .svgMap-map-wrapper .svgMap-country {
  cursor: pointer;
}
@media (hover: hover) {
  .svgMap-map-wrapper .svgMap-country:hover {
    stroke: #333;
    stroke-width: 1.5;
  }
}
.svgMap-map-wrapper .svgMap-country.svgMap-active {
  stroke: #333;
  stroke-width: 1.5;
}
.svgMap-persistent-tooltip, .svgMap-tooltip {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
  position: absolute;
  z-index: 2;
  border-radius: 2px;
  background: #fff;
  transform: translate(-50%, -100%);
  border-bottom: 1px solid #111;
  pointer-events: none;
  min-width: 60px;
}
.svgMap-persistent-tooltip.svgMap-tooltip-flipped, .svgMap-tooltip.svgMap-tooltip-flipped {
  transform: translate(-50%, 0);
  border-bottom: 0;
  border-top: 1px solid #111;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content-container, .svgMap-tooltip .svgMap-tooltip-content-container {
  position: relative;
  padding: 10px 20px;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content-container .svgMap-tooltip-flag-container, .svgMap-tooltip .svgMap-tooltip-content-container .svgMap-tooltip-flag-container {
  text-align: center;
  margin: 2px 0 5px;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content-container .svgMap-tooltip-flag-container.svgMap-tooltip-flag-container-emoji, .svgMap-tooltip .svgMap-tooltip-content-container .svgMap-tooltip-flag-container.svgMap-tooltip-flag-container-emoji {
  font-size: 50px;
  line-height: 0;
  padding: 25px 0 15px;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content-container .svgMap-tooltip-flag-container .svgMap-tooltip-flag, .svgMap-tooltip .svgMap-tooltip-content-container .svgMap-tooltip-flag-container .svgMap-tooltip-flag {
  display: block;
  margin: auto;
  width: auto;
  height: 32px;
  padding: 2px;
  background: rgba(0, 0, 0, 0.15);
  border-radius: 2px;
}
.svgMap-persistent-tooltip .svgMap-tooltip-title, .svgMap-tooltip .svgMap-tooltip-title {
  white-space: nowrap;
  font-size: 18px;
  line-height: 28px;
  padding: 0 0 8px;
  text-align: center;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content, .svgMap-tooltip .svgMap-tooltip-content {
  white-space: nowrap;
  text-align: center;
  font-size: 14px;
  color: #777;
  margin: -5px 0 0;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content table, .svgMap-tooltip .svgMap-tooltip-content table {
  padding: 0;
  border-spacing: 0;
  margin: auto;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content table td, .svgMap-tooltip .svgMap-tooltip-content table td {
  padding: 2px 0;
  text-align: left;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content table td span, .svgMap-tooltip .svgMap-tooltip-content table td span {
  color: #111;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content table td:first-child, .svgMap-tooltip .svgMap-tooltip-content table td:first-child {
  padding-right: 10px;
  text-align: right;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content table td sup, .svgMap-tooltip .svgMap-tooltip-content table td sup {
  vertical-align: baseline;
  position: relative;
  top: -5px;
}
.svgMap-persistent-tooltip .svgMap-tooltip-content .svgMap-tooltip-no-data, .svgMap-tooltip .svgMap-tooltip-content .svgMap-tooltip-no-data {
  padding: 2px 0;
  color: #777;
  font-style: italic;
}
.svgMap-persistent-tooltip .svgMap-tooltip-pointer, .svgMap-tooltip .svgMap-tooltip-pointer {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
  height: 10px;
  width: 30px;
}
.svgMap-persistent-tooltip .svgMap-tooltip-pointer::after, .svgMap-tooltip .svgMap-tooltip-pointer::after {
  content: "";
  width: 20px;
  height: 20px;
  background: #fff;
  border: 1px solid #111;
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
}
.svgMap-persistent-tooltip.svgMap-tooltip-flipped .svgMap-tooltip-pointer, .svgMap-tooltip.svgMap-tooltip-flipped .svgMap-tooltip-pointer {
  bottom: auto;
  top: -10px;
  transform: translateX(-50%) scaleY(-1);
}
.svgMap-tooltip {
  display: none;
}
.svgMap-tooltip.svgMap-active {
  display: block;
}
.svgMap-persistent-tooltip-wrapper, .svgMap-persistent-tooltips {
  pointer-events: none;
}
.svgMap-persistent-tooltip-wrapper {
  overflow: visible;
}
.svgMap-persistent-tooltip {
  display: block;
  left: 0;
  top: 0;
  width: -moz-max-content;
  width: max-content;
}
.svgMap-map-wrapper {
  background-color: transparent;
  .svgMap-country {
    stroke: rgb(64, 64, 64);
    stroke-width: 0.5px;
    transition: none;
    &.svgMap-active, &:hover {
      stroke: rgb(64, 64, 64);
      stroke-width: 0.5px;
      opacity: 0.8;
    }
  }
  .svgMap-map-controls-wrapper {
    display: none;
  }
}
.svgMap-tooltip {
  background-color: #292929;
  border: solid 1px #cdcdcd;
  color: #fff;
  border-radius: 3px;
  .svgMap-tooltip-pointer {
    display: none;
  }
  .svgMap-tooltip-content-container {
    padding: 6px;
  }
  .svgMap-tooltip-title {
    font-size: 0.875rem;
    font-weight: bold;
    padding: 0 0 4px;
    line-height: normal;
  }
  .svgMap-tooltip-content {
    table td {
      font-size: 0.75rem;
      color: #fff;
      border: none;
      span {
        color: #fff;
        font-size: 0.75rem;
      }
    }
  }
}
body {
  display: grid;
  height: 100vh;
  grid-template-rows: auto auto 1fr;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-font-weight: initial;
      --tw-border-style: solid;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-duration: initial;
    }
  }
}
