.pd h1{font-size:clamp(34px,4.2vw,54px);line-height:1.04;font-weight:720;max-width:12.48em}.pd h2{font-size:clamp(28px,3.4vw,44px);line-height:1.08;font-weight:700;max-width:30ch}.pd h3{font-size:22px;line-height:1.2;font-weight:680}.pd section,.pd .pd-sec{padding:clamp(40px,5vw,72px) 0}.pd [id]{scroll-margin-top:24px}.pd-head{padding-top:clamp(28px,4vw,52px);padding-bottom:8px;display:grid;gap:14px}.pd-head .sub{font-size:clamp(18px,1.5vw,20px);color:var(--ink-2);max-width:60ch}.pd-head .act{display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;margin-top:6px}.pd-head .act a:not(.btn){min-height:44px;display:inline-flex;align-items:center}.pd-sample{font-size:15px;color:var(--ink-2);max-width:72ch;border-left:2px solid var(--rule-2);padding-left:12px}.pd-crumb ol{list-style:none;margin:0;padding:0;display:flex;gap:8px;font:14px/1.4 var(--mono);color:var(--ink-3)}.pd-crumb li+li:before{content:"/";margin-right:8px}.pd-crumb a{color:var(--ink-2)}.pd-crumb a[aria-current]{color:var(--ink);text-decoration:none}.pd-sh{display:grid;gap:10px;max-width:760px;margin-bottom:24px}.pd-sh p{color:var(--ink-2)}.pd-h3{margin:40px 0 14px}.pd-more{margin-top:14px;font-size:16px;color:var(--ink-2);max-width:72ch}.pd-steps{margin-top:28px}.pd-steps ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));position:relative}.pd-steps ol:before{content:"";position:absolute;left:11px;right:calc(100% / var(--n,4) - 11px);top:11px;height:4px;border-radius:2px;background:linear-gradient(90deg,var(--r1),var(--r2))}.pd-steps li{position:relative}.pd-steps a{display:grid;gap:4px;padding:0 14px 0 0;text-decoration:none;min-height:44px}.pd-steps a b{font:600 17px/1.3 var(--body);margin-top:14px}.pd-steps a span{font:14px/1.3 var(--mono);color:var(--ink-3)}.pd-steps a:hover b{text-decoration:underline}.n{display:inline-block;width:18px;height:18px;border-radius:50%;flex:none;box-sizing:border-box}.n.held{background:var(--node);border:4px solid var(--ground)}.pd-steps .n{position:relative;z-index:1;width:26px;height:26px}.n.open{background:var(--ground);border:4px solid var(--r2)}.n.plan{background:transparent;border:2px dashed var(--ink-3)}.n.ghost{background:transparent;border:2px dotted var(--ink-3)}.n.off{background:transparent;border:2px solid var(--ink-3)}.pd-fig{margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.pd-frame{position:relative;border:1px solid var(--rule-2);border-radius:4px;background:var(--surface);overflow:hidden;justify-self:start;max-width:100%;width:min(100%,calc(var(--cw) * 1.1 + 2px))}.pd-label{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:8px 12px;border-bottom:1px solid var(--rule);font:14px/1.35 var(--mono);color:var(--ink-3)}.pd-label b{font:600 14px/1.35 var(--body);color:var(--ink)}.pd-label .pd-kind{margin-left:auto}.pd-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.pd-img{display:block;position:relative;width:100%;min-width:calc(var(--cw) * .6);color:inherit;text-decoration:none;cursor:zoom-in}.pd-img img{width:100%;height:100%}.pd-img .one{display:block}:root[data-theme=dark] .pd-img .one{filter:brightness(.86) contrast(.95)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .pd-img .one{filter:brightness(.86) contrast(.95)}}.pd-reg{position:absolute;border:2px solid var(--ink);border-radius:4px;pointer-events:none}.pd-reg b{position:absolute;top:-2px;left:-2px;transform:translateY(-100%);min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;background:var(--ink);color:var(--ground);font:600 13px/1 var(--mono);border-radius:3px 3px 0 0}.pd-reg.in b{transform:none;left:auto;right:-2px;border-radius:0 3px}.pd-open{position:absolute;right:8px;bottom:8px;padding:6px 10px;border-radius:6px;background:var(--surface);border:1px solid var(--rule-2);font:600 13px/1 var(--body);color:var(--ink);opacity:0;transition:opacity .16s ease-out}.pd-img:hover .pd-open,.pd-img:focus-visible .pd-open{opacity:1}.pd-cue{display:none}.pd-frame.over .pd-cue{display:block;padding:8px 12px;border-top:1px solid var(--rule);font:600 14px/1.3 var(--body);color:var(--ink-2)}.pd-frame.over .pd-cue:after{content:" →"}.pd-frame.over.moved .pd-cue{display:none}.pd-frame.over:after{content:"";position:absolute;top:37px;right:0;bottom:37px;width:44px;background:linear-gradient(90deg,transparent,var(--surface));pointer-events:none}.pd-frame.over.end:after{display:none}.pd-frame.over.moved:after{bottom:0}.pd-notes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px 24px;max-width:calc(var(--cw) * 1.1 + 2px)}.pd-notes li{display:grid;grid-template-columns:28px 1fr;gap:10px;font-size:16px;line-height:1.45;color:var(--ink-2)}.pd-k{width:24px;height:24px;display:grid;place-items:center;background:var(--ink);color:var(--ground);font:600 13px/1 var(--mono);border-radius:3px;margin-top:1px}.pd-cap{font:14px/1.5 var(--mono);color:var(--ink-3);max-width:80ch}.pd-fig.notes-side{grid-template-columns:minmax(0,calc(var(--cw) + 2px)) minmax(200px,1fr);column-gap:28px;align-items:start}.pd-fig.notes-side .pd-frame{width:100%}.pd-fig.notes-side .pd-notes{grid-template-columns:1fr;gap:16px}.pd-fig.notes-side .pd-cap{grid-column:1/-1}@media(max-width:1100px){.pd-fig.notes-side{grid-template-columns:minmax(0,1fr)}.pd-fig.notes-side .pd-frame{width:min(100%,calc(var(--cw) * 1.1 + 2px))}}.pd-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px;align-items:start}.pd-pair-h{display:flex;align-items:center;gap:10px;font:600 18px/1.3 var(--body);margin-bottom:12px}.pd-pair .pd-notes{grid-template-columns:1fr}.pd-fact,.pd-plan{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;margin-top:22px;max-width:80ch;font-size:17px}.pd-fact .n,.pd-plan .n{margin-top:4px}.pd-fact .dateline,.pd-plan .dateline{display:block;margin-top:4px}.pd-code{margin:0;display:grid;gap:14px}.pd-code-h{display:flex;flex-wrap:wrap;gap:4px 16px;font:14px/1.4 var(--mono);color:var(--ink-3)}.pd-code-h b{color:var(--ink);font-weight:500}.pd-code-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px;align-items:start}.pd-code pre{margin:0;padding:12px 0;overflow-x:auto;background:var(--surface);border:1px solid var(--rule-2);border-radius:4px;font:13.5px/1.6 var(--mono)}.pd-code code{display:block;min-width:max-content}.pd-code .ln{display:grid;grid-template-columns:40px 26px auto;padding-right:16px}.pd-code .ln i{font-style:normal;color:var(--ink-3);text-align:right;padding-right:10px}.pd-code .ln.hl{background:color-mix(in srgb,var(--r2) 14%,transparent)}.pd-code .gap{display:block;padding:2px 0 2px 76px;color:var(--ink-3);font-style:italic}.pd-code .m{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--node);color:var(--ground);font:600 13px/1 var(--mono)}.pd-code .ln b:empty{display:block}.pd-code-notes{list-style:none;margin:0;padding:0;display:grid;gap:14px}.pd-code-notes li{display:grid;grid-template-columns:28px 1fr;gap:8px;font-size:16px;line-height:1.45;color:var(--ink-2)}.pd-code-notes .m{margin-top:2px}.pd-whole summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}.pd-whole summary::marker{color:var(--ink-3)}.pd-whole pre{max-height:640px;overflow:auto;margin-top:8px}.pd-whole .ln{grid-template-columns:40px auto}.pd-mid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding-top:26px;padding-bottom:26px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.pd-mid p{font:600 20px/1.35 var(--display);max-width:44ch}.pd-end .wrap{display:flex;flex-wrap:wrap;gap:18px 40px;align-items:center;justify-content:space-between}.pd-btn-band{background:#fff;color:#0b3f47}.pd-areas{padding-top:32px;padding-bottom:56px;display:grid;gap:26px}.pd-pn{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pd-pn a{display:grid;gap:2px;padding:14px 16px;border:1px solid var(--rule-2);border-radius:8px;text-decoration:none}.pd-pn a:hover b{text-decoration:underline}.pd-pn .nx{text-align:right}.pd-pn small{font:14px/1.3 var(--mono);color:var(--ink-3)}.pd-pn b{font:600 18px/1.3 var(--body)}.pd-five{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:16px}.pd-five li{display:flex;align-items:center;gap:8px;min-height:44px}.pd-five .n{width:16px;height:16px}.pd-five a[aria-current]{font-weight:600;text-decoration:none}.pd-view{width:min(1640px,96vw);max-height:94vh;padding:0;border:1px solid var(--rule-2);border-radius:10px;background:var(--surface);color:var(--ink)}.pd-view::backdrop{background:#060c0fb8}.pd-view-bar{display:flex;align-items:center;gap:16px;padding:10px 14px;border-bottom:1px solid var(--rule);position:sticky;top:0;background:var(--surface)}.pd-view-bar p{font:14px/1.4 var(--mono);color:var(--ink-3)}.pd-close{margin-left:auto;min-height:44px;padding:0 18px;border-radius:8px;border:1px solid var(--rule-2);background:var(--ground);color:var(--ink);font:600 16px/1 var(--body);cursor:pointer}.pd-view-body{overflow:auto;max-height:calc(94vh - 66px)}.pd-view-body img{width:100%;height:auto;max-width:none}.pd-menu{margin-top:8px}.pd-menu .pd-frame{width:min(100%,calc(var(--cw) * 1.25 + 2px))}.pd-mreg{position:absolute;border-radius:4px;pointer-events:none}.pd-mreg b{position:absolute;left:50%;top:-4px;transform:translate(-50%,-100%);width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--node);color:var(--ground);font:600 13px/1 var(--mono)}.pd-menu .pd-img{padding-top:30px;background:var(--surface)}.pd-menu .pd-img img{height:auto}.pd-rows{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}.pd-row{display:grid;grid-template-columns:48px minmax(0,1.25fr) minmax(0,1fr) 150px;gap:10px 24px;padding:22px 0;border-bottom:1px solid var(--rule-2);align-items:start}.pd-row .num{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--node);color:var(--ground);font:700 17px/1 var(--display)}.pd-row h3 a{text-decoration:none}.pd-row h3 a:hover{text-decoration:underline}.pd-row .q{margin-top:6px;color:var(--ink-2);font-size:17px}.pd-row .scr{margin-top:8px;font:14px/1.5 var(--mono);color:var(--ink-3)}.pd-row .f{font-size:16px;line-height:1.45}.pd-row .f .dateline{display:block;margin-top:4px}.pd-row .go{justify-self:end;min-height:44px;display:inline-flex;align-items:center;font-weight:600}.pd-guide{margin-top:18px;font-size:16px;color:var(--ink-2)}.pd-anchors{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media(max-width:900px){.pd-code-grid,.pd-pair{grid-template-columns:minmax(0,1fr)}.pd-row{grid-template-columns:40px minmax(0,1fr)}.pd-row .f,.pd-row .go{grid-column:2}.pd-row .go{justify-self:start}}@media(max-width:760px){.pd-steps ol{grid-template-columns:1fr;gap:4px}.pd-steps ol:before{inset:12px auto 12px 11px;width:4px;height:auto;background:linear-gradient(180deg,var(--r1),var(--r2))}.pd-steps a{grid-template-columns:26px auto;column-gap:12px;align-items:center}.pd-steps a b{margin:0}.pd-steps a span{grid-column:2}.pd-pn{grid-template-columns:1fr}.pd-pn .nx{text-align:left}.pd-label .pd-kind{margin-left:0}}@media(prefers-reduced-motion:reduce){.pd-open{transition:none}}.pd-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,364px);gap:24px 36px;align-items:start;margin-top:8px}.pd-duo .pd-notes{grid-template-columns:1fr}.pd-ledger{margin-top:12px}.pd-quote{margin:0;display:grid;gap:10px;max-width:760px;padding:18px 22px;border:1px solid var(--rule-2);border-left:4px solid var(--you);border-radius:4px;background:var(--surface)}.pd-quote blockquote{margin:0}.pd-quote blockquote p{font:600 clamp(20px,2.2vw,26px)/1.3 var(--mono);color:var(--ink)}.pd-quote figcaption{display:grid;gap:4px;font-size:16px;color:var(--ink-2)}.pd-card{display:grid;gap:28px}.pd-then{list-style:none;margin:0;padding:18px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 28px;border-top:1px solid var(--rule-2)}.pd-then li{display:grid;grid-template-columns:22px 1fr;gap:4px 10px}.pd-then .n{margin-top:3px}.pd-then b{font:600 17px/1.35 var(--body)}.pd-then span{grid-column:2;font-size:16px;color:var(--ink-2)}.pd-rows-h{margin:56px 0 18px}.pd-menu-img{cursor:default;padding-top:30px}.pd-mreg{top:0;bottom:0;display:block;text-decoration:none}.pd-mreg b{top:26px}.pd-mreg:hover b,.pd-mreg:focus-visible b{outline:2px solid var(--r2);outline-offset:2px}.pd-row .f{display:block}.pd-row .f .n{vertical-align:-3px;margin-right:4px}.pd-loop{list-style:none;margin:0;padding:0;position:relative;display:grid;gap:0}.pd-loop:before{content:"";position:absolute;left:11px;top:14px;bottom:14px;width:6px;border-radius:3px;background:linear-gradient(180deg,var(--r1),var(--r2))}.pd-loop li{display:grid;grid-template-columns:28px minmax(0,1fr) 380px;gap:10px 28px;padding:18px 0;border-bottom:1px solid var(--rule)}.pd-loop .n{position:relative;z-index:1;width:28px;height:28px;margin-top:4px}.pd-loop .q{margin-top:6px;color:var(--ink-2)}.pd-loop .scr{margin-top:6px;font:14px/1.5 var(--mono);color:var(--ink-3)}.pd-loop .f{margin-top:8px;font-size:16px}.pd-loop .f .dateline{display:block}.pd-win{display:block;width:380px;height:220px;overflow:hidden;border:1px solid var(--rule-2);border-radius:4px;background:var(--surface)}.pd-win img{max-width:none;height:auto}@media(max-width:900px){.pd-duo,.pd-then{grid-template-columns:minmax(0,1fr)}.pd-loop li{grid-template-columns:28px minmax(0,1fr)}.pd-win{grid-column:2;width:100%;max-width:380px}}.pd-verdicts{display:grid;gap:16px;max-width:760px}.pd-quote-run{border-left-color:var(--node)}.pd-ways{display:grid;gap:10px;max-width:760px;margin:22px 0 0}.pd-ways div{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:baseline}.pd-ways dt code{font:600 15px/1.3 var(--mono);color:var(--you)}.pd-ways dd{margin:0;color:var(--ink-2)}@media(max-width:520px){.pd-ways div{grid-template-columns:1fr;gap:2px}}.pd-onb{display:grid;gap:20px;margin-top:24px}.pd-onb-steps{list-style:none;padding:0;margin:0;display:grid;gap:10px;max-width:80ch;font-size:17px}.pd-onb-steps li{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start}.pd-onb-steps .n{margin-top:5px}.pd-onb-steps span{color:var(--ink-2)}.pd-onb-steps b{color:var(--ink)}.pd-onb-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}@media(max-width:900px){.pd-onb-pair{grid-template-columns:minmax(0,1fr)}}
