*{box-sizing:border-box;margin:0;padding:0}
html,body{min-height:100%}
body{font-family:"Inter","Noto Sans CJK SC","Noto Sans SC","Noto Serif CJK SC",system-ui,sans-serif;background:#f6f4ef;color:#1b1b1b;display:flex;flex-direction:column}
a{color:inherit;text-decoration:none}
main{flex:1 0 auto}
.top{background:#111;color:#eee;font-size:13px;padding:8px 24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px}
.top b{color:#ff5a4e}
header{background:#fff;border-bottom:1px solid #ddd;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.logo{font-weight:800;font-size:24px;letter-spacing:-.5px}
.logo s{color:#c8102e;text-decoration:line-through;text-decoration-thickness:3px}
nav a{margin-left:20px;font-size:15px;font-weight:600;color:#333}
nav a:first-child{margin-left:0}
nav a.on{color:#c8102e}
.lang{border:1px solid #bbb;border-radius:14px;padding:3px 10px;font-size:13px;margin-left:20px}
.wrap{padding:24px;max-width:1280px;margin:0 auto;width:100%}
.chip{display:inline-block;font-size:12px;font-weight:700;padding:3px 8px;border-radius:4px;margin-right:6px}
.drop{background:#fff1d6;color:#8a5a00;border:1px solid #f0c674}
.lc{background:#fde4e4;color:#a40e22;border:1px solid #f2a7a7}
.plat{background:#eef1f6;color:#33435c;border:1px solid #cfd6e2}
.muted{color:#6b6b6b}
footer{background:#111;color:#aaa;padding:22px 24px;font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:auto}
footer b{color:#fff}
.card{background:#fff;border:1px solid #e2dfd6;border-radius:10px}
h2{font-size:20px;margin-bottom:12px}

/* Take Down the CCP: past-broadcast opinion section, visually separate from reporting */
.ncv{background:#f1efe9;border:2px dashed #b9b2a2;border-radius:10px;padding:20px 22px;margin-bottom:24px}
.ncv h2{margin-bottom:4px} .ncv .sub{font-size:12px;color:#6b6b6b;line-height:1.55;margin-bottom:12px}
.ncv .ent{background:#fff;border:1px solid #e2dfd6;border-radius:8px;padding:14px 16px;margin-top:10px}
.ncv .when{font-size:12px;color:#666;font-weight:700} .ncv .bt{font-size:14px;font-weight:700;margin:3px 0 6px}
.ncv blockquote{font-size:15px;border-left:3px solid #8a8070;padding:2px 0 2px 12px;margin:6px 0;color:#333}
.ncv .desc{font-size:14px;margin:4px 0 6px;color:#333}
.ncv .src{font-size:12px;color:#555} .ncv .src a{color:#2f5d9a;text-decoration:underline}
.op{display:inline-block;font-size:11px;font-weight:700;padding:2px 7px;border-radius:4px;background:#ece8de;color:#5c5240;border:1px solid #cfc6b2;margin-right:6px}
.ncvt{background:#f1efe9;border:2px dashed #b9b2a2} .ncvt p{font-size:12px;line-height:1.55;color:#555;margin:4px 0 8px} .ncvt a{font-size:13px;font-weight:700;color:#2f5d9a}

/* home */
.hero{display:grid;grid-template-columns:1fr 380px;gap:28px;margin-bottom:28px}
.hero h1{font-size:36px;line-height:1.1;letter-spacing:-1px;margin:6px 0 10px}
.stats{display:flex;gap:16px;margin-top:18px;flex-wrap:wrap}
.stat{padding:12px 16px;flex:1;min-width:140px} .stat b{display:block;font-size:26px} .stat span{font-size:12px;color:#666}
.cta{padding:22px;background:#1b1b1b;color:#fff;border-radius:10px}
.cta h3{font-size:18px;margin-bottom:6px} .cta p{font-size:13px;color:#ccc;line-height:1.5}
.btn{display:block;margin-top:12px;padding:10px 14px;border-radius:6px;font-weight:700;font-size:14px;text-align:center}
.b1{background:#c8102e;color:#fff} .b2{background:#fff;color:#111} .b3{border:1px solid #666;color:#eee}
.grid{display:grid;grid-template-columns:1fr 380px;gap:28px;align-items:start}
.list{padding:6px 22px}
.row{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid #eee} .row:last-child{border:0}
.n{font-size:22px;font-weight:800;color:#c8102e;width:34px;flex-shrink:0}
.ttl{font-size:18px;font-weight:700}
.orig{font-size:12px;color:#777;margin:2px 0 7px}
.meta{font-size:12px}
.note{font-size:12px;color:#666;padding:12px 22px;border-top:1px solid #eee;background:#faf9f5;border-radius:0 0 10px 10px}
.side{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;scrollbar-width:thin}
.side .card{padding:18px;margin-bottom:20px}
.tl{font-size:13px;line-height:1.7;margin-top:8px}
.list-head{padding:18px 22px 4px;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px}
#feed-loadmore-wrap{padding:0 22px 14px}
#feed-loadmore-link{border:1px solid #c8102e;color:#c8102e;background:#fff}
#feed-loadmore-link:hover{background:#c8102e;color:#fff}
#feed-loadmore-wrap[hidden],#feed-loadmore-link[hidden]{display:none}
#feed-loadmore-link[aria-disabled="true"]{opacity:.6;pointer-events:none}

/* story */
.crumb{font-size:13px;color:#777;margin-bottom:10px}
h1{font-size:32px;line-height:1.15;letter-spacing:-.8px}
.h1zh{font-size:22px;font-weight:700;color:#444;margin:6px 0 14px}
.lede{display:grid;grid-template-columns:1fr 380px;gap:28px;margin-bottom:24px}
.answer{padding:18px 20px;font-size:15px;line-height:1.6;border-left:4px solid #c8102e}
.answer p+p{margin-top:8px}
.facts{padding:18px 20px;font-size:13px;line-height:1.9} .facts b{display:inline-block;width:130px;color:#666;font-weight:600}
.sec{margin-bottom:24px} .card.pad{padding:18px 22px}
table{width:100%;border-collapse:collapse;font-size:13px} td{padding:6px 6px;border-bottom:1px solid #f0eee8;vertical-align:middle}
td.d{width:56px;color:#666} td.t{width:110px;white-space:nowrap;font-variant-numeric:tabular-nums} td.ti{font-weight:600} td.m{width:60px;color:#666;text-align:right}
td.g{width:200px} .track{position:relative;height:10px;background:#f2f0ea;border-radius:5px} .track i{position:absolute;top:0;height:10px;border-radius:5px}
.axis{display:flex;justify-content:space-between;font-size:11px;color:#888;margin:4px 0 0 0}
.cols{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ch{padding:12px 14px;display:flex;justify-content:space-between;font-size:14px;border-radius:10px 10px 0 0} .ch span{color:#777;font-size:12px}
.col ul{list-style:none;padding:0 14px 12px} .col li{padding:8px 0;border-top:1px solid #f0eee8;font-size:13px} .col li b{display:block;font-size:12px;color:#555}
.ev{display:grid;grid-template-columns:repeat(3,1fr);gap:16px} .ev .card{padding:16px} .ev h3{font-size:15px;margin-bottom:6px} .ev p{font-size:13px;line-height:1.5;color:#444}
.ctab{display:flex;justify-content:space-between;align-items:center;background:#1b1b1b;color:#fff;padding:18px 22px;border-radius:10px;flex-wrap:wrap;gap:10px}
.ctab a{background:#c8102e;padding:9px 14px;border-radius:6px;font-weight:700;font-size:14px}
.ctab a.w{background:#fff;color:#111}
.ctab-links a{margin-left:10px}

/* static pages */
.prose{padding:24px 26px;max-width:760px}
.prose h1{margin-bottom:14px}
.prose h2{margin-top:22px}
.prose p{font-size:14px;line-height:1.7;margin-bottom:10px}
.data-block{padding:20px 22px;margin-bottom:16px}
.data-block h2{font-size:17px}
.data-block p{font-size:13px;line-height:1.6;color:#444;margin-bottom:10px}

@media (max-width: 760px){
  .hero,.grid,.lede{grid-template-columns:1fr}
  .side{position:static;max-height:none;overflow-y:visible}
  .cols{grid-template-columns:1fr 1fr}
  .ev{grid-template-columns:1fr}
  .wrap{padding:16px}
  h1{font-size:26px}
}
