@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/62201545b028e8d7-s.0l4a4erwkg-j6.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/1f28a1525bf4a5c5-s.0oxsisjwf5w8a.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/f5edcc6a132fb1ad-s.p.3ii__yurxaf4q.woff2)format("woff2");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:Familjen Grotesk Fallback;src:local(Arial);ascent-override:108.37%;descent-override:23.79%;line-gap-override:0.0%;size-adjust:94.59%}.familjen_grotesk_a9845434-module__N6gXPW__className{font-family:Familjen Grotesk,Familjen Grotesk Fallback;font-style:normal}.familjen_grotesk_a9845434-module__N6gXPW__variable{--font-grotesk:"Familjen Grotesk", "Familjen Grotesk Fallback"}
@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/3bf0a7fbfaf92f8a-s.185fu60_s7xhz.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/ad2175b88e6bd6af-s.3hpgqf3c5o5ld.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/f9ea4dd7757ffe41-s.0btl7djgeog5e.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/fbe73f374d4c06e2-s.02kz5ehdag2r0.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/de1fefbe5297a568-s.3aamvj35z_s7m.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/da2b464f6ebc6f07-s.1vwa6irdhs_-x.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/72068b9941c12912-s.p.419o0z6lrmsw5.woff2)format("woff2");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:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/60f58a7a803855c6-s.2mgcr0scld764.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/187df20e17b435d1-s.1de5oe27h2kcs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/5e8350fc289b169a-s.2m6nwxvnysiq2.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/f99ec718d2aa2628-s.2s656e8rzol1k.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/252b59f46c3165d8-s.445tgcafqxet_.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/2ce13b16b29213e7-s.0hl3_-74zo9b6.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/c8d3663ba40d1542-s.p.3t6wimnoqat92.woff2)format("woff2");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:Literata Fallback;src:local(Times New Roman);ascent-override:99.62%;descent-override:26.07%;line-gap-override:0.0%;size-adjust:118.15%}.literata_c5ab806e-module__yozLTG__className{font-family:Literata,Literata Fallback}.literata_c5ab806e-module__yozLTG__variable{--font-literata:"Literata", "Literata Fallback"}
:root{--paper:#f3f4f1;--ink:#1c2128;--muted:#5b626c;--rule:#d8dad4;--red:#c8323c;--green:#17876d;--yellow:#e0a600;--blue:#2d5da8;--accent:var(--ink);--sans:var(--font-grotesk), system-ui, sans-serif;--serif:var(--font-literata), Georgia, serif;--measure:42rem;--gutter:2.25rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#171a1f;--ink:#e7e8e4;--muted:#a0a6ae;--rule:#30353d;--red:#e45e66;--green:#3cb893;--yellow:#f0c13a;--blue:#6f99e2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:2rem}body{background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;font-size:1.0625rem;line-height:1.7}.wrap{width:100%;max-width:calc(var(--measure) + var(--gutter) + 2rem);margin-inline:auto;padding-inline:1rem}a{color:inherit;text-decoration-line:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:2px}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:2px}.site-header{font-family:var(--sans);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding-block:1.5rem;display:flex}.brand{align-items:center;gap:.6rem;font-size:1.0625rem;font-weight:600;text-decoration:none;display:inline-flex}.brand:hover{color:inherit}.mark{flex:none;transition:transform .45s cubic-bezier(.3,1.4,.5,1);display:block}.brand:hover .mark{transform:rotate(90deg)}.site-header ul{gap:1.25rem;list-style:none;display:flex}.site-header nav a{color:var(--muted);align-items:center;gap:.45rem;text-decoration:none;display:inline-flex}.site-header nav a:before{content:"";background:var(--accent);width:.55rem;height:.55rem}.site-header nav a:hover{color:var(--ink)}.hero{grid-template-columns:minmax(0,1fr) clamp(11rem,27vw,17rem);align-items:end;gap:2.5rem;padding-block:clamp(3rem,9vw,6rem) clamp(2.5rem,6vw,4rem);display:grid}.hero h1{font-family:var(--sans);letter-spacing:-.035em;max-width:10ch;font-size:clamp(2.75rem,8vw,5rem);font-weight:700;line-height:.95}.hero p{max-width:34ch;color:var(--muted);margin-top:1.5rem;font-size:clamp(1.2rem,2.6vw,1.45rem);line-height:1.45}.art svg{width:100%;height:auto;display:block}@media (max-width:640px){.hero{grid-template-columns:minmax(0,1fr);gap:1.75rem}.hero-art{order:-1;width:9rem}}.section{grid-template-columns:var(--gutter) minmax(0, 1fr);padding-block:0 3rem;display:grid}.cross-strip{shape-rendering:crispedges;grid-area:1/1/auto/-1;margin-bottom:2.25rem;display:block}.cross-strip pattern rect{fill:var(--accent)}.section:before{content:"";background:var(--accent);grid-column:1;width:.8rem;height:.8rem;margin-top:.55rem}.section:has(>.cross-strip):before{grid-row:2}.section>:not(.cross-strip){grid-column:2}.section h2{font-family:var(--sans);letter-spacing:-.01em;margin-bottom:1rem;font-size:1.5rem;font-weight:600;line-height:1.3}.section h2 a{text-decoration:none}.prose>*+*{margin-top:1.1em}.prose{max-width:66ch}.projects{gap:1.75rem;list-style:none;display:grid}.project-head{flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;display:flex}.project-head h3{font-family:var(--sans);font-size:1.2rem;font-weight:600}.status{font-family:var(--sans);color:var(--muted);font-size:.875rem}.project p{max-width:62ch;margin-top:.35rem}.posts{gap:1.5rem;list-style:none;display:grid}.post-date{font-family:var(--sans);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.875rem;display:block}.post-title{font-family:var(--sans);font-size:1.2rem;font-weight:600;line-height:1.35}.posts p{max-width:62ch;margin-top:.25rem}.posts-covers li{grid-template-columns:10rem minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.post-thumb{display:block}@media (max-width:520px){.posts-covers li{grid-template-columns:minmax(0,1fr);gap:.75rem}}.empty{color:var(--muted);max-width:52ch}.more{font-family:var(--sans);margin-top:1.75rem}.links{font-family:var(--sans);flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1rem;font-size:1.125rem;list-style:none;display:flex}.article{padding-block:clamp(2.5rem,8vw,5rem) 3rem}.article-head{margin-bottom:2.5rem}.page-title{margin-bottom:2rem}.page-title,.article-head h1{font-family:var(--sans);letter-spacing:-.025em;max-width:20ch;margin-top:.5rem;font-size:clamp(2rem,6vw,3.25rem);font-weight:700;line-height:1.05}.article-cover{margin-bottom:2.5rem}.article .prose{font-size:1.125rem;line-height:1.75}.prose h2,.prose h3{font-family:var(--sans);margin-top:2em;font-weight:600;line-height:1.3}.prose h2{font-size:1.45rem}.prose h3{font-size:1.2rem}.prose ul,.prose ol{padding-left:1.25em}.prose li+li{margin-top:.35em}.prose blockquote{border-left:3px solid var(--yellow);color:var(--muted);padding-left:1em;font-style:italic}.prose code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.88em}.prose :not(pre)>code{background:color-mix(in srgb, var(--ink) 7%, transparent);border-radius:3px;padding:.1em .3em}.prose pre{background:color-mix(in srgb, var(--ink) 6%, transparent);border-radius:4px;padding:1rem 1.15rem;line-height:1.55;overflow-x:auto}.prose img{max-width:100%;height:auto}.site-footer{border-top:1px solid var(--rule);font-family:var(--sans);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-block:2.5rem 3rem;font-size:.875rem;display:flex}main.wrap>.site-footer{border:0}@media (max-width:480px){:root{--gutter:1.5rem}}@media (prefers-reduced-motion:reduce){.mark{transition:none}}:root{--c-red:var(--red);--c-blue:var(--blue);--c-yellow:var(--yellow);--c-green:var(--green);--c-ink:var(--muted);--yellow-text:#976b00}@media (prefers-color-scheme:dark){:root{--c-red:#e0525b;--c-blue:#5b86d0;--c-yellow:#b98c12;--c-green:#2fa682;--yellow-text:var(--yellow)}}.c-red{color:var(--red)}.c-blue{color:var(--blue)}.c-yellow{color:var(--yellow-text)}.c-green{color:var(--green)}.prose span.c-red,.prose span.c-blue,.prose span.c-yellow,.prose span.c-green{font-weight:600}.prose .katex{font-size:1.08em}.prose .katex-display{margin:1.6em 0;padding-block:.25em;overflow:auto hidden}.ponder{border-left:3px solid var(--blue);padding:.25rem 0 .25rem 1.1rem}.ponder-label{font-family:var(--sans);color:var(--blue);font-size:.9rem;font-weight:600}.ponder>*+*{margin-top:.5em}.derivation{border:1px solid var(--rule);border-radius:4px;padding:.75rem 1rem}.derivation summary{cursor:pointer;font-family:var(--sans);font-weight:600}.derivation[open] summary{margin-bottom:.5rem}.chart{font-family:var(--sans);margin-block:2.25em}.chart-title{margin-bottom:.4rem;font-size:1rem;font-weight:600}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:.25rem 1.1rem;margin:0 0 .5rem;padding:0;font-size:.875rem;list-style:none;display:flex}.prose .chart-legend li+li{margin-top:0}.chart-legend li{align-items:center;gap:.4rem;display:inline-flex}.chart-frame{width:100%;position:relative}.chart-frame svg{touch-action:pan-y;max-width:100%;display:block;overflow:visible}.chart .grid{stroke:var(--rule);stroke-width:1px}.chart .axis{stroke:var(--muted);stroke-width:1px}.chart .tick{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.chart .axis-label{fill:var(--muted);font-size:13px}.chart .ref{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 4}.chart .ref-label,.chart .marker-label{fill:var(--muted);font-size:12px}.chart .end-label{fill:var(--ink);font-size:12.5px}.chart .crosshair{stroke:var(--muted);stroke-width:1px}.chart [class^=l-]{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .l-red{stroke:var(--c-red)}.chart .l-blue{stroke:var(--c-blue)}.chart .l-yellow{stroke:var(--c-yellow)}.chart .l-green{stroke:var(--c-green)}.chart .l-ink{stroke:var(--c-ink)}.chart [class^=m-]{stroke:var(--paper);stroke-width:2px}.chart .m-red{fill:var(--c-red)}.chart .m-blue{fill:var(--c-blue)}.chart .m-yellow{fill:var(--c-yellow)}.chart .m-green{fill:var(--c-green)}.chart .m-ink{fill:var(--c-ink)}.chart .band-red{fill:color-mix(in srgb, var(--c-red) 18%, transparent)}.chart .band-blue{fill:color-mix(in srgb, var(--c-blue) 18%, transparent)}.chart .band-yellow{fill:color-mix(in srgb, var(--c-yellow) 22%, transparent)}.chart .band-green{fill:color-mix(in srgb, var(--c-green) 18%, transparent)}.chart .band-ink{fill:color-mix(in srgb, var(--c-ink) 15%, transparent)}.chart-tip{background:var(--paper);border:1px solid var(--rule);min-width:150px;box-shadow:0 2px 10px color-mix(in srgb, var(--ink) 12%, transparent);pointer-events:none;border-radius:4px;padding:.45rem .6rem;font-size:.8rem;line-height:1.45;position:absolute}.chart-tip-x{color:var(--muted)}.chart-tip-row{align-items:center;gap:.4rem;display:flex}.chart-tip-row b{font-variant-numeric:tabular-nums;margin-left:auto}.sw{border-radius:2px;flex:none;width:.6rem;height:.6rem}.sw-red{background:var(--c-red)}.sw-blue{background:var(--c-blue)}.sw-yellow{background:var(--c-yellow)}.sw-green{background:var(--c-green)}.sw-ink{background:var(--c-ink)}.chart-caption{color:var(--muted);font-size:.9rem;font-family:var(--serif);margin-top:.5rem}.chart-data{color:var(--muted);margin-top:.4rem;font-size:.85rem}.chart-data summary{cursor:pointer}.chart-table-wrap{max-height:16rem;margin-top:.4rem;overflow:auto}.chart-data table{border-collapse:collapse;font-variant-numeric:tabular-nums}.chart-data th,.chart-data td{text-align:left;border-bottom:1px solid var(--rule);padding:.15rem 1rem .15rem 0}.diagram{font-family:var(--sans);margin-block:2.25em}.diagram svg{width:100%;height:auto;display:block}.diagram text{fill:var(--ink);font-size:13px}.diagram .muted{fill:var(--muted)}.explorer{font-family:var(--sans);margin-block:2.25em}.explorer-controls{flex-wrap:wrap;gap:.75rem 2rem;margin:.5rem 0 1rem;display:flex}.explorer-controls label{flex:1;gap:.2rem;min-width:10rem;display:grid}.explorer-controls span{color:var(--muted);font-size:.9rem}.explorer-controls b{color:var(--ink)}.explorer-controls input{width:100%;accent-color:var(--blue)}.strip{background:var(--paper);gap:2px;height:3.25rem;display:flex}.strip-cell{color:#fff;white-space:nowrap;border-radius:3px;justify-content:center;align-items:center;min-width:0;font-size:.85rem;font-weight:600;display:flex;overflow:hidden}.strip-skill{background:var(--blue)}.strip-luck{background:var(--red)}.strip-legend{font-family:var(--serif);color:var(--muted);margin-top:.6rem;font-size:.95rem}.explorer-readout{flex-wrap:wrap;gap:.5rem 2.25rem;margin:1.1rem 0 1.25rem;display:flex}.explorer-readout dt{color:var(--muted);font-size:.85rem}.explorer-readout dd{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:600}.luckline{margin-top:.5rem}.luckline-track{background:var(--rule);border-radius:999px;height:.75rem;position:relative}.luckline-skill{background:var(--blue);border-radius:999px 0 0 999px;position:absolute;inset:0 auto 0 0}.luckline-luck{background:repeating-linear-gradient(135deg, var(--red) 0 4px, transparent 4px 8px);border-radius:0 999px 999px 0;position:absolute;top:0;bottom:0;right:0}.luckline-dot{background:var(--ink);border:3px solid var(--paper);border-radius:50%;width:1.1rem;height:1.1rem;margin:-.55rem 0 0 -.55rem;position:absolute;top:50%}.luckline-ends{color:var(--muted);justify-content:space-between;gap:.5rem;margin-top:.45rem;font-size:.8rem;display:flex}.explorer-toggle{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.explorer-toggle button{font:inherit;border:1px solid var(--rule);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:.35rem .75rem;font-size:.85rem}.explorer-toggle button.is-on{border-color:var(--blue);color:var(--ink);box-shadow:inset 0 0 0 1px var(--blue)}@media (prefers-color-scheme:dark){.strip-cell{color:var(--paper)}}.untested{border:1px dashed var(--muted);border-radius:4px;padding:.85rem 1.1rem}.untested-label{font-family:var(--sans);color:var(--muted);font-size:.9rem;font-weight:600}.untested>*+*{margin-top:.5em}.chart .sweep{transform-box:fill-box;transform-origin:0;transition:transform 1.1s cubic-bezier(.45,0,.25,1)}.js .chart:not(.is-drawn) .sweep{transform:scaleX(0)}.chart .late{transition:opacity .45s}.js .chart:not(.is-drawn) .late{opacity:0}@media (prefers-reduced-motion:reduce){.js .chart:not(.is-drawn) .sweep{transform:none}.js .chart:not(.is-drawn) .late{opacity:1}.chart .sweep,.chart .late{transition:none}}.post-layout{position:relative}.prose h2,.prose h3{scroll-margin-top:1.5rem}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.toc-side,.toc-inline{font-family:var(--sans);font-size:.875rem;line-height:1.4}.toc-side ol,.toc-inline ol{margin:0;padding:0;list-style:none}.toc-side a,.toc-inline a{border-left:2px solid var(--rule);color:var(--muted);padding:.3rem 0 .3rem .75rem;text-decoration:none;display:block}.toc-side a:hover,.toc-inline a:hover{color:var(--ink)}.toc-side a[aria-current],.toc-inline a[aria-current]{color:var(--ink);border-left-color:var(--yellow);font-weight:600}.toc-sub a{padding-left:1.5rem;font-size:.8125rem}.toc-title{margin-bottom:.6rem;font-weight:600}.toc-side{display:none}.toc-inline{border:1px solid var(--rule);border-radius:4px;margin-bottom:2.25rem;padding:.75rem 1rem}.toc-inline summary{cursor:pointer;font-weight:600}.toc-inline[open] summary{margin-bottom:.6rem}@media (min-width:1200px){.toc-inline{display:none}.toc-side{width:12rem;display:block;position:absolute;top:0;bottom:0;right:calc(100% + 2.25rem)}.toc-inner{max-height:calc(100vh - 4rem);position:sticky;top:2rem;overflow-y:auto}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drops-buttons{flex-wrap:wrap;gap:.5rem;margin:.5rem 0 1rem;display:flex}.drops-buttons button{font:inherit;border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;border-radius:999px;padding:.4rem .9rem;font-size:.875rem}.drops-buttons button.ghost{color:var(--muted);border-color:var(--rule);background:0 0}.drops-buttons button:disabled,.drops-buttons button[aria-disabled=true]{opacity:.5;cursor:default}.drops-strip{height:4rem;position:relative}.drops-layer{pointer-events:none;position:absolute;inset:0}.drop{background:var(--paper);width:5px;height:5px;box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 55%, transparent);border-radius:50%;margin:-2.5px 0 0 -2.5px;animation:.38s cubic-bezier(.3,0,.6,1) both drop-fall;position:absolute}@keyframes drop-fall{0%{opacity:0;transform:translateY(-2.6rem)}60%{opacity:1}to{opacity:1;transform:none}}.funnel{margin-top:.25rem;padding-left:2.6rem;position:relative}.funnel svg{border-bottom:1px solid var(--muted);width:100%;height:150px;display:block}.funnel-labels{height:150px;color:var(--muted);font-variant-numeric:tabular-nums;flex-direction:column;justify-content:space-between;font-size:.75rem;display:flex;position:absolute;top:0;left:0}.funnel-band{fill:color-mix(in srgb, var(--c-blue) 14%, transparent)}.funnel-p{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:5 4}.funnel-line{fill:none;stroke:var(--c-blue);stroke-width:2px;stroke-linejoin:round}.funnel-axis{color:var(--muted);justify-content:space-between;gap:.5rem;margin-top:.3rem;font-size:.75rem;display:flex}.ladder{font-family:var(--sans);margin-block:2.25em}.ladder-row+.ladder-row{margin-top:1.4rem}.ladder-name{color:var(--muted);font-size:.875rem}.ladder-track{height:6.6rem;margin:0 1.25rem;position:relative}.ladder-axis{border-top:1.5px solid var(--muted);position:absolute;top:3.1rem;left:0;right:0}.ladder-arcs{width:100%;height:1.7rem;position:absolute;top:3.25rem;left:0;overflow:visible}.ladder-arc{fill:none;stroke:var(--muted);stroke-width:1.25px;transition:opacity .45s}.ladder-mark{white-space:nowrap;flex-direction:column;justify-content:flex-end;align-items:center;height:3.1rem;font-size:.75rem;line-height:1.25;transition:opacity .35s,transform .35s;display:flex;position:absolute;top:0;transform:translate(-50%)}.ladder-v{font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:600}.ladder-dot{background:var(--blue);border:2px solid var(--paper);border-radius:50%;width:.7rem;height:.7rem;margin-top:.2rem;margin-bottom:-.35rem}.ladder-step{color:var(--muted);white-space:nowrap;font-size:.75rem;transition:opacity .35s;position:absolute;top:5.1rem;transform:translate(-50%)}.ladder-end{color:var(--muted);font-size:.7rem;position:absolute;top:3.35rem}.ladder-end-l{left:0;transform:translate(-50%)}.ladder-end-r{right:0;transform:translate(50%)}.ladder-note{font-family:var(--serif);color:var(--muted);font-size:.95rem}.js .ladder:not(.is-drawn) .ladder-mark{opacity:0;transform:translate(-50%,-.6rem)}.js .ladder:not(.is-drawn) .ladder-arc,.js .ladder:not(.is-drawn) .ladder-step{opacity:0}.luckgrid{font-family:var(--sans);margin-block:2.25em}.luckgrid table{border-collapse:separate;border-spacing:3px;font-variant-numeric:tabular-nums;width:100%}.luckgrid th{color:var(--muted);text-align:center;padding:.2rem;font-size:.8rem;font-weight:500}.luckgrid th[scope=row]{text-align:left;white-space:nowrap;padding-right:.5rem}.luckgrid td{text-align:center;background:color-mix(in oklab, var(--red) var(--l), var(--paper));color:var(--ink);border-radius:3px;padding:.85rem .25rem;font-weight:600}.luckgrid td[data-strong]{color:#fff}@media (prefers-color-scheme:dark){.luckgrid td[data-strong]{color:var(--paper)}}.two-skilled .strip-cell.grow{transition:flex-grow 1.2s cubic-bezier(.45,0,.25,1)}.js .two-skilled:not(.is-drawn) .strip-cell.grow{flex-grow:1!important}@media (prefers-reduced-motion:reduce){.drop{animation:none}.js .ladder:not(.is-drawn) .ladder-mark{opacity:1;transform:translate(-50%)}.js .ladder:not(.is-drawn) .ladder-arc,.js .ladder:not(.is-drawn) .ladder-step{opacity:1}.ladder-mark,.ladder-arc,.ladder-step,.two-skilled .strip-cell.grow{transition:none}}.shelf{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.75rem 1.5rem;margin:2rem 0 1rem;padding:0;list-style:none;display:grid}.prose .shelf li+li{margin-top:0}@media (max-width:600px){.shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.25rem 1.25rem}}.book{flex-direction:column;display:flex}.book-scene{perspective:1100px;width:8.25rem;height:12rem;margin:0 auto 1.4rem;position:relative}.book-scene:after{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--ink) 28%, transparent), transparent);z-index:-1;height:18px;position:absolute;bottom:-14px;left:4%;right:-6%}.book-3d{width:100%;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1);position:relative;transform:rotateY(26deg)}.book:hover .book-3d,.book:focus-within .book-3d{transform:rotateY(4deg)translateY(-6px)}.book-front,.book-back,.book-spine{backface-visibility:hidden;height:100%;position:absolute;top:0}.book-front{background:var(--cover);color:var(--cover-ink);transform:translateZ(calc(var(--t) / 2));font-family:var(--sans);border-radius:2px 4px 4px 2px;flex-direction:column;padding:.7rem .75rem .8rem .95rem;display:flex;inset:0;overflow:hidden;box-shadow:inset 5px 0 6px -4px #00000059,inset -1px 0 #ffffff14}.book-front .cross-strip{--accent:var(--cover-ink);opacity:.85;margin:0 0 .85rem}.book-cover-title{letter-spacing:-.01em;font-size:1rem;font-weight:700;line-height:1.1}.book-cover-author{opacity:.9;margin-top:auto;font-size:.7rem;line-height:1.25}.book-back{background:var(--cover-dark);transform:translateZ(calc(var(--t) / -2)) rotateY(180deg);border-radius:4px 2px 2px 4px;inset:0}.book-spine{width:var(--t);background:var(--cover-dark);color:var(--cover-ink);transform-origin:0;transform:translateZ(calc(var(--t) / -2)) rotateY(-90deg);justify-content:center;align-items:center;display:flex;left:0;overflow:hidden}.book-spine span{writing-mode:vertical-rl;font-family:var(--sans);white-space:nowrap;text-overflow:ellipsis;max-height:88%;font-size:.6rem;font-weight:600;overflow:hidden}.cover-blue{--cover:var(--blue);--cover-dark:color-mix(in oklab, var(--blue) 78%, black);--cover-ink:#fff}.cover-red{--cover:var(--red);--cover-dark:color-mix(in oklab, var(--red) 78%, black);--cover-ink:#fff}.cover-green{--cover:var(--green);--cover-dark:color-mix(in oklab, var(--green) 78%, black);--cover-ink:#fff}.cover-yellow{--cover:var(--yellow);--cover-dark:color-mix(in oklab, var(--yellow) 80%, black);--cover-ink:#1c2128}.cover-ink{--cover:#262c35;--cover-dark:#181c22;--cover-ink:#f3f4f1}.cover-paper{--cover:#e9eae5;--cover-dark:#cfd1ca;--cover-ink:#1c2128}@media (prefers-color-scheme:dark){.cover-blue,.cover-red,.cover-green{--cover-ink:var(--paper)}.cover-ink{--cover:#3a414c;--cover-dark:#2b3139}}.book-info{font-family:var(--sans)}.book-title{font-size:.95rem;font-weight:600;line-height:1.3;display:block}span.book-title{color:var(--ink)}.book-meta{color:var(--muted);margin-top:.25rem;font-size:.8rem;line-height:1.4}.book-why{font-family:var(--serif);margin-top:.4rem;font-size:.9rem;line-height:1.5}@media (prefers-reduced-motion:reduce){.book-3d{transition:none}}:root{--spring:cubic-bezier(.34, 1.56, .64, 1)}.drops-buttons button,.explorer-toggle button{transition:transform .26s var(--spring), box-shadow .2s ease, background-color .2s ease, border-color .2s ease, color .2s ease}@media (hover:hover){.drops-buttons button:not(:disabled):hover{box-shadow:0 4px 12px color-mix(in srgb, var(--blue) 30%, transparent);transform:translateY(-2px)}.drops-buttons button.ghost:not(:disabled):hover{box-shadow:0 3px 10px color-mix(in srgb, var(--ink) 12%, transparent);color:var(--ink);border-color:var(--muted)}.explorer-toggle button:hover{border-color:var(--muted);color:var(--ink);transform:translateY(-1px)}}.drops-buttons button:not(:disabled):active,.explorer-toggle button:active{box-shadow:none;transition-duration:90ms;transform:translateY(1px)scale(.95)}.explorer-toggle button.is-on{background:color-mix(in srgb, var(--blue) 10%, transparent);animation:pill-pop .36s var(--spring)}@keyframes pill-pop{0%{transform:scale(.93)}to{transform:scale(1)}}.explorer-controls input[type=range]{appearance:none;cursor:pointer;background:0 0;height:1.5rem}.explorer-controls input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--blue) var(--fill,0%), var(--rule) var(--fill,0%));border-radius:3px;height:6px}.explorer-controls input[type=range]::-moz-range-track{background:linear-gradient(to right, var(--blue) var(--fill,0%), var(--rule) var(--fill,0%));border-radius:3px;height:6px}.explorer-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--blue);border:3px solid var(--paper);width:18px;height:18px;box-shadow:0 0 0 1px var(--blue), 0 1px 4px color-mix(in srgb, var(--ink) 25%, transparent);transition:transform .22s var(--spring);border-radius:50%;margin-top:-6px}.explorer-controls input[type=range]::-moz-range-thumb{background:var(--blue);border:3px solid var(--paper);width:12px;height:12px;box-shadow:0 0 0 1px var(--blue), 0 1px 4px color-mix(in srgb, var(--ink) 25%, transparent);transition:transform .22s var(--spring);border-radius:50%}.explorer-controls input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.15)}.explorer-controls input[type=range]:active::-webkit-slider-thumb{transform:scale(1.35)}.explorer-controls input[type=range]:hover::-moz-range-thumb{transform:scale(1.15)}.explorer-controls input[type=range]:active::-moz-range-thumb{transform:scale(1.35)}.explorer-controls input[type=range]:focus-visible{outline-offset:4px}.chart-data summary,.derivation summary,.toc-inline summary{list-style:none}.chart-data summary::-webkit-details-marker{display:none}.derivation summary::-webkit-details-marker{display:none}.toc-inline summary::-webkit-details-marker{display:none}.chart-data summary:before,.derivation summary:before,.toc-inline summary:before{content:"";width:.4em;height:.4em;transition:transform .24s var(--spring);border-bottom:1.5px solid;border-right:1.5px solid;margin:0 .6em .12em .1em;display:inline-block;transform:rotate(-45deg)}.chart-data[open] summary:before,.derivation[open] summary:before,.toc-inline[open] summary:before{transform:rotate(45deg)}@media (prefers-reduced-motion:reduce){.drops-buttons button,.explorer-toggle button,.chart-data summary:before,.derivation summary:before,.toc-inline summary:before{transition:none}.explorer-controls input[type=range]::-webkit-slider-thumb{transition:none}.explorer-toggle button.is-on{animation:none}.drops-buttons button:not(:disabled):hover,.drops-buttons button:not(:disabled):active,.explorer-toggle button:hover,.explorer-toggle button:active{transform:none}}.prose .code{border:1px solid var(--rule);border-radius:6px;margin-block:1.75em;overflow:hidden}.code-bar{border-bottom:1px solid var(--rule);background:color-mix(in srgb, var(--ink) 4%, transparent);font-family:var(--sans);color:var(--muted);justify-content:space-between;align-items:center;padding:.35rem .5rem .35rem .9rem;font-size:.75rem;display:flex}.code-bar button{font:inherit;border:1px solid var(--rule);background:var(--paper);color:var(--muted);cursor:pointer;transition:transform .26s var(--spring), color .2s ease, border-color .2s ease;border-radius:999px;padding:.2rem .65rem}@media (hover:hover){.code-bar button:hover{color:var(--ink);border-color:var(--muted);transform:translateY(-1px)}}.code-bar button:active{transition-duration:90ms;transform:scale(.94)}.code-bar button.is-copied{color:var(--green);border-color:var(--green);animation:pill-pop .36s var(--spring)}.prose .code pre{background:color-mix(in srgb, var(--ink) 2.5%, transparent);border-radius:0;margin:0}.prose .code pre code{font-size:.86em;line-height:1.6}.hljs-keyword,.hljs-literal{color:var(--blue);font-weight:600}.hljs-string{color:var(--green)}.hljs-number{color:var(--red)}.hljs-built_in{color:var(--yellow-text)}.hljs-comment{color:var(--muted);font-style:italic}.hljs-title.function_{color:var(--ink);font-weight:600}.hljs-params{color:var(--ink)}@media (prefers-reduced-motion:reduce){.code-bar button{transition:none}.code-bar button.is-copied{animation:none}}.mm-fig{font-family:var(--sans);margin-block:2.25em}.mm-tilerow{grid-template-columns:repeat(24,minmax(0,1fr));gap:3px;max-width:30rem;display:grid}.mm-tile{aspect-ratio:1;background:color-mix(in oklab, var(--c-ink) 55%, var(--paper));border-radius:2px}.mm-tile.is-product{background:var(--c-blue)}.mm-table-wrap{overflow-x:auto}.mm-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.875rem;line-height:1.4}.mm-table th,.mm-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);padding:.55rem .9rem .55rem 0}.mm-table thead th{color:var(--muted);font-size:.8rem;font-weight:500}.mm-table tbody th{font-weight:500}.mm-table td:last-child,.mm-table th:last-child{padding-right:0}.mm-bar{width:var(--w);background:var(--c-blue);border-radius:2px;min-width:3px;height:4px;margin-top:.35rem;display:block}.mm-win{color:var(--green);font-weight:600}.mm-loss{color:var(--red);font-weight:600}.mm-sep{color:var(--muted);font-weight:400}.mm-na{color:var(--muted);font-style:italic}.mm-ledger{margin-top:1.1rem}.mm-ledger-name{font-size:.875rem;font-weight:600}.mm-ledger-row{grid-template-columns:3.4rem minmax(0,1fr) 3.6rem;align-items:center;gap:.6rem;margin-top:.35rem;font-size:.85rem;display:grid}.mm-ledger-label{color:var(--muted)}.mm-ledger-value{text-align:right;font-variant-numeric:tabular-nums}.mm-track{gap:2px;height:.9rem;display:flex}.mm-seg{width:calc(var(--w) - 2px);border-radius:2px;flex:none;height:100%;display:block}.mm-green{background:var(--c-green)}.mm-yellow{background:var(--c-yellow)}.mm-ink{background:var(--c-ink)}.mm-red{background:var(--c-red)}.mm-blue{background:var(--c-blue)}.mm-ledger-net{color:var(--muted);margin-top:.3rem;font-size:.82rem}.mm-flow{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(2.2rem,auto);gap:.4rem 1.5rem;max-width:32rem;display:grid}.mm-flow-name{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-self:end;font-size:.75rem}.mm-rail{background:var(--rule);justify-self:center;width:1.5px}.mm-box{text-align:center;border:1px solid var(--rule);background:var(--paper);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;padding:.3rem .6rem;font-size:.8rem;line-height:1.3;display:flex;position:relative}.mm-box>span{color:var(--muted);font-size:.72rem}.mm-mult{border-color:var(--c-blue);background:color-mix(in oklab, var(--c-blue) 14%, var(--paper))}.mm-extra{border-color:var(--c-red);background:color-mix(in oklab, var(--c-red) 10%, var(--paper))}.mm-fused{border:1.5px solid var(--c-green);background:color-mix(in oklab, var(--c-green) 14%, var(--paper));font-weight:600}.mm-fused>span{font-weight:400}.mm-store{border:1.5px dashed var(--c-red);color:var(--muted);font-style:italic}.rs{--rs-cell:2.5rem}@media (max-width:600px){.rs{--rs-cell:2.1rem}}.rs-board{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin:.75rem 0 .25rem;display:flex}.rs-pair,.rs-answer{align-items:center;gap:.75rem;display:flex}.rs-matrix{flex-direction:column;align-items:center;gap:.4rem;display:flex}.rs-grid{grid-auto-rows:var(--rs-cell);gap:5px;display:grid}.rs-cell{border:1px solid var(--rule);background:var(--paper);font-variant-numeric:tabular-nums;border-radius:4px;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;transition:transform .22s cubic-bezier(.16,1,.3,1),background-color .2s,border-color .2s,box-shadow .2s;display:flex;position:relative}.rs-cell.is-empty{border-style:dashed}.rs-cell.is-negative .rs-val{color:var(--red)}.rs-cell.is-in{border-color:var(--c-blue);background:color-mix(in oklab, var(--c-blue) 16%, var(--paper));box-shadow:0 3px 8px color-mix(in srgb, var(--c-blue) 24%, transparent);transform:translateY(-2px)}.rs-cell.is-hit{border-color:var(--c-blue);animation:.7s cubic-bezier(.16,1,.3,1) rs-hit}.rs-cell.is-hit .rs-val{animation:.38s cubic-bezier(.16,1,.3,1) rs-tick;display:inline-block}.rs-cell[data-sign]:after{content:attr(data-sign);background:var(--ink);width:1.05rem;height:1.05rem;color:var(--paper);border-radius:999px;place-items:center;font-size:.72rem;line-height:1;display:grid;position:absolute;top:-.45rem;right:-.45rem}.rs-answer.is-done .rs-cell{border-color:var(--c-green);background:color-mix(in oklab, var(--c-green) 12%, var(--paper))}@keyframes rs-hit{0%{background:color-mix(in oklab, var(--c-blue) 40%, var(--paper))}to{background:var(--paper)}}@keyframes rs-tick{0%{transform:scale(1.35)}to{transform:none}}.rs-label{font-size:.85rem;font-weight:600}.rs-op{color:var(--muted);font-size:1.4rem}.rs-story{min-height:4.8em;font-family:var(--serif);margin:.9rem 0 .7rem;font-size:.98rem;line-height:1.55}@media (max-width:600px){.rs-story{min-height:9.4em}}.rs-story sub{font-size:.68em}.rs-tally{max-width:34rem;margin-bottom:.9rem}.mm-tile.rs-slot{border:1.5px dashed var(--rule);background:0 0}.mm-tile.is-new{animation:.42s cubic-bezier(.16,1,.3,1) rs-drop}@keyframes rs-drop{0%{opacity:0;transform:translateY(-.7rem)scale(.4)}to{opacity:1;transform:none}}.rs-of{color:var(--muted);font-size:.9rem;font-weight:500}.il-width{min-height:1.9rem;color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem .8rem;font-size:.9rem;display:flex}.il-width b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.05rem}.il-badge{border:1px solid var(--c-blue);background:color-mix(in oklab, var(--c-blue) 12%, var(--paper));color:var(--ink);visibility:hidden;border-radius:999px;padding:.2rem .65rem;font-size:.78rem}.il-badge.is-on{visibility:visible;animation:.36s cubic-bezier(.16,1,.3,1) pill-pop}.il-table{grid-template-columns:auto 2.25rem minmax(0,1fr);align-items:start;margin-top:.6rem;display:grid}.prose .il-tokens{padding:0;list-style:none}.prose .il-tokens li+li{margin-top:0}.il-tokens li{height:1.75rem;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;padding-right:.35rem;font-size:.8rem;display:flex}.il-arcs{width:100%;display:block;overflow:visible}.il-arcs path{fill:none;stroke:var(--c-yellow);stroke-width:1.4px;stroke-dasharray:1;stroke-dashoffset:1px;opacity:0;transition:stroke-dashoffset .7s cubic-bezier(.16,1,.3,1),opacity .2s}.il-arcs.is-on path{stroke-dashoffset:0;opacity:1}.il-rows{grid-auto-rows:1.75rem;display:grid}.il-track{align-items:center;display:flex}.il-bar{gap:2px;width:100%;height:1.05rem;transition:clip-path .7s cubic-bezier(.16,1,.3,1);display:flex}.il-half{background:repeating-linear-gradient(90deg, color-mix(in oklab, var(--ink) 55%, var(--paper)) 0 3px, transparent 3px 5px);border-radius:2px;flex:1}.il-bar.is-split .il-half:first-child,.il-gate{background:repeating-linear-gradient(90deg, var(--c-blue) 0 3px, transparent 3px 5px)}.il-bar.is-split .il-half:last-child,.il-up{background:repeating-linear-gradient(90deg, color-mix(in oklab, var(--c-blue) 45%, var(--paper)) 0 3px, transparent 3px 5px)}.il-key{color:var(--muted);visibility:hidden;align-items:center;gap:.4rem;margin-top:.4rem;font-size:.8rem;display:flex}.il-key.is-on{visibility:visible}.il-swatch{border-radius:2px;width:1.4rem;height:.7rem;display:inline-block}.il-key .il-up{margin-left:.6rem}.il-layers{visibility:hidden;opacity:0;align-items:center;gap:.75rem;min-height:2rem;margin-top:.8rem;transition:opacity .25s,visibility 0s linear .25s;display:flex}.il-layers.is-on{visibility:visible;opacity:1;transition:opacity .25s}.il-ticks{flex:1;grid-template-columns:repeat(64,minmax(0,1fr));gap:2px;height:.9rem;display:grid}.il-ticks span{background:var(--rule);border-radius:1px}.il-layers.is-on .il-ticks span{animation:.22s forwards il-fill}@keyframes il-fill{to{background:var(--c-blue)}}.il-reply{border:1px solid var(--ink);opacity:0;border-radius:4px;padding:.15rem .6rem;font-size:.85rem;font-weight:600}.il-layers.is-on .il-reply{animation:.38s cubic-bezier(.16,1,.3,1) 1.5s both il-reply}@keyframes il-reply{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:none}}.il-texts{margin:.8rem 0 .7rem;display:grid}.il-text{visibility:hidden;font-family:var(--serif);grid-area:1/1;font-size:.98rem;line-height:1.55}.il-text.is-on{visibility:visible}.mm-rail{border-radius:1px;width:2px;position:relative;overflow:hidden}.mm-rail-fill{background:var(--c-blue);transform-origin:top;position:absolute;inset:0;transform:scaleY(0)}.mm-box{transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s,opacity .2s}.mm-flow.is-running .mm-box:not(.is-active):not(.is-done){opacity:.5}.mm-box.is-active{z-index:1;box-shadow:0 4px 12px color-mix(in srgb, var(--ink) 18%, transparent);transform:scale(1.04)}.mm-store.is-active{animation:.52s ease-in-out infinite alternate mm-trip}@keyframes mm-trip{to{background:color-mix(in oklab, var(--c-red) 16%, var(--paper))}}.mm-clock{text-align:center;color:var(--muted);align-self:start;font-size:.8rem}.mm-clock b{color:var(--ink);font-variant-numeric:tabular-nums}.ce-bars>p{color:var(--muted);margin:.65rem 0 .3rem;font-size:.85rem}.ce-track{background:color-mix(in oklab, var(--ink) 5%, var(--paper));border-radius:3px;height:1.6rem;position:relative;overflow:hidden}.ce-seg{transform-origin:0;transition:transform .32s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.ce-mark{border-left:2px dashed var(--ink);transition:left .32s cubic-bezier(.16,1,.3,1);position:absolute;top:0;bottom:0}.ce-bars .chart-legend{margin-top:.6rem}.ce-good{color:var(--green)}.ce-bad{color:var(--red)}.prose .pr-lanes{gap:.9rem;margin:.5rem 0 1rem;padding:0;list-style:none;display:grid}.prose .pr-lanes li+li{margin-top:0}.pr-lane{grid-template-columns:11rem minmax(0,1fr) 4.6rem;align-items:center;gap:.75rem;display:grid}.pr-name{font-size:.875rem;font-weight:500;line-height:1.3}.pr-name span{color:var(--muted);font-size:.75rem;font-weight:400;display:block}.pr-track{background:var(--rule);border-radius:999px;height:.9rem;position:relative;overflow:hidden}.pr-fill{transform-origin:0;border-radius:999px;position:absolute;inset:0;transform:scaleX(0)}.pr-ink{background:var(--ink)}.pr-muted{background:var(--c-ink)}.pr-blue{background:var(--c-blue)}.pr-time{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted);font-size:.95rem;font-weight:600}.pr-lane.is-done .pr-time{color:var(--ink)}.drops-buttons .pr-speed{color:var(--muted);align-self:center;font-size:.8rem}@media (max-width:600px){.pr-lane{grid-template-columns:minmax(0,1fr) auto;row-gap:.35rem}.pr-track{grid-area:2/1/auto/-1}}@media (prefers-reduced-motion:reduce){.rs-cell,.mm-box,.ce-seg,.ce-mark,.il-bar{transition:none}.rs-cell.is-in,.mm-box.is-active{transform:none}.rs-cell.is-hit,.rs-cell.is-hit .rs-val,.mm-tile.is-new,.il-badge.is-on,.mm-store.is-active{animation:none}.il-arcs path{transition:opacity .2s}.il-layers.is-on .il-ticks span{background:var(--c-blue);animation:none}.il-layers.is-on .il-reply{opacity:1;animation:none}}.sv-tick{fill:var(--muted);font-size:9px;font-family:var(--sans);font-variant-numeric:tabular-nums}.sv-split line{stroke:var(--paper);stroke-width:3px}.sv-scale{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;margin-top:1rem;font-size:.8rem;display:flex}.sv-scale-bar{background:linear-gradient(to right, color-mix(in oklab, var(--c-blue) 8%, var(--paper)), var(--c-blue));border-radius:2px;width:9rem;height:8px}.sv-script{font-family:var(--serif)}.sv-ink{background:var(--c-ink)}.sv-red{background:var(--c-red)}.sv-blue{background:var(--c-blue)}.sv-yellow{background:var(--c-yellow)}.sv-faint{background:color-mix(in oklab, var(--c-ink) 40%, var(--paper))}.sv-loss{color:var(--red)}.sv-bar{grid-template-columns:minmax(7rem,15rem) minmax(0,1fr) 3.5rem;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.85rem;transition:opacity .3s;display:grid}.sv-bar.is-dim{opacity:.45}.sv-bar-label{color:var(--muted)}.sv-bar-track,.sv-meter-track,.sv-walk-track{background:color-mix(in oklab, var(--ink) 8%, transparent);border-radius:5px;height:10px;position:relative}.sv-bar-fill,.sv-meter-fill,.sv-walk-fill{transform-origin:0;border-radius:5px;transition:transform .65s cubic-bezier(.22,1,.36,1),background-color .3s;position:absolute;inset:0}.sv-bar-value{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.sv-guess{font-family:var(--sans);margin-top:.9rem}.sv-guess-slider{max-width:24rem;margin-bottom:.25rem}.sv-guess-verdict{min-height:1.5em;font-size:.9rem}.sv-prompt{background:color-mix(in srgb, var(--ink) 6%, transparent);font-family:var(--serif);border-radius:4px;margin:.25rem 0 1rem;padding:.75rem 1rem;font-size:1.05rem;line-height:1.6}.sv-prompt-dim{font-family:var(--sans);color:var(--muted);font-size:.8rem}.sv-prompt-answer{color:var(--blue);font-weight:600;animation:.5s cubic-bezier(.22,1,.36,1) both sv-rise}.sv-caret{vertical-align:-.15em;background:var(--ink);width:2px;height:1.05em;margin-left:2px;animation:1s step-end infinite sv-blink;display:inline-block}.sv-walk-axis,.sv-walk-row{grid-template-columns:minmax(6.5rem,11rem) minmax(0,1fr) 4.75rem;align-items:center;gap:.75rem;display:grid}.sv-walk-ticks{height:1.2rem;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.7rem;position:relative}.sv-walk-ticks span{white-space:nowrap;position:absolute;transform:translate(-50%)}.sv-walk-ticks span:last-child{transform:translate(-100%)}.sv-walk-ticks span:first-child{transform:none}.sv-walk-row{border-top:1px solid var(--rule);border-radius:3px;padding:.45rem .25rem;transition:background-color .3s}.sv-walk-label{min-width:0;line-height:1.25;display:grid}.sv-walk-role{color:var(--muted);font-size:.72rem}.sv-walk-word{overflow-wrap:anywhere;font-size:1rem}.sv-walk-ten{z-index:1;border-left:1px dashed var(--muted);position:absolute;top:-4px;bottom:-4px}.sv-walk-rank{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:.85rem;transition:color .3s}.sv-walk-row.is-top .sv-walk-rank,.sv-walk-row.is-top .sv-walk-word{color:var(--ink);font-weight:600}.sv-walk-row.is-said{background:color-mix(in oklab, var(--c-blue) 12%, transparent)}.sv-walk-scrub{margin:.9rem 0 0}.sv-meter{gap:.35rem;margin:.25rem 0 1rem;display:grid}.sv-meter-label{color:var(--muted);font-size:.85rem}.sv-meter-track{border-radius:7px;height:14px}.sv-meter-fill{border-radius:7px}.sv-meter-base{background:var(--ink);width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px}.sv-dots{grid-template-columns:repeat(17,minmax(0,1fr));gap:4px;max-width:26rem;display:grid}.sv-dot{aspect-ratio:1;background:color-mix(in oklab, var(--c-blue) calc(25% + var(--p,.9) * 75%), var(--paper));transition:background-color .4s,box-shadow .4s;transition-delay:var(--d,0s);border-radius:50%;display:block;box-shadow:inset 0 0 0 1.5px #0000}.sv-dot.is-wrong{box-shadow:inset 0 0 0 1.5px var(--c-red);animation:.52s both sv-pop;animation-delay:var(--d,0s);background:0 0}.sv-dot-key{vertical-align:-1px;width:10px;height:10px;margin-right:.15rem;display:inline-block}.sv-morph-body{grid-template-columns:minmax(0,22rem) minmax(8rem,1fr);align-items:center;gap:1rem 2rem;display:grid}.sv-morph svg{touch-action:pan-y;width:100%;height:auto;display:block}.sv-morph-readout{flex-direction:column;margin:0}.sv-cell{transform-box:fill-box;transform-origin:50%;transition:fill .8s cubic-bezier(.22,1,.36,1)}.js .sv-morph:not(.is-in) .sv-cell{opacity:0}.sv-morph.is-in .sv-cell{animation:.45s both sv-cell-in}.sv-morph-hover rect{fill:var(--ink);opacity:.12}.sv-split-in{animation:.6s .25s both sv-fade}.sv-term{background:color-mix(in srgb, var(--ink) 6%, transparent);min-height:6.5rem;box-shadow:inset 3px 0 0 var(--c-blue);font-family:var(--serif);white-space:pre-wrap;border-radius:4px;padding:.9rem 1rem;font-size:1.05rem;line-height:1.6;transition:box-shadow .3s}.sv-term.is-broken{box-shadow:inset 3px 0 0 var(--c-red)}.sv-term-prompt{color:var(--muted)}.sv-term-gloss{font-family:var(--sans);color:var(--muted);white-space:normal;margin-top:.5rem;font-size:.85rem;animation:.4s both sv-fade;display:block}.sv-rope-acc{margin-top:.9rem}.sv-rope .explorer-toggle code{font-size:.85em}@keyframes sv-blink{50%{opacity:0}}@keyframes sv-fade{0%{opacity:0}to{opacity:1}}@keyframes sv-rise{0%{opacity:0;transform:translateY(.3em)}to{opacity:1;transform:none}}@keyframes sv-pop{0%{transform:scale(1)}40%{transform:scale(1.55)}to{transform:scale(1)}}@keyframes sv-cell-in{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}@media (max-width:560px){.sv-morph-body{grid-template-columns:1fr}.sv-morph-readout{flex-direction:row}.sv-walk-axis,.sv-walk-row{grid-template-columns:minmax(5.5rem,7.5rem) minmax(0,1fr) 4rem;gap:.5rem}.sv-bar{grid-template-columns:minmax(5.5rem,8rem) minmax(0,1fr) 3rem}.sv-walk-ticks .is-minor{display:none}}@media (prefers-reduced-motion:reduce){.sv-bar-fill,.sv-meter-fill,.sv-walk-fill,.sv-dot,.sv-cell,.sv-walk-row,.sv-term{transition:none}.sv-dot.is-wrong,.sv-morph.is-in .sv-cell,.sv-split-in,.sv-prompt-answer,.sv-term-gloss,.sv-caret{animation:none}.sv-morph:not(.is-in) .sv-cell{opacity:1}}.sv-cards{grid-template-columns:repeat(auto-fit,minmax(16.5rem,1fr));gap:1rem;margin-top:.6rem;display:grid}.sv-card{border:1px solid var(--rule);background:color-mix(in oklab, var(--ink) 3%, var(--paper));border-radius:6px;padding:1rem 1.1rem 1.1rem}.sv-card-name{font-size:1.2rem;font-weight:700;line-height:1.2}.sv-card-role{color:var(--muted);margin-top:.15rem;font-size:.85rem}.sv-card-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:.9rem 0 .75rem;display:grid}.sv-card-stats b{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600;line-height:1.1;display:block}.sv-card-stats span{color:var(--muted);font-size:.78rem}.sv-card-specs{gap:.4rem;margin-top:.75rem;font-size:.85rem;display:grid}.sv-card-specs div{grid-template-columns:6.2rem minmax(0,1fr);gap:.75rem;display:grid}.sv-card-specs dt{color:var(--muted)}.sv-card-specs dd{margin:0}@media (max-width:480px){.sv-card-specs div{grid-template-columns:1fr;gap:0}}.sv-walk-scrub input[type=range],.ponder .explorer-controls input[type=range]{height:2rem}.sv-pick{margin-top:.75rem}.sv-pick select{width:100%;min-height:2rem;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:4px;padding:.2rem .4rem;font-size:.9rem}
