@charset "UTF-8";
/* Common imports for all CSS modules */
/*
 * This source is generated by bin/gen/licon.py. Run licon.py after changing public/font/lichess.sfd
 *
 * Constant names and values are pulled from private use characters defined in the sfd file.
 *
 * Character names can be edited in fontforge's "glyph info" dialog, or by editing the StartChar: line that
 * begins each character chunk in lichess.sfd
 *
 * To make these characters visible in your editor, install the lichess.ttf font (which is also generated by
 * licon.py) and then add it to your editor's font list.
 */
/* Uniboard: keep the same page layout across pages */
.tour__actor-info .sublist th, .tour__actor-info .stats td:last-child, .tour__main__header .time, .mchat__messages a:not(.user-link), .mchat__tab, .slist thead {
  font-family: Roboto, sans-serif;
  font-weight: 300;
}

/* text printed directly on the page background deserves special treatment (transp theme) */
.chat__members {
  color: var(--c-font-page);
}

.tour__duels, .chat__members {
  text-shadow: 0 1px 0 var(--c-font-shadow);
}

.tour__actor-info .stats h2, .tour__controls, .cmn-toggle input:disabled + label::before, .cmn-toggle input:disabled + label::after, .slist thead {
  box-shadow: inset 0 2px 3px -2px hsl(0, 0%, 45%), inset 0 -4px 6px -3px var(--m-body-gradient--lighten-3);
}
html.light .tour__actor-info .stats h2, .tour__actor-info .stats html.light h2, html.light .tour__controls, html.light .cmn-toggle input:disabled + label::before, .cmn-toggle html.light input:disabled + label::before, html.light .cmn-toggle input:disabled + label::after, .cmn-toggle html.light input:disabled + label::after, html.light .slist thead, .slist html.light thead {
  box-shadow: inset 0 3px 3px -2px #fff, inset 0 -4px 6px -3px var(--m-body-gradient--lighten-5);
}
.tour__actor-info .stats h2, .tour__controls, .cmn-toggle input:disabled + label::before, .cmn-toggle input:disabled + label::after, .slist thead {
  background-image: linear-gradient(to bottom, var(--c-metal-top), var(--c-metal-bottom));
}

.cmn-toggle label::after {
  box-shadow: inset 0 2px 3px -2px hsl(0, 0%, 45%), inset 0 -4px 6px -3px var(--m-body-gradient--lighten-3), 0 1px 3px 0 hsla(0, 0%, 0%, 0.2);
}
html.light .cmn-toggle label::after, .cmn-toggle html.light label::after {
  box-shadow: inset 0 3px 3px -2px #fff, inset 0 -4px 6px -3px var(--m-body-gradient--lighten-5), 0 1px 3px 0 hsla(0, 0%, 0%, 0.18);
}
.cmn-toggle label::after {
  background: linear-gradient(to bottom, var(--c-metal-top), var(--c-metal-bottom));
  text-shadow: 0.5px 0.5px 0 var(--m-dimmer--fade-20) !important;
}
.cmn-toggle label:hover:not(.disabled, :disabled, [disabled])::after {
  box-shadow: inset 0 3px 3px -2px var(--c-border-light), inset 0 -5px 8px -3px var(--m-body-gradient--lighten-5), 0 2px 4px 0 hsla(0, 0%, 0%, 0.24);
}
html.light .cmn-toggle label:hover:not(.disabled, :disabled, [disabled])::after, .cmn-toggle html.light label:hover:not(.disabled, :disabled, [disabled])::after {
  box-shadow: inset 0 4px 3px -2px #fff, inset 0 -5px 8px -3px var(--m-body-gradient--lighten-7), 0 2px 4px 0 hsla(0, 0%, 0%, 0.21);
}
.cmn-toggle label:hover:not(.disabled, :disabled, [disabled])::after {
  background: linear-gradient(to bottom, var(--c-metal-top-hover), var(--c-metal-bottom-hover));
}

.tour__meta section .setup, .mchat__tab, .context-streamer {
  white-space: nowrap;
  overflow: hidden;
}

.tour__team-info .players .name, .tour__player-info .pairings td:nth-child(2), .tour__standing .player .name, .mchat__tab span {
  white-space: nowrap;
}

.tour__meta .description, .mchat__messages {
  overflow-wrap: break-word;
  word-break: normal;
}

.tour__duels strong, .podium > div, .tour__team-info .players .name, .tour__player-info .pairings td:nth-child(2), .tour__standing .player .name, .mchat__tab span {
  overflow: hidden;
  text-overflow: ellipsis;
}

.cmn-toggle label::before {
  font-size: 1.2em;
  vertical-align: middle;
  font-family: lichess;
  font-style: normal;
  font-weight: normal;
  text-transform: none;
  speak: none;
  content: attr(data-icon);
  opacity: 0.9;
  unicode-bidi: isolate;
}

.cmn-toggle input {
  touch-action: manipulation;
}

.cmn-toggle input {
  position: absolute;
  inset-inline-start: -99999px;
}

