* { box-sizing:border-box; margin:0; padding:0; }
:root { --navy:#0A0E1A; --indigo:#4F46E5; --indigo2:#6366F1;
        --bg:#F5F6F8; --card:#FFFFFF; --border:#E5E7EB;
        --text:#111827; --muted:#6B7280; --red:#EF4444; }
body { font:16px/1.65 'Inter','Segoe UI',-apple-system,Roboto,Arial,sans-serif;
       background:var(--bg); color:var(--text); }
a { color:var(--indigo); text-decoration:none; }
a:hover { text-decoration:underline; }
.wrap { max-width:1060px; margin:0 auto; padding:0 20px; }

header.site { background:var(--navy); border-bottom:1px solid #1c2333; }
header.site .wrap { display:flex; align-items:center; gap:20px;
                    padding-top:14px; padding-bottom:14px; }
.logo { display:flex; align-items:center; gap:10px; color:#fff;
        font-weight:800; font-size:18px; }
.logo:hover { text-decoration:none; }
.logo .glyph { width:30px; height:30px; border-radius:8px; flex:none;
  background:linear-gradient(135deg,#6366F1,#8B5CF6);
  display:flex; align-items:center; justify-content:center; font-size:16px; }
.logo small { display:block; font-size:11px; font-weight:400; color:#9CA3AF; }
nav.main { margin-left:auto; display:flex; gap:22px; }
nav.main a { color:#9CA3AF; font-size:15px; padding-bottom:4px; }
nav.main a.active { color:#fff; border-bottom:2px solid var(--indigo2); }
nav.main a:hover { color:#fff; text-decoration:none; }

.hero { background:radial-gradient(1000px 500px at 85% 110%, #1E1B4B 0%, var(--navy) 55%);
        color:#fff; padding:56px 0 64px; }
.hero .date-row { display:flex; align-items:center; gap:12px; margin-bottom:14px;
                  font-size:15px; color:#D1D5DB; }
.pill { background:var(--indigo2); color:#fff; border-radius:999px;
        font-size:12px; font-weight:600; padding:3px 12px; }
.hero h1 { font-size:42px; font-weight:800; letter-spacing:-0.5px; }
.hero .sub { color:#9CA3AF; margin:10px 0 26px; font-size:17px; }
.btn { display:inline-block; background:var(--indigo); color:#fff;
       padding:12px 22px; border-radius:8px; font-weight:600; font-size:15px;
       box-shadow:0 4px 18px rgba(79,70,229,.45); }
.btn:hover { background:var(--indigo2); text-decoration:none; }
.hero-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:40px;
             align-items:center; }
.lead-card { background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
             border-radius:12px; padding:20px; display:block; color:#fff; }
.lead-card:hover { text-decoration:none; border-color:rgba(255,255,255,.25); }
.lead-card .tag-red { color:var(--red); font-size:11px; font-weight:700;
                      letter-spacing:1px; text-transform:uppercase; }
.lead-card h3 { font-size:19px; margin:8px 0; line-height:1.35; }
.lead-card p { color:#9CA3AF; font-size:14px; }
.lead-card .icon { font-size:26px; margin-bottom:10px; }

.section { padding:36px 0 8px; }
.section-head { display:flex; align-items:baseline; justify-content:space-between;
                margin-bottom:20px; }
.section-head h2 { font-size:24px; font-weight:800; }
.section-head a { font-size:15px; font-weight:600; }
.cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
         gap:18px; }
.card { background:var(--card); border:1px solid var(--border); border-radius:12px;
        padding:18px; display:flex; flex-direction:column; gap:8px;
        box-shadow:0 1px 3px rgba(16,24,40,.06); color:var(--text); }
.card:hover { text-decoration:none; box-shadow:0 6px 20px rgba(16,24,40,.1);
              transform:translateY(-2px); transition:.15s; }
.card .tile { width:38px; height:38px; border-radius:9px; background:var(--navy);
              color:#fff; display:flex; align-items:center; justify-content:center;
              font-size:19px; }
.card h3 { font-size:15.5px; line-height:1.4; font-weight:700; }
.card p { font-size:13.5px; color:var(--muted);
          display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical;
          overflow:hidden; }
.chip { align-self:flex-start; margin-top:auto; font-size:12px; font-weight:600;
        background:#EEF2FF; color:var(--indigo); border-radius:999px;
        padding:3px 10px; }
.chip.violet { background:#F3E8FF; color:#9333EA; }

.rows { display:flex; flex-direction:column; gap:14px; }
.row { background:var(--card); border:1px solid var(--border); border-radius:12px;
       padding:16px 18px; display:flex; align-items:center; gap:16px;
       flex-wrap:wrap; }
.row .d { color:var(--muted); font-size:14px; min-width:110px; }
.row .t { font-weight:700; font-size:15.5px; flex:1; min-width:200px;
          color:var(--text); }
.row a.t:hover { color:var(--indigo); }
.row .meta { color:var(--muted); font-size:13px; }
.row .go { font-weight:600; font-size:14px; white-space:nowrap; }

.crumbs { color:var(--muted); font-size:14px; padding:22px 0 6px; }
.issue-head { padding-bottom:18px; border-bottom:1px solid var(--border);
              margin-bottom:10px; }
.issue-head h1 { font-size:32px; font-weight:800; margin-top:6px; }
.issue-meta { color:var(--muted); font-size:14.5px; margin-top:10px;
              display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
article h2 { font-size:22px; font-weight:800; margin:34px 0 4px;
             padding-top:16px; border-top:2px solid var(--border); }
article h3 { font-size:18px; font-weight:700; margin:24px 0 6px;
             scroll-margin-top:24px; }
article p { margin:10px 0; }
article ul { padding-left:22px; }
article li { margin:8px 0; }
.pager { display:flex; justify-content:space-between; gap:12px;
         margin:44px 0 10px; }
.pager a { font-weight:600; font-size:15px; }

.months { display:flex; gap:10px; flex-wrap:wrap; margin:18px 0 26px; }
.months a { border:1px solid var(--border); background:var(--card); color:var(--muted);
            border-radius:999px; padding:6px 16px; font-size:14px; font-weight:600; }
.months a:hover { text-decoration:none; border-color:#C7D2FE; color:var(--indigo); }
h2.month { font-size:20px; font-weight:800; margin:30px 0 14px; }

footer.site { background:var(--navy); color:#9CA3AF; margin-top:64px;
              padding:28px 0; font-size:14px; }
footer.site b { color:#fff; }

@media (max-width:760px) {
  .hero { padding:36px 0 48px; }
  .hero h1 { font-size:30px; }
  .hero-grid { grid-template-columns:1fr; gap:24px; }
  header.site .wrap { flex-wrap:wrap; row-gap:8px; }
  nav.main { margin-left:0; flex-wrap:wrap; row-gap:6px; }
  nav.main a { font-size:14px; }
  .logo small { display:none; }
  .row .d { min-width:0; }
}

@media (prefers-color-scheme: dark) {
  :root { --bg:#0F1115; --card:#181B22; --border:#262B36;
          --text:#E6E8EE; --muted:#9AA3B2; }
  a { color:#B9C4FF; }
  .card, .row { box-shadow:none; }
  .card:hover { box-shadow:0 6px 20px rgba(0,0,0,.4); }
  .chip { background:#232A4D; color:#C7D0FF; }
  .chip.violet { background:#2E2450; color:#D6C9FF; }
  .months a:hover { border-color:#4F46E5; }
  .issue-head, article h2 { border-color:var(--border); }
  .row .d, .row .meta, .crumbs { color:#AEB6C6; }
}
