.news-library { width: min(1200px, calc(100% - 48px)); margin: 32px auto 72px; color: var(--ink); }
.news-library * { box-sizing: border-box; }
.news-library a { color: inherit; text-decoration: none; }
.news-library .library-title { margin: 0 0 24px; font-size: 26px !important; font-weight: 750; letter-spacing: -.025em; }
.news-library .lead { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 40px; padding-bottom: 32px; border-bottom: 1px solid var(--line); }
.news-library .cover { display: block; overflow: hidden; border-radius: 8px; aspect-ratio: 16 / 9; background: var(--porcelain); }
.news-library .cover img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.news-library .lead h2 { font-size: clamp(28px, 2.65vw, 38px) !important; line-height: 1.15 !important; letter-spacing: -.035em; margin: 14px 0; font-weight: 780; }
.news-library .summary { color: #465e65; line-height: 1.65; margin: 0 0 18px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.news-library .category { display: inline-block; padding: 4px 9px; font-size: 12px; line-height: 1.4; font-weight: 700; color: var(--deep); background: #e6efec; border-radius: 3px; }
.news-library .meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #52696f; font-size: 13px; line-height: 1.6; }
.news-library .meta span::before { content: '·'; margin-right: 8px; }
.news-library .filters { display: flex; flex-wrap: wrap; gap: 8px; padding: 24px 0; margin: 0; border-bottom: 1px solid var(--line); }
.news-library .filters button { font: inherit; font-size: 13px; line-height: 1.4; font-weight: 600; min-height: 40px; cursor: pointer; border: 1px solid var(--line); color: var(--ink); background: transparent; border-radius: 4px; padding: 9px 13px; }
.news-library .filters button[aria-pressed=true] { color: white; background: var(--deep); border-color: var(--deep); }
.news-library .filters button:hover { border-color: var(--deep); }
.news-library .grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 28px; margin-top: 28px; }
.news-library .news-card { min-width: 0; padding-bottom: 20px; border-bottom: 1px solid var(--line); transition: transform .2s ease; }
.news-library .news-card .category { margin-top: 16px; }
.news-library .news-card h3 { font-size: 21px !important; line-height: 1.35 !important; letter-spacing: -.02em; margin: 10px 0; font-weight: 750; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.7em; }
.news-library .news-card .summary { -webkit-line-clamp: 1; font-size: 14px; margin: 0 0 12px; }
.news-library .news-card[hidden] { display: none; }
.news-library .tracks { display: flex; flex-direction: column; justify-content: center; padding: 28px; min-height: 290px; border: 1px solid var(--line-strong); border-radius: 8px; background: var(--porcelain); }
.news-library .tracks h3 { font-size: 30px !important; line-height: 1.2 !important; margin: 0 0 20px; }
.news-library .tracks strong { font-size: 72px; line-height: 1; letter-spacing: -.06em; font-weight: 750; }
.news-library .tracks p { margin: 4px 0 20px; color: #465e65; }
.news-library .latest { margin-top: 48px; border-top: 3px solid var(--deep); padding-top: 18px; }
.news-library .latest h2 { margin: 0 0 16px; font-size: 24px !important; }
.news-library .latest ol { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; }
.news-library .latest li { font-size: 16px; font-weight: 650; line-height: 1.45; padding-right: 18px; border-right: 1px solid var(--line); }
.news-library .latest li:last-child { border: 0; }
.news-library .latest time { display: block; margin-bottom: 8px; font-size: 12px; font-weight: 400; color: #52696f; }
.news-library .result-status { position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; }
.news-library :focus-visible { outline: 3px solid var(--copper); outline-offset: 5px; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .news-library .news-card:hover { transform: translateY(-4px); }
  .news-library .news-card:hover img { transform: scale(1.035); }
}
@media (min-width: 701px) and (max-width: 1100px) {
  .news-library .lead { gap: 24px; }
  .news-library .lead h2 { font-size: 30px !important; }
  .news-library .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .news-library .latest ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .news-library { width: calc(100% - 32px); margin: 24px auto 48px; }
  .news-library .library-title { font-size: 22px !important; margin-bottom: 20px; }
  .news-library .lead { display: flex; flex-direction: column; gap: 20px; align-items: stretch; padding-bottom: 24px; }
  .news-library .lead h2 { font-size: 28px !important; line-height: 1.2 !important; margin: 12px 0; }
  .news-library .lead .summary { margin-bottom: 14px; }
  .news-library .filters { padding: 20px 0; gap: 7px; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: thin; }
  .news-library .filters button { flex: 0 0 auto; font-size: 12px; min-height: 44px; padding: 9px 11px; }
  .news-library .filters button:focus-visible { outline-offset: -4px; }
  .news-library .grid { grid-template-columns: minmax(0, 1fr); gap: 28px; margin-top: 24px; }
  .news-library .news-card h3 { min-height: auto; }
  .news-library .latest ol { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .news-library .latest li { border-right: 0; border-bottom: 1px solid var(--line); padding: 16px 0; }
}
@media (prefers-reduced-motion: reduce) {
  .news-library *, .news-library *::before { transition: none !important; animation: none !important; }
}