.tour__controls .pager {
  /* extends %flex-wrap */
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.tour__standing .player .user-link, .tour__featured .mini-game__player, .tour__bots-warning, .tour__meta section[data-icon], .tour__main__header, .chat__members__number, .context-streamer {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}

.tour__duels line, .tour__featured .mini-game__user .user-link, .tour__controls {
  /* extends %flex-center */
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-between;
}

.tour__actor-info .stats, .tour__duels a, .tour__stats, .tour__ur-playing, .tour__featured, .tour__meta .scrollable-content, .tour__meta, .tour__side, .tour__main__header .clock-created, .mchat__content, .mchat {
  display: flex;
  flex-flow: column;
}

.tour__duels .rank, .context-streamer, .tour__stats, .tour__bots-warning, .tour__actor-info, .tour__meta, .mchat {
  border-radius: 7px;
}

/* helps with clipping background into border-radius */
.tour__actor-info, .tour__meta, .mchat {
  overflow: hidden;
}

.mchat__tab {
  border-radius: 7px 7px 0 0;
}

.tour__controls, .tour__actor-info, .tour__meta, .mchat, .tour__stats, .tour__bots-warning {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.08), 0 3px 1px -2px rgba(0, 0, 0, 0.18), 0 1px 5px 0 rgba(0, 0, 0, 0.1);
}

html.transp .tour__stats, html.transp .tour__bots-warning {
  backdrop-filter: blur(6px);
}

html.transp .tour__actor-info, html.transp .tour__meta, html.transp .mchat {
  backdrop-filter: blur(6px);
}

.fbt {
  color: var(--c-font);
  text-transform: uppercase;
  line-height: 1.5;
  transition: all 150ms ease;
}
@media (hover: hover) {
  .fbt:hover:not(.disabled, [disabled]) {
    background: var(--m-secondary_bg--mix-75);
    color: #fff;
  }
}
.fbt.active {
  background: var(--c-secondary) !important;
  color: var(--c-over);
}
.fbt.disabled, .fbt[disabled] {
  opacity: 0.5;
  cursor: default;
}

@keyframes bar-glider-anim {
  0% {
    transform: translateX(-1300px);
  }
  100% {
    transform: translateX(2100px);
  }
}
.bar-glider {
  position: relative;
  overflow: hidden;
}
html:not([dir=rtl]) .bar-glider::after {
  left: 0;
}
html[dir=rtl] .bar-glider::after {
  right: 0;
}
.bar-glider::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 70px;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.3));
  animation: bar-glider-anim 3s linear infinite;
}
html[dir=rtl] .bar-glider::after {
  background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.3));
}
@media (prefers-reduced-motion: reduce) {
  .bar-glider::after {
    display: none;
  }
}

