#mobile-category-track { display: none; }

/* Keep the header controls on one row; Discord stays at the far right. */
.top-actions {
  grid-template-columns: repeat(3, 48px);
  width: 160px;
  min-width: 160px;
}
.join-top-link {
  grid-column: 3;
  grid-row: 1;
}
.join-top-link .discord-icon {
  display: inline-grid;
  place-items: center;
  align-self: center;
  justify-self: center;
  margin: 0;
  translate: 0 0;
}
.join-top-link .discord-icon svg {
  display: block;
}
.join-top-link {
  position: relative;
}
.join-top-link .discord-icon {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: auto;
  height: auto;
}
.join-top-link .discord-icon svg {
  width: 21px;
  height: 21px;
}
.join-top-link::before,
.join-top-link::after {
  display: none;
}
.join-top-link {
  color: color-mix(in srgb, var(--text) 92%, var(--accent));
  border-color: color-mix(in srgb, var(--accent) 34%, var(--border));
  background: color-mix(in srgb, var(--surface0) 62%, transparent);
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--text) 12%, transparent),
    0 10px 30px color-mix(in srgb, var(--crust) 34%, transparent);
}

.topbar {
  background: color-mix(in srgb, var(--crust) 86%, transparent);
}

@media (min-width: 641px) {
  .tag-row .details-link,
  .tag-row .category-chip,
  .card-actions .copy-link,
  .card-actions .join-link {
    height: 32px;
    min-height: 32px;
    font-size: 10px;
    align-items: center;
  }
}

@media (min-width: 641px) and (max-width: 1400px) {
  .top-actions {
    margin-right: 50px;
  }
}

@media (max-width:640px) {
  html {
    background:
      radial-gradient(circle at 15% -5%, color-mix(in srgb, var(--flare-left) 28%, transparent), transparent 32rem),
      radial-gradient(circle at 84% 0%, color-mix(in srgb, var(--flare-right) 20%, transparent), transparent 34rem),
      radial-gradient(circle at 55% 105%, color-mix(in srgb, var(--flare-bottom) 16%, transparent), transparent 28rem),
      linear-gradient(135deg, var(--base), var(--mantle) 54%, var(--crust));
  }
  .sidebar-stack {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "primary";
    align-self: stretch;
    width: 100%;
  }
  .mobile-category-filter,
  #primary-categories { display: none; }
  #mobile-category-track {
    display: grid;
    width: 100%;
  }
  #mobile-category-track .chip {
    box-sizing: border-box;
    flex: none;
    width: auto;
    height: 28px;
    min-height: 28px;
    max-height: 28px;
    color: var(--subtext0);
    border-color: color-mix(in srgb, var(--overlay0) 35%, var(--surface0));
    background: color-mix(in srgb, var(--surface0) 78%, transparent);
    box-shadow: none;
    padding: 0 8px;
    font-size: 10.5px;
    font-weight: 650;
  }
  #mobile-category-track .chip b {
    box-sizing: border-box;
    min-height: 17px;
    height: 17px;
    color: var(--subtext1);
    border-color: color-mix(in srgb, var(--overlay0) 28%, transparent);
    background: color-mix(in srgb, var(--base) 42%, transparent);
  }
  #mobile-category-track .chip.active {
    color: var(--accent);
    border-color: color-mix(in srgb, var(--accent) 34%, var(--border));
    background: color-mix(in srgb, var(--accent) 12%, transparent);
  }
  #mobile-category-track .chip.active b {
    color: var(--accent);
    border-color: color-mix(in srgb, var(--accent) 34%, var(--border));
    background: color-mix(in srgb, var(--accent) 12%, transparent);
  }
  .search-hint .search-hint-marquee {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: max-content;
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    flex: none;
  }
  .search-hint .search-hint-marquee.is-overflowing {
    animation: mobile-search-hint-marquee 10s linear infinite alternate;
  }
  .search-hint .search-hint-marquee strong,
  .search-hint .search-hint-marquee span {
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    flex: none;
  }
  .search-hint { right: 96px; }
  #mobile-search-panel { right: 92px; }
  .top-actions {
    grid-template-columns: repeat(3, 42px);
    width: 148px;
    min-width: 148px;
  }
  .theme-button,
  .accent-button,
  .join-top-link {
    width: 42px;
    min-width: 42px;
    max-width: 42px;
    height: 42px;
    min-height: 42px;
  }
  #pager {
    box-sizing: border-box;
    height: 40px;
    min-height: 40px;
  }
  .pager-copy {
    height: 34px;
    min-height: 34px;
  }
  .tag-row {
    display: flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    min-height: 28px;
  }
  .tag-row .details-link,
  .tag-row .category-chip {
    width: auto;
    height: 26px;
    min-height: 26px;
    border-radius: 20px;
    justify-content: center;
  }
  .tag-row .details-link { flex: none; padding: 0 10px; font-size: 9.5px; }
  .tag-row .category-chip {
    border: 1px solid color-mix(in srgb, var(--overlay0) 22%, transparent);
    max-width: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    background: color-mix(in srgb, var(--surface0) 42%, transparent);
    padding: 0 6px;
    overflow: hidden;
  }
  .card-actions .copy-link,
  .card-actions .join-link {
    height: 26px;
    min-height: 26px;
    padding: 0 7px;
    font-size: 9.5px;
  }
  .card-actions { translate: 0 -1px; }
  .server-dialog .dialog-close { position: absolute; top: 21px; right: 16px; }
  .dialog-title-copy { padding-right: 42px; }
  .server-dialog h2 { font-size: 20px; line-height: 1.1; }
  .server-dialog p { font-size: 12px; line-height: 1.35; }
  .page-nav-card { display: none; }
}

@keyframes mobile-search-hint-marquee {
  0%, 12% { transform: translateX(0); }
  88%, 100% { transform: translateX(calc(-1 * var(--marquee-distance))); }
}
