/* Extracted page styles from changelog.html. */
/* ─── Page-specific: Hero ─────────────────────────────────────────────── */
    .changelog-hero {
      padding: 80px 0 64px;
      text-align: center;
    }
    .changelog-hero h1 {
      font-size: 36px;
      font-weight: 800;
      letter-spacing: -0.03em;
      line-height: 1.2;
      margin-bottom: 16px;
    }
    .changelog-hero .subtitle {
      font-size: 16px;
      color: var(--text-muted);
      max-width: 560px;
      margin: 0 auto;
      line-height: 1.6;
    }

    @media (max-width: 700px) {
      .changelog-hero { padding: 56px 0 40px; }
      .changelog-hero h1 { font-size: 28px; }
    }

    /* ─── Page-specific: Timeline ─────────────────────────────────────────── */
    .timeline {
      position: relative;
      padding-left: 32px;
    }
    .timeline::before {
      content: '';
      position: absolute;
      left: 7px;
      top: 8px;
      bottom: 8px;
      width: 2px;
      background: var(--border);
      border-radius: 1px;
    }

    .release {
      position: relative;
      margin-bottom: 40px;
    }
    .release:last-child {
      margin-bottom: 0;
    }

    .release::before {
      content: '';
      position: absolute;
      left: -32px;
      top: 10px;
      width: 16px;
      height: 16px;
      border-radius: 50%;
      background: var(--surface);
      border: 3px solid var(--accent);
      z-index: 1;
    }
    .release.release-major::before {
      background: var(--accent);
      border-color: var(--accent);
      box-shadow: 0 0 0 4px var(--accent-glow);
    }
    .release.release-patch::before {
      border-color: var(--text-muted);
    }

    .release-card {
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 24px 28px;
      transition: border-color 0.15s;
    }
    .release-card:hover {
      border-color: var(--accent);
    }

    .release-header {
      display: flex;
      align-items: baseline;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 4px;
    }
    .release-version {
      font-size: 20px;
      font-weight: 700;
      letter-spacing: -0.02em;
    }
    .release-version a {
      color: var(--text);
      text-decoration: none;
    }
    .release-version a:hover {
      color: var(--accent);
    }
    .release-date {
      font-size: 13px;
      color: var(--text-muted);
    }
    .release-title {
      font-size: 15px;
      font-weight: 600;
      color: var(--accent);
      margin-bottom: 16px;
    }

    .release-changes {
      list-style: none;
      padding: 0;
    }
    .release-changes li {
      position: relative;
      padding: 5px 0 5px 20px;
      font-size: 14px;
      color: var(--text-muted);
      line-height: 1.6;
    }
    .release-changes li::before {
      content: '';
      position: absolute;
      left: 4px;
      top: 13px;
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--border);
    }

    .release-tag {
      display: inline-block;
      padding: 2px 8px;
      border-radius: 4px;
      font-size: 10px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      margin-left: 8px;
      vertical-align: middle;
    }
    .release-tag-breaking {
      background: rgba(248, 113, 113, 0.12);
      color: var(--red);
    }
    .release-tag-new {
      background: var(--tag-free-bg);
      color: var(--green);
    }
    .release-tag-security {
      background: rgba(251, 146, 60, 0.12);
      color: var(--orange);
    }

    /* ─── Page-specific: Footer grid (matches 404.html pattern) ───────────── */
    .footer-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 32px;
      text-align: left;
      margin-bottom: 32px;
    }
    .footer-col h4 {
      font-size: 13px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--text);
      margin-bottom: 12px;
    }
    .footer-col a {
      display: block;
      font-size: 13px;
      color: var(--text-muted);
      padding: 3px 0;
    }
    .footer-col a:hover {
      color: var(--text);
    }
    .footer-copy {
      text-align: center;
      font-size: 13px;
      color: var(--text-muted);
      padding-top: 24px;
      border-top: 1px solid var(--border);
    }

    @media (max-width: 500px) {
      .footer-grid { grid-template-columns: 1fr; gap: 24px; }
    }

    /* ─── Page-specific: CTA ──────────────────────────────────────────────── */
    .cta-section {
      padding: 64px 0;
      text-align: center;
    }
    .cta-section h2 {
      font-size: 28px;
      font-weight: 700;
      letter-spacing: -0.02em;
      margin-bottom: 12px;
    }
    .cta-section p {
      font-size: 15px;
      color: var(--text-muted);
      margin-bottom: 24px;
    }
