@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/kalam-devanagari-400-normal.Dy6c0U2e.woff2)format("woff2"),url(/_astro/kalam-devanagari-400-normal.Dyzod-UE.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/kalam-latin-ext-400-normal.DtcdGa4L.woff2)format("woff2"),url(/_astro/kalam-latin-ext-400-normal.AcQmRO9z.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/kalam-latin-400-normal.BthBl_aR.woff2)format("woff2"),url(/_astro/kalam-latin-400-normal.Bl-H2BUA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/kalam-devanagari-700-normal.BeU_-hjz.woff2)format("woff2"),url(/_astro/kalam-devanagari-700-normal.B52CSkpd.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/kalam-latin-ext-700-normal.CwgfRD_T.woff2)format("woff2"),url(/_astro/kalam-latin-ext-700-normal.BA-KJHgr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/kalam-latin-700-normal.D2H-9ISU.woff2)format("woff2"),url(/_astro/kalam-latin-700-normal.7TSuSrjP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#eef3f8;--grid:#cfdcea;--graphite:#27313d;--graphite-soft:#4a5666;--pencil:#2456a6;--marker:#f3e36b;--margin:#c8474f;--tape:#d6e2eed1;--sheet:#f7fafd;--hand:"Kalam", var(--cjk);--body:"Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", var(--cjk);--sq:24px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#151b24;--grid:#243041;--graphite:#dce4ee;--graphite-soft:#a9b6c6;--pencil:#8fb4f2;--marker:#6b5f12;--margin:#e07a80;--tape:#46566cbf;--sheet:#1a212c}:root:not([data-theme=light]) body.nb{--g-accent-text:var(--g-accent-text-night);color-scheme:dark}}html[lang=zh-CN]{--hand:var(--cjk);--body:system-ui, -apple-system, var(--cjk)}body.nb{color:var(--graphite);font-family:var(--body);line-height:var(--sq);background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:var(--sq) var(--sq);overflow-x:hidden}.nb main a{color:var(--pencil);text-underline-offset:3px;text-decoration-thickness:1px}.nb main a:hover{text-decoration-thickness:2px}.nb main :focus-visible{outline:3px solid var(--pencil);outline-offset:3px;border-radius:2px}.nb main p{margin:0 0 var(--sq)}.nb .wrap{max-width:1120px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}@media (width>=900px){.nb .wrap{padding-left:72px;padding-right:32px;position:relative}.nb .wrap.ruled:before{content:"";background:var(--margin);opacity:.55;width:2px;position:absolute;top:0;bottom:0;left:48px}}.nb h1,.nb main h2,.nb main h3{font-family:var(--hand);margin:0;font-weight:700}.nb h1{letter-spacing:-.01em;font-size:clamp(38px,6vw,56px);line-height:1.05}html[lang=zh-CN] .nb h1{letter-spacing:0;font-size:clamp(32px,5vw,46px);line-height:1.2}.nb main h2{font-size:28px;line-height:36px}.soft{color:var(--graphite-soft)}.crumbs{padding:24px 0 0;font-size:15px}.crumbs ol{flex-wrap:wrap;gap:0 8px;margin:0;padding:0;list-style:none;display:flex}.crumbs li{overflow-wrap:anywhere;align-items:center;gap:8px;display:inline-flex}.crumbs li+li:before{content:"›" / "";color:var(--graphite-soft)}.crumbs [aria-current=page]{color:var(--graphite-soft)}.crumbs .hub-crumb{align-items:center;gap:6px;display:inline-flex}.crumbs .mini-glyph{grid-template-rows:4px 4px;grid-template-columns:4px 4px;gap:1px;display:grid}.crumbs .mini-glyph i{background:#1f1c3b}.crumbs .mini-glyph i:nth-child(2),.crumbs .mini-glyph i:nth-child(3){background:#4a4578}.stamp{color:var(--graphite);background:var(--sheet);border:1px solid var(--graphite-soft);margin:0;padding:4px 10px;font-size:15px;line-height:22px;display:inline-block}.draft-tag{font-family:var(--body);color:#27313d;background:var(--marker);vertical-align:middle;letter-spacing:0;margin-left:8px;padding:1px 8px;font-size:13px;font-weight:700;line-height:18px;display:inline-block}.todo-note{color:var(--graphite);border-left:4px solid var(--marker);background:var(--sheet);margin:12px 0 0;padding:2px 10px;font-size:15px;display:block}.lines{border-top:1px solid var(--graphite-soft);margin:0;padding:0;list-style:none}.lines li{border-bottom:1px solid var(--graphite-soft)}.nb main .lines a{color:var(--graphite);background-image:linear-gradient(var(--marker),var(--marker));background-repeat:no-repeat;background-size:0 100%;padding:12px 4px;text-decoration:none;transition:background-size .12s ease-out;display:block}.nb main .lines a:hover,.nb main .lines a:focus-visible{background-size:100% 100%}.lines a strong{color:var(--pencil);font-size:18px;display:block}.lines a span.d{color:var(--graphite-soft);font-size:15px;display:block}.lines .group{color:var(--graphite);padding:12px 4px;display:block}.lines .group strong{color:var(--pencil);font-size:18px;display:block}.lines .group span.d{color:var(--graphite-soft);font-size:15px;display:block}@media (prefers-reduced-motion:reduce){.nb main .lines a{transition:none}}.g-hero{gap:24px;padding:24px 0 48px;display:grid}@media (width>=900px){.g-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:48px;padding:32px 0 48px}}.title-ink{width:min(320px,80%);height:12px;margin:8px 0 16px;display:block}.title-ink path{fill:none;stroke:var(--g-accent);stroke-width:3px;stroke-linecap:round}.what{max-width:32em;margin:0 0 16px;font-size:19px;line-height:28px}dl.facts{flex-wrap:wrap;gap:8px 24px;margin:0 0 16px;font-size:15px;display:flex}dl.facts div{min-width:0}dl.facts dt{color:var(--graphite-soft)}dl.facts dd{margin:0;font-weight:700}@media (width<=520px){dl.facts{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}}form.qf{flex-wrap:wrap;gap:8px;max-width:30em;margin-top:32px;display:flex}form.qf label{flex-basis:100%;font-weight:700}form.qf input{min-width:0;font:inherit;color:var(--graphite);background:var(--sheet);border:2px solid var(--graphite);border-radius:0;flex:200px;min-height:48px;padding:10px 12px}form.qf input::placeholder{color:var(--graphite-soft)}form.qf button{font:inherit;color:var(--paper);background:var(--pencil);border:2px solid var(--pencil);cursor:pointer;border-radius:0;min-height:48px;padding:10px 18px;font-weight:700}form.qf button:hover{background:var(--graphite);border-color:var(--graphite)}.qf-hint{color:var(--graphite-soft);margin:8px 0 0;font-size:15px}figure.evidence{margin:8px 6px 0;position:relative}.evidence-body{background:var(--g-ink);color:var(--g-on-ink);border-bottom:4px solid var(--g-accent);gap:12px;padding:16px;display:grid}.frame{background-color:var(--g-ink);border:1px solid #f3e4e240;position:relative;overflow:hidden}.frame img{object-fit:cover;width:100%;height:100%;color:var(--g-on-ink);font-size:14px;display:block}.frame.key{aspect-ratio:460/215}.frame.shot{aspect-ratio:600/338}.strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.tape{background:var(--tape);z-index:2;width:72px;height:22px;position:absolute;top:-10px}.tape.l{left:-10px;transform:rotate(-8deg)}.tape.r{right:-10px;transform:rotate(7deg)}figure.evidence figcaption{color:var(--graphite-soft);margin-top:8px;font-size:15px}.g-body{border-top:2px solid var(--graphite);gap:48px;padding:48px 0;display:grid}@media (width>=900px){.g-body{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:48px}}.g-index{order:2}.g-start{order:1}@media (width>=900px){.g-index{order:1}.g-start{order:2}}.g-index>h2,.g-start>h2{margin-bottom:8px}.g-index .intro{color:var(--graphite-soft);max-width:36em;margin-bottom:16px}.sec .lines>li>a strong,.sec .lines>li>.group strong{font-family:var(--hand);font-size:22px;line-height:28px}html[lang=zh-CN] .sec .lines>li>a strong,html[lang=zh-CN] .sec .lines>li>.group strong{font-family:var(--body);font-size:19px;font-weight:700}.sub{border-bottom:1px solid var(--graphite-soft);margin:0;padding:0 0 12px 24px;list-style:none}.sub li{border-left:2px solid var(--grid);flex-wrap:wrap;align-items:center;gap:0 4px;padding-left:12px;display:flex}.nb main .sub a{padding:6px 0;font-weight:700;display:inline-block}.sec .lines li.has-sub{border-bottom:0}.g-start .sheet{background:var(--sheet);border:1px solid var(--graphite-soft);padding:16px}.g-start ol{counter-reset:s;margin:0;padding:0;list-style:none}.g-start ol li{counter-increment:s;border-bottom:1px solid var(--grid);grid-template-columns:32px minmax(0,1fr);align-items:start;display:grid}.g-start ol li:last-child{border-bottom:0}.g-start ol li:before{content:counter(s);font-family:var(--hand);color:var(--pencil);padding-top:12px;font-size:22px;font-weight:700}.nb main .g-start ol a{color:var(--graphite);padding:12px 4px;text-decoration:none;display:block}.g-start ol a:hover strong{text-decoration:underline}.g-start ol a strong{color:var(--pencil);font-size:18px;display:block}.g-start ol a span.d{color:var(--graphite-soft);font-size:15px;display:block}.g-start .note{color:var(--graphite-soft);margin:12px 0 0;font-size:15px}.g-about{border-top:2px solid var(--graphite);gap:24px;padding:48px 0;display:grid}@media (width>=760px){.g-about{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}}.nb main .g-about h2{margin-bottom:8px;font-size:24px;line-height:32px}.g-about p{font-size:16px}.g-about dl{margin:0;font-size:16px}.g-about dt{color:var(--graphite-soft);font-size:14px}.g-about dd{margin:0 0 8px}.ribbon{background-color:var(--g-ink);border-bottom:4px solid var(--g-accent);height:96px;margin:16px 0 24px;overflow:hidden}.ribbon img{object-fit:cover;object-position:50% 40%;width:100%;height:100%;display:block}@media (width<=600px){.ribbon{height:64px}}.p-head h1{max-width:18em}.p-head .stamp{margin-top:16px}.answer-row{gap:24px;padding:32px 0 48px;display:grid}@media (width>=900px){.answer-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px}}.answer{background:var(--sheet);border:1px solid var(--graphite-soft);border-left:8px solid var(--g-accent);padding:16px 16px 20px 20px}.nb main .answer h2{color:var(--g-accent-text);font-size:24px;line-height:32px}.answer .line{margin:8px 0 12px;font-size:22px;font-weight:700;line-height:32px}.hl{background-image:linear-gradient(var(--marker),var(--marker));-webkit-box-decoration-break:clone;box-decoration-break:clone;background-repeat:no-repeat;background-size:100% 100%;padding:0 4px}@media (prefers-reduced-motion:no-preference){.hl{background-size:0 100%;animation:.6s ease-out .25s forwards swipe}@keyframes swipe{to{background-size:100% 100%}}}.todo-ph{border-bottom:2px dashed var(--graphite-soft);font-style:normal}.nb main .answer .after{color:var(--graphite-soft);margin:0;font-size:15px}figure.sketch{margin:0}.sketch-todo{border:2px dashed var(--graphite-soft);background:var(--sheet);text-align:center;place-items:center;min-height:216px;padding:24px;display:grid}.sketch-todo span{font-family:var(--hand);color:var(--pencil);max-width:16em;font-size:22px;line-height:30px}html[lang=zh-CN] .sketch-todo span{font-size:19px}figure.sketch figcaption{color:var(--graphite-soft);margin-top:4px;font-size:15px}.p-grid{border-top:2px solid var(--graphite);gap:32px;padding-top:32px;padding-bottom:48px;display:grid}@media (width>=1000px){.p-grid{grid-template-columns:minmax(0,1fr) 240px;gap:56px}.toc{grid-area:1/2}.p-main{grid-area:1/1}}.toc{align-self:start}@media (width>=1000px){.toc{position:sticky;top:24px}}.toc .sheet{background:var(--sheet);border:1px solid var(--graphite-soft);padding:12px 16px}.nb main .toc h2{margin-bottom:4px;font-size:20px;line-height:28px}.toc ol{margin:0;padding:0;list-style:none}.nb main .toc li a{color:var(--graphite);border-left:4px solid #0000;padding:6px 0 6px 12px;font-size:16px;text-decoration:none;display:block}.nb main .toc li a:hover{color:var(--pencil);text-decoration:underline}.nb main .toc li a[aria-current=true]{border-left-color:var(--g-accent);color:var(--g-accent-text);font-weight:700}.nb main .toc ol ol a{padding-left:28px;font-size:15px}.p-main section{margin-bottom:48px;scroll-margin-top:24px}.nb main .p-main h2{margin-bottom:12px}.p-main p,.p-main li{max-width:40em}.need{border-top:1px solid var(--graphite-soft);margin:0;padding:0;list-style:none}.need li{border-bottom:1px solid var(--graphite-soft);padding:10px 4px 10px 36px;position:relative}.need li:before{content:"";border:2px solid var(--graphite);width:16px;height:16px;position:absolute;top:13px;left:6px}ol.steps{counter-reset:st;margin:0;padding:0;list-style:none}ol.steps>li{counter-increment:st;grid-template-columns:48px minmax(0,1fr);gap:0 12px;max-width:none;margin-bottom:40px;scroll-margin-top:24px;display:grid}ol.steps>li:before{content:counter(st);font-family:var(--hand);color:var(--pencil);border:2px solid var(--pencil);border-radius:50%;place-items:center;width:40px;height:40px;font-size:26px;font-weight:700;line-height:1;display:grid}.nb main ol.steps h3{margin:6px 0 8px;font-size:22px;line-height:28px}html[lang=zh-CN] .nb main ol.steps h3{font-family:var(--body);font-size:19px}.nb main ol.steps p{margin-bottom:16px}figure.frame-fig{max-width:600px;margin:0}.inferred-tag{border:1px dashed var(--graphite-soft);color:var(--graphite-soft);margin:0 0 10px;padding:1px 8px;font-size:14px;line-height:20px;display:inline-block}.p-body{margin-top:8px}figure.frame-fig .frame{border:1px solid var(--graphite)}.frame-standin{background:var(--marker);color:#27313d;z-index:2;padding:2px 8px;font-size:13px;font-weight:700;line-height:18px;position:absolute;top:8px;left:8px}figure.frame-fig figcaption{color:var(--graphite-soft);margin-top:8px;font-size:15px;line-height:22px}@media (width<=520px){ol.steps>li{grid-template-columns:1fr}ol.steps>li:before{margin-bottom:4px}}dl.fix{border-top:1px solid var(--graphite-soft);margin:0}dl.fix div{border-bottom:1px solid var(--graphite-soft);padding:12px 4px}dl.fix dt{font-weight:700}dl.fix dd{margin:4px 0 0}.pn{gap:12px;margin-bottom:48px;display:grid}@media (width>=640px){.pn{grid-template-columns:1fr 1fr}}.nb main .pn a{border:2px solid var(--graphite);background:var(--sheet);color:var(--graphite);padding:12px 16px;text-decoration:none;display:block}.nb main .pn a:hover{background:var(--marker)}.pn a span{color:var(--graphite-soft);font-size:14px;display:block}.pn a strong{color:var(--pencil);font-size:18px;display:block}.pn a.next{text-align:right;grid-column:2}@media (width<=639px){.pn a.next{text-align:left;grid-column:auto}}ol.src{margin:0;padding-left:24px}ol.src li{margin-bottom:12px}ol.src .ts{font-size:15px}.made{background:var(--sheet);border:1px solid var(--graphite-soft);padding:16px}.nb main .made h2{font-size:24px;line-height:32px}.nb main .made p:last-child{margin-bottom:0}.prose h2{margin:40px 0 12px;scroll-margin-top:24px}.prose h3{margin:24px 0 8px;font-size:22px;line-height:28px}html[lang=zh-CN] .prose h3{font-family:var(--body);font-size:19px}.prose ul,.prose ol{margin:0 0 var(--sq);padding-left:24px}.prose table{border-collapse:collapse;width:100%;margin:0 0 var(--sq);background:var(--sheet);font-size:16px}.prose th,.prose td{border:1px solid var(--graphite-soft);text-align:left;vertical-align:top;padding:8px 10px}.prose th{font-weight:700}.table-scroll{overflow-x:auto}.list-head{padding:8px 0 32px}.list-head .intro{max-width:36em;margin-top:16px}.area{margin-bottom:40px}.nb main .area h2{margin-bottom:8px}.qf-results{margin-top:24px}.qf-count{color:var(--graphite-soft);margin:16px 0 8px;font-size:15px}.qf-meta{color:var(--graphite-soft);font-size:14px;display:block}.qf-empty{margin-top:16px}
