.page-news{
  background:var(--cream);
  color:var(--text);
  font-family:var(--font);
  overflow-x:clip;
}

.page-news .crumb{
  margin-top:22px;
}

.page-news .news-hero{
  padding-bottom:46px;
}

.page-news .news-hero-bg{
  margin-bottom:2px;
}

.page-news .news-hero-bg img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  filter:saturate(1.18) contrast(1.04);
}

.page-news .news-hero-content{
  position:relative;
  padding:34px 0 28px;
  border-bottom:4px solid var(--blue);
}

.page-news .news-hero-content::after{
  content:"";
  display:block;
  width:110px;
  height:6px;
  margin-top:26px;
  background:repeating-linear-gradient(90deg,var(--orange) 0 12px,var(--blue) 12px 24px,var(--green) 24px 36px);
  transform:skewX(-18deg);
}

.page-news .hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 14px;
  border:1px solid var(--blue);
  background:var(--cream);
  color:var(--blue);
  font-size:13px;
  font-weight:700;
  letter-spacing:0.1em;
  transform:skewX(-6deg);
}

.page-news .hero-kicker::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 2px rgba(57,255,20,0.32);
}

.page-news .hero-title{
  margin:18px 0 14px;
  font-size:clamp(30px,5.4vw,56px);
  font-weight:900;
  line-height:1.16;
  letter-spacing:0.01em;
  color:var(--ink);
  text-wrap:balance;
  position:relative;
}

.page-news .hero-meta{
  max-width:780px;
  margin:0;
  font-size:16px;
  line-height:1.8;
  color:var(--gray);
}

.page-news .hero-preview{
  margin-top:28px;
}

.page-news .preview-list{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}

@media(min-width:900px){
  .page-news .preview-list{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

.page-news .updates-section{
  padding:56px 0 24px;
}

.page-news .section-desc{
  max-width:680px;
  margin:0;
  color:var(--gray);
  line-height:1.8;
}

.page-news .news-filters{
  display:flex;
  flex-wrap:nowrap;
  gap:10px;
  margin-top:30px;
  padding-bottom:16px;
  border-bottom:1px solid var(--border);
  overflow-x:auto;
}

.page-news .filter-link{
  flex:0 0 auto;
  padding:6px 16px;
  border:1px solid var(--border);
  border-radius:999px;
  font-size:13px;
  font-weight:700;
  color:var(--ink);
  background:transparent;
  text-decoration:none;
  white-space:nowrap;
  transition:background var(--speed) var(--ease),border-color var(--speed) var(--ease),color var(--speed) var(--ease),transform var(--speed) var(--ease);
}

.page-news .filter-link:hover{
  border-color:var(--green);
  background:rgba(57,255,20,0.12);
  transform:translateY(-1px);
}

.page-news .filter-link.is-active{
  background:var(--green);
  border-color:var(--green);
  color:var(--ink);
}

.page-news .update-timeline{
  position:relative;
  margin-top:36px;
  padding-left:22px;
}

.page-news .update-timeline::before{
  content:"";
  position:absolute;
  left:5px;
  top:14px;
  bottom:10px;
  width:2px;
  background:linear-gradient(180deg,var(--blue) 0%,var(--khaki) 55%,var(--green) 100%);
  opacity:0.6;
}

.page-news .update-item{
  position:relative;
  padding:22px 20px;
  margin-bottom:20px;
  background:var(--cream);
  border:1px solid var(--border);
  border-left:6px solid var(--blue);
  border-radius:2px;
  box-shadow:0 1px 0 rgba(28,28,26,0.06);
  transition:transform var(--speed) var(--ease),box-shadow var(--speed) var(--ease),border-color var(--speed) var(--ease);
}

.page-news .update-item::before{
  content:"";
  position:absolute;
  left:-25px;
  top:32px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--cream);
  border:3px solid var(--blue);
  box-sizing:border-box;
  z-index:1;
}

.page-news .update-item:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 26px rgba(28,28,26,0.1);
  border-color:var(--border);
  border-left-color:var(--green);
}

.page-news .update-meta{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
}

.page-news .update-thumb{
  flex:0 0 auto;
}

.page-news .update-thumb img{
  display:block;
  width:52px;
  height:52px;
  object-fit:cover;
  border:1px solid var(--border);
  border-radius:2px;
  background:var(--khaki);
  transition:border-color var(--speed) var(--ease),transform var(--speed) var(--ease);
}

.page-news .update-item:hover .update-thumb img{
  border-color:var(--green);
  transform:rotate(-2deg) scale(1.03);
}

.page-news .update-date{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  padding:8px 12px;
  background:var(--blue);
  color:var(--cream);
  border-radius:2px;
  transform:skewX(-4deg);
}

