.patch-page {
  padding: var(--space-6) 0 var(--space-12);
}

.patch-hero {
  margin-bottom: var(--space-10);
  padding: var(--space-6);
  border: 1px solid var(--color-border-subtle);
  background:
    radial-gradient(ellipse at 10% 0%, rgba(80, 120, 160, 0.18), transparent 48%),
    linear-gradient(160deg, rgba(20, 24, 30, 0.96), rgba(8, 10, 14, 0.5)),
    var(--color-bg-elevated);
}

@media (min-width: 900px) {
  .patch-hero {
    padding: var(--space-8);
  }
}

.patch-hero__kicker {
  margin: 0 0 var(--space-2);
  font-size: var(--text-sm);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #e8c547;
}

.patch-hero h1,
.patch-article__header h1 {
  margin: 0;
  font-size: clamp(1.85rem, 4vw, 2.75rem);
  line-height: 1.12;
  color: var(--color-text-bright);
}

.patch-hero__intro {
  margin: var(--space-4) 0 0;
  max-width: 46rem;
  color: var(--color-text-muted);
  line-height: 1.6;
}

.patch-hero__stats {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  list-style: none;
  margin: var(--space-5) 0 0;
  padding: 0;
}

.patch-hero__stats li {
  min-width: 7rem;
  max-width: 18rem;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  background: rgba(0, 0, 0, 0.28);
}

.patch-hero__stat-value {
  display: block;
  font-size: var(--text-lg);
  font-weight: 700;
  color: #e8c547;
  overflow-wrap: anywhere;
}

.patch-hero__stat-label {
  display: block;
  margin-top: 0.15rem;
  font-size: var(--text-xs);
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.patch-hero__updated {
  margin: var(--space-4) 0 0;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.patch-section__head {
  margin-bottom: var(--space-5);
}

.patch-section__eyebrow {
  margin: 0 0 var(--space-2);
  font-size: var(--text-sm);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #e8c547;
}

.patch-section__head h2,
.patch-guide h2 {
  margin: 0;
  font-size: clamp(1.35rem, 2.4vw, 1.75rem);
  color: var(--color-text-bright);
}

.patch-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-4);
  align-items: end;
  margin-bottom: var(--space-5);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  background: rgba(0, 0, 0, 0.22);
}

.patch-toolbar .input-group {
  flex: 1 1 14rem;
}

.patch-toolbar__count {
  margin: 0 0 0.35rem auto;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  font-variant-numeric: tabular-nums;
}

.patch-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-3);
}

.patch-list__link {
  display: grid;
  gap: 0.25rem;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  background: rgba(0, 0, 0, 0.22);
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease;
}

@media (min-width: 720px) {
  .patch-list__link {
    grid-template-columns: 7.5rem 1fr;
    grid-template-rows: auto auto;
    column-gap: var(--space-4);
  }

  .patch-list__date {
    grid-row: 1 / span 2;
    align-self: start;
  }

  .patch-list__excerpt {
    grid-column: 2;
  }
}

.patch-list__link:hover,
.patch-list__link:focus-visible {
  border-color: var(--color-border-subtle);
  outline: none;
}

.patch-list__date {
  font-size: var(--text-sm);
  color: #e8c547;
  font-variant-numeric: tabular-nums;
}

.patch-list__title {
  font-size: var(--text-lg);
  font-weight: 700;
  color: var(--color-text-bright);
}

.patch-list__excerpt {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  line-height: 1.5;
}

.patch-empty {
  padding: var(--space-6);
  border: 1px dashed var(--color-border);
  color: var(--color-text-muted);
}

.patch-guide {
  margin-top: var(--space-10);
  padding-top: var(--space-8);
  border-top: 1px solid var(--color-border);
}

.patch-guide p {
  margin: var(--space-3) 0 0;
  max-width: 44rem;
  color: var(--color-text-muted);
  line-height: 1.55;
}

.patch-article__header {
  margin-bottom: var(--space-6);
}

.patch-article__by {
  margin: var(--space-3) 0 0;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.patch-article__body {
  max-width: 46rem;
  color: var(--color-text);
  line-height: 1.65;
}

.patch-article__body h1,
.patch-article__body h2,
.patch-article__body h3 {
  margin: var(--space-6) 0 var(--space-3);
  color: var(--color-text-bright);
  line-height: 1.25;
}

.patch-article__body h3 {
  font-size: var(--text-xl);
  color: #e8c547;
}

.patch-article__body p {
  margin: 0 0 var(--space-3);
}

.patch-article__body ul {
  margin: 0 0 var(--space-4);
  padding-left: 1.25rem;
}

.patch-article__body li {
  margin: 0 0 0.4rem;
}

.patch-article__body a {
  color: #e8c547;
}

.patch-u {
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.patch-article__footer {
  margin-top: var(--space-8);
  padding-top: var(--space-5);
  border-top: 1px solid var(--color-border);
  max-width: 46rem;
}

.patch-article__steam {
  margin: 0;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.patch-article__steam a {
  color: #e8c547;
}

.patch-article__back {
  margin: var(--space-3) 0 0;
}

.patch-article__back a {
  color: var(--color-text-muted);
  text-decoration: none;
}

.patch-article__back a:hover {
  color: #e8c547;
}

.patch-pager {
  display: grid;
  gap: var(--space-3);
  margin-top: var(--space-8);
}

@media (min-width: 720px) {
  .patch-pager {
    grid-template-columns: 1fr 1fr;
  }
}

.patch-pager__link {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  background: rgba(0, 0, 0, 0.22);
  text-decoration: none;
  color: inherit;
}

.patch-pager__link:hover,
.patch-pager__link:focus-visible {
  border-color: var(--color-border-subtle);
  outline: none;
}

.patch-pager__link--disabled {
  opacity: 0.45;
}

.patch-pager__dir {
  font-size: var(--text-xs);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.patch-pager__title {
  font-weight: 600;
  color: var(--color-text-bright);
}
