/* News page (also loads programme-pages.css for the hero and section helpers) */
.news-search{background:#fff;color:var(--color-text);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-lg)}
.news-search label{display:block;font-weight:700;margin-bottom:var(--space-1)}
.news-search__field{display:flex;align-items:center;gap:10px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:0 14px}
.news-search__field:focus-within{border-color:var(--color-primary)}
.news-search__field i{color:var(--color-text-muted)}
.news-search input{flex:1;border:0;outline:0;padding:13px 0;font:inherit;background:transparent}
.news-search small{display:block;margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs)}

.news-feature{display:grid;grid-template-columns:1.1fr 1fr;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);margin-bottom:var(--space-5);text-decoration:none;color:inherit}
.news-feature img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.news-feature__body{padding:var(--space-4);display:flex;flex-direction:column;justify-content:center;gap:var(--space-1)}
.news-feature h2{font-size:var(--text-2xl);line-height:1.25}
.news-feature p{color:var(--color-text-muted)}
.news-feature .pg-link{margin-top:var(--space-1)}
.news-feature:hover .pg-link i,.news-card:hover .pg-link i{transform:translateX(4px)}

.news-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--space-3)}
.news-tab{padding:9px 18px;border-radius:999px;border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600;transition:all var(--transition)}
.news-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}
.news-tab.is-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}

.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}
.news-card{display:flex;flex-direction:column;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow var(--transition),transform var(--transition)}
.news-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}
.news-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.news-card__body{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);flex:1}
.news-card h3{font-size:var(--text-lg);line-height:1.3}
.news-card p{font-size:var(--text-sm);color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news-card .pg-link{margin-top:auto;padding-top:var(--space-1)}
.news-card__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-1);font-size:12px;color:var(--color-text-muted)}
.news-tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:4px 10px;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark)}
[data-cat="announcements"] .news-tag,.news-tag[data-cat="announcements"]{background:rgba(249,115,22,.12);color:var(--color-accent-dark)}
[data-cat="health-tips"] .news-tag,.news-tag[data-cat="health-tips"]{background:#e0edfb;color:#1d4ed8}
[data-cat="community"] .news-tag,.news-tag[data-cat="community"]{background:#ede9fe;color:#6d28d9}

.news-empty{text-align:center;padding:var(--space-6) var(--space-3);color:var(--color-text-muted)}
.news-empty i{font-size:var(--text-3xl);color:var(--color-primary);margin-bottom:var(--space-1)}
.news-empty h3{color:var(--color-text)}

.news-follow{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}
.news-follow p{color:var(--color-text-muted)}
.news-follow__links{display:flex;gap:10px}
.news-follow__links a{width:46px;height:46px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);transition:background var(--transition),transform var(--transition)}
.news-follow__links a:hover{background:var(--color-accent);transform:translateY(-3px)}

/* Reader (slide-over) */
.reader{position:fixed;inset:0;z-index:1100;visibility:hidden;transition:visibility 0s linear .35s}
.reader.is-open{visibility:visible;transition-delay:0s}
.reader__backdrop{position:absolute;inset:0;background:rgba(15,40,28,.55);opacity:0;transition:opacity .35s ease}
.reader.is-open .reader__backdrop{opacity:1}
.reader__panel{position:absolute;top:0;right:0;bottom:0;width:min(580px,100%);background:var(--color-bg);box-shadow:var(--shadow-lg);overflow-y:auto;transform:translateX(100%);transition:transform .35s cubic-bezier(.22,1,.36,1);outline:0}
.reader.is-open .reader__panel{transform:none}
.reader__img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.reader__close{position:absolute;top:var(--space-2);right:var(--space-2);width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--color-text);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.reader__close:hover{background:var(--color-danger);color:#fff}
.reader__content{padding:var(--space-4) var(--space-3) var(--space-5)}
.reader__content h2{margin:var(--space-2) 0;line-height:1.25}
.reader__body{display:grid;gap:var(--space-2);color:var(--color-text);line-height:1.75}
.reader__share{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}
.reader__share span{font-size:var(--text-sm);font-weight:600;color:var(--color-primary)}
@media (prefers-reduced-motion:reduce){.reader,.reader__backdrop,.reader__panel{transition:none}}

@media (max-width:900px){.news-feature{grid-template-columns:1fr}.news-feature img{min-height:0;aspect-ratio:16/10}.news-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.news-grid{grid-template-columns:1fr}.news-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.news-tab{flex-shrink:0}}
