@import url('https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,300..600;1,6..72,300..500&display=swap');
#essay-view{--es-bg:#0d141b;--es-ink:#ece7dc;--es-soft:#c6c3ba;--es-muted:#8f9aa3;--es-line:#1f2c38;--es-accent:#f0b86e;background:var(--es-bg);color:var(--es-ink);margin:0 -38px;font-family:'Newsreader',Georgia,serif}
#essay-view a{color:var(--es-accent)}
.es-hero{position:relative;min-height:calc(100vh - 84px);display:flex;align-items:flex-end;overflow:hidden;border-bottom:1px solid var(--es-line)}
.es-stars{position:absolute;inset:0;width:100%;height:100%}
.es-hero::after{content:'';position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(transparent,var(--es-bg));pointer-events:none}
.es-hero-inner{position:relative;z-index:1;max-width:1080px;margin:0 auto;width:100%;padding:0 clamp(22px,5vw,64px) clamp(56px,9vh,110px)}
.es-kicker{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--es-accent);margin:0 0 18px}
.es-hero h1{font-weight:350;font-size:clamp(58px,10vw,132px);line-height:.95;letter-spacing:-.03em;margin:0 0 30px}
.es-dek{font-size:clamp(20px,2vw,25px);line-height:1.45;color:var(--es-soft);max-width:30em;margin:0 0 22px;font-weight:350}
.es-byline{font-family:'DM Sans',sans-serif;font-size:14px;color:var(--es-muted);margin:0}
.es-scroll{position:absolute;z-index:1;right:clamp(22px,5vw,64px);bottom:clamp(56px,9vh,110px);width:46px;height:46px;border-radius:50%;border:1px solid #3a4957;background:none;color:var(--es-soft);font-size:18px}
.es-scroll:hover{border-color:var(--es-accent);color:var(--es-accent)}
.es-chapter{padding:clamp(64px,10vh,120px) clamp(22px,5vw,64px) 0}
.es-col{max-width:660px;margin:0 auto}
.es-num{font-style:italic;color:var(--es-accent);font-size:22px;margin:0 0 6px}
.es-chapter h2,.es-coda h2{font-weight:400;font-size:clamp(34px,4.4vw,50px);line-height:1.08;letter-spacing:-.02em;margin:0 0 28px}
.es-chapter h3{font-weight:500;font-size:24px;margin:44px 0 14px}
.es-col p,.es-settle li{font-size:clamp(18px,1.55vw,20.5px);line-height:1.62;color:var(--es-soft);margin:0 0 22px;font-weight:350}
.es-col b,.es-col strong{color:var(--es-ink);font-weight:550}
.es-col em{color:var(--es-ink)}
.es-knob-text{color:var(--es-ink)!important}
.es-knob{color:var(--es-accent);border-bottom:1.5px dashed var(--es-accent);cursor:ew-resize;white-space:nowrap;user-select:none;touch-action:none;padding:0 1px;border-radius:2px;transition:background .15s}
.es-knob:hover,.es-knob:focus-visible,.es-knob.is-dragging{background:#f0b86e1f;outline:none}
.es-knob:focus-visible{box-shadow:0 0 0 2px #f0b86e66}
body.es-dragging{cursor:ew-resize;user-select:none}
.es-result{font-size:clamp(20px,1.8vw,23px)!important;color:var(--es-ink)!important;border-left:2px solid var(--es-accent);padding-left:18px}
.es-result b{color:var(--es-accent)!important;font-variant-numeric:tabular-nums}
.es-previewing{font-family:'DM Sans',sans-serif;font-size:13px;color:var(--es-muted);margin-left:6px}
.es-hint{font-family:'DM Sans',sans-serif;font-size:14px!important;color:var(--es-muted)!important}
.es-fig{max-width:940px;margin:44px auto 50px}
.es-fig-narrow{max-width:760px}
.es-fig figcaption{font-family:'DM Sans',sans-serif;font-size:13.5px;line-height:1.55;color:var(--es-muted);margin-top:12px;max-width:640px}
.es-link{background:none;border:0;padding:0;color:var(--es-accent);font:inherit;text-decoration:underline;text-underline-offset:3px}
.es-plot{width:100%;min-height:100px}
.es-plot svg{display:block;overflow:visible;font-family:'DM Sans',sans-serif}
.es-wait{font-family:'DM Sans',sans-serif;color:var(--es-muted);font-size:14px;padding:30px 0}
.es-legend{display:flex;flex-wrap:wrap;gap:6px 20px;font-family:'DM Sans',sans-serif;font-size:13px;color:#b5bec5;margin-bottom:14px}
.es-legend span{display:inline-flex;align-items:center;gap:7px}
.es-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}
.es-legend .es-dot{border-radius:50%}
.es-legend .es-ring{border:2px solid #9aa6ae;border-radius:50%;width:11px;height:11px}
.es-legend .es-tick{width:2px;height:14px;border-radius:0;background:#ece7dc}
.es-grid{stroke:#1c2935;stroke-width:1}
.es-axis{fill:#7f8b95;font-size:12px}
.es-axis-title{fill:#9aa6ae;font-size:12.5px}
.es-label{fill:#d6d3cb;font-size:13.5px}
.es-value{fill:#ece7dc;font-size:13px;font-variant-numeric:tabular-nums}
.es-default{stroke:#ece7dc;stroke-width:2;opacity:.85}
.es-rule{stroke:#6f7c87;stroke-width:1}
.es-rule-strong{stroke:#f3efe6}
.es-note{fill:#9aa6ae;font-size:12px}
.es-note-strong{fill:#f3efe6;font-weight:600}
.es-connector{stroke:#56636e;stroke-width:2}
.es-before{fill:#0d141b;stroke:#9aa6ae;stroke-width:2}
.es-edge{fill:none;stroke:#e9774a;stroke-width:2}
.es-contour{fill:none;stroke:#e9774a;stroke-width:1;opacity:.45}
.es-region{fill:#c9cfd4;font-size:12.5px;font-weight:600}
.es-callout{fill:#0d141b;stroke:#46535f}
.es-ledger{max-width:940px;margin:30px auto 56px;border-top:1px solid var(--es-line)}
.es-ledger-row{display:grid;grid-template-columns:minmax(140px,220px) 170px 1fr;gap:10px 28px;align-items:baseline;padding:26px 4px;border-bottom:1px solid var(--es-line);text-decoration:none;color:inherit!important;transition:background .15s}
.es-ledger-row:hover{background:#ffffff06}
.es-ledger-row strong{font-weight:350;font-size:clamp(38px,4.6vw,58px);line-height:1;letter-spacing:-.02em;color:var(--es-ink);font-variant-numeric:tabular-nums}
.es-ledger-row strong sup{font-size:.5em;vertical-align:super;line-height:0}
.es-ledger-row.is-strong strong{color:#f08a5d}
.es-ledger-name{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--es-accent)}
.es-ledger-row>span:last-child{font-size:17.5px;line-height:1.55;color:var(--es-soft)}
.es-settle{padding-left:1.2em;margin:0 0 20px}
.es-settle li{padding-left:6px}
.es-settle li::marker{color:var(--es-accent);font-style:italic}
.es-coda{padding:clamp(80px,12vh,140px) clamp(22px,5vw,64px) clamp(70px,10vh,120px);margin-top:clamp(60px,10vh,110px);border-top:1px solid var(--es-line);background:linear-gradient(#0d141b,#0a1016)}
.es-lab-links{max-width:1080px;margin:40px auto 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid var(--es-line)}
.es-lab-links a{display:flex;flex-direction:column;gap:10px;padding:22px 20px 22px 0;margin-right:20px;text-decoration:none;border-bottom:1px solid transparent}
.es-lab-links a:hover strong{color:var(--es-accent)}
.es-lab-links strong{font-weight:450;font-size:21px;color:var(--es-ink)}
.es-lab-links span{font-family:'DM Sans',sans-serif;font-size:14px;line-height:1.5;color:var(--es-muted)}
.es-tip{position:fixed;left:0;top:0;z-index:60;pointer-events:none;max-width:280px;background:#070c11f2;border:1px solid #34414d;border-radius:5px;padding:9px 11px;font:13px/1.5 'DM Sans',sans-serif;color:#dde3e7;box-shadow:0 8px 24px #000a}
.es-tip strong{color:#fff}.es-tip sup{font-size:.7em}
@media(max-width:1200px){#essay-view{margin:0 -24px}}
@media(max-width:900px){.es-lab-links{grid-template-columns:1fr 1fr}.es-ledger-row{grid-template-columns:1fr;gap:6px}}
@media(max-width:760px){#essay-view{margin:0 -16px}.es-hero{min-height:calc(100vh - 116px)}}
@media(max-width:560px){.es-lab-links{grid-template-columns:1fr}.es-hero{min-height:calc(92vh - 84px)}}

/* Site shell: top navigation, Lab sub-navigation and footer links. */
.site-nav{display:flex;gap:30px;align-self:stretch}
.site-nav a.nav{display:flex;align-items:center;text-decoration:none}
.lab-nav{display:flex;align-items:center;gap:26px;border-bottom:1px solid var(--line,#2b3946);padding:0 2px;min-height:52px;overflow-x:auto}
.lab-nav .lab-nav-label{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.14em;color:var(--amber,#eeb776);margin-right:4px}
.lab-nav .nav{align-self:stretch;white-space:nowrap}
#process-view{padding-top:28px}
.footer-links{display:flex;gap:20px;align-items:center}
.footer-link{background:none;border:0;padding:0;color:var(--muted,#a4b1bc);font-size:inherit;text-decoration:underline;text-underline-offset:3px}
.footer-links a{color:var(--muted,#a4b1bc)}
#lab-view{max-width:1080px;margin:0 auto;padding:56px 0 80px;font-family:'Newsreader',Georgia,serif;color:#ece7dc}
#lab-view h1{font-weight:400;font-size:clamp(40px,5vw,60px);letter-spacing:-.02em;margin:0 0 16px}
#lab-view>p{font-size:20px;line-height:1.6;color:#c6c3ba;max-width:34em;margin:0 0 40px;font-weight:350}
.lab-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;border-top:1px solid #1f2c38}
.lab-tools a{display:flex;flex-direction:column;gap:8px;padding:26px 0;border-bottom:1px solid #1f2c38;text-decoration:none}
.lab-tools strong{font-weight:450;font-size:26px;color:#ece7dc}
.lab-tools a:hover strong{color:#f0b86e}
.lab-tools span{font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.55;color:#9aa6ae}
@media(max-width:700px){.lab-tools{grid-template-columns:1fr}.site-nav{gap:22px}}
@media(max-width:560px){.es-scroll{display:none}}
