/* Refactor: an editorial surface for explicit mathematical operations. */
:root{--paper:#08141b;--surface:#10212a;--wash:#0c1c25;--ink:#f0eee5;--muted:#aabbbf;--blue:#b9ded0;--accent:#b9ded0;--line:#2a3e46;--frame:#52696c;--selection:#294b46;--measure:80rem;--refactor-mint:#c8edb3;--refactor-cream:#f0eee5;--refactor-mono:'Cascadia Code','SFMono-Regular',Consolas,monospace}
html{background:var(--paper);scrollbar-color:#536b6c var(--paper)}
body{background:var(--paper);background-attachment:initial;color:var(--ink)}
.wrap{width:min(var(--measure),calc(100% - 5rem))}
a{color:var(--blue)}a:hover{color:#e4f7db}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--refactor-mint);outline-offset:5px}
.masthead{padding:1.35rem 0;border:0;border-bottom:1px solid var(--line);border-image:none;box-shadow:none;gap:2rem}
.brand{font-family:var(--serif);font-size:1.3rem;letter-spacing:-.02em;gap:.6rem;color:var(--refactor-cream)}
.brand .brand-emblem{width:36px;height:36px;flex-basis:36px}
.nav{gap:1.45rem;align-items:center;font-size:.84rem}
.nav a{padding:.35rem 0;color:var(--muted)}
.nav a[aria-current=page]{color:var(--refactor-mint);text-decoration-color:var(--refactor-mint)}
.nav a.nav-public-record{border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:none;background:none;padding:.2rem 0 .2rem 1.35rem;gap:0}
.nav a.nav-public-record:hover,.nav a.nav-public-record[aria-current=page]{background:none;border-color:var(--frame)}
.nav-record-label{font-size:.77rem;font-weight:400;gap:.5rem;color:var(--muted)}
.nav-record-label>span{font-size:.85rem;color:var(--muted)}
.nav-record-kicker{font-size:.6rem;letter-spacing:.05em;color:var(--muted)}
.eyebrow{font:500 .68rem/1.55 var(--refactor-mono);letter-spacing:.12em;color:var(--muted)}
.refactor-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:clamp(2.5rem,5vw,6rem);align-items:center;padding:5.8rem 0 4.8rem}
.refactor-hero h1{font:normal clamp(5.8rem,9vw,9rem)/.95 var(--serif);letter-spacing:-.075em;margin:.7rem 0 1.6rem;color:var(--refactor-cream)}
.refactor-hero h1>span{color:var(--refactor-mint)}
.refactor-tagline{font:normal clamp(1.8rem,2.8vw,2.7rem)/1.15 var(--serif);letter-spacing:-.035em;margin:0 0 1.6rem}
.refactor-deck{font-size:1.02rem;line-height:1.8;max-width:29rem;color:var(--muted)}
.refactor-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:1.25rem;margin-top:2rem;font-size:.85rem}
.refactor-primary{background:var(--refactor-mint);color:#15261c;padding:.9rem 1.25rem;display:inline-flex;gap:2rem;align-items:center;text-decoration:none;border:1px solid var(--refactor-mint)}
.refactor-primary:hover{background:#dcf6cc;color:#15261c;text-decoration:underline}
.refactor-demo{border:1px solid var(--frame);background:var(--surface);padding:1.6rem;position:relative}
.refactor-demo:before{content:'';position:absolute;width:2.4rem;height:2px;background:var(--refactor-mint);top:-1px;left:1.6rem}
.demo-heading .eyebrow{margin-bottom:.6rem}
.demo-heading h2{font:normal 1.9rem/1.2 var(--serif);letter-spacing:-.025em;margin:0 0 .9rem}
.demo-heading p:last-child{font-size:.89rem;line-height:1.8;color:var(--muted);margin-bottom:1.3rem}
.demo-law{font:1.08rem/1.7 var(--serif);border-top:1px solid var(--line);padding:1rem 0 0;overflow-wrap:anywhere}
.demo-residual{color:#e8c58e}
.is-separated .demo-residual{color:var(--refactor-mint)}
.demo-flow{display:block;width:100%;height:auto;margin:.8rem 0 1.2rem;color:var(--refactor-mint)}
.demo-flow rect{fill:var(--paper);stroke:var(--frame);stroke-width:1}
.demo-flow path{fill:none;stroke:currentColor;stroke-width:1.7}
.demo-flow marker path{fill:currentColor;stroke:none}
.demo-flow text{fill:var(--ink);font:20px var(--serif)}
.demo-flow>text{font:14px var(--sans);fill:var(--muted)}
.demo-flow .residual-path{color:#dbb581;transition:opacity .2s ease}
.demo-flow .residual-path text{font-size:15px}
.demo-controls{border-top:1px solid var(--line);padding-top:1.1rem}
.demo-controls label{display:grid;grid-template-columns:auto minmax(0,1fr) 3.7rem;align-items:center;gap:1rem;font-size:.82rem}
.demo-controls input[type=range]{width:100%;min-width:0;accent-color:var(--refactor-mint)}
.demo-controls output{font:.78rem var(--refactor-mono);text-align:right;color:var(--refactor-mint)}
.demo-presets{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.demo-presets button{font:.69rem/1.4 var(--sans);color:var(--muted);border:1px solid var(--frame);background:transparent;padding:.5rem .6rem;cursor:pointer;min-height:35px}
.demo-presets button[aria-pressed=true]{color:var(--refactor-mint);border-color:var(--refactor-mint);background:#20332b}
.demo-status{font:.79rem/1.65 var(--sans);margin:.7rem 0 0;min-height:2.6em;color:var(--muted)}
.is-separated .demo-status{color:var(--refactor-mint)}
.refactor-demo .inline-link{font-size:.77rem;margin-top:.8rem}
.refactor-statement{display:grid;grid-template-columns:10rem minmax(0,1fr) 13rem;gap:2.8rem;padding:2.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:start}
.refactor-statement>.eyebrow{margin:.3rem 0}
.refactor-statement>p:not(.eyebrow){font:1.35rem/1.6 var(--serif);margin:0;max-width:43rem}
.refactor-statement>a{font-size:.8rem;align-self:center}
.refactor-starters{margin:4rem 0}
.section-head{border-color:var(--line);align-items:center;padding:1.4rem 0 1.7rem}
.section-head h2{font:normal clamp(1.8rem,3vw,2.4rem)/1.2 var(--serif);letter-spacing:-.03em}
.section-head .eyebrow{margin:0 0 .65rem}
.section-aside{font:.76rem/1.6 var(--refactor-mono);color:var(--muted);margin:0}
.refactor-entry-list{border-bottom:1px solid var(--line)}
.refactor-entry{display:grid;grid-template-columns:3rem minmax(0,1fr) 2.5rem;gap:1.5rem;padding:1.7rem 0;border-top:1px solid var(--line);align-items:start}
.refactor-entry-number{font:.78rem/1.6 var(--refactor-mono);color:var(--refactor-mint);padding-top:.15rem}
.refactor-entry .meta{font:500 .66rem/1.55 var(--refactor-mono);letter-spacing:.025em;margin:0 0 .45rem;color:var(--muted)}
.refactor-entry h3{font:normal 1.55rem/1.25 var(--serif);letter-spacing:-.025em;margin:0 0 .5rem}
.refactor-entry h3 a{color:var(--ink);text-decoration:none}
.refactor-entry h3 a:hover{text-decoration:underline;text-decoration-thickness:1px}
.refactor-entry p:last-child{font-size:.9rem;line-height:1.7;color:var(--muted);max-width:48rem;margin:0}
.entry-arrow{font:1.5rem var(--sans);text-decoration:none;justify-self:end;padding:.2rem .4rem}
.current-expositions{margin:4rem 0}
.current-exposition-grid{gap:0 3rem}
.current-exposition{border:0;border-top:1px solid var(--line);padding:1.8rem 0 2.3rem;background:none;box-shadow:none}
.current-exposition h3{font:normal 1.6rem/1.25 var(--serif);letter-spacing:-.02em}
.current-exposition .feature-subtitle{font:normal 1.15rem/1.5 var(--serif);color:var(--refactor-mint)}
.current-exposition .home-entry-route,.current-exposition .catalogue-entry-route{border-left:2px solid var(--frame);padding-left:1rem;background:none;margin:1.3rem 0}
.current-exposition .home-entry-route p,.current-exposition .catalogue-entry-route p{font-size:.82rem;line-height:1.7}
.home-entry-companion{border-color:var(--line);background:var(--wash);padding:1rem;margin-top:1.3rem}
.home-entry-companion h4{font:normal 1.15rem/1.35 var(--serif)}
.refactor-library-strip{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;padding:3rem;border:1px solid var(--line);background:var(--wash);margin:3rem 0 4rem}
.refactor-library-strip h2{font:normal 2rem/1.2 var(--serif);letter-spacing:-.025em;margin:.7rem 0 1rem}
.refactor-library-strip p{font-size:.92rem;line-height:1.8;color:var(--muted)}
.refactor-library-strip>div:last-child>p{padding:.9rem 0;margin:0;border-bottom:1px solid var(--line)}
.refactor-library-strip>div:last-child>p>span{display:block;font:.68rem/1.5 var(--refactor-mono);margin-bottom:.35rem}
.refactor-library-strip>div:last-child>p>a{display:block;color:var(--ink)}
.refactor-essay-section{margin:3.5rem 0}
.refactor-essay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}
.refactor-essay-grid article{border-top:1px solid var(--line);padding-top:1.5rem}
.refactor-essay-grid .meta{font-size:.7rem;color:var(--muted)}
.refactor-essay-grid h3{font:normal 1.6rem/1.3 var(--serif);letter-spacing:-.02em;margin:.7rem 0}
.refactor-essay-grid h3 a{color:var(--ink);text-decoration:none}
.refactor-essay-grid p{font-size:.88rem;line-height:1.75;color:var(--muted)}
.refactor-record-link{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2rem;font-size:.84rem;color:var(--muted)}
.refactor-research{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;margin:4rem 0;padding:2.3rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.refactor-research h2{font:normal 2rem/1.25 var(--serif);letter-spacing:-.025em;margin:.6rem 0 1rem}
.refactor-research h3{font:normal 1.45rem/1.35 var(--serif);margin:.7rem 0}
.refactor-research h3 a{color:var(--ink)}
.refactor-research p{font-size:.88rem;line-height:1.75;color:var(--muted)}
.home-secondary{margin:3rem 0 4rem;border-color:var(--line);gap:3rem}
.home-secondary p{font-size:.84rem;color:var(--muted)}
.refactor-method-heading,.refactor-article-heading{max-width:60rem;padding:4.5rem 0 3rem}
.refactor-method-heading h1{font:normal clamp(4.5rem,8vw,7.8rem)/1 var(--serif);letter-spacing:-.065em;margin:.6rem 0 1.4rem}
.refactor-method-heading .lead{font:normal 2rem/1.3 var(--serif);margin:0;color:var(--refactor-mint)}
.refactor-article-heading h1{font:normal clamp(2.8rem,5vw,4.5rem)/1.05 var(--serif);letter-spacing:-.045em;margin:.8rem 0 1.3rem;max-width:55rem;text-wrap:balance}
.refactor-article-heading .lead{font-size:1.15rem;line-height:1.7;color:var(--muted);max-width:46rem}
.refactor-article-heading .byline{font:.73rem/1.8 var(--refactor-mono);margin:1.5rem 0 1rem}
.refactor-article-heading .reader-background{font:.83rem/1.8 var(--sans);max-width:44rem}
.refactor-reading-layout{display:grid;grid-template-columns:13rem minmax(0,49rem);gap:4.5rem;margin:0 0 5rem;align-items:start}
.refactor-reading-sidebar{position:sticky;top:1.6rem;border-top:1px solid var(--frame);padding-top:1rem;font-size:.77rem;line-height:1.65}
.refactor-reading-sidebar nav{display:grid;gap:.75rem;margin-bottom:1.4rem}
.refactor-reading-sidebar>a{display:block;border-top:1px solid var(--line);padding-top:1rem}
.refactor-prose{font:1.15rem/1.85 var(--serif);min-width:0}
.refactor-prose>.opening,.refactor-prose>.article-lead,.refactor-prose>.lead{font:1.35rem/1.65 var(--serif);margin-top:0;color:var(--ink)}
.refactor-prose h2{font:normal 1.9rem/1.3 var(--serif);letter-spacing:-.025em;margin:3.5rem 0 1.2rem;padding-top:1.2rem;border-top:1px solid var(--line);scroll-margin-top:2rem}
.refactor-prose h3{font:normal 1.4rem/1.35 var(--serif);margin-top:2rem}
.refactor-prose p{margin:1.15rem 0}
.refactor-prose li{margin:.9rem 0}
.refactor-prose strong{font-weight:600}
.refactor-prose .refactor-demo{font-family:var(--sans);margin:2.4rem 0}
.refactor-prose .demo-heading h2{border:0;padding:0;margin:0 0 1rem;font-size:1.9rem}
.refactor-prose .demo-heading p{margin:.8rem 0 1.3rem}
.refactor-prose .demo-status{font-size:.85rem;line-height:1.65}
.refactor-equation,.refactor-equation-lines,.refactor-prose .equation{font:1.16rem/1.85 var(--serif);text-align:center;border-left:2px solid var(--refactor-mint);background:var(--wash);padding:1.1rem 1.3rem;margin:1.8rem 0;overflow:auto;max-width:100%}
.refactor-equation-lines p{margin:.4rem 0}
.refactor-prose .equation .math{font-style:normal}
.refactor-prose pre{font:.88rem/1.7 var(--refactor-mono);padding:1.4rem;overflow:auto}
.refactor-prose table{border-collapse:collapse;font:.92rem/1.6 var(--sans);width:100%;margin:2rem 0}
.refactor-prose th,.refactor-prose td{padding:.65rem .8rem;text-align:left;border-bottom:1px solid var(--line)}
.refactor-prose th{color:var(--refactor-mint);font-weight:500}
.refactor-prose caption{font:.8rem/1.6 var(--sans);text-align:left;color:var(--muted);margin-bottom:.7rem}
.refactor-diagram{margin:2rem 0;background:#f6f2e9;color:#22372f;padding:1.2rem;border-radius:2px}
.refactor-diagram figcaption{font:.8rem/1.7 var(--sans);margin-top:1rem;color:#334e45}
.refactor-prose .demo-table-wrap{overflow:auto}
.refactor-prose .demo-table{font:.78rem/1.55 var(--refactor-mono);margin:1.3rem 0 0}
.refactor-practice{padding-left:1.35rem}
.refactor-prose .closing-line{font-size:2rem;color:var(--refactor-mint);margin:2.5rem 0}
.refactor-article-footer{margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line);font:.85rem/1.8 var(--sans);color:var(--muted)}
.refactor-framing{border-top:2px solid var(--refactor-mint);border-bottom:1px solid var(--frame);padding:1.5rem 1.6rem;margin:0 0 2.5rem;background:var(--wash);font:1rem/1.8 var(--sans)}
.refactor-framing h2,.refactor-framing h3{border:0!important;padding:0!important;margin:0 0 .8rem!important;font:normal 1.5rem/1.3 var(--serif)!important}
.refactor-framing p{font-size:.95rem;line-height:1.8}
.refactor-framing .edition-note{font-size:.77rem;color:var(--muted)}
.refactor-framing .eyebrow{font:.65rem/1.6 var(--refactor-mono)}
.featured-exposition,.home-essay,.reading-invitation,.library-feature,.play-preview,.reading-links{background:var(--wash);border-color:var(--line);box-shadow:none}
.essay-body,.exposition-reader,.record-essay,.record-case,.prose{color:var(--ink)}
.footer{border-color:var(--line);padding:1.8rem 0 2.5rem}
.footer div{flex-wrap:wrap;justify-content:flex-end;gap:.75rem 1.4rem}
.refactor-prose [id]{scroll-margin-top:1.5rem}
@media(min-width:1100px){.refactor-hero-example{padding-top:1rem}}
@media(max-width:1050px){.wrap{width:calc(100% - 3.5rem)}.nav{gap:1rem;font-size:.78rem}.nav a.nav-public-record{padding-left:1rem}.refactor-hero{gap:2.4rem}.refactor-hero h1{font-size:6.2rem}.refactor-demo{padding:1.2rem}.refactor-statement{grid-template-columns:8rem 1fr;gap:1.5rem}.refactor-statement>a{grid-column:2}.refactor-reading-layout{grid-template-columns:10rem minmax(0,1fr);gap:2.7rem}}
@media(max-width:800px){.masthead{align-items:flex-start;gap:1rem}.nav{max-width:28rem;justify-content:flex-end;gap:.6rem 1.2rem}.nav a.nav-public-record{border:0;padding:0}.nav-record-kicker{display:none}.refactor-hero{grid-template-columns:1fr;padding:3.6rem 0 3rem;gap:2.6rem}.refactor-hero-copy{max-width:34rem}.refactor-hero h1{font-size:7rem}.refactor-tagline br{display:none}.refactor-hero-example{max-width:42rem;width:100%}.refactor-statement{grid-template-columns:1fr;gap:.7rem}.refactor-statement>a{grid-column:1}.refactor-statement>p:not(.eyebrow){font-size:1.3rem}.refactor-library-strip{gap:2rem;padding:2rem}.refactor-essay-grid{grid-template-columns:1fr;gap:1.3rem}.refactor-essay-grid article{display:grid;grid-template-columns:12rem 1fr;gap:0 1.5rem}.refactor-essay-grid article>.meta{grid-column:1;grid-row:1 / 3}.refactor-essay-grid h3{margin:0 0 .7rem;font-size:1.4rem}.refactor-essay-grid p{margin-top:0}.refactor-research{gap:2rem}.refactor-reading-layout{display:block}.refactor-reading-sidebar{position:static;margin-bottom:2.5rem;max-width:49rem}.refactor-reading-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1.4rem}.refactor-prose{max-width:49rem}.refactor-article-heading{padding:3rem 0 2rem}}
@media(max-width:560px){.wrap{width:calc(100% - 2.25rem)}.masthead{flex-direction:column;gap:.8rem;padding:1rem 0 1.1rem}.brand{font-size:1.18rem}.brand .brand-emblem{width:30px;height:30px;flex-basis:30px}.nav{justify-content:flex-start;max-width:none;gap:.5rem 1.15rem;font-size:.76rem}.nav-record-label{font-size:.72rem}.nav-record-label>span{display:none}.refactor-hero{padding:2.7rem 0 2.8rem}.refactor-hero h1{font-size:clamp(4.5rem,18vw,6.5rem);margin-top:1rem;margin-bottom:1.3rem}.refactor-tagline{font-size:2rem;max-width:18rem}.refactor-deck{font-size:.95rem}.refactor-hero-actions{gap:1rem;margin-top:1.5rem}.refactor-primary{width:100%;max-width:25rem;justify-content:space-between}.refactor-demo{padding:1.1rem}.demo-heading h2{font-size:1.75rem}.demo-heading p:last-child{font-size:.84rem}.demo-law{font-size:1rem}.demo-flow{margin:.8rem 0}.demo-presets{gap:.4rem}.demo-presets button{font-size:.65rem;padding:.5rem}.demo-controls label{gap:.5rem}.demo-status{font-size:.76rem}.refactor-starters,.current-expositions{margin:2.8rem 0}.section-head{gap:1.2rem;align-items:start}.section-head h2{font-size:1.7rem}.section-head>a{font-size:.76rem}.section-aside{display:none}.refactor-entry{grid-template-columns:1.7rem minmax(0,1fr) 1.4rem;gap:.75rem;padding:1.4rem 0}.refactor-entry h3{font-size:1.4rem}.refactor-entry .meta{font-size:.59rem}.refactor-entry p:last-child{font-size:.83rem}.entry-arrow{font-size:1.1rem;padding:.2rem}.current-exposition-grid{display:block}.current-exposition h3{font-size:1.65rem}.current-exposition .feature-subtitle{font-size:1.13rem}.refactor-library-strip{grid-template-columns:1fr;padding:1.3rem;gap:1.4rem;margin:2.5rem 0}.refactor-library-strip h2{font-size:1.8rem}.refactor-essay-grid article{display:block}.refactor-essay-grid article>.meta{margin-bottom:.65rem}.refactor-research{grid-template-columns:1fr;gap:1.4rem;margin:2.8rem 0}.refactor-research h2{font-size:1.75rem}.home-secondary{gap:1.7rem}.refactor-method-heading{padding:3rem 0 2.5rem}.refactor-method-heading h1{font-size:4.8rem}.refactor-method-heading .lead{font-size:1.7rem}.refactor-article-heading h1{font-size:2.65rem}.refactor-article-heading .lead{font-size:1rem}.refactor-article-heading .byline{font-size:.64rem}.refactor-reading-sidebar nav{grid-template-columns:1fr;font-size:.75rem}.refactor-prose{font-size:1.08rem;line-height:1.8}.refactor-prose>.opening,.refactor-prose>.article-lead,.refactor-prose>.lead{font-size:1.25rem}.refactor-prose h2{font-size:1.55rem;margin-top:2.5rem}.refactor-equation,.refactor-equation-lines,.refactor-prose .equation{font-size:1.03rem;padding:.9rem .7rem}.refactor-prose th,.refactor-prose td{padding:.5rem .4rem;font-size:.77rem}.refactor-diagram{padding:.4rem}.refactor-framing{padding:1.2rem}.footer{flex-direction:column;gap:1rem}.footer div{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.demo-flow .residual-path{transition:none}}
@media print{html,body{background:white!important;color:#111!important}.refactor-hero{display:block}.refactor-hero-example,.demo-controls,.refactor-reading-sidebar,.refactor-hero-actions,.refactor-article-footer{display:none}.refactor-reading-layout{display:block}.refactor-prose{max-width:none;color:#111}.refactor-prose .equation,.refactor-equation,.refactor-equation-lines{background:white;color:#111}.refactor-prose a{color:#111}.refactor-demo{border:1px solid #777;background:white}.refactor-demo text{fill:#111}.refactor-demo path,.refactor-demo rect{stroke:#333}.refactor-demo rect{fill:white}.refactor-framing{background:white;color:#111}}
