/* Source: public/articles.php */
:root{
  --bg-900:#0b1220;
  --bg-800:#0a0f1b;
  --text:#e5e7eb;
  --muted:#9ca3af;
  --accent:#38bdf8;
  --accent-2:#a78bfa;
  --glow: rgba(56,189,248,.55);
}
.posts-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
}
.post-card{
  position:relative;
  background:linear-gradient(135deg, rgba(56,189,248,.12), rgba(167,139,250,.12));
  border:1px solid rgba(56,189,248,.22);
  border-radius:12px;
  overflow:hidden;
  box-shadow: 0 1px 0 rgba(255,255,255,.03) inset, 0 8px 24px rgba(0,0,0,.15);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, filter .2s ease;
}
.post-card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.45), 0 0 0 3px rgba(56,189,248,.18);
  border-color: rgba(56,189,248,.55);
  filter: saturate(1.08);
}
.post-thumb {
  position: relative;
  aspect-ratio: 16/9;
  background: linear-gradient(135deg, rgba(56,189,248,.10), rgba(167,139,250,.10));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.post-thumb img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;   /* <-- plus de coupe */
  display: block;
  background: transparent;
}
.post-thumb .placeholder{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:48px;line-height:1;opacity:.8;color:var(--text);
}
.post-date{
  position:absolute;left:10px;top:10px;
  background: rgba(15,23,42,.7);
  color:#fff;border:1px solid rgba(56,189,248,.22);
  border-radius:10px;padding:6px 8px;font-size:12px;
  backdrop-filter: blur(6px);
}
.post-body{padding:12px;display:flex;flex-direction:column;gap:8px;}
.post-title{margin:0;}
.post-title a{text-decoration:none;color:inherit;}
.post-meta{font-size:14px;opacity:.9;}
.post-excerpt{color:var(--muted);font-size:14px;line-height:1.45;max-height:3.9em;overflow:hidden;}
@media (hover:hover){
  .post-card:hover .post-thumb::after{
    content:"";position:absolute;inset:0;border-radius:inherit;
    box-shadow: inset 0 0 0 1px rgba(56,189,248,.22), 0 0 0 2px rgba(56,189,248,.12), 0 8px 32px var(--glow);
    pointer-events:none;
  }
}