.page-news .update-version{
  font-family:var(--mono);
  font-size:14px;
  font-weight:800;
  color:var(--green);
  line-height:1.2;
  letter-spacing:0.02em;
}

.page-news .update-stage{
  font-size:11px;
  line-height:1.4;
  letter-spacing:0.08em;
  opacity:0.85;
}

.page-news .update-body{
  min-width:0;
}

.page-news .update-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:10px;
}

.page-news .tag-label{
  display:inline-block;
  padding:3px 12px;
  border-radius:999px;
  background:var(--green);
  color:var(--ink);
  font-size:12px;
  font-weight:800;
  letter-spacing:0.04em;
}

.page-news .update-title{
  margin:0 0 10px;
  font-size:19px;
  font-weight:800;
  line-height:1.42;
  color:var(--ink);
}

.page-news .update-title::before{
  content:"▍";
  color:var(--orange);
  margin-right:4px;
}

.page-news .update-summary{
  margin:0 0 12px;
  font-size:15px;
  line-height:1.8;
  color:var(--text);
}

.page-news .update-shot{
  margin:4px 0 14px;
}

.page-news .update-impact{
  margin:10px 0 0;
  padding-top:10px;
  border-top:1px dashed var(--border);
  font-size:13px;
  line-height:1.6;
  color:var(--gray);
}

@media(min-width:768px){
  .page-news .update-item{
    display:grid;
    grid-template-columns:104px 164px 1fr;
    gap:6px 22px;
    align-items:start;
    padding:26px 24px;
  }

  .page-news .update-meta{
    display:contents;
  }

  .page-news .update-thumb img{
    width:104px;
    height:104px;
  }

  .page-news .update-date{
    padding:12px 14px;
  }

  .page-news .update-version{
    font-size:16px;
  }

  .page-news .update-stage{
    font-size:12px;
  }

  .page-news .update-body{
    margin-top:0;
  }
}

.page-news .topics-section{
  margin:52px 0 0;
  padding:62px 0;
  background:
    linear-gradient(115deg,transparent 0 44%,rgba(57,255,20,0.06) 48%,transparent 54%),
    repeating-linear-gradient(-45deg,rgba(245,240,230,0.04) 0 1px,transparent 1px 14px),
    var(--ink);
  color:var(--cream);
  border-top:4px solid var(--green);
  border-bottom:4px solid var(--blue);
}

.page-news .topics-section .section-index{
  color:var(--green);
}

.page-news .topics-section .section-title{
  color:var(--cream);
}

.page-news .topics-section .section-desc{
  color:rgba(245,240,230,0.76);
}

.page-news .topics-scroll{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(280px,86%);
  gap:18px;
  margin-top:34px;
  padding-bottom:8px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
}

.page-news .topic-card{
  position:relative;
  overflow:hidden;
  padding:30px 26px 26px;
  background:var(--cream);
  color:var(--ink);
  border-radius:2px;
  scroll-snap-align:start;
  box-shadow:5px 5px 0 rgba(57,255,20,0.85);
  transition:transform var(--speed) var(--ease),box-shadow var(--speed) var(--ease);
}

.page-news .topic-card:hover{
  transform:translate(-2px,-2px);
  box-shadow:8px 8px 0 var(--green);
}

.page-news .topic-card::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:6px;
  background:linear-gradient(90deg,var(--orange) 0 22%,var(--blue) 22% 46%,var(--green) 46% 62%,var(--ink) 62%);
  opacity:0.92;
}

.page-news .topic-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}

.page-news .topic-no{
  font-family:var(--mono);
  font-size:13px;
  font-weight:700;
  color:var(--gray);
  letter-spacing:0.04em;
}

.page-news .topic-title{
  margin:0 0 10px;
  font-size:21px;
  font-weight:900;
  line-height:1.3;
  color:var(--ink);
}

.page-news .topic-summary{
  margin:0 0 16px;
  font-size:14px;
  line-height:1.8;
  color:var(--gray);
}

.page-news .topic-list{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  border-top:1px solid var(--border);
}

.page-news .topic-list li{
  position:relative;
  padding:9px 0 9px 24px;
  border-bottom:1px dashed var(--border);
  font-size:14px;
  line-height:1.6;
  color:var(--ink);
}

.page-news .topic-list li::before{
  content:"→";
  position:absolute;
  left:2px;
  color:var(--orange);
  font-weight:900;
}

.page-news .topic-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:14px;
  font-weight:800;
  color:var(--blue);
  border-bottom:2px solid var(--blue);
  padding-bottom:2px;
  text-decoration:none;
  transition:gap var(--speed) var(--ease),color var(--speed) var(--ease),border-color var(--speed) var(--ease);
}

