.toolbar {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 32px;
}

.toolbar button {
  min-height: 44px;
  border: 1px solid #303430;
  border-radius: 999px;
  background: linear-gradient(145deg, #1a1c1a, #111311);
  color: #c8cec9;
  padding: 10px 18px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 7px 18px rgba(0, 0, 0, 0.14);
  cursor: pointer;
  font: inherit;
  line-height: 1;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease;
}

.toolbar button:hover,
.toolbar button:focus-visible {
  transform: translateY(-2px);
  border-color: #5d675f;
  background: linear-gradient(145deg, #222622, #171a17);
  color: #f2f4f2;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.065),
    0 11px 24px rgba(0, 0, 0, 0.19);
  outline: none;
}

.toolbar button.active,
.toolbar button[aria-pressed="true"] {
  border-color: #89948c;
  background: #e8ece8;
  color: #18201b;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.5),
    0 9px 22px rgba(0, 0, 0, 0.16);
}

.toolbar button:active {
  transform: translateY(0) scale(0.98);
}

.status {
  color: #888;
  margin-top: 36px;
  line-height: 1.7;
}

.article-list {
  display: grid;
  gap: 14px;
  margin-top: 54px;
}

.article-row {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 28px;
  border-top: 1px solid #2a2a2a;
  padding: 24px 0;
  color: #f2f2f2;
  text-decoration: none;
}

.article-row:hover h2 {
  color: #fff;
}

.article-row:visited,
.article-row:active {
  color: #f2f2f2;
}

.article-row .topic {
  color: #8a8a8a;
  font-size: 14px;
  line-height: 1.8;
}

.article-row h2 {
  font-size: clamp(28px, 4vw, 54px);
  line-height: 1.08;
  margin: 0;
  color: #f2f2f2;
  text-decoration: none;
}

.article-row .subtitle {
  color: #cfcfcf;
  font-size: 20px;
  line-height: 1.55;
  margin: 16px 0 0;
}

.article-row .excerpt {
  color: #888;
  font-size: 15px;
  line-height: 1.8;
  margin: 18px 0 0;
  max-width: 860px;
}

@media (max-width: 760px) {
  .toolbar {
    gap: 9px;
  }

  .toolbar button {
    min-height: 40px;
    padding: 9px 14px;
  }

  .article-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
