:root {
  --bg: #ffffff;
  --surface: #f8f9fb;
  --text: #222222;
  --muted: #6c757d;
  --border: #e5e7eb;
  --link: #0d6efd;
  /* Brand color overridden to user request */
  --teal: #e53935;          /* primary brand */
  --teal-dark: #c62828;     /* darker brand for navbar */
  /* Bootstrap 5 color overrides for primary */
  --bs-primary: var(--teal);
  --bs-link-color: var(--teal);
  --bs-link-hover-color: var(--teal-dark);
}

body.site-body { background: var(--bg); color: var(--text); transition: background-color .2s ease, color .2s ease; }
.article-content img { max-width: 100%; height: auto; }
.article-content p { line-height: 1.8; margin-bottom: 1rem; }
.article-meta{color:var(--muted); font-size:.9rem}
.article-meta .dot{margin:0 .35rem}
.breadcrumb{--bs-breadcrumb-divider: '›'; font-size:.875rem}
.breadcrumb a{text-decoration:none}
.share-buttons .btn{padding:.25rem .5rem; font-size:.85rem}
.related-grid .card-body{padding:.5rem}
.related-grid .card-title{font-size:.95rem; line-height:1.2; margin:0}
.latest-carousel .cap{position:absolute;left:0;right:0;bottom:0;padding:10px;background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.6) 60%, rgba(0,0,0,.85) 100%);color:#fff}
.latest-carousel .cap .badge{background:#ffd54d;color:#111}
.ticker { white-space: nowrap; overflow-x: auto; -ms-overflow-style: none; scrollbar-width: none; }
.ticker::-webkit-scrollbar { display: none; height: 0; }

/* Topbar and Main nav */
.topbar { background: var(--teal); padding: 6px 0; }
.mainnav { background: var(--teal-dark); }
.mainnav .nav-link { color: #fff !important; opacity: .95; }
.mainnav .nav-link:hover { opacity: 1; }
.mainnav .navbar-brand { color:#fff !important; }
/* Make primary outline buttons readable on dark navbar */
.mainnav .btn-outline-primary{ color:#fff; border-color:#fff; }

/* Cards and tiles */
.hero-card .hero-img { background-size: cover; background-position: center; display:block; }
.mini-card .ratio, .tile-card .ratio { background-size: cover; background-position: center; display:block; }
.img-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.title-2 { font-size: .95rem; font-weight: 600; line-height: 1.2; }
.bg-cat { background:#ffd54d !important; color:#111; }
.media-badge{position:absolute;left:8px;top:8px;background:#e53935;color:#fff;padding:2px 6px;border-radius:3px;font-size:.7rem;font-weight:700}
.flat-card .title-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.flat-card .badge{font-size:.65rem}
.list-card .title-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.list-card .btn{margin-top:.25rem}
/* Top headlines strip */
.top-strip{border-bottom:1px solid #eee;padding:6px 0;margin-top:6px;margin-bottom:12px}
.top-strip .item{min-width:230px;max-width:230px}
.top-strip .scroller{display:flex;gap:10px;overflow:auto;padding-bottom:4px}
.top-strip .thumb{width:100%;height:64px;overflow:hidden;border-radius:4px}
.top-strip .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.top-strip .title{font-size:.85rem;line-height:1.15;margin-top:4px;height:2.2em;overflow:hidden}

/* Tile vertical cards (3 columns) */
.tile3 .card-body{padding:.5rem}
.tile3 .title-2{font-size:.95rem;font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Ads */
.ad-placeholder{background:#f5f5f5;border:1px dashed #ddd;text-align:center;padding:12px;color:#888}
/* Sidebar popular list cleanup */
.popular-list .list-group-item{
  background:#fff !important;
  border:1px solid #e9ecef;
  border-radius:6px;
  margin:6px 0;
}
.popular-list .list-group-item:hover{background:#f8f9fa}
.popular-list .list-group-item::before{display:none}
.popular-list .list-group-item a{color:#111}
body.dark .popular-list .list-group-item{background:#1a1a1a !important;border-color:#333}
body.dark .popular-list .list-group-item a{color:#e0e0e0}

/* Dark mode */
body.dark { --bg:#121212; --surface:#171717; --text:#e5e5e5; --muted:#a0a0a0; --border:#333; }
body.dark .mainnav { background: var(--teal-dark); }
body.dark .card { background: #1a1a1a; color: var(--text); }
body.dark .border, body.dark .border-top { border-color:#333 !important; }
body.dark .ad-placeholder { background:#1a1a1a; border-color:#333; color:#777; }

/* Reader mode */
body.reader .mainnav, body.reader footer, body.reader .ad-placeholder, body.reader .topbar { display:none !important; }
body.reader .article-content { font-size: 1.15rem; max-width: 800px; margin: 0 auto; }



body.dark footer.site-footer { background: var(--teal-dark); color: #fff; }
body.dark a { color: var(--bs-link-color); }
body.dark .border, body.dark .border-top { border-color: var(--border) !important; }
body.dark .ad-placeholder { background:#1a1a1a; border-color:var(--border); color:#777; }
body.dark .latest-ticker { background:#1a1a1a !important; border-color: var(--border) !important; }
body.dark .latest-ticker a { color: #ddd; }
body.dark .form-control, body.dark .form-select { background:#111; color: var(--text); border-color: var(--border); }
body.dark .form-control:focus, body.dark .form-select:focus { background:#111; color: var(--text); border-color: var(--teal); box-shadow:none; }




/* Footer theme */
footer.site-footer { background: var(--teal-dark); color: #fff; border-top: none !important; }
footer.site-footer a { color: #fff; }
footer.site-footer .text-muted { color: #f1f1f1 !important; }

/* Share icon buttons */
.share-buttons .icon-btn{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%}
.share-buttons .icon-btn i{font-size:1.1rem;line-height:1}
