.patchnotes-page .patchnotes-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(240px, .65fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: end;
}

.patchnotes-page .patchnotes-hero h1 { margin: .35rem 0 .8rem; }
.patchnotes-page .patchnotes-hero p { max-width: 68ch; margin-bottom: 0; }

.patchnotes-summary-card {
  display: grid;
  gap: .3rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(211, 79, 42, .08), rgba(30, 111, 112, .08));
}

.patchnotes-summary-card span,
.patchnote-entry-head time { color: var(--muted); }

.patchnotes-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.patchnotes-filters { display: flex; gap: .55rem; flex-wrap: wrap; }
.patchnotes-list { display: grid; gap: 1.25rem; }

.patchnote-entry {
  scroll-margin-top: 1.5rem;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: var(--card);
  box-shadow: 0 18px 45px rgba(53, 40, 18, .09);
}

.patchnote-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .35rem 1rem;
  padding: clamp(22px, 3vw, 34px);
  border-bottom: 1px solid var(--line);
  background: radial-gradient(circle at 90% 0%, rgba(30, 111, 112, .10), transparent 30%), linear-gradient(135deg, rgba(251, 247, 239, .98), rgba(242, 232, 215, .7));
}

.patchnote-entry-head time {
  grid-column: 1;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.patchnote-entry-head h2 {
  grid-column: 1;
  margin: .15rem 0 .25rem;
  font-size: clamp(1.7rem, 3vw, 2.5rem);
}

.patchnote-entry-head p { grid-column: 1; max-width: 78ch; margin: 0; }

.patchnote-permalink {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
  color: var(--accent-2);
  font-size: .82rem;
  font-weight: 700;
  text-decoration: none;
}
.patchnote-permalink:hover { text-decoration: underline; }

.patchnote-section-grid { display: grid; grid-template-columns: minmax(0, 1fr); }
.patchnote-section {
  min-width: 0;
  padding: clamp(22px, 3vw, 34px);
  border-bottom: 1px solid var(--line);
}
.patchnote-section:last-child { border-bottom: 0; }
.patchnote-section h3 { margin: 0 0 1rem; font-size: 1.05rem; }
.patchnote-section--game h3 { color: var(--accent); }
.patchnote-section--rules h3 { color: #73558f; }
.patchnote-section--platform h3 { color: var(--accent-2); }

.patchnote-section ul { display: grid; gap: .9rem; margin: 0; padding-left: 1.15rem; }
.patchnote-section li { line-height: 1.58; }
.patchnote-section a { color: inherit; text-decoration-color: rgba(28, 31, 36, .3); text-underline-offset: 3px; }
.patchnote-section a:hover { color: var(--accent-2); }

.patchnote-change-item { list-style: none; margin-left: -1.15rem; }
.patchnote-change {
  display: grid;
  gap: .55rem;
  padding: 1rem 1.05rem;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255, 255, 255, .38);
}
.patchnote-change h4 { margin: 0; font-size: 1rem; line-height: 1.35; }
.patchnote-change p {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: .65rem;
  margin: 0;
}
.patchnote-change p strong { font-size: .78rem; letter-spacing: .04em; text-transform: uppercase; }
.patchnote-change-before { color: var(--muted); }
.patchnote-change-after { color: var(--text); }
.patchnote-change-after strong { color: var(--accent-2); }
.patchnote-change-link { width: fit-content; margin-top: .15rem; font-size: .86rem; font-weight: 700; }

@media (max-width: 900px) {
  .patchnotes-page .patchnotes-hero { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .patchnote-entry-head { grid-template-columns: 1fr; }
  .patchnote-permalink { grid-column: 1; grid-row: auto; }
  .patchnote-change p { grid-template-columns: 1fr; gap: .2rem; }
}
