:root{--bg: #ffffff;--bg-soft: #f4f5f7;--text: #1c1e26;--muted: #5a6070;--border: #e3e5ea;--accent: #2f6fed;--accent-2: #7c4dff;--code-bg: #f6f8fb}body.dark{--bg: #0b0e14;--bg-soft: #141922;--text: #e8eaf0;--muted: #9aa2b1;--border: #232a38;--code-bg: #161c28}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .2s ease,color .2s ease}a{color:var(--accent)}img{max-width:100%}code,kbd{background:var(--code-bg);border:1px solid var(--border);border-radius:6px;padding:.1rem .4rem;font-size:.86em}pre{background:var(--code-bg);border:1px solid var(--border);border-radius:10px;padding:.9rem 1.1rem;overflow-x:auto}pre code{background:none;border:none;padding:0}header.site{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--border)}.bar{max-width:1080px;margin:0 auto;padding:.8rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.wordmark{font-weight:700;font-size:1.05rem;letter-spacing:.01em;color:var(--text);text-decoration:none;display:flex;align-items:center;gap:.55rem;white-space:nowrap}.wordmark .mark{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:inline-flex;align-items:center;justify-content:center;color:#fff}.wordmark .mark svg{width:14px;height:14px}.nav{display:flex;align-items:center;gap:1.1rem;font-size:.92rem}.nav a{color:var(--muted);text-decoration:none}.nav a:hover{color:var(--text)}.nav a.on{color:var(--accent);font-weight:600}.lang select{appearance:none;background:var(--bg-soft);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.28rem 1.6rem .28rem .6rem;font-size:.84rem;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235a6070' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.lang select:hover{border-color:var(--accent)}.hero{min-height:calc(100vh - 56px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 1.4rem;background:radial-gradient(900px 500px at 50% -10%,rgba(47,111,237,.18),transparent 65%),var(--bg)}.hero img.logo{width:104px;height:104px;border-radius:23%;margin-bottom:1.6rem}.hero h1{font-size:clamp(2.2rem,5vw,3.4rem);margin:0 0 .5rem;letter-spacing:-.02em}.hero .tagline{font-size:clamp(1.05rem,2.2vw,1.35rem);color:var(--text);margin:0 0 .8rem}.hero .subtitle{max-width:620px;color:var(--muted);margin:0 0 2.2rem;font-size:1rem}.cta{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center}.btn{display:inline-flex;align-items:center;gap:.45rem;padding:.62rem 1.25rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-soft);color:var(--text);text-decoration:none;font-size:.94rem;font-weight:600;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.btn:hover{border-color:var(--accent);transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;color:#fff;box-shadow:0 6px 18px #2f6fed59}.btn.primary:hover{box-shadow:0 8px 24px #2f6fed73}main.content{max-width:760px;margin:0 auto;padding:2.6rem 1.4rem 4rem}main.content h1{font-size:1.75rem;margin:0 0 .3rem;letter-spacing:-.01em}main.content h2{font-size:1.14rem;margin:2.2rem 0 .7rem;padding-top:.4rem}main.content h3{font-size:1rem;margin:1.6rem 0 .5rem}main.content p,main.content li{color:#3a3f4a}body.dark main.content p,body.dark main.content li{color:var(--muted)}main.content ul,main.content ol{padding-left:1.3rem}main.content li{margin:.35rem 0}main.content blockquote{margin:1.2rem 0;padding:1.1rem 1.3rem;background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;color:var(--text)}main.content blockquote p{color:var(--text);margin:.25rem 0}.updated{color:var(--muted);font-size:.88rem;margin:0 0 1.8rem}.notice{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:.6rem .9rem;margin:1.4rem 0;color:var(--muted);font-size:.88rem}.docs-wrap{max-width:1080px;margin:0 auto;padding:2.2rem 1.4rem 4rem;display:grid;grid-template-columns:220px minmax(0,1fr);gap:2.4rem;align-items:start}.docs-side{position:sticky;top:76px}.docs-side h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .7rem}.docs-side ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.docs-side a{display:block;padding:.42rem .7rem;border-radius:8px;color:var(--muted);text-decoration:none;font-size:.92rem}.docs-side a:hover{color:var(--text);background:var(--bg-soft)}.docs-side a.on{color:var(--accent);background:var(--bg-soft);font-weight:600}.docs-body{min-width:0}.docs-list{display:flex;flex-direction:column;gap:.9rem}.docs-list a{display:block;padding:1rem 1.2rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-soft);color:var(--text);text-decoration:none}.docs-list a:hover{border-color:var(--accent)}.docs-list h2{margin:0 0 .3rem;font-size:1.05rem}.docs-list p{margin:0;color:var(--muted);font-size:.9rem}footer.site{border-top:1px solid var(--border);background:var(--bg-soft)}.foot{max-width:1080px;margin:0 auto;padding:1.5rem 1.4rem;color:var(--muted);font-size:.85rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.foot a{color:var(--muted);text-decoration:none}.foot a:hover{color:var(--text);text-decoration:underline}.notfound{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.4rem;gap:.6rem}.notfound h1{font-size:2.2rem;margin:0;letter-spacing:-.02em}.notfound p{color:var(--muted);margin:0}.notfound a{margin-top:1.2rem}@media(max-width:760px){.bar{padding-left:1rem;padding-right:1rem}.nav{gap:.8rem}.docs-wrap{grid-template-columns:1fr}.docs-side{position:static}.nav a.nav-hide{display:none}}
