/* ---- What's new? — bead timeline (page-whats-new) ---- */

main.wrap-narrow { max-width: 720px; }

.wn-h1 { font-size: 30px; font-weight: 700; margin: 0 0 28px; letter-spacing: -0.5px; }

.crumb { font-size: 13px; margin-bottom: 18px; }
.crumb a { color: var(--primary); text-decoration: none; }

/* latest card */
.wn-latest {
  background: var(--surface);
  border: 1px solid var(--border-strong);
  border-radius: 18px;
  padding: 20px 22px;
  margin-bottom: 44px;
  display: flex;
  gap: 18px;
  align-items: center;
  flex-wrap: wrap;
}
.wn-big-bead {
  width: 54px; height: 54px; flex: none;
  border-radius: 50%;
  background: var(--primary);
  display: flex; align-items: center; justify-content: center;
  font-size: 24px;
  box-shadow: 0 4px 14px rgba(139, 94, 60, 0.35);
}
.wn-info { flex: 1; min-width: 200px; }
.wn-version { font-size: 19px; font-weight: 700; }
.wn-date { font-size: 13px; color: var(--ink-mute); }
.wn-date a.wn-sha { color: var(--primary); text-decoration: none; border-bottom: 1px dotted var(--border-strong); }
.wn-dl {
  background: var(--primary); color: var(--on-primary);
  border-radius: 12px; padding: 12px 22px;
  font-size: 15px; font-weight: 600; text-decoration: none;
  flex: none;
}
.wn-dl:active { transform: translateY(1px); }

/* bead timeline */
.wn-timeline { position: relative; margin: 0; padding: 0; list-style: none; }
.wn-timeline::before {
  content: "";
  position: absolute;
  left: 19px; top: 12px; bottom: 40px;
  width: 2px;
  background: linear-gradient(var(--border-strong), var(--border));
}
.wn-release { position: relative; padding: 0 0 34px 58px; }
.wn-release:last-child { padding-bottom: 6px; }
.wn-bead {
  position: absolute; left: 0; top: 0;
  width: 40px; height: 40px;
  border-radius: 50%;
  background: var(--surface);
  border: 2px solid var(--border-strong);
  display: flex; align-items: center; justify-content: center;
  font-size: 17px;
}
.wn-current .wn-bead {
  background: var(--primary);
  border-color: var(--primary);
  box-shadow: 0 3px 10px rgba(139, 94, 60, 0.35);
}
.wn-release-head {
  display: flex; align-items: baseline; gap: 10px;
  margin-bottom: 6px; flex-wrap: wrap;
}
.wn-release-head .wn-v { font-size: 17px; font-weight: 700; }
.wn-current .wn-v { color: var(--primary); }
.wn-release-head .wn-d { font-size: 12.5px; color: var(--ink-faint); }
.wn-tag {
  font-size: 10.5px; font-weight: 700; letter-spacing: 0.8px;
  color: var(--primary);
  border: 1px solid var(--border-strong);
  border-radius: 999px;
  padding: 2px 9px;
  text-transform: uppercase;
}
ul.wn-changes { margin: 0; padding: 0; list-style: none; }
ul.wn-changes li {
  position: relative;
  padding: 3px 0 3px 22px;
  font-size: 14.5px;
  color: var(--ink-mute);
}
ul.wn-changes li::before {
  content: "";
  position: absolute; left: 2px; top: 0.72em;
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--border-strong);
}
ul.wn-changes li.wn-new::before { background: var(--primary); }
ul.wn-changes li.wn-new { color: var(--ink); }

@media (max-width: 560px) {
  .wn-latest { flex-direction: column; align-items: flex-start; }
  .wn-dl { width: 100%; text-align: center; }
}
