.contribute{padding:56px 0 80px}.contribute-hero{padding:64px 0 18px;text-align:center}.contribute-hero h1{font-size:clamp(36px,6vw,64px);line-height:1.02;letter-spacing:-.02em;margin:0 0 14px}.contribute-hero p{margin:0 auto;max-width:850px;font-size:clamp(16px,2.2vw,20px);line-height:1.7}.contribute-meta{margin-top:10px;font-size:12px;color:var(--muted);opacity:.9}.contribute-badge{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:18px;padding:10px 14px;border:1px solid var(--stroke);border-radius:999px;background:color-mix(in oklab,var(--card),transparent 20%);box-shadow:var(--shadow);font-size:13px}.contribute-badge .sep{opacity:.6}.contribute-badge a{color:var(--accent);text-decoration:none;font-weight:600}.contribute-badge a:hover{text-decoration:underline}.contribute-body{padding:18px 0 0}.contribute-prose{max-width:920px;margin:0 auto;text-align:left}.contribute-prose h2{margin:28px 0 10px;font-size:18px;letter-spacing:-.01em}.contribute-prose p{margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.8}.contribute-prose ul{margin:10px 0 14px 18px;padding:0;color:var(--muted);font-size:14px;line-height:1.8}.contribute-prose li{margin:6px 0}.contribute-prose a{color:var(--accent);text-decoration:none;font-weight:500}.contribute-prose a:hover{text-decoration:underline}.contribute-prose strong{color:var(--fg)}.contribute-prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:12px;background:color-mix(in oklab,var(--card),transparent 35%);border:1px solid var(--stroke);padding:2px 8px;border-radius:999px;color:var(--fg);white-space:nowrap}@media(max-width:720px){.contribute-hero{padding:44px 0 12px}.contribute-badge{border-radius:16px}.contribute-prose code{white-space:normal}}.contribute-hero p{max-width:980px}.manual .contribute-prose p,.manual .contribute-prose li{font-size:15px;line-height:1.85}.manual .contribute-prose h2{font-size:20px;margin-top:34px}.manual .contribute-prose h3{font-size:16px;margin:18px 0 8px}.acc{border:1px solid var(--stroke);border-radius:var(--radius);background:color-mix(in oklab,var(--card),transparent 10%);box-shadow:none;margin:14px 0;overflow:hidden}.acc[open]{box-shadow:var(--shadow)}.acc summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;gap:10px;font-weight:700}.acc summary::-webkit-details-marker{display:none}.acc summary:after{content:"▾";margin-left:auto;opacity:.75;transition:transform .15s ease}.acc[open] summary:after{transform:rotate(180deg)}.acc .acc-body{padding:0 16px 16px}.acc summary:focus-visible,.btn:focus-visible,.toc a:focus-visible{outline:2px solid color-mix(in oklab,var(--accent),#fff 20%);outline-offset:2px}.toc{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}.toc a{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--stroke);border-radius:999px;background:var(--card);font-size:13px}.toc a:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--stroke);background:color-mix(in oklab,var(--card),transparent 10%);white-space:nowrap}.tag.req{border-color:color-mix(in oklab,var(--accent),var(--stroke) 65%);background:color-mix(in oklab,var(--accent),transparent 88%)}.fields{margin:10px 0 0;padding:0;list-style:none}.fields li{padding:10px 12px;border:1px solid var(--stroke);border-radius:14px;background:color-mix(in oklab,var(--bg),var(--card) 55%);margin:10px 0}.fields .row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.fields .name{font-weight:800}.fields .desc{margin-top:6px;color:var(--muted)}.codewrap{border:1px solid var(--stroke);border-radius:var(--radius);background:color-mix(in oklab,var(--card),transparent 12%);overflow:hidden;margin:12px 0 0}.codebar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--stroke)}.codebar .left{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid var(--stroke);background:var(--card);font-size:13px;cursor:pointer}.btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.btn.primary{border-color:color-mix(in oklab,var(--accent),var(--stroke) 65%);background:color-mix(in oklab,var(--accent),transparent 90%)}.manual pre{margin:0;padding:12px 14px;overflow:auto}.manual code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:12.5px}.manual pre code{white-space:pre!important;display:block}.callout{border:1px solid var(--stroke);border-radius:var(--radius);padding:12px 14px;background:linear-gradient(180deg,color-mix(in oklab,var(--card),transparent 10%) 0%,var(--card) 100%)}.callout strong{color:var(--fg)}.anchor{scroll-margin-top:90px}