.page-news .topic-link:hover{
  gap:10px;
  color:var(--ink);
  border-color:var(--green);
}

@media(min-width:1024px){
  .page-news .topics-scroll{
    grid-auto-flow:row;
    grid-auto-columns:auto;
    grid-template-columns:repeat(3,minmax(0,1fr));
    overflow:visible;
    scroll-snap-type:none;
  }
}

.page-news .legacy-section{
  padding:62px 0 40px;
}

.page-news .legacy-grid{
  display:grid;
  gap:34px;
  align-items:start;
}

.page-news .legacy-media img{
  object-fit:cover;
  filter:contrast(1.05);
}

.page-news .legacy-content .section-desc{
  margin-bottom:22px;
}

.page-news .legacy-steps{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}

.page-news .legacy-steps li{
  position:relative;
  padding:16px 16px 16px 54px;
  background:var(--khaki);
  border-left:4px solid var(--blue);
  font-size:15px;
  line-height:1.75;
  color:var(--ink);
}

.page-news .legacy-steps em{
  display:block;
  margin-bottom:4px;
  font-style:normal;
  font-size:13px;
  font-weight:900;
  letter-spacing:0.08em;
  color:var(--blue);
}

.page-news .legacy-note{
  margin-top:20px;
  padding:16px 18px;
  border:1px solid rgba(0,65,115,0.3);
  border-left:6px solid var(--green);
  background:rgba(0,65,115,0.04);
  font-size:14px;
  line-height:1.85;
  color:var(--ink);
}

@media(min-width:900px){
  .page-news .legacy-grid{
    grid-template-columns:minmax(0,5fr) 7fr;
    gap:44px;
  }

  .page-news .legacy-media{
    position:sticky;
    top:calc(var(--header-h) + 28px);
  }
}

.page-news .feedback-section{
  margin-top:48px;
  padding:56px 0 72px;
  background:linear-gradient(180deg,transparent 0,rgba(217,208,184,0.42) 16%,rgba(217,208,184,0.42) 84%,transparent 100%);
  border-top:4px solid var(--green);
  border-bottom:4px solid var(--blue);
}

.page-news .feedback-section .section-desc{
  margin-bottom:28px;
}

.page-news .feedback-grid{
  display:grid;
  gap:28px;
}

.page-news .feedback-steps{
  display:grid;
  gap:14px;
  align-content:start;
}

.page-news .feedback-step{
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  background:var(--cream);
  border:1px solid var(--border);
  border-right:5px solid var(--green);
  border-radius:2px;
  font-size:15px;
  font-weight:800;
  color:var(--ink);
  transition:transform var(--speed) var(--ease),box-shadow var(--speed) var(--ease);
}

.page-news .feedback-step:hover{
  transform:translateX(4px);
  box-shadow:4px 4px 0 rgba(57,255,20,0.5);
}

.page-news .feedback-step strong{
  font-family:var(--mono);
  font-size:17px;
  font-weight:900;
  padding:5px 10px;
  background:var(--blue);
  color:var(--green);
  transform:skewX(-6deg);
  border-radius:2px;
}

.page-news .feedback-contact{
  padding:28px 26px;
  border:1px solid var(--blue);
  background:var(--cream);
  border-radius:2px;
  box-shadow:7px 7px 0 rgba(0,65,115,0.14);
}

.page-news .feedback-label{
  display:inline-block;
  margin-bottom:14px;
  padding:5px 12px;
  background:var(--blue);
  color:var(--green);
  font-size:13px;
  font-weight:900;
  letter-spacing:0.08em;
  transform:skewX(-6deg);
  border-radius:2px;
}

.page-news .feedback-mail{
  display:block;
  margin-bottom:10px;
  font-family:var(--mono);
  font-size:17px;
  font-weight:700;
  color:var(--blue);
  line-height:1.4;
}

.page-news .feedback-tip{
  margin:0 0 18px;
  font-size:14px;
  line-height:1.8;
  color:var(--gray);
}

.page-news .feedback-license-list{
  list-style:none;
  margin:0 0 22px;
  padding:14px 0 0;
  border-top:1px solid var(--border);
  display:grid;
  gap:8px;
}

.page-news .feedback-license-list li{
  display:flex;
  justify-content:space-between;
  gap:16px;
  font-size:14px;
  line-height:1.6;
  color:var(--ink);
}

.page-news .feedback-license-list strong{
  font-family:var(--mono);
  font-weight:800;
  color:var(--blue);
  text-align:right;
}

@media(min-width:768px){
  .page-news .feedback-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:32px;
  }

  .page-news .feedback-contact{
    padding:32px 30px;
  }
}
