@font-face{font-family:"Noto Sans SC";font-weight:100 900;font-display:swap;src:url("/fonts/NotoSansSC.woff2") format("woff2")}
@font-face{font-family:"Google Sans Text";font-weight:400;font-display:swap;src:url("/fonts/GoogleSansText-Regular.woff2") format("woff2")}@font-face{font-family:"Google Sans Text";font-weight:500;font-display:swap;src:url("/fonts/GoogleSansText-Medium.woff2") format("woff2")}@font-face{font-family:"Google Sans Text";font-weight:700;font-display:swap;src:url("/fonts/GoogleSansText-Bold.woff2") format("woff2")}
:root{color-scheme:light;--fg:#1a1a1a;--secondary:#555;--muted:#777;--border:#e0e0e0;--accent:#1a73e8;--max-w:720px;font-family:"Google Sans Text","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","PingFang SC",sans-serif;font-size:16px;line-height:1.7;color:var(--fg);background:#fff;font-synthesis:none}*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}a{color:var(--fg);text-decoration:none}a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}header,main,footer{max-width:var(--max-w);margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:40px}.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700}.brand img{width:32px;height:32px;border-radius:7px}nav,.links{display:flex;gap:8px;flex-wrap:wrap;font-size:14px}nav a{color:var(--secondary)}main{padding-top:24px;padding-bottom:48px}.home{padding-top:76px}.hero{padding-bottom:40px;border-bottom:2px solid var(--fg)}.hero-heading{display:flex;align-items:center;gap:18px;margin-bottom:10px}.hero-heading img{width:60px;height:60px;border-radius:14px}.hero h1{font-size:36px;font-weight:700;line-height:1.25;letter-spacing:-.5px;margin:0}.subtitle{font-size:18px;font-weight:500;margin:0 0 12px}.intro{font-size:16px;color:var(--secondary);max-width:560px;margin:0 0 20px}.links a,.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px;font-weight:500;color:var(--secondary);border:1px solid var(--border);border-radius:6px;padding:8px 14px;min-height:40px;background:#fff;transition:border-color .15s,color .15s}.links a:hover,.button:hover{border-color:var(--fg);color:var(--fg)}.section{padding:32px 0;border-bottom:1px solid var(--border)}.section-title{font-size:13px;font-weight:700;letter-spacing:1.5px;color:var(--muted);margin:0 0 22px}.downloads{display:grid;grid-template-columns:1fr 1fr;gap:16px}.download{border:1px solid var(--border);border-radius:8px;padding:22px}.download h2{font-size:18px;margin:0 0 8px;line-height:1.4}.download p{font-size:14px;color:var(--secondary);margin:0 0 18px}.download .meta{font-size:13px;color:var(--muted);margin:16px 0 0}.steps{display:flex;flex-direction:column;gap:24px}.steps article{display:grid;grid-template-columns:28px 1fr;column-gap:16px}.steps span{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px}.steps h2{font-size:16px;margin:0 0 4px;line-height:1.5}.steps p{grid-column:2;font-size:14px;color:var(--secondary);margin:0}.note{font-size:14px;color:var(--secondary);margin:0;padding:0;line-height:1.8}.prose h1{font-size:32px;line-height:1.3;letter-spacing:-.4px;margin:16px 0 24px}.prose h2{font-size:20px;line-height:1.5;margin:32px 0 12px}.prose p{margin:0 0 18px}.prose ul,.prose ol{padding-left:24px}.prose li{margin-bottom:10px}.prose a:not(.button){color:var(--accent);text-decoration:underline;text-underline-offset:3px}.meta,.status{font-size:14px;color:var(--muted)}footer{padding:24px 24px 40px;color:var(--muted);font-size:13px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}footer div{display:flex;gap:18px;flex-wrap:wrap}footer a{color:var(--secondary)}@media(max-width:640px){.home{padding-top:48px}.hero{padding-bottom:32px}.hero h1{font-size:30px}.hero-heading img{width:52px;height:52px}.subtitle{font-size:16px}.downloads{grid-template-columns:1fr}.download{padding:20px}.section{padding:28px 0}header{padding-top:28px;align-items:flex-start}nav{gap:14px}.prose h1{font-size:28px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
