:root { font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; color: #172033; background: #edf3f9; }
* { box-sizing: border-box; } body { margin: 0; }
a { padding: 11px 14px; border: 0; border-radius: 7px; background: #235da8; color: #fff; font-weight: 800; text-align: center; text-decoration: none; cursor: pointer; }
.portal { min-height: 100vh; padding-bottom: 50px; } .portal > header { display: flex; align-items: center; gap: 18px; padding: 15px 5vw; background: #103a6f; color: #fff; } .portal > header strong { margin-right: auto; } .portal > header span { color: #cbdcf0; font-size: 12px; }
.hero { display: grid; grid-template-columns: 1fr auto; gap: 30px; max-width: 1200px; margin: 28px auto 18px; padding: 34px; border-radius: 13px; background: #fff; } .hero p { color: #2b65aa; font-size: 11px; font-weight: 900; letter-spacing: .14em; } .hero h1 { margin: 8px 0 14px; font-size: 34px; } .hero div:last-child { min-width: 180px; padding: 18px; border-radius: 9px; background: #eef5fd; } .hero div:last-child small, .hero div:last-child strong, .hero div:last-child span { display: block; } .hero div:last-child strong { margin: 7px 0; color: #235da8; font-size: 25px; }
.downloads { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; max-width: 1200px; margin: auto; } .downloads article { padding: 26px; border: 1px solid #d7e1ed; border-radius: 12px; background: #fff; } .downloads article > span { color: #2c64a5; font-size: 11px; font-weight: 900; } .downloads h2 { margin: 7px 0; } .downloads p { color: #6c7a8d; } dl { display: grid; grid-template-columns: auto 1fr; gap: 9px 15px; margin: 22px 0; font-size: 11px; } dt { color: #8290a2; } dd { margin: 0; overflow-wrap: anywhere; font-family: ui-monospace, monospace; } .downloads a { display: block; }
.downloads .empty { grid-column: 1 / -1; padding: 45px; border-style: dashed; color: #718196; text-align: center; } .downloads .empty h2 { color: #263a54; } .downloads .empty span { color: #8996a7; font-weight: 400; }
.notice { max-width: 1200px; margin: 18px auto; padding: 22px 28px; border-left: 4px solid #c28b21; background: #fff; } .notice h2 { font-size: 17px; } .notice p { color: #68778a; font-size: 12px; line-height: 1.7; }
@media(max-width:750px){.hero,.downloads{grid-template-columns:1fr;margin-left:12px;margin-right:12px}.portal>header{padding:12px}.hero{padding:22px}.notice{margin:12px}}
