*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:var(--color-bg,#e8f1f0);color:var(--color-text,#222);font:15px/1.75 system-ui,sans-serif}a{color:#285c4b;text-underline-offset:3px}a:hover{color:#153a2f}button,input,select{font:inherit}button,select{cursor:pointer}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:12px;padding:8px 16px;background:white;z-index:10}.skip-link:focus{top:12px}.reference-layout{display:grid;grid-template-columns:292px minmax(0,1fr);max-width:1540px;margin:auto}.reference-sidebar{position:sticky;top:0;height:100dvh;overflow-y:auto;padding:30px 24px;border-right:1px solid #b9cec6}.brand{display:flex;align-items:center;gap:10px;font-weight:750;text-decoration:none;font-size:20px;flex-wrap:wrap}.brand span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#4b6259}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:650;color:#426b5b}label{display:block;margin:16px 0 5px;font-size:13px;font-weight:650}input,select{width:100%;min-width:0;padding:9px;border:1px solid #88a99b;border-radius:5px;background:#f8fbfa;color:#222}button{margin-top:10px;padding:5px 12px;border:1px solid #88a99b;background:transparent;border-radius:4px;color:#285c4b}.class-index{display:grid;gap:3px;margin-top:12px}.class-index a{font:12px/1.8 ui-monospace,monospace;text-decoration:none;padding:2px 6px;overflow-wrap:anywhere}.class-index a:hover,.class-index a[aria-current]{background:#d2e5dd;border-radius:3px}.back-link{display:block;margin-top:24px;font-size:12px}main{min-width:0;padding:52px clamp(20px,5vw,78px)}h1{font-size:clamp(34px,5vw,66px);line-height:1.08;letter-spacing:-.055em;margin:22px 0}h2{font:600 19px/1.4 ui-monospace,monospace;display:inline;margin:0;overflow-wrap:anywhere}h3{font:600 16px/1.5 ui-monospace,monospace;overflow-wrap:anywhere}.lead{font-size:19px;line-height:1.6;max-width:660px}.reference-header{margin-bottom:34px}.reference-stats{display:flex;gap:28px;flex-wrap:wrap;padding:20px 0;border-top:1px solid #b9cec6;border-bottom:1px solid #b9cec6}.reference-stats strong{display:block;font-size:27px;line-height:1.4}.reference-stats span{font-size:12px;color:#3c5f50}.reading-guide{font-size:13px}.reading-guide summary{cursor:pointer;color:#285c4b}kbd{padding:2px 6px;border:1px solid #a0b7ab;border-radius:4px;font:12px ui-monospace,monospace;background:#f6faf8}.class-entry{border-top:1px solid #b2cbbd;scroll-margin-top:24px}.class-entry>summary{display:flex;align-items:center;gap:16px;justify-content:space-between;cursor:pointer;padding:21px 0;list-style:none}.class-entry>summary::before{content:'+';font:20px ui-monospace,monospace;color:#285c4b}.class-entry[open]>summary::before{content:'−'}.member-count{margin-left:auto;white-space:nowrap;font-size:11px;color:#4b6259}.class-body{padding:0 0 30px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 20px}.tag{font:11px/1.4 ui-monospace,monospace;background:#d1e4da;padding:5px 8px;border-radius:3px;color:#274e3e}.member{padding:24px 0;border-top:1px dashed #b2cbbd;scroll-margin-top:24px}.entry-links{font-size:12px;margin-top:20px}.api-summary{font-size:14px;color:#3d574a}pre{background:#1c3027;color:#e7f2ec;border-radius:6px;padding:16px;overflow:auto;max-width:100%;font:12px/1.7 ui-monospace,monospace;tab-size:4}.signatures{background:#dbeae2;color:#233e30}.example-label{font-size:12px;font-weight:650;color:#285c4b}.member:target,.class-entry:target{outline:2px solid #4d8b6f;outline-offset:8px;border-radius:2px}footer{padding:40px 0 0;border-top:1px solid #b2cbbd;font-size:12px;color:#496354}:focus-visible{outline:3px solid #397b5b;outline-offset:4px}@media(max-width:800px){.reference-layout{display:block}.reference-sidebar{position:relative;height:auto;padding:20px;border-right:0;border-bottom:1px solid #b9cec6}.class-index{max-height:150px;overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr))}main{padding:28px 20px}h2{font-size:16px}.member-count{font-size:10px}.reference-stats{gap:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* API names can be long; prose wraps while signature blocks scroll locally. */
p{overflow-wrap:anywhere}.class-entry>summary h2{min-width:0;flex:1}.class-body{min-width:0}
