/* Article-specific presentation for the 10Code PHP security update. */
article.php-news{
  --php-news-line:rgba(255,255,255,.1);
  --php-news-panel:rgba(30,41,59,.72);
  --php-news-cyan:#60a5fa;
  --php-news-green:#10b981;
  min-width:0;
}

article.php-news .blog-post-header,
article.php-news .blog-post-content{
  min-width:0;
}

article.php-news h1,
article.php-news h2,
article.php-news h3{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
  scroll-margin-top:6.5rem;
}

article.php-news h1{
  font-size:clamp(2rem,5vw,2.75rem);
  line-height:1.14;
}

article.php-news .php-news__summary{
  margin:24px 0 32px;
  padding:20px 22px;
  border:1px solid rgba(16,185,129,.28);
  border-left:3px solid var(--php-news-green);
  border-radius:10px;
  background:linear-gradient(110deg,rgba(16,185,129,.09),rgba(96,165,250,.06));
  color:var(--fg);
  font-size:1.05rem;
  line-height:1.75;
}

article.php-news .php-news__summary p{
  margin:0;
  color:inherit;
}

article.php-news .php-news__toc{
  margin:28px 0 40px;
  padding:20px 24px;
  border:1px solid var(--php-news-line);
  border-radius:10px;
  background:var(--php-news-panel);
}

article.php-news .php-news__toc > :first-child{
  margin-top:0;
}

article.php-news .php-news__toc > :last-child{
  margin-bottom:0;
}

article.php-news .php-news__toc ul,
article.php-news .php-news__toc ol{
  margin:12px 0 0;
  padding-left:1.35rem;
}

article.php-news .php-news__toc li{
  margin:7px 0;
  color:var(--fg-secondary);
}

article.php-news .php-news__toc a{
  color:var(--php-news-cyan);
  text-decoration:underline;
  text-decoration-color:rgba(96,165,250,.35);
  text-underline-offset:3px;
}

article.php-news .php-news__toc a:hover{
  color:var(--php-news-green);
}

article.php-news .php-news__table-wrap{
  max-width:100%;
  margin:26px 0 34px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--php-news-line);
  border-radius:9px;
}

article.php-news .php-news__table-wrap .data-table{
  width:100%;
  min-width:600px;
  margin:0;
  border:0;
  border-collapse:collapse;
}

article.php-news .php-news__table-wrap .data-table th,
article.php-news .php-news__table-wrap .data-table td{
  padding:13px 16px;
  border:1px solid var(--php-news-line);
  text-align:left;
  vertical-align:top;
  overflow-wrap:anywhere;
}

article.php-news .php-news__table-wrap .data-table th{
  background:rgba(96,165,250,.1);
  color:var(--fg);
  font-weight:700;
}

article.php-news .php-news__table-wrap .data-table td{
  color:var(--fg-secondary);
}

article.php-news .php-news__cta{
  margin:40px 0;
  padding:24px clamp(20px,4vw,32px);
  border:1px solid rgba(96,165,250,.25);
  border-radius:12px;
  background:linear-gradient(120deg,rgba(96,165,250,.1),rgba(16,185,129,.08));
}

article.php-news .php-news__cta h2{
  margin:0 0 10px;
}

article.php-news .php-news__cta p{
  margin:0 0 20px;
}

article.php-news .php-news__cta a.cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  text-align:center;
  overflow-wrap:anywhere;
}

article.php-news .php-news__sources{
  margin:44px 0 32px;
  padding-top:24px;
  border-top:1px solid var(--php-news-line);
}

article.php-news .php-news__sources h2{
  margin-top:0;
}

article.php-news .php-news__sources ol{
  padding-left:1.5rem;
}

article.php-news .php-news__sources li{
  margin:12px 0;
  padding-left:4px;
  color:var(--fg-secondary);
  overflow-wrap:anywhere;
}

article.php-news .php-news__sources a{
  overflow-wrap:anywhere;
}

article.php-news .php-news__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 20px;
  margin:24px 0 0;
  padding:14px 0;
  border-top:1px solid var(--php-news-line);
  border-bottom:1px solid var(--php-news-line);
  color:var(--fg-secondary);
  font-size:.9rem;
}

article.php-news .php-news__meta p{
  margin:0;
  font-size:inherit;
}

article.php-news .php-news__meta strong{
  color:var(--fg);
}

@media(max-width:768px){
  article.php-news h1{
    font-size:clamp(1.8rem,7vw,2.25rem);
    line-height:1.18;
  }

  article.php-news h2{
    font-size:clamp(1.4rem,5.5vw,1.75rem);
    line-height:1.25;
  }

  article.php-news h3{
    font-size:clamp(1.15rem,4.5vw,1.35rem);
    line-height:1.3;
  }

  article.php-news h1,
  article.php-news h2,
  article.php-news h3{
    scroll-margin-top:5.5rem;
  }

  article.php-news .php-news__summary,
  article.php-news .php-news__toc{
    padding:17px;
  }

  article.php-news .php-news__table-wrap .data-table th,
  article.php-news .php-news__table-wrap .data-table td{
    padding:11px 12px;
    font-size:.9rem;
  }

  article.php-news .php-news__cta a.cta{
    width:100%;
  }
}
