:root{--bg: #0b0d11;--surface: #11141b;--surface-soft: #171b23;--line: #282d39;--text: #f2f5f8;--text-soft: #a9b1be;--accent: #2f7edb;--accent-soft: #1b2c46}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,PingFang SC,Helvetica Neue,sans-serif;color:var(--text);background:radial-gradient(circle at 75% -20%,#1a2638 0%,transparent 40%),var(--bg)}.news-site{min-height:100vh}.site-header{position:sticky;top:0;z-index:20;background:#07090d;border-bottom:1px solid #161b24}.masthead,.top-nav,.site-stats{width:min(1180px,92vw);margin:0 auto}.masthead{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{margin:0;font-family:"Source Serif 4",Times New Roman,serif;font-size:clamp(28px,5vw,42px);font-weight:600}.header-search{width:min(420px,60vw)}.header-search input{width:100%;border:1px solid #2c3444;background:#141922;color:#dce3ef;border-radius:8px;padding:10px 12px;font:inherit}.header-search input::placeholder{color:#808a9e}.top-nav{min-height:44px;display:flex;align-items:center;gap:20px;border-top:1px solid #111620}.nav-link{border:0;background:transparent;color:#cfd6e2;font-size:13px;cursor:pointer;padding:0}.nav-link.active{color:#fff;font-weight:700}.site-stats{min-height:38px;display:flex;align-items:center;gap:14px;color:#8d97ab;font-size:12px;border-top:1px solid #111620}.page-wrap{width:min(1180px,92vw);margin:20px auto 40px}.latest-layout{display:grid;grid-template-columns:2fr 1fr;gap:14px}.latest-main,.latest-side,.news-card,.sidebar-filter,.project-card,.article-shell,.related-panel,.empty-filter,.empty-state{border:1px solid var(--line);background:var(--surface)}.latest-main{padding:18px;cursor:pointer}.eyebrow{margin:0;font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#8ea2c2}.latest-main h2{margin:10px 0 8px;font-size:clamp(28px,4vw,42px);line-height:1.2;font-family:"Source Serif 4",Times New Roman,serif}.latest-main p{margin:0;color:var(--text-soft);line-height:1.65}.latest-side{padding:10px 14px}.latest-side-item,.related-item{width:100%;text-align:left;border:0;border-top:1px solid #212735;background:transparent;color:inherit;padding:12px 0;cursor:pointer}.latest-side-item:first-of-type,.related-item:first-of-type{border-top:0}.latest-side-item p,.related-item p{margin:0;font-weight:600;line-height:1.4}.latest-side-item span,.related-item span{display:block;margin-top:5px;color:#8f98aa;font-size:12px}.content-shell{margin-top:16px;display:grid;grid-template-columns:minmax(0,2.1fr) minmax(260px,1fr);gap:14px;align-items:start}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.section-head h3{margin:0;font-size:22px;font-family:"Source Serif 4",Times New Roman,serif}.section-head p{margin:0;color:#8f98aa;font-size:13px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.news-card{padding:14px;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.news-card:hover,.project-card:hover,.latest-main:hover{border-color:#3f84d4;transform:translateY(-1px)}.news-card h3,.project-card h3{margin:10px 0 8px;font-size:20px;line-height:1.3;font-family:"Source Serif 4",Times New Roman,serif}.news-card p,.project-card p{margin:0;color:var(--text-soft);line-height:1.55}.card-tags,.detail-tags{display:flex;flex-wrap:wrap;gap:6px}.chip,.detail-tag{display:inline-block;border-radius:999px;padding:4px 9px;font-size:11px}.chip{background:var(--accent-soft);color:#93beff}.detail-tag{border:1px solid #2f3c54;background:#172338;color:#b8d4ff}.meta-row{margin-top:11px;display:flex;gap:10px;flex-wrap:wrap;color:#8f98aa;font-size:12px}.sidebar-filter{position:sticky;top:150px;padding:14px}.sidebar-filter h3,.related-panel h3{margin:2px 0 12px;font-size:20px;font-family:"Source Serif 4",Times New Roman,serif}.sort-row{display:grid;gap:6px}.sort-row label{color:#9ea7b8;font-size:12px}.sort-row select{border:1px solid #2c3444;background:#151a22;color:#d6dce7;border-radius:8px;padding:9px 10px;font:inherit;font-size:13px}.tag-filter-list{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.tag-filter-btn,.clear-btn,.pagination button,.back-btn{border:1px solid #2c3444;background:#151a22;color:#cad1de;border-radius:999px;padding:6px 11px;font:inherit;font-size:12px;cursor:pointer}.tag-filter-btn.active{border-color:#3f84d4;background:#193355;color:#d8e9ff}.clear-btn{margin-top:12px}.empty-filter{margin-top:12px;padding:16px;color:var(--text-soft)}.pagination{margin-top:14px;display:flex;align-items:center;justify-content:center;gap:12px;color:#96a0b4;font-size:13px}.pagination button:disabled{opacity:.42;cursor:not-allowed}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.project-card{padding:16px;transition:border-color .2s ease,transform .2s ease}.project-card .meta-row{justify-content:space-between;align-items:center}.project-card a{color:#9bc3ff;text-decoration:none}.detail-page{display:grid;grid-template-columns:minmax(0,2fr) 320px;gap:14px}.article-shell{padding:22px}.article-shell h2{margin:14px 0 0;font-size:clamp(28px,5vw,44px);font-family:"Source Serif 4",Times New Roman,serif}.back-btn{border-radius:6px;border-color:#385f90;background:#10233f;color:#d3e7ff}.markdown-body{margin-top:18px;color:#d3dae5;line-height:1.85}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin-top:30px;margin-bottom:10px;color:#f4f7fb;font-family:"Source Serif 4",Times New Roman,serif}.markdown-body p{margin:14px 0}.markdown-body ul{padding-left:20px}.markdown-body code{font-family:JetBrains Mono,SFMono-Regular,monospace;background:#202736;padding:.1em .35em;border-radius:4px;color:#b9d4ff}.markdown-body pre{background:#0a0d12;border:1px solid #222a3a;border-radius:6px;padding:14px;overflow:auto}.markdown-body pre code{background:transparent;padding:0}.related-panel{height:fit-content;position:sticky;top:150px;padding:14px}.empty-state{width:min(980px,92vw);margin:24px auto;padding:24px}@media(max-width:1100px){.card-grid,.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.latest-layout,.content-shell,.detail-page{grid-template-columns:1fr}.sidebar-filter,.related-panel{position:static}}@media(max-width:640px){.masthead{min-height:auto;padding:14px 0;flex-direction:column;align-items:stretch}.header-search{width:100%}.top-nav,.site-stats{overflow-x:auto;white-space:nowrap}.card-grid,.projects-grid{grid-template-columns:1fr}}