.slist {
  width: 100%;
  border-bottom: 1px solid var(--c-border);
}
.slist thead th {
  border-bottom: 1px solid var(--c-border);
  padding: 0.5rem 0.8rem;
}
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: 0.8rem;
}
.slist tbody tr:nth-child(even) {
  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(even) {
  background: none;
}

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

/* requires each td to have a data-label attribute */
@media (max-width: 649.29px) {
  .slist.slist-resp {
    border-collapse: collapse;
    table-layout: fixed;
  }
  .slist.slist-resp thead {
    border: none;
    clip-path: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .slist.slist-resp tr {
    display: block;
    border-top: 1px solid var(--c-border);
  }
  .slist.slist-resp td {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem var(---box-padding);
    border-top: 1px solid var(--c-border);
  }
  .slist.slist-resp td::before {
    /* aria-label has no advantage, it won't be read inside a table
       content: attr(aria-label); */
    content: attr(data-label);
  }
}

@media (max-width: 499.29px) {
  .stack-row {
    display: flex;
    flex-direction: column;
  }
  .stack-row td {
    width: 100%;
    padding-inline-start: var(---box-padding);
    padding-inline-end: var(---box-padding);
  }
}
.pull-quote {
  margin: 0 auto;
  direction: ltr;
  text-align: left;
}
.pull-quote p {
  color: var(--c-font);
  position: relative;
  margin: 0 0.7em;
  padding: 1em 0;
  font-style: italic;
  font-size: 1.1rem;
}
html:not(.transp) .pull-quote p {
  border: 1px solid var(--c-border);
  border-width: 1px 0;
}
html:not(.transp) .pull-quote p::after {
  content: "";
  position: absolute;
  bottom: -9px;
  left: 42px;
  width: 15px;
  height: 15px;
  background: var(--c-bg-box);
  border-left: 2px solid var(--c-border);
  border-bottom: 1px solid var(--c-border);
  transform: skew(45deg) rotate(-45deg);
}
.pull-quote.long p {
  font-size: 1rem;
}
.pull-quote footer {
  margin: 10px;
  line-height: 20px;
  text-align: right;
}
.pull-quote footer::before {
  content: "— ";
}

.fire-trophy {
  text-shadow: 0 0.008em 0.127em #fefcc9, 0.055em -0.066em 0.2em #feec85, -0.111em -0.127em 0.272em #ffae34, 0.111em -0.272em 0.411em #ec760c, -0.111em -0.456em 0.416em #cd4606, 0 -0.533em 0.577em #973716, 0.055em -0.55em 0.533em #451b0e;
}

@keyframes fire-trophy {
  0% {
    text-shadow: 0 0.008em 0.127em #fefcc9, 0.055em -0.066em 0.2em #feec85, -0.111em -0.127em 0.272em #ffae34, 0.111em -0.272em 0.411em #ec760c, -0.111em -0.456em 0.416em #cd4606, 0 -0.533em 0.577em #973716, 0.055em -0.55em 0.533em #451b0e;
  }
  100% {
    text-shadow: 0 0 0.111em #fefcc9, 0.055em -0.055em 0.166em #fefcc9, -0.111em -0.111em 0.222em #feec85, 0.122em -0.233em 0.333em #ffae34, -0.122em -0.322em 0.277em #ec760c, 0 -0.456em 0.444em #cd4606, 0.055em -0.5em 0.444em #973716;
  }
}
.fire-trophy {
  color: var(--c-font);
  font-size: 90px;
  display: block;
}
.fire-trophy:hover {
  animation: fire-trophy 1.5s ease-in-out infinite alternate;
}

.color-icon.white::before {
  content: "\e028";
}
.color-icon.black::before {
  content: "\e029";
}
html.light .color-icon.white::before {
  content: "\e029";
}
html.light .color-icon.black::before {
  content: "\e028";
}
.color-icon.random::before {
  content: "\e04a";
}

.context-streamers {
  max-height: 20vh;
  overflow-y: auto;
}

.context-streamer {
  transition: all 150ms ease;
  height: 2em;
  padding-inline-start: 0.2em;
  background: var(--c-bg-box);
  color: var(--c-font-dim);
  margin-top: 2px;
}
.context-streamer strong {
  color: var(--c-brag);
  font-weight: normal;
  padding-inline-end: 0.7ch;
}
.context-streamer::before {
  font-size: 1.3em;
  color: var(--c-brag);
}
.context-streamer:hover {
  color: var(--c-font-dim);
  background: var(--c-bg-zebra);
}

.podium-wrap {
  position: relative;
  padding-bottom: 20px;
}
.podium-wrap #confetti {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

@media (max-width: 499.29px) {
  .podium {
    display: none;
  }
}
.podium > div {
  display: inline-block;
  text-align: center;
}
.podium > div.lame {
  opacity: 0.5;
}
.podium > div.lame .user-link {
  text-decoration: line-through;
  font-weight: normal;
}
.podium > div.lame .trophy {
  opacity: 0.3;
  filter: grayscale(100%) contrast(10%);
}
.podium .first {
  width: 44%;
  font-size: 1.6em;
}
.podium .second {
  font-size: 1.3em;
  width: 29%;
}
.podium .third {
  font-size: 1.2em;
  width: 27%;
}
.podium .trophy {
  margin: 0 auto 0.5em auto;
  background: center/contain no-repeat;
}
.podium .first .trophy {
  height: 9em;
  width: 9em;
  background-image: url("../hashed/lichess-massive.29eb7ec6.svg");
}
.podium .second .trophy {
  height: 9em;
  width: 7em;
  background-image: url("../hashed/lichess-silver-1.9cbed2b4.svg");
}
.podium .third .trophy {
  height: 7em;
  width: 7em;
  background-image: url("../hashed/lichess-bronze-2.79cb6f0c.svg");
}
@media (max-width: 499.29px) {
  .podium .trophy {
    display: none;
  }
}
.podium .user-link {
  font-weight: bold;
  letter-spacing: -1px;
}
.podium .stats {
  margin: 0.5em auto 0 auto;
  font-size: 0.7em;
}
.podium .stats th {
  letter-spacing: -1px;
  text-align: left;
}
.podium .stats td {
  font-weight: bold;
  padding-inline-start: 5px;
  text-align: right;
}
.podium .third .stats {
  font-size: 0.8em;
}

.cmn-toggle-wrap {
  display: inline-flex;
  align-items: center;
  gap: 0.8ch;
  cursor: pointer;
  user-select: none;
}

.cmn-toggle label {
  user-select: none;
  transition: background 150ms ease, box-shadow 150ms ease;
  display: block;
  position: relative;
  cursor: pointer;
  outline: none;
  padding: 1px;
  width: 40px;
  height: 24px;
  border: 1px solid var(--c-border);
  border-radius: 24px;
  background-clip: padding-box;
  background-color: var(--c-font-dimmer);
}
.cmn-toggle label::before, .cmn-toggle label::after {
  display: block;
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  bottom: 0;
}
html:not([dir=rtl]) .cmn-toggle label::before, html:not([dir=rtl]) .cmn-toggle label::after {
  left: 0;
}
html[dir=rtl] .cmn-toggle label::before, html[dir=rtl] .cmn-toggle label::after {
  right: 0;
}
.cmn-toggle label::before {
  transition: margin 150ms ease, color 150ms ease;
  font-size: 1em;
  z-index: 1;
  text-align: center;
  line-height: 22px;
  content: "\e02a";
  color: var(--c-font-dimmer);
  border-radius: 100%;
}
.cmn-toggle label::after {
  transition: margin 150ms ease, box-shadow 150ms ease;
  border-radius: 100%;
}
html.transp .cmn-toggle label::after {
  background: linear-gradient(to bottom, hsl(37, 7%, 22%), hsl(37, 5%, 19%) 100%);
}

.cmn-toggle input:checked + label {
  background-color: var(--c-good);
}
.cmn-toggle input:checked + label::before, .cmn-toggle input:checked + label::after {
  margin-inline-start: 16px;
}
.cmn-toggle input:checked + label::before {
  content: "\e023";
  color: var(--c-good);
}

.cmn-toggle input:disabled + label {
  opacity: 0.6;
  cursor: not-allowed !important;
}
.cmn-toggle input:disabled + label::before, .cmn-toggle input:disabled + label::after {
  box-shadow: none;
}

.cmn-toggle input:focus-visible:not(:disabled) + label {
  box-shadow: 0 0 12px var(--c-font-dimmer);
  border-color: var(--c-primary);
}

.mchat__tabs {
  flex: 0 0 auto;
  display: flex;
}
.mchat__tab {
  flex: 1 1 auto;
  text-align: center;
  padding: 0.4em 10px;
  cursor: pointer;
  color: var(--c-font-page);
  transition: all 150ms ease;
}
.mchat__tab:hover {
  background: var(--m-accent_bg--mix-15);
}
.mchat__tab-active {
  color: var(--c-font);
  background: var(--c-bg-box) !important;
}
.mchat__tab:last-child {
  border-inline-end: none;
}
.mchat-optional .mchat__tab.discussion {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.chat__members {
  font-size: 0.9em;
  height: 100%;
  overflow: hidden;
}
.chat__members__inner {
  display: flex;
  align-items: flex-start;
}
.chat__members__number {
  margin-inline-end: 1ch;
}
.chat__members__number::before {
  font-size: 1em;
  color: var(--c-font-dim);
  margin-inline-end: 0.2ch;
}

.mchat__messages {
  flex: 1 1 auto;
  max-height: 50vh;
}
@media (min-width: 1259.3px) {
  .mchat__messages {
    max-height: none;
  }
}
.mchat__messages {
  overflow-y: auto;
  overflow-x: hidden;
  cursor: initial;
  font-size: 0.9em;
}
.mchat__messages li {
  padding-inline-start: 10px;
  padding-inline-end: 5px;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  position: relative;
  line-height: 1.2em;
  overflow-y: hidden;
  user-select: text;
  overflow-wrap: anywhere;
}
.mchat__messages li.me {
  border-inline-start: 3px solid var(--c-secondary-dim);
  padding-inline-start: 7px;
}
.mchat__messages li.host {
  background-color: var(--c-chat-host-bg);
}
.mchat__messages li.mentioned {
  background-color: var(--c-chat-mention-bg);
}
.mchat__messages .deleted {
  opacity: 0.5;
}
.mchat__messages .system {
  display: block;
  opacity: 0.8;
  font-style: italic;
  font-size: 0.9em;
  margin-inline-start: 0;
  text-align: center;
}
.mchat__messages .color,
.mchat__messages .user-link {
  display: inline-block;
  font-weight: bold;
  padding: 0;
  color: var(--c-font-dim);
  letter-spacing: -1px;
  padding-inline-end: 0.4em;
  text-overflow: ellipsis;
  vertical-align: bottom;
}
.mchat__messages .patron {
  font-size: 1.1em;
  width: 1.2em;
  text-align: left;
}
.mchat__messages .utitle {
  margin-right: 3px;
}
html:not([dir=rtl]) .mchat__messages action {
  right: 0;
}
html[dir=rtl] .mchat__messages action {
  left: 0;
}
.mchat__messages action {
  display: none;
  position: absolute;
  top: 5px;
  cursor: pointer;
  margin-inline-end: 3px;
  padding: 1px 5px;
  opacity: 0.7;
  color: var(--c-accent);
}
.mchat__messages action:hover {
  opacity: 1;
}
html:not([dir=rtl]) .mchat__messages action.reply {
  right: 25px;
}
html[dir=rtl] .mchat__messages action.reply {
  left: 25px;
}
.mchat__messages li:hover action {
  display: block;
  text-shadow: 0 0 2px var(--c-bg-box), 0 0 5px var(--c-bg-box), 0 0 10px var(--c-bg-box);
}
.mchat__messages li.me action {
  display: none !important;
}
.mchat__messages.as-mod li:hover {
  background: var(--m-accent_bg--mix-10);
}
.mchat__messages::-webkit-scrollbar, .mchat__messages::-webkit-scrollbar-corner {
  background: unset;
}
.mchat__say {
  padding-inline-start: 4px;
  padding-inline-end: 20px;
  padding-top: 3px;
  padding-bottom: 3px;
  flex: 0 0 auto;
  border: 0;
  border-top: 1px solid var(--c-border);
  border-radius: 0;
}
.mchat__say:focus {
  outline: 1px solid var(--c-primary);
}
.mchat__say.whisper {
  color: var(--c-good);
  font-weight: bold;
  font-style: italic;
}

@keyframes voicechat-glowing {
  40% {
    background: none;
  }
  50% {
    background: var(--m-secondary_bg--mix-30);
  }
  60% {
    background: var(--m-primary_bg--mix-30);
  }
  70% {
    background: none;
  }
}
.voicechat {
  flex: 0 1 auto;
  animation: voicechat-glowing 1.5s ease-in-out infinite;
}
.voicechat-slot {
  animation: none;
  opacity: 0.6;
}
.voicechat-slot:hover {
  opacity: 1;
}
.voicechat-off {
  animation: none;
}
.voicechat-on {
  background: var(--c-good);
  color: var(--c-over);
  animation: none;
}
.voicechat-on:hover {
  background: var(--c-bad) !important;
  color: var(--c-over) !important;
}
html:not([dir=rtl]) .voicechat::after {
  left: 0;
}
html[dir=rtl] .voicechat::after {
  right: 0;
}
html:not([dir=rtl]) .voicechat::after {
  right: auto;
}
html[dir=rtl] .voicechat::after {
  left: auto;
}
.voicechat::after {
  top: 1px;
  background: none;
  box-shadow: none;
}

.mchat {
  grid-area: chat;
  justify-content: stretch;
}
.mchat__content {
  background: var(--c-bg-box);
  flex: 1 1 auto;
  overflow: hidden;
}
.mchat__content.note textarea {
  font-size: 0.9em;
  flex-grow: 1;
  border: 1px solid transparent;
  background-color: transparent;
  line-height: 1.7em;
  outline: none;
  resize: none;
}
.mchat__content.note textarea:focus {
  border-color: var(--c-primary);
}
.mchat {
  min-height: 15em;
}

html:not([dir=rtl]) .variant-racingKings .cg-wrap.cg-wrap cg-container::before {
  left: 0;
}
html[dir=rtl] .variant-racingKings .cg-wrap.cg-wrap cg-container::before {
  right: 0;
}
.variant-racingKings .cg-wrap.cg-wrap cg-container::before {
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
  background: hsla(0, 0%, 90%, 0.2);
  width: 100%;
  height: 12.5%;
  content: "";
  position: absolute;
  z-index: 1;
  pointer-events: none;
}
.variant-racingKings .cg-wrap.orientation-white cg-container::before {
  top: 0;
}
.variant-racingKings .cg-wrap.orientation-black cg-container::before {
  bottom: 0;
}

html:not([dir=rtl]) .variant-kingOfTheHill cg-container::before {
  left: 37.5%;
}
html[dir=rtl] .variant-kingOfTheHill cg-container::before {
  right: 37.5%;
}
.variant-kingOfTheHill cg-container::before {
  width: 25%;
  height: 25%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
  background: hsla(0, 0%, 90%, 0.2);
  content: "";
  position: absolute;
  top: 37.5%;
  z-index: 1;
  pointer-events: none;
}

.tour__controls {
  padding: 0;
  position: relative;
  border-top: 1px solid var(--c-border);
  border-bottom: 1px solid var(--c-border);
}
.tour__controls .fbt {
  padding: 0.6em 0.8em;
}
@media (min-width: 499.3px) {
  .tour__controls .fbt {
    padding: 0.6em 1em;
  }
}
.tour__controls .fbt {
  text-transform: uppercase;
  line-height: 1.3;
}
html:not([dir=rtl]) .tour__controls .button {
  right: 8px;
}
html[dir=rtl] .tour__controls .button {
  left: 8px;
}
.tour__controls .button {
  position: absolute;
  top: -2px;
  padding: 12px 20px;
}
.tour__controls .button::before {
  margin-right: 0.25em;
}
.tour__controls .spinner {
  margin: 0;
  width: 1.5em;
  height: 1.5em;
  margin-inline-end: 0.7em;
}
.tour__controls .pager {
  user-select: none;
}
.tour__controls .pager .page {
  margin: 0 3px;
  white-space: nowrap;
}
.tour__controls .pager input {
  border: none;
  background: var(--m-secondary--fade-80);
}
.tour__controls .pager .search,
.tour__controls .pager input {
  height: 100%;
}

.tour__main__header {
  position: relative;
  min-height: 8em;
  padding: 0 2rem;
}
.tour__main__header h1 {
  font-size: 2.2rem;
  flex: 9 1 auto;
  margin: 0;
  overflow: hidden;
}
.tour__main__header h1 a {
  /* GM wikipedia */
  color: var(--m-primary_font--mix-35);
}
.tour__main__header h1 a:hover {
  color: var(--c-link);
}
.tour__main__header img {
  flex: 0 0 60px;
  display: block;
  width: 60px;
  height: 60px;
  padding: 6px;
}
.tour__main__header .img {
  margin-inline-end: 1rem;
}
.tour__main__header i::before {
  font-size: 2.2rem;
}
.tour__main__header .clock {
  flex: 0 0 auto;
  font-weight: bold;
  color: var(--c-font-dim);
}
.tour__main__header .clock-created {
  text-align: right;
}
.tour__main__header .time {
  font-size: 1.5em;
  margin-inline-start: 0.2em;
}
.tour__main__header .shy {
  line-height: 20px;
  font-size: 0.9em;
  font-weight: bold;
  text-transform: uppercase;
  opacity: 0.6;
  white-space: nowrap;
}

@media (min-width: 799.3px) {
  #main-wrap {
    ---main-max-width: auto;
  }
}
.tour {
  display: grid;
}
.tour__side {
  grid-area: side;
}
.tour__table, .tour__stats, .tour__player {
  grid-area: table;
}
.tour__main {
  grid-area: main;
}
.tour .chat__members {
  grid-area: uchat;
}
.tour {
  grid-template-areas: "main" "side" "uchat" "table";
  gap: var(---block-gap);
}
@media (min-width: 799.3px) {
  .tour {
    grid-template-columns: minmax(500px, calc(min(calc(100vw - var(---block-gap) - 240px - 2 * var(---main-margin, 0px) - 20px), calc(100vh - calc(var(---site-header-height) + var(---site-header-margin) + var(---sticky-gap)) - 1rem)) * 0.9)) minmax(240px, 400px);
    grid-template-rows: calc(100vh - calc(var(---site-header-height) + var(---site-header-margin) + var(---sticky-gap)) - var(---block-gap) - 3rem) min-content;
    grid-template-areas: "main  side" "main  uchat" "table table";
  }
  .tour__table {
    display: flex;
  }
  .tour__table > * {
    flex: 0 0 50%;
  }
  .tour .mchat__messages {
    max-height: inherit;
  }
}
@media (min-width: 1259.3px) {
  .tour {
    grid-template-columns: minmax(var(---col3-uniboard-side-min, 250px), 350px) minmax(500px, calc(100vh * 0.9 - calc(var(---site-header-height) + var(---site-header-margin) + var(---sticky-gap)) - 3rem)) minmax(240px, 400px);
    grid-template-rows: calc(100vh - calc(var(---site-header-height) + var(---site-header-margin) + var(---sticky-gap)) - var(---block-gap) - 3rem) auto;
    grid-template-areas: "side  main table" "uchat main table";
  }
  .tour__table {
    flex-flow: column;
  }
  .tour__table > * {
    flex: inherit;
  }
}

.tour__side .disclosure {
  position: absolute;
  right: 1em;
  bottom: 1em;
  color: var(--c-font-dim);
  cursor: pointer;
}
.tour__side .disclosure::before {
  content: "\e031";
  font-family: lichess;
  font-size: 1em;
}
.tour__side .disclosure:hover {
  color: var(--c-primary);
}
.tour__side.collapsed .disclosure::before {
  content: "\e030";
}
.tour__side.collapsed .tour__meta > * {
  display: none;
}
.tour__side.collapsed .tour__meta__head,
.tour__side.collapsed .disclosure {
  display: flex;
  bottom: 15%;
}
.tour__side .mchat {
  flex: 1 1 7em;
  margin-top: var(---block-gap);
}
@media (min-width: 799.3px) {
  .tour__side .mchat {
    min-height: inherit;
  }
}

.tour__meta {
  gap: var(---block-gap);
  position: relative;
  background: var(--c-bg-box);
  padding: var(---block-gap) 0;
}
.tour__meta .scrollable-content {
  gap: var(---block-gap);
  overflow-y: scroll;
}
.tour__meta section {
  padding: 0 var(---block-gap);
}
.tour__meta section::before {
  font-size: 3rem;
  margin-inline-end: 4%;
}
.tour__meta section p {
  margin: 0;
}
.tour__meta section time {
  opacity: 1;
}
.tour__meta section .defender::before {
  font-size: 1.6em;
  vertical-align: -0.26em;
  margin: 0 0.15em 0 -0.15em;
}
.tour__meta section.conditions::before {
  opacity: 0.7;
}
.tour__meta section.conditions.accepted,
.tour__meta section.conditions .accepted {
  color: var(--c-good);
}
.tour__meta section.conditions.refused,
.tour__meta section.conditions .refused {
  color: var(--c-bad);
}
.tour__meta section.conditions .condition:first-child.accepted::after,
.tour__meta section.conditions .condition + .condition.accepted::after {
  content: " ✓";
}
.tour__meta section.conditions .condition:first-child.refused::after,
.tour__meta section.conditions .condition + .condition.refused::after {
  content: " ✘";
}
.tour__meta .description {
  height: fit-content;
}
.tour__meta .tour__prize {
  padding: var(---block-gap) 2vmin;
  background: var(--c-bg-zebra);
  font-size: 0.9em;
}

.tour__bots-warning {
  gap: 1em;
  margin-top: 1em;
  background: var(--m-accent_bg--mix-10);
  padding: 1em;
}
.tour__bots-warning h2 {
  margin: 0 0 0.5em 0;
}
.tour__bots-warning img {
  aspect-ratio: 1/1;
  width: 5em;
}

.chat__members {
  overflow: visible;
  /* fixes invisible spectators on firefox, col2 */
}
@media (max-width: 799.29px) and (orientation: portrait) {
  .chat__members {
    margin: 0 var(---block-gap);
  }
}

.tour__featured .mini-game__player i.berserk {
  flex: 0 0 auto;
}
.tour__featured .mini-game__player i.berserk::before {
  color: var(--c-accent);
  margin-inline-end: 5px;
}
.tour__featured .mini-game__user {
  display: flex;
}
.tour__featured .mini-game__user strong {
  text-align: center;
  margin-inline-end: 1ch;
}
.tour__featured .mini-game__user .user-link {
  flex: 1 1 100%;
  margin-inline-end: 1em;
}

.tour-shed .tour__main__header h1 {
  letter-spacing: 2px;
}
.tour-shed-weekly .tour__main__header i::before {
  font-size: 35px;
}
.tour-shed-monthly .tour__main__header i::before, .tour-shed-weekend .tour__main__header i::before {
  font-size: 40px;
}
.tour-shed-yearly .tour__main__header i::before {
  font-size: 45px;
}
.tour-shed-weekend .tour__main__header h1, .tour-shed-yearly .tour__main__header h1 {
  letter-spacing: 3px;
}
.tour-sched .tour__main__header h1, .tour-sched .tour__main__header .img {
  color: var(--c-brag);
}
.tour__main-finished .tour__main__header h1 {
  text-align: center;
}
.tour-sched-marathon .tour__main-finished .tour__main__header h1 {
  padding-inline-start: 0;
}
.tour-sched-marathon .tour__main__header h1 {
  color: #4166a0 !important;
  padding-inline-start: 90px;
  letter-spacing: 2px;
}
html:not([dir=rtl]) .tour-sched-marathon .tour__main__header .fire-trophy {
  left: 10px;
}
html[dir=rtl] .tour-sched-marathon .tour__main__header .fire-trophy {
  right: 10px;
}
.tour-sched-marathon .tour__main__header .fire-trophy {
  position: absolute;
  top: 0;
  width: 70px;
  height: 80px;
  opacity: 0.7;
  transition: 1s;
  font-family: lichess;
  filter: hue-rotate(190deg);
}
.tour-sched-marathon .tour__main__header .fire-trophy:hover {
  opacity: 1;
}
.tour-sched-shield .tour__main__header h1 {
  padding-inline-start: 90px;
  letter-spacing: 2px;
}
html:not([dir=rtl]) .tour-sched-shield .tour__main__header h1 .shield-trophy {
  left: 24px;
}
html[dir=rtl] .tour-sched-shield .tour__main__header h1 .shield-trophy {
  right: 24px;
}
.tour-sched-shield .tour__main__header h1 .shield-trophy {
  position: absolute;
  top: 16px;
  display: block;
  width: 67px;
  height: 80px;
  background: url("../hashed/shield-gold.c4a4fd74.png") no-repeat;
  background-size: contain;
  font-family: lichess;
  font-size: 40px;
  line-height: 80px;
  text-align: center;
  color: #333 !important;
  text-shadow: 0 0 6px #fff;
}
@media (width <= 800px) {
  .tour-sched-shield .tour__main__header h1 .shield-trophy {
    top: 10px;
  }
}

.tour__notice {
  color: #fff;
  background: var(--c-good);
  text-align: center;
  padding: 0.5em 0;
  opacity: 0.8;
}
.tour__notice.closed {
  background: var(--c-primary);
}

.tour__ur-playing {
  text-align: center;
  font-size: 1.5em;
  position: relative;
}
.tour__ur-playing::before, .tour__ur-playing::after {
  content: "\e033";
  font-size: 2rem;
  position: absolute;
  top: 30px;
}
html:not([dir=rtl]) .tour__ur-playing::before {
  left: 30px;
}
html[dir=rtl] .tour__ur-playing::before {
  right: 30px;
}
html:not([dir=rtl]) .tour__ur-playing::after {
  right: 30px;
}
html[dir=rtl] .tour__ur-playing::after {
  left: 30px;
}

@keyframes tour-delay {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
.tour__controls .delay {
  background: rgba(117, 153, 0, 0.5);
  width: 0;
}
.tour__controls .delay button {
  opacity: 0.7;
  color: var(--c-font-dim);
  mix-blend-mode: luminosity;
}

.tour__standing {
  border: none;
}
.tour__standing .player {
  padding-left: 0;
  padding-right: 0;
}
.tour__standing .player .name {
  display: inline-block;
  padding-inline-end: 5px;
  max-width: 140px;
}
@media (min-width: 1259.3px) {
  .tour__standing .player .name {
    max-width: 200px;
  }
}
.tour__standing .user-link.long {
  letter-spacing: -0.7px;
}
.tour__standing .user-link .rating {
  font-style: italic;
  font-size: 0.8em;
}
.tour__standing tr.long .user-link .rating {
  display: block;
  direction: ltr;
  padding-inline-start: 0;
}
.tour__standing tr {
  transition: all 150ms ease;
  user-select: none;
}
.tour__standing .loading tbody {
  opacity: 0.6;
  transition: opacity 0.3s ease;
}
.tour__standing:not(.created, .loading) tbody tr:hover {
  background: var(--m-primary_bg--mix-30);
  cursor: pointer;
}
.tour__standing tr.me td:first-child {
  background: linear-gradient(to right, var(--m-secondary_bg--mix-70) 0, var(--m-secondary_bg--mix-70) 5px, rgba(0, 0, 0, 0) 5px, rgba(0, 0, 0, 0) 100%);
}
html[dir=rtl] .tour__standing tr.me td:first-child {
  background: linear-gradient(to left, var(--m-secondary_bg--mix-70) 0, var(--m-secondary_bg--mix-70) 5px, rgba(0, 0, 0, 0) 5px, rgba(0, 0, 0, 0) 100%);
}
.tour__standing tr.active td:last-child {
  background: linear-gradient(to left, var(--m-primary_bg--mix-70) 0, var(--m-primary_bg--mix-70) 5px, rgba(0, 0, 0, 0) 5px, rgba(0, 0, 0, 0) 100%);
}
html[dir=rtl] .tour__standing tr.active td:last-child {
  background: linear-gradient(to right, var(--m-primary_bg--mix-70) 0, var(--m-primary_bg--mix-70) 5px, rgba(0, 0, 0, 0) 5px, rgba(0, 0, 0, 0) 100%);
}
.tour__standing td.rank {
  padding-inline-start: 10px;
  padding-inline-end: 0.5em;
  padding-top: 1em;
  padding-bottom: 1em;
  width: 1px;
  /* helps keeping it as small as possible */
}
.tour__standing td.rank i {
  opacity: 0.4;
  font-size: 0.8em;
}
.tour__standing .sheet {
  text-align: right;
  padding-inline-end: 0;
  padding-inline-start: 0;
  letter-spacing: 0.1em;
}
.tour__standing .sheet > * {
  display: inline-block;
}
.tour__standing .sheet score {
  opacity: 0.7;
}
.tour__standing tr.long .sheet {
  font-size: 0.9rem;
  letter-spacing: 0.06em;
}
.tour__standing tr.xlong .sheet {
  font-size: 0.85rem;
  letter-spacing: 0.04em;
}
.tour__standing double {
  color: var(--c-brag);
  /* font-weight: bold; */
}
.tour__standing streak {
  color: var(--c-secondary);
  /* font-weight: bold; */
}
.tour__standing .total {
  text-align: right;
  font-weight: bold;
  padding-inline-end: var(---block-gap);
}

.tour__stats {
  background: var(--c-bg-box);
  padding: 1.7em 0;
  align-self: flex-start;
}
.tour__stats h2 {
  font-size: 1.5em;
  margin-bottom: 1em;
  text-align: center;
}
.tour__stats table {
  margin: auto;
}
.tour__stats td {
  font-weight: bold;
  padding-inline-start: 1em;
  text-align: right;
  line-height: 2em;
}
.tour__stats__links {
  margin: 2em auto 0 auto;
}
.tour__stats__links a {
  display: block;
  margin: 0.5em 0;
}

.tour__duels {
  margin: var(---block-gap) 0 0 0;
}
@media (min-width: 799.3px) {
  .tour__duels {
    margin: 0 0 0 var(---block-gap);
  }
}
@media (min-width: 1259.3px) {
  .tour__duels {
    margin: var(---block-gap) 0 0 0;
  }
}
.tour__duels h2 {
  font-size: 1.5em;
  margin-bottom: 0.2em;
  text-transform: uppercase;
  letter-spacing: 2px;
}
.tour__duels a {
  color: var(--c-font);
  padding: 0.5em 0.7em;
  white-space: nowrap;
  line-height: 1.9em;
  border-top: 1px solid var(--c-border-tour);
  transition: all 150ms ease;
}
.tour__duels a:hover {
  background: var(--m-primary_bg-page--mix-20);
}
.tour__duels strong {
  font-size: 1.2em;
  color: var(--c-font-dim);
  display: block;
  max-width: 60%;
}
.tour__duels .rank {
  padding: 0.1em 0.5em;
  background: var(--c-bg-zebra);
}
.tour__duels .b .utitle,
.tour__duels .b .rank {
  margin-right: 0.3em;
}
.tour__duels .a .utitle,
.tour__duels .a .rank {
  margin-left: 0.3em;
}

.tour__actor-info {
  background: var(--c-bg-box);
  position: relative;
  align-self: flex-start;
}
.tour__actor-info .spinner {
  margin: 5em auto;
}
html:not([dir=rtl]) .tour__actor-info .close {
  right: 5px;
}
html[dir=rtl] .tour__actor-info .close {
  left: 5px;
}
.tour__actor-info .close {
  transition: all 150ms ease;
  position: absolute;
  top: 4px;
  opacity: 0.6;
  color: var(--c-bad);
}
.tour__actor-info .close:hover {
  opacity: 1;
}
.tour__actor-info .stats {
  gap: 1em;
  padding-bottom: 1em;
  justify-content: center;
  align-items: center;
}
.tour__actor-info .stats h2 {
  align-self: stretch;
  direction: ltr;
  font-size: 1.4em;
  padding: 0.6rem 1rem;
  border-bottom: 1px solid var(--c-border);
}
.tour__actor-info .stats td {
  font-weight: bold;
  padding-inline-start: 10px;
  text-align: right;
  line-height: 1.8em;
}
.tour__actor-info .sublist {
  width: 100%;
}
.tour__actor-info .sublist tr {
  cursor: pointer;
  transition: background-color 150ms ease;
}
.tour__actor-info .sublist tr:nth-child(odd) {
  background: var(--c-bg-zebra);
}
.tour__actor-info .sublist tr:hover {
  background: var(--m-primary_bg--mix-10);
}
.tour__actor-info .sublist th,
.tour__actor-info .sublist td {
  padding: 0.3em;
}
.tour__actor-info .sublist th {
  padding-inline-start: 7px;
}

.tour__player-info .pairings {
  width: 100%;
  border-collapse: separate;
}
.tour__player-info .pairings tr {
  cursor: pointer;
  transition: background-color 150ms ease;
}
.tour__player-info .pairings tr:nth-child(odd) {
  background: var(--c-bg-zebra);
}
.tour__player-info .pairings tr:hover {
  background: var(--m-primary_bg--mix-10);
}
.tour__player-info .pairings th,
.tour__player-info .pairings td {
  padding: 0.3em;
}
.tour__player-info .pairings th {
  border-inline-start: 3px solid transparent;
  transition: all 150ms ease;
}
.tour__player-info .pairings tr:hover th {
  border-color: var(--c-font-dimmer);
}
.tour__player-info .pairings tr.win:hover th {
  border-color: var(--c-good);
}
.tour__player-info .pairings tr.loss:hover th {
  border-color: var(--c-bad);
}
.tour__player-info .pairings td:nth-child(2) {
  max-width: 200px;
}
.tour__player-info .pairings td.result {
  font-weight: bold;
  opacity: 0.8;
}
.tour__player-info .pairings tr.win td.result {
  color: var(--c-good);
  opacity: 1;
}
.tour__player-info .pairings tr.loss td.result {
  color: var(--c-bad);
  opacity: 1;
}
.tour__player-info .pairings tr.streak td.result {
  color: var(--c-brag);
  opacity: 1;
}
.tour__player-info .pairings td.berserk {
  color: var(--c-font-dim);
  font-size: 0.9em;
}
.tour__player-info .color-icon {
  opacity: 0.6;
}

.tour__team-info .players {
  width: 100%;
}
.tour__team-info .players .name {
  padding-inline-end: 5px;
}
.tour__team-info .players tr {
  cursor: pointer;
  transition: background-color 150ms ease;
}
.tour__team-info .players tr:nth-child(odd) {
  background: var(--c-bg-zebra);
}
.tour__team-info .players tr:hover {
  background: var(--m-primary_bg--mix-10);
}
.tour__team-info .players th,
.tour__team-info .players td {
  padding: 0.3em 1em;
}
.tour__team-info .players td:last-child {
  text-align: right;
}
.tour__team-info .players .rating {
  font-style: italic;
  font-size: 0.8em;
}
.tour__team-info .players .leader::before {
  color: var(--c-brag);
  margin-inline-end: 0.15em;
}

.tour .pull-quote {
  margin-top: 30px;
  width: 300px;
}
.tour .box.created {
  padding-bottom: 2em;
  /* as quote margin */
}

.tour__faq {
  padding: 4em var(---box-padding);
  display: none;
}
@media (min-width: 799.3px) {
  .tour__faq {
    display: block;
  }
}
.tour__faq h2 {
  margin: 1.5em 0 0.5em 0;
}

/*# sourceMappingURL=tournament.show.css.map */
