:root{--bg:#fff;--ink:#1d1d1f;--ink-2:#424245;--ink-3:#86868b;--rule:#e3e3e6;--wash:#f5f5f7;--accent:#06c;--accent-soft:#e8f1fb;--diff-del-soft:#c448401c;--diff-add-soft:#3496541f;--good:#248a3d;--bad:#d70015;--warn:#b25000;--c-compute:#e8590c;--c-ctrl:#6e6e73;--c-reg:#7c4dff;--c-smem:#0a8f9e;--c-l2:#1f6fd1;--c-dram:#3f9a2e;--c-host:#c2255c;--c-idle:#e5e5ea;--on-fill:#fff;--c-compute-soft:#fdebdf;--c-reg-soft:#eee8ff;--c-smem-soft:#dcf3f5;--c-l2-soft:#e1ecfa;--c-dram-soft:#e4f3e0;--c-host-soft:#f9e0e9;--f-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Helvetica Neue", "Segoe UI", Roboto, Arial, sans-serif;--f-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Helvetica Neue", "Segoe UI", Roboto, Arial, sans-serif;--f-mono:"SF Mono", ui-monospace, Menlo, Consolas, "Liberation Mono", monospace;--col:680px;--wide:980px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#111113;--ink:#f5f5f7;--ink-2:#c7c7cc;--ink-3:#8e8e93;--rule:#2c2c2e;--wash:#1c1c1e;--accent:#4da3ff;--accent-soft:#14263b;--good:#30d158;--bad:#ff6961;--warn:#ffb340;--diff-del-soft:#ff696126;--diff-add-soft:#50c86e21;--c-compute:#ff8a3d;--c-ctrl:#a1a1a6;--c-reg:#a78bfa;--c-smem:#3cc8d6;--c-l2:#5ea8ff;--c-dram:#7bd35f;--c-host:#ff6b9a;--c-idle:#2c2c2e;--on-fill:#111113;--c-compute-soft:#3a2416;--c-reg-soft:#2a2245;--c-smem-soft:#10303a;--c-l2-soft:#142a44;--c-dram-soft:#1d3319;--c-host-soft:#3a1726;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#111113;--ink:#f5f5f7;--ink-2:#c7c7cc;--ink-3:#8e8e93;--rule:#2c2c2e;--wash:#1c1c1e;--accent:#4da3ff;--accent-soft:#14263b;--good:#30d158;--bad:#ff6961;--warn:#ffb340;--diff-del-soft:#ff696126;--diff-add-soft:#50c86e21;--c-compute:#ff8a3d;--c-ctrl:#a1a1a6;--c-reg:#a78bfa;--c-smem:#3cc8d6;--c-l2:#5ea8ff;--c-dram:#7bd35f;--c-host:#ff6b9a;--c-idle:#2c2c2e;--on-fill:#111113;--c-compute-soft:#3a2416;--c-reg-soft:#2a2245;--c-smem-soft:#10303a;--c-l2-soft:#142a44;--c-dram-soft:#1d3319;--c-host-soft:#3a1726;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-padding-top:64px}body{background:var(--bg);color:var(--ink);font-family:var(--f-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:18px;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}code,kbd,pre{font-family:var(--f-mono);font-size:.84em}:not(pre)>code{background:var(--wash);overflow-wrap:anywhere;border-radius:4px;padding:.1em .3em}.bar{top:env(safe-area-inset-top,0px);z-index:30;background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);border-bottom:1px solid var(--rule);position:sticky}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:31;background:var(--bg);position:fixed;inset:0 0 auto}.bar-in{max-width:var(--wide);height:48px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));align-items:center;gap:16px;margin:0 auto;font-size:14px;display:flex}.bar .home{color:var(--ink);letter-spacing:-.01em;white-space:nowrap;font-weight:600}.bar .where{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.bar .nav{gap:4px;display:flex}.bar button,.bar .nav a{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px;line-height:1}.bar button:hover,.bar .nav a:hover{background:var(--wash);color:var(--ink);text-decoration:none}.bar .nav a[aria-disabled=true]{opacity:.3;pointer-events:none}.menu{z-index:40;top:calc(48px + env(safe-area-inset-top,0px));background:var(--bg);padding-block:24px 48px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.menu-in{max-width:var(--col);margin:0 auto}.main{padding-block:0 120px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}.page{max-width:var(--wide);margin:0 auto}.page>*{max-width:var(--col);margin-left:auto;margin-right:auto}.page>.wide,.page>figure,.page>.widget,.page>.table-wrap{max-width:var(--wide)}.head{padding-block:72px 28px}.head .kicker{color:var(--ink-3);margin:0 0 10px;font-size:15px}.page h1{font-family:var(--f-display);letter-spacing:-.025em;text-wrap:balance;margin:0 0 16px;font-size:48px;font-weight:700;line-height:1.08}.page .lede{color:var(--ink-2);text-wrap:pretty;letter-spacing:-.005em;margin:0;font-size:22px;line-height:1.45}.page h2{font-family:var(--f-display);letter-spacing:-.02em;text-wrap:balance;margin-top:2.2em;margin-bottom:.5em;font-size:30px;font-weight:700;line-height:1.2}.page h3{letter-spacing:-.01em;margin-top:1.8em;margin-bottom:.4em;font-size:21px;font-weight:650;line-height:1.3}.page p{text-wrap:pretty;margin-top:0;margin-bottom:1em}.page ul,.page ol{margin-top:0;padding-left:1.25em}.page li{text-wrap:pretty;margin-bottom:.4em}.page hr{border:0;border-top:1px solid var(--rule);margin-block:2.5em}@media (max-width:640px){body{font-size:17px}.head{padding-block:40px 20px}.page h1{font-size:34px}.page .lede{font-size:19px}.page h2{font-size:25px}}.note{border-left:2px solid var(--rule);color:var(--ink-2);padding-left:16px}.note.myth{border-left-color:var(--warn)}.note.key{border-left-color:var(--accent);color:var(--ink)}.note p:last-child{margin-bottom:0}.note strong:first-child{color:var(--ink)}pre.code{background:var(--wash);tab-size:4;border-radius:10px;margin-bottom:1.2em;padding:16px 18px;font-size:14px;line-height:1.55;overflow-x:auto}pre.code .c{color:var(--ink-3)}pre.code .k{color:var(--accent)}pre.code .hl{background:var(--accent-soft);width:100%;display:inline-block}.table-wrap{margin-bottom:1.4em;overflow-x:auto}table.spec{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:15px}table.spec th,table.spec td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:8px 12px 8px 0}table.spec th{color:var(--ink-3);font-size:13px;font-weight:600}table.spec .n{text-align:right;white-space:nowrap}.res{white-space:nowrap;font-weight:600}.res.compute{color:var(--c-compute)}.res.reg{color:var(--c-reg)}.res.smem{color:var(--c-smem)}.res.l2{color:var(--c-l2)}.res.dram{color:var(--c-dram)}.res.host{color:var(--c-host)}.res.ctrl{color:var(--c-ctrl)}.term{border-bottom:1px dotted var(--ink-3);cursor:help}dfn{font-style:normal;font-weight:600}.tip{z-index:60;background:var(--ink);max-width:300px;color:var(--bg);pointer-events:none;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.45;position:absolute;box-shadow:0 8px 30px #0000002e}.tip b{margin-bottom:2px;display:block}.widget{margin-top:2.2em;margin-bottom:2.4em}.widget-body{font-size:14px;line-height:1.45}.widget-cap{max-width:var(--col);color:var(--ink-3);margin:14px auto 0;font-size:14px;line-height:1.5}.widget-cap b{color:var(--ink-2);font-weight:600}.controls{max-width:var(--col);flex-wrap:wrap;align-items:end;gap:12px 28px;margin:0 auto 16px;display:flex}.ctl{flex-direction:column;flex:170px;gap:4px;min-width:150px;display:flex}.ctl label{color:var(--ink-3);justify-content:space-between;gap:8px;font-size:13px;display:flex}.ctl label output{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.ctl input[type=range]{width:100%;accent-color:var(--accent);margin:2px 0}.ctl select{font:inherit;border:1px solid var(--rule);background:var(--bg);color:var(--ink);border-radius:8px;padding:5px 8px}.seg{background:var(--wash);border-radius:9px;flex-wrap:wrap;gap:2px;padding:2px;display:inline-flex}.seg button{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 11px;font-size:13px;font-weight:500}.seg button[aria-pressed=true]{background:var(--bg);color:var(--ink);font-weight:600;box-shadow:0 1px 3px #0000001f}.btn{font:inherit;cursor:pointer;background:var(--wash);color:var(--ink);border:0;border-radius:980px;padding:6px 14px;font-size:14px;font-weight:500}.btn:hover{background:var(--rule)}.btn.primary{background:var(--accent);color:#fff}.readout{max-width:var(--col);flex-wrap:wrap;gap:10px 32px;margin:16px auto 0;display:flex}.readout .cell{min-width:0}.readout .lbl{color:var(--ink-3);font-size:13px}.readout .val{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:20px;font-weight:600}.readout .val small{color:var(--ink-3);font-size:13px;font-weight:400}.readout .cell.limit .val{color:var(--warn)}.insight{max-width:var(--col);color:var(--ink-2);margin:12px auto 0;font-size:15px;line-height:1.5}.svgbox{width:100%;overflow-x:auto}.svgbox svg{width:100%;min-width:540px;height:auto;margin:0 auto;display:block}.svgbox.free svg{min-width:0}svg text{font-family:var(--f-sans);fill:var(--ink-2)}svg .t-ink{fill:var(--ink)}svg .t-dim{fill:var(--ink-3)}svg .t-on{fill:var(--on-fill)}svg .grid{stroke:var(--rule)}svg .axis{stroke:var(--ink-3)}.legend{color:var(--ink-2);max-width:var(--col);flex-wrap:wrap;gap:6px 18px;margin:10px auto 0;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.quiz{border-top:1px solid var(--rule);margin-top:4em;padding-top:1.5em}.q{margin-bottom:28px}.q-prompt{margin-bottom:10px;font-weight:600;line-height:1.45}.q-opts{flex-direction:column;gap:6px;display:flex}.q-opts button{font:inherit;text-align:left;border:1px solid var(--rule);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:10px;padding:9px 14px;font-size:16px;line-height:1.4}.q-opts button:hover:not(:disabled){border-color:var(--ink-3)}.q-opts button.right{border-color:var(--good);box-shadow:inset 0 0 0 1px var(--good)}.q-opts button.wrong{border-color:var(--bad);color:var(--ink-3)}.q-opts button:disabled{cursor:default}.q-explain{color:var(--ink-2);margin-top:10px;font-size:16px;line-height:1.55}.pager{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:1.5em;display:flex;margin-top:4em!important}.pager a{color:var(--ink);flex:240px}.pager a:hover{text-decoration:none}.pager a:hover .n{color:var(--accent)}.pager .d{color:var(--ink-3);font-size:14px;display:block}.pager .n{letter-spacing:-.01em;font-size:19px;font-weight:600}.pager a.next{text-align:right}.toc{margin-block:0;list-style:none;padding:0!important}.toc li{border-top:1px solid var(--rule);margin:0}.toc li:last-child{border-bottom:1px solid var(--rule)}.toc a{color:var(--ink);grid-template-columns:2.2em minmax(0,1fr);gap:8px;padding:14px 0;display:grid}.toc a:hover{text-decoration:none}.toc a:hover .ttl{color:var(--accent)}.toc .num{color:var(--ink-3);font-variant-numeric:tabular-nums;padding-top:2px;font-size:15px}.toc .ttl{letter-spacing:-.01em;font-size:18px;font-weight:600;line-height:1.3;display:block}.toc .sum{color:var(--ink-3);margin-top:2px;font-size:15px;line-height:1.45;display:block}.toc a[aria-current=page] .ttl{color:var(--accent)}.toc a.done .num{color:var(--good)}.page .part,.part{color:var(--ink-3);margin-block:2.2em .6em;font-size:14px;font-weight:500}.glossary dt{margin-top:18px;font-weight:600}.glossary dd{color:var(--ink-2);margin:2px 0 0}.glossary dd a{font-size:14px}.loading{color:var(--ink-3);padding-top:80px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.stepper{max-width:var(--wide);margin:0 auto}.stepper .tabs{max-width:var(--col);margin:0 auto 14px}.stepper .cols{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}@media (max-width:860px){.stepper .cols{grid-template-columns:minmax(0,1fr)}}.stepper pre.src{background:var(--wash);border-radius:10px;margin:0;padding:12px 0;font-size:12.5px;line-height:1.6;overflow-x:auto}.stepper pre.src .ln{white-space:pre;border-left:3px solid #0000;padding:0 14px 0 0;display:block}.stepper pre.src .ln i{text-align:right;width:2.6em;color:var(--ink-3);-webkit-user-select:none;user-select:none;padding-right:1em;font-style:normal;display:inline-block}.stepper pre.src .ln.on{background:var(--accent-soft);border-left-color:var(--accent)}.stepper pre.src .ln .c{color:var(--ink-3)}.stepper .nav{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.stepper .nav .count{color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:4px;font-size:13px}.stepper .say{color:var(--ink-2);min-height:4.6em;margin-top:10px;font-size:15px;line-height:1.55}.stepper .say b{color:var(--ink)}.chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.chip{background:var(--wash);color:var(--ink-3);border:1px solid #0000;border-radius:980px;padding:3px 9px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.chip.on{color:var(--on-fill)}.svgbox.stepviz svg{min-width:440px}@media (max-width:640px){.svgbox svg{min-width:700px}.svgbox.free svg{min-width:0}.svgbox.free.wide-text svg,.svgbox.stepviz svg{min-width:480px}}.page>.ref-grid{max-width:var(--wide)}.ref-block{max-width:var(--col);margin-inline:auto}.ref-block.wide{max-width:var(--wide)}.ref-small,.ref-specs small{color:var(--ink-3);font-size:13px}.ref-specs td:first-child{color:var(--ink-2)}.ref-specs td{min-width:9em}.ref-print{margin:20px 0 0}.page>.checkpoint{max-width:var(--col)}.checkpoint>h3{margin-top:1.8em}.cp-code{margin:.6em 0 1.2em}.runex.widget{margin:0}pre.runex-code{margin:0;padding:12px 0;font-size:13px;line-height:1.5}.runex-code .rl{white-space:pre;box-sizing:border-box;border-left:2px solid #0000;width:max-content;min-width:100%;padding:0 12px 0 10px;display:block}.runex-bar{justify-content:flex-end;margin:0 0 8px;display:flex}.runex-bar .seg button{padding:3px 9px;font-size:12px}.rxd-wrap{background:var(--wash);border-radius:10px;overflow-x:auto}.rxd{min-width:720px;font-family:var(--f-mono);grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:6px 0 10px;font-size:12px;line-height:1.5;display:grid}.rxd .dc{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.5em;padding:0 10px 0 calc(10px + 2ch);position:relative}.rxd .dc.r,.rxd .dh.r{border-left:1px solid var(--rule)}.rxd .dc .g{color:var(--ink-3);position:absolute;top:0;left:6px}.rxd .dc .c{color:var(--ink-3)}.rxd .dc .k{color:var(--accent)}.rxd .dc.add{background:var(--diff-add-soft)}.rxd .dc.del{background:var(--diff-del-soft)}.rxd .dc.add .g,.rxd .dc.del .g{color:var(--ink-2);font-weight:600}.rxd .dc.on{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.rxd .span{grid-column:1/-1}.rxd .dh{font-family:var(--f-sans);color:var(--ink-3);padding:4px 10px 4px calc(10px + 2ch);font-size:12px}.rxd .dgap{grid-column:1/-1;height:10px}.rxd .dfold{text-align:left;font:inherit;font-family:var(--f-sans);color:var(--ink-3);cursor:pointer;background:0 0;border:0;grid-column:1/-1;padding:1px 10px 1px calc(10px + 2ch);font-size:12px}.rxd .dfold:hover{color:var(--ink)}.rxd .folded{display:none}@media (min-width:760px) and (max-width:1099px){.checkpoint.cp-diff>.cp-code{width:min(calc(100vw - 32px), var(--wide));position:relative;left:50%;transform:translate(-50%)}}.runex-code .rl.on{background:var(--accent-soft);border-left-color:var(--accent)}.runex-cap{color:var(--ink-3);margin:8px 0 0;font-size:13px;line-height:1.45}.rx{text-decoration:underline;-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3);text-underline-offset:3px;cursor:default;border-radius:3px;text-decoration-thickness:1px}.rx.on{background:var(--accent-soft);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.rx:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (min-width:1100px){.page>.checkpoint{max-width:var(--wide);grid-template:"head code""text code"1fr/minmax(0,1fr) 500px;gap:0 32px;display:grid}.checkpoint>h3{grid-area:head}.checkpoint>.cp-text{grid-area:text}.checkpoint>.cp-code{grid-area:code;align-self:start;margin:1.8em 0 0;position:sticky;top:72px}.page>.checkpoint.cp-diff{grid-template:"head""code""text"/minmax(0,1fr)}.checkpoint.cp-diff>h3,.checkpoint.cp-diff>.cp-text{width:100%;max-width:var(--col);justify-self:center}.checkpoint.cp-diff>.cp-code{margin:.6em 0 1.2em;position:static}pre.runex-code{font-size:12px}.runex-code .rl{white-space:pre-wrap;text-indent:-2ch;width:auto;padding-left:calc(10px + 2ch)}}@media print{.page>.checkpoint{max-width:var(--col);display:block}.checkpoint>.cp-code{width:auto;position:static;left:auto;transform:none}.rx{text-decoration:none}.runex-bar,.rxd .dfold{display:none!important}.rxd .folded{display:block}.runex .rxd-wrap{display:block!important}.runex .rxd-wrap~.runex-code{display:none!important}.runex.has-diff .cap-diff{display:block!important}.runex.has-diff .cap-full{display:none!important}.rxd{min-width:0;font-size:7.5pt}.rxd .dc.add,.rxd .dc.del{-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact}.runex-cap{font-size:7.5pt}:root,:root[data-theme=dark],:root:not([data-theme=light]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--ink:#000;--ink-2:#222;--ink-3:#555;--rule:#bbb;--wash:#f2f2f2;--diff-del-soft:#c4484024;--diff-add-soft:#34965426;--c-compute:#e8590c;--c-ctrl:#6e6e73;--c-reg:#7c4dff;--c-smem:#0a8f9e;--c-l2:#1f6fd1;--c-dram:#3f9a2e;--c-host:#c2255c}.bar,.pager,.menu,#menu-btn,.ref-print,.quiz,.tip{display:none!important}body{color:#000;background:#fff;font-size:8pt;line-height:1.22}.main{padding:0}.page,.page>*,.page>.ref-grid,.ref-block.wide{max-width:none}.head{padding:0 0 4mm}.page h1{margin-bottom:2mm;font-size:18pt}.page .lede{font-size:10pt}.page h2{break-after:avoid;margin:2mm 0 .6mm;font-size:11pt}.page ul{margin-bottom:0;padding-left:1em}.page p{margin-bottom:1mm}.page li{margin-bottom:.5mm}.page ul ul{margin-bottom:0}.ref-cols{columns:3;column-gap:5mm;margin-bottom:3mm}.ref-grid>.ref-block.wide+.ref-cols+.ref-block.wide{break-before:page}.ref-block{break-inside:avoid;max-width:none;margin-bottom:3mm}.ref-block.wide,.ref-block.flow{break-inside:auto}table.spec tr{break-inside:avoid}table.spec thead{display:table-header-group}.table-wrap{margin-bottom:0;overflow:visible}table.spec{font-size:7pt;line-height:1.2}.ref-specs td:first-child{width:27%}table.spec th,table.spec td{padding:.5px 4px .5px 0}table.spec th{font-size:7pt;line-height:1.2}.ref-small,.ref-specs small{font-size:7.5pt}.ref-specs td{min-width:0}.note{border-left-width:1px}.res,.ref-swatch{-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact}a{color:inherit;text-decoration:none}.term{border-bottom:0}@page{margin:8mm}}.ref-grid>.ref-block:first-child h2{margin-top:.8em}
