@font-face{font-family:'Source Han Sans';src:url('fonts/SourceHanSansCN-VF.ttf.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--bg:#05080e;--panel:#101521;--text:#edf2ff;--sub:#a7b4ca;--line:#29354b;--accent:#a99cff;--cyan:#80e5dd}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 10% 0,#242040 0,transparent 45%),var(--bg);color:var(--text);font-family:'Source Han Sans';line-height:1.8}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}header{max-width:1200px;margin:auto;padding:24px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{font-weight:750;color:var(--text)}.brand span{font-weight:400;color:var(--sub);font-size:13px}main{max-width:1200px;margin:auto;padding:0 24px 64px}.hero{padding:58px 0 32px;max-width:760px}.eyebrow{color:var(--cyan);font-size:12px;letter-spacing:.16em}h1{font-size:clamp(28px,5vw,48px);line-height:1.3;margin:14px 0}h2{line-height:1.4;font-size:21px}p{color:var(--sub)}.controls{display:flex;gap:14px;flex-wrap:wrap;background:var(--panel);padding:20px;border:1px solid var(--line);border-radius:16px}.controls label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--sub)}input,select,button{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:9px 12px}button{cursor:pointer;align-self:flex-end}select{min-width:145px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:18px}.card{display:flex;flex-direction:column;gap:8px;background:linear-gradient(155deg,#181d30,#10151f);padding:24px;border:1px solid var(--line);border-radius:16px;transition:border-color .2s}.card:hover{border-color:var(--accent)}.card h2{margin:10px 0}.card h2 a{color:var(--text)}.card p{font-size:14px;margin:0;flex:1}.tags{display:flex;gap:8px;flex-wrap:wrap;font-size:12px}.tags span,.tags a{padding:3px 9px;background:#222b3e;border-radius:6px;color:var(--cyan)}.card-foot{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:13px}.hub-links{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 25px}.hub-links a{border:1px solid var(--line);padding:4px 12px;border-radius:20px;font-size:13px}.detail{max-width:780px;border:1px solid var(--line);padding:28px;background:var(--panel);border-radius:16px}.detail p{white-space:pre-line}.primary{display:inline-block;padding:10px 18px;background:var(--cyan);color:#10151f;border-radius:9px;margin:12px 0}footer{border-top:1px solid var(--line);padding:28px 24px;text-align:center;font-size:12px;color:var(--sub)}[hidden]{display:none!important}.empty{padding:35px;border:1px dashed var(--line);text-align:center}@media(max-width:600px){header{padding:16px}.brand span{display:none}main{padding:0 16px 40px}.hero{padding-top:35px}.controls label{flex:1;min-width:130px}input,select{width:100%;min-width:0}.card{padding:20px}}
