:root{
  --bg:#f4f1ea;
  --paper:#fffdf8;
  --ink:#111827;
  --muted:#5f6674;
  --gold:#b88a3b;
  --gold-2:#d7b56d;
  --nav:#09111d;
  --line:#e6dfd2;
  --shadow:0 20px 50px rgba(15, 23, 42, .08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:
    radial-gradient(circle at top left, rgba(184,138,59,.09), transparent 30%),
    radial-gradient(circle at top right, rgba(17,24,39,.08), transparent 26%),
    var(--bg);
  color:var(--ink);
}
body.dark-mode{
  --bg:#08111b;
  --paper:#0f1726;
  --ink:#f8fafc;
  --muted:#a7b0c0;
  --line:#233044;
  background:
    radial-gradient(circle at top left, rgba(184,138,59,.16), transparent 24%),
    radial-gradient(circle at top right, rgba(255,255,255,.06), transparent 24%),
    #07101a;
  color:var(--ink);
}
h1,h2,h3,h4,h5,.article-title,.display-5,.display-6{font-family:'Newsreader',Georgia,serif}
a{color:inherit}
.container-xxl{max-width:1480px}
.site-progress{
  position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold-2));
  z-index:2000;transition:width .2s ease;
}
.topbar,.nav-shell,.footer,.card,.login-card,.admin-panel,.article-shell,.pill-panel,.weather-card,.category-box,.newsletter-hero,.video-card{
  background:color-mix(in srgb, var(--paper) 94%, transparent);
  backdrop-filter:blur(10px);
}
.nav-shell{
  background:linear-gradient(180deg, rgba(9,17,29,.98), rgba(9,17,29,.92));
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 30px rgba(0,0,0,.1);
}
.brand-mark{display:inline-flex;align-items:center;gap:.85rem;text-decoration:none;letter-spacing:.04em}
.brand-logo{width:92px;height:92px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 8px 18px rgba(15,23,42,.12))}
.brand-mark strong{font-size:clamp(1.8rem,3.2vw,3.1rem);line-height:1;font-weight:900}
.ticker-wrap{display:flex;align-items:center;gap:.75rem;min-width:min(100%,720px)}
.ticker-label{
  padding:.35rem .6rem;border-radius:999px;background:var(--nav);color:#fff;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em
}
.ticker-content{overflow:hidden;white-space:nowrap;flex:1;color:var(--muted)}
.ticker-track{display:inline-flex;gap:1.2rem;animation:scrollTicker 26s linear infinite}
.ticker-track a{text-decoration:none;font-weight:600}
.ticker-sep{opacity:.45}
@keyframes scrollTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.search-inline{display:flex;gap:.5rem;min-width:min(100%,480px)}
.search-inline .form-control{border-radius:999px;border:1px solid var(--line)}
.btn-gold{
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  border:none;color:#111;font-weight:800;box-shadow:0 10px 24px rgba(184,138,59,.28)
}
.eyebrow{
  text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:900;color:var(--gold);margin-bottom:.5rem
}
.section-title a,.footer-links a{text-decoration:none;color:var(--muted)}
.card,.article-shell,.pill-panel,.weather-card,.category-box,.newsletter-hero,.video-card,.login-card{
  border:1px solid var(--line);
  border-radius:1.5rem;
  box-shadow:var(--shadow);
}
.featured-card .card{min-height:100%}
.news-card .card{transition:transform .25s ease, box-shadow .25s ease}
.news-card .card:hover,.stack-item:hover,.related-item:hover{transform:translateY(-3px)}
.news-card img,.featured-card img{transition:transform .4s ease}
.news-card:hover img,.featured-card:hover img{transform:scale(1.03)}
.article-title{font-size:clamp(2.2rem,5vw,4.6rem);line-height:.95}
.article-body{
  font-size:1.08rem;line-height:1.9;color:var(--ink)
}
.article-body p{margin-bottom:1.2rem}
.article-body h2,.article-body h3{margin-top:2rem;margin-bottom:1rem}
.article-body blockquote{
  border-left:4px solid var(--gold);padding:1rem 1.2rem;background:rgba(184,138,59,.08);border-radius:1rem;font-weight:600
}
.article-body img{max-width:100%;border-radius:1.25rem}
.socials a,.scroll-top{
  display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;
  background:rgba(17,24,39,.08);text-decoration:none;margin-left:.4rem;border:none;color:inherit
}
.scroll-top{
  position:fixed;right:1rem;bottom:1rem;z-index:1000;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.25s ease
}
.scroll-top.show{opacity:1;pointer-events:auto}
.topbar{position:relative;z-index:1050}
.sidebar-stack,.sidebar-sticky{position:sticky;top:110px}
.stack-list{display:grid;gap:1rem}
.stack-item,.related-item{
  display:grid;grid-template-columns:84px 1fr;gap:.9rem;align-items:center;text-decoration:none;padding:.5rem;border-radius:1rem;
}
.stack-item img,.related-item img{width:84px;height:70px;object-fit:cover;border-radius:.8rem}
.stack-item span,.related-item small{display:block;color:var(--muted);font-size:.8rem;margin-bottom:.2rem}
.stack-item strong,.related-item strong{font-size:.96rem;line-height:1.35}
.pill-panel{padding:1rem}
.rank-item{
  display:grid;grid-template-columns:48px 1fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line);text-decoration:none
}
.rank-item:last-child{border-bottom:none}
.rank-item span{font-size:1.4rem;font-weight:900;color:var(--gold)}
.category-box{padding:1.25rem;display:grid;gap:.55rem}
.category-box a{color:var(--muted);text-decoration:none;border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:.45rem}
.news-card .card-body,.featured-card .card-body{padding:1.2rem}
.breaking-pill{
  display:block;padding:.9rem 1.2rem;border-radius:999px;text-decoration:none;background:rgba(184,138,59,.12);font-weight:700
}
.newsletter-hero{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.6rem
}
.newsletter-inline{display:flex;gap:.75rem;min-width:min(100%,420px)}
.newsletter-inline .form-control{border-radius:999px}
.weather-pill{
  padding:.45rem .8rem;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:.88rem
}
.footer-links{display:grid;gap:.5rem}
.search-big{display:flex;gap:.75rem}
.search-suggestions{display:flex;flex-wrap:wrap;gap:.5rem}
.suggestion-item{padding:.55rem .8rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;background:var(--paper)}
.tag-chip{padding:.5rem .8rem;border-radius:999px;background:rgba(184,138,59,.12);font-weight:700}
.comment-item{padding:1rem 0;border-bottom:1px solid var(--line)}
.nav-article{
  flex:1;min-width:260px;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:1rem;text-decoration:none;background:var(--paper)
}
.login-shell{
  min-height:100vh;display:grid;place-items:center;padding:2rem;background:
    radial-gradient(circle at top left, rgba(184,138,59,.16), transparent 35%),
    linear-gradient(180deg,#0d1622,#060b12);
}
.login-card{
  width:min(100%,520px);padding:2rem;background:rgba(255,255,255,.95)
}
.admin-dashboard-page{
  background:linear-gradient(180deg, #09111d, #0c1624);
  color:#e5edf9;
}
.admin-dashboard{
  display:grid;grid-template-columns:280px 1fr;min-height:100vh
}
.admin-sidebar{
  padding:1.5rem;border-right:1px solid rgba(255,255,255,.08);background:rgba(3,8,15,.4)
}
.admin-sidebar a{display:block;padding:.8rem 1rem;border-radius:.8rem;text-decoration:none;color:#d6e0ef}
.admin-sidebar a.active,.admin-sidebar a:hover{background:rgba(255,255,255,.08)}
.admin-main{padding:1.5rem}
.stat-card,.admin-card{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:1.2rem;padding:1rem
}
.table-dark{--bs-table-bg:transparent;--bs-table-striped-bg:rgba(255,255,255,.03)}
.top-110{top:110px}
@media (max-width: 991.98px){
  .topbar .container-fluid{display:grid;grid-template-columns:1fr;gap:.8rem}
  .ticker-wrap,.weather-pill{display:none}
  .search-inline,.newsletter-hero,.newsletter-inline,.search-big,.admin-dashboard{display:block}
  .search-inline{width:100%}
  .search-inline .form-control{min-width:0}
  .brand-logo{width:60px;height:60px}
  .brand-mark strong{font-size:clamp(1.35rem,6vw,2rem)}
  .topbar .d-flex.align-items-center.gap-2{justify-content:space-between}
  .nav-shell .container-fluid{padding-top:.25rem;padding-bottom:.25rem}
  .nav-shell .navbar-collapse{padding-top:.75rem}
  .nav-shell .navbar-nav{padding:.35rem 0}
  .sidebar-sticky,.sidebar-stack{position:static}
  .admin-dashboard{grid-template-columns:1fr}
  .admin-sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}
}

@media (max-width: 575.98px){
  .topbar{padding-top:.65rem!important;padding-bottom:.65rem!important}
  .brand-logo{width:54px;height:54px}
  .brand-mark strong{font-size:1.4rem}
  .nav-shell{position:sticky;top:0}
  .hero-section{padding-top:1rem!important}
  .hero-overlay{padding:1.2rem}
  .hero-overlay .display-6{font-size:clamp(1.6rem,7vw,2.35rem)}
  .hero-overlay .lead{font-size:1rem}
  .newsletter-strip{padding:1.1rem 1.1rem}
  .section-title .display-6{font-size:clamp(1.5rem,7vw,2rem)}
  .card,.section-card,.pill-panel,.weather-card,.category-box,.newsletter-hero,.video-card,.login-card{border-radius:1.1rem}
}
