/* Photo-led news tiles; keep the article view and recipe library independent. */
.news-library>label{display:block;max-width:460px;font-size:15px;font-weight:650;color:var(--deep)}
.news-library input{display:block;width:100%;margin-top:10px;padding:14px 16px;font:inherit;font-size:16px;border:1px solid #d8c8e7;border-radius:12px;background:white;color:var(--ink)}
#news-status{font-size:15px;margin:20px 0}
.news-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:stretch;margin-bottom:45px}
.news-tile{min-width:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 3px 14px #38264e06;transition:box-shadow .18s,transform .18s}
.news-tile:hover{box-shadow:0 9px 24px #38264e14;transform:translateY(-3px)}
.news-tile>a{display:flex;flex-direction:column;height:100%;text-decoration:none}
.news-tile>a:focus-visible{outline-offset:-4px}
.news-tile img,.news-tile-placeholder{width:100%;height:190px;object-fit:cover;background:#eee3f7}
.news-tile-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#eee3f7,#f7efdc);color:var(--purple);font:italic 25px Georgia,serif}
.news-tile-body{display:flex;flex-direction:column;flex:1;padding:21px 22px 18px}
.news-tile time{font-size:14px;line-height:1.5;color:var(--muted)}
.news-tile h2{font-family:Georgia,serif;font-size:22px;line-height:1.23;letter-spacing:-.4px;margin:10px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
.news-tile p{font-size:15px;line-height:1.65;margin:12px 0 18px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.news-tile .text-link{font-size:15px;margin-top:auto;padding:4px 0;align-self:flex-start}
@media(max-width:1100px){.news-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:950px){.news-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:600px){.news-tile-grid{grid-template-columns:minmax(0,1fr);gap:20px}.news-tile img,.news-tile-placeholder{height:180px}.news-tile-body{padding:19px 20px}.news-tile h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.news-tile{transition:none}.news-tile:hover{transform:none}}
