.page-news{
  --card-min: 220px;
  color: var(--ink);
  background: var(--bg-warm);
  font-family: var(--font-body);
  line-height: 1.6;
}
.page-news img{
  max-width:100%;
  height:auto;
}
.page-news__hero{
  padding:20px 16px 0;
  background:var(--bg-warm);
}
.page-news__crumb{
  display:flex;
  gap:8px;
  list-style:none;
  font-family:var(--font-mono);
  font-size:.85rem;
  color:var(--muted);
  padding:0;
  margin:0 0 12px;
}
.page-news__crumb a{
  color:var(--navy);
  text-decoration:none;
}
.page-news__crumb a:hover{
  text-decoration:underline;
}
.page-news__lead{
  max-width:760px;
  font-family:var(--font-note);
  font-size:1.02rem;
  color:var(--ink);
  background:var(--bg-panel);
  border-left:4px solid var(--coral);
  padding:12px 16px;
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  box-shadow:var(--shadow-sm);
}
.page-news__banner{
  margin-top:16px;
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
  background:var(--bg-accent);
  object-fit:cover;
}
.page-news__section{
  padding:24px 16px;
  margin-top:16px;
}
.page-news__section--latest{
  background:var(--bg-panel);
  border-top:4px solid var(--coral);
}
.page-news__section--archive{
  background:var(--bg-warm);
  border-top:4px dashed var(--navy);
}
.page-news__section--version{
  background:var(--bg-accent);
  border-top:4px double var(--tag-purple);
}
.page-news__section--tag{
  background:var(--bg-warm);
  border-top:4px solid var(--green);
}
.page-news__section--closing{
  background:var(--navy);
  color:#fff;
  margin-top:16px;
}
.page-news__section-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:6px 12px;
  margin-bottom:16px;
}
.page-news__section-head h2{
  font-family:var(--font-head);
  font-size:1.6rem;
  line-height:1.2;
  margin:4px 0;
  color:var(--ink);
}
.page-news__kicker{
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--coral);
  background:var(--bg-panel);
  border:1px solid var(--coral);
  border-radius:20px;
  padding:2px 10px;
}
.page-news__section-note{
  font-family:var(--font-note);
  font-size:.9rem;
  color:var(--muted);
  margin:0;
}
.page-news__section--closing .page-news__section-head h2,
.page-news__section--closing .page-news__section-note{
  color:#fff;
}
.page-news__card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(var(--card-min),1fr));
  gap:14px;
}
.page-news__card{
  background:var(--bg-warm);
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
}
.page-news__card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-md);
}
.page-news__card-media{
  aspect-ratio:16/9;
  background:
    linear-gradient(135deg,var(--bg-accent) 0%,var(--bg-panel) 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-family:var(--font-mono);
  font-size:2rem;
  font-weight:bold;
  color:var(--navy);
  border-bottom:1px solid var(--line);
}
.page-news__card-body{
  padding:10px 12px 12px;
}
.page-news__card-body h3{
  font-family:var(--font-head);
  font-size:1rem;
  margin:0 0 4px;
  color:var(--ink);
}
.page-news__card-meta{
  font-family:var(--font-body);
  font-size:.82rem;
  color:var(--muted);
  margin:0 0 8px;
}
.page-news .badge{
  display:inline-block;
  padding:2px 8px;
  border-radius:20px;
  font-family:var(--font-mono);
  font-size:.72rem;
  font-weight:bold;
  background:var(--status-missing);
  color:#fff;
}
.page-news .badge[data-status="updated"]{
  background:var(--green);
}
.page-news .badge[data-status="ongoing"]{
  background:var(--status-ongoing);
}
.page-news .badge[data-status="done"]{
  background:var(--navy);
}
.page-news__archive-img,
.page-news__version-img{
  display:block;
  margin-bottom:16px;
  border:1px dashed var(--navy);
  border-radius:var(--radius-sm);
  background:var(--bg-panel);
  object-fit:cover;
}
.page-news__timeline{
  position:relative;
  margin-top:8px;
  border-left:2px solid var(--coral);
  padding-left:16px;
}
.page-news__timeline-row{
  display:grid;
  grid-template-columns:100px 60px 70px 1fr;
  gap:8px;
  align-items:baseline;
  padding:10px 8px;
  border-bottom:1px solid var(--line);
  position:relative;
}
.page-news__timeline-row::before{
  content:"";
  position:absolute;
  left:-23px;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--coral);
  border:2px solid var(--bg-warm);
  box-sizing:border-box;
}
.page-news__timeline-row:nth-child(even){
  background:rgba(255,248,231,.6);
}
.page-news__batch{
  font-family:var(--font-mono);
  font-weight:bold;
  color:var(--navy);
}
.page-news__time{
  font-family:var(--font-note);
  color:var(--muted);
}
.page-news__count{
  font-family:var(--font-mono);
  color:var(--coral);
  font-weight:bold;
}
.page-news__change{
  color:var(--ink);
  font-size:.92rem;
}
.page-news__version-list{
  display:grid;
  gap:2px;
}
.page-news__version-row{
  display:grid;
  grid-template-columns:80px 1fr;
  gap:12px;
  background:var(--bg-warm);
  border-bottom:2px solid var(--bg-accent);
  padding:10px 12px;
  align-items:center;
}
.page-news__version-row:last-child{
  border-bottom:none;
}
.page-news__ver{
  font-family:var(--font-mono);
  font-weight:bold;
  font-size:1.2rem;
  color:var(--coral);
  background:var(--bg-panel);
  border:1px solid var(--coral);
  border-radius:var(--radius-sm);
  text-align:center;
  padding:2px 4px;
  white-space:nowrap;
}
.page-news__ver-desc{
  font-size:.95rem;
  color:var(--ink);
}
.page-news__table-wrap{
  overflow-x:auto;
  border-radius:var(--radius-sm);
  box-shadow:var(--shadow-sm);
}
.page-news__tag-table{
  width:100%;
  border-collapse:collapse;
  font-size:.95rem;
  min-width:560px;
  background:var(--bg-panel);
}
.page-news__tag-table th{
  background:var(--navy);
  color:#fff;
  text-align:left;
  padding:8px 10px;
  font-family:var(--font-head);
}
.page-news__tag-table td{
  padding:7px 10px;
  border-bottom:1px solid var(--line);
}
.page-news__tag-table tbody tr:nth-child(even) td{
  background:var(--bg-panel);
}
.page-news__tag-table tbody tr:hover td{
  background:var(--bg-accent);
}
.page-news__tag-table td:first-child{
  font-family:var(--font-mono);
  font-weight:bold;
  color:var(--navy);
}
.page-news__tag-table td:nth-child(2){
  color:var(--coral);
  font-weight:bold;
}
.page-news__closing-inner{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.page-news__closing-text{
  flex:1;
}
.page-news__closing-text h2{
  font-family:var(--font-head);
  color:#fff;
  font-size:1.4rem;
}
.page-news__closing-text p{
  color:rgba(255,255,255,.85);
}
.page-news__closing-text a{
  color:var(--bg-accent);
  text-decoration:underline;
}
.page-news__closing-img{
  flex:1.2;
  border-radius:var(--radius-md);
  object-fit:cover;
}
@media (min-width:900px){
  .page-news__hero{
    padding:30px 32px 0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    align-items:end;
  }
  .page-news__crumb{
    grid-column:1 / -1;
  }
  .page-news__lead{
    grid-column:1;
  }
  .page-news__banner{
    grid-column:2;
    grid-row:2 / 4;
    margin-top:0;
    width:100%;
    height:100%;
    min-height:200px;
    object-fit:cover;
  }
  .page-news__section{
    padding:32px 32px;
  }
  .page-news__card-grid{
    grid-template-columns:repeat(4,1fr);
  }
  .page-news__timeline-row{
    grid-template-columns:130px 80px 80px 1fr;
  }
  .page-news__version-row{
    grid-template-columns:100px 1fr;
  }
  .page-news__closing-inner{
    flex-direction:row-reverse;
    align-items:center;
  }
}
