.swiss-home .slist tbody th, .slist thead {
  font-family: Roboto, sans-serif;
  font-weight: 300;
}

.slist thead {
  box-shadow: inset 0 1px 3px -2px #737373,inset 0 -4px 8px -3px hsl(from var(--c-body-gradient) h s calc(l + 3)/.8);
}

:where(html.light) .slist thead, .slist :where(html.light) thead {
  box-shadow: inset 0 3px 3px -2px #fff6,inset 0 -4px 8px -3px hsl(from var(--c-body-gradient) h s calc(l + 5)/.8);
}

.slist thead {
  background-image: linear-gradient(to bottom, var(--c-metal-top), var(--c-metal-bottom));
}

.swiss-home .swisses .players:before {
  vertical-align: text-top;
}

.swiss-home__infos #faq .faq, .swiss-home__infos .main-point, .swiss-home__infos .faq {
  flex-flow: row;
  align-items: center;
  display: flex;
}

.swiss-home {
  flex-flow: column;
  display: flex;
}

.slist {
  border-bottom: 1px solid var(--c-border);
  width: 100%;
}

.slist thead th {
  border-bottom: 1px solid var(--c-border);
  padding: .5rem .8rem;
}

:where(html.light) .slist thead th {
  border-top: 1px solid var(--c-border);
}

.slist thead th.large {
  font-size: 1.2rem;
}

.slist td {
  padding: 1rem;
}

.slist td .label {
  font-family: monospace;
  font-size: .8rem;
}

.slist tbody tr:nth-child(2n) {
  background: var(--c-bg-zebra);
}

.slist td:first-child, .slist th:first-child {
  padding-inline-start: 1.5rem;
}

.slist-pad td:first-child, .slist-pad th:first-child {
  padding-inline-start: var(---box-padding);
}

.slist-pad td:last-child, .slist-pad th:last-child {
  padding-inline-end: var(---box-padding);
}

.slist-invert tbody tr:nth-child(odd) {
  background: var(--c-bg-zebra);
}

.slist-invert tbody tr:nth-child(2n) {
  background: none;
}

.slist-wrapper {
  max-width: calc(100vw - var(---box-padding)*2);
  scrollbar-width: thin;
  min-width: auto;
  overflow-x: auto;
}

.slist-wrapper:has(.slist-pad) {
  max-width: 100vw;
}

ol .slist-wrapper, ul .slist-wrapper {
  max-width: calc(100vw - var(---box-padding)*2 - 30px);
}

ol .slist-wrapper .slist, ul .slist-wrapper .slist {
  margin-top: 0;
}

@media (width <= 649.29px) {
  .slist-wrapper .slist {
    min-width: calc(max(100vw,650px) - var(---box-padding)*2);
  }

  .slist.slist-resp {
    border-collapse: collapse;
    table-layout: fixed;
  }

  .slist.slist-resp thead {
    clip-path: rect(0 0 0 0);
    border: none;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .slist.slist-resp tr {
    border-top: 1px solid var(--c-border);
    display: block;
  }

  .slist.slist-resp td {
    padding: .5rem var(---box-padding);
    border-top: 1px solid var(--c-border);
    flex-flow: wrap;
    justify-content: space-between;
    align-items: center;
    display: flex;
  }

  .slist.slist-resp td:before {
    content: attr(data-label);
  }
}

@media (width <= 499.29px) {
  .stack-row {
    flex-direction: column;
    display: flex;
  }

  .stack-row td {
    width: 100%;
    padding-inline: var(---box-padding);
  }
}

.swiss-home {
  gap: var(---block-gap);
}

.swiss-home__infos {
  padding-top: var(---box-padding);
}

.swiss-home__infos .main-point, .swiss-home__infos .faq {
  margin-bottom: 4em;
}

.swiss-home__infos .main-point p, .swiss-home__infos .faq p {
  flex: 100%;
  margin: 0;
}

.swiss-home__infos .main-point icon, .swiss-home__infos .faq icon {
  text-align: center;
  color: var(--c-brag);
  flex: 0 0 2em;
  margin-inline-end: 2.5rem;
  font-size: 2.5em;
  font-weight: bold;
}

.swiss-home__infos #faq {
  display: block;
}

.swiss-home__infos #faq .faq {
  margin-bottom: 4em;
}

.swiss-home__infos #faq .faq strong {
  margin-bottom: .4em;
  display: block;
}

.swiss-home .slist {
  margin-bottom: 3em;
}

.swiss-home .swisses time {
  opacity: 1;
  font-size: 1em;
}

.swiss-home .swisses .header {
  padding: 0;
}

.swiss-home .swisses .team {
  color: var(--c-brag);
}

.swiss-home .swisses a {
  color: var(--c-font);
  padding: 1em;
  display: block;
}

.swiss-home .swisses a:hover, .swiss-home .swisses a:hover .team {
  color: var(--c-link);
}

.swiss-home .swisses .name {
  font-size: 1.3em;
  display: block;
}

.swiss-home .swisses .rounds {
  display: block;
}

.swiss-home .swisses td:last-child {
  text-align: right;
}

.swiss-home .swisses .players {
  color: var(--c-brag);
  margin-top: .2em;
  font-weight: bold;
  display: block;
}

.swiss-home .swisses .icon {
  text-align: center;
}

.swiss-home .swisses .icon icon {
  color: var(--c-brag);
  font-size: 2.5em;
}
