
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--ink:#152c3e;--muted:#526779;--blue:#1b5574;--teal:#276d68;--line:#d9e2e8;--paper:#fff;--tint:#f2f6f8;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:#fff;font:15px/1.7 'DM Sans',sans-serif}button,input,select{font:inherit}a{color:var(--blue);text-underline-offset:4px}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #3785ad;outline-offset:4px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif)}h1{font-size:clamp(43px,5.4vw,68px);line-height:1.12;letter-spacing:-2.3px;margin-bottom:26px}h2{font-size:clamp(30px,3.5vw,43px);line-height:1.2;letter-spacing:-1px;margin-bottom:20px}h3{font-size:20px;line-height:1.35;margin-bottom:12px;font-weight:600}.mono,.kicker,.status,.number,th,.caption-label{font-family:'IBM Plex Mono',monospace}.site-header{position:sticky;top:0;background:#fffffff5;backdrop-filter:blur(12px);z-index:20;border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;margin:auto;padding:20px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-size:15px;letter-spacing:1px;font-weight:700;text-decoration:none;color:var(--ink);white-space:nowrap}.wordmark span{color:#7c9aab}.nav-links{display:flex;gap:25px;align-items:center}.nav-links a{font-size:12px;color:var(--muted);text-decoration:none}.nav-links a:hover{color:var(--blue)}.nav-links .download-link{border:1px solid #b8cbd7;border-radius:3px;padding:8px 12px}.skip{position:absolute;top:-60px;left:20px;background:white;z-index:50;padding:8px}.skip:focus{top:5px}main{max-width:1180px;padding:0 30px;margin:auto}.hero{display:grid;grid-template-columns:1.42fr 1fr;gap:65px;padding:76px 0 55px;align-items:center}.kicker{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--blue);margin-bottom:22px}.hero .subtitle{font-size:18px;line-height:1.75;color:var(--muted);max-width:630px}.byline{font-size:13px;margin:26px 0 12px}.meta{font-size:11px;color:var(--muted)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:27px}.button{display:inline-block;text-decoration:none;padding:12px 18px;border-radius:3px;background:var(--blue);border:1px solid var(--blue);color:#fff;font-size:12px;font-weight:500}.button.secondary{background:white;color:var(--blue);border-color:#b9cbd7}.schematic{margin:0;background:linear-gradient(135deg,#eef4f7,#f8fafb);border:1px solid #dde6ec;border-radius:6px;padding:18px}.schematic svg{width:100%;display:block}.schematic stop:first-child{stop-color:#4d859f}.schematic stop:nth-child(2){stop-color:#5b80a6}.schematic stop:last-child{stop-color:#294763}.schematic svg g[stroke="#334339"]{stroke:#b8cbd6}.schematic svg g[fill="#d5ef87"]{fill:#215d7c}.schematic svg circle[stroke="#d5ef87"],.schematic svg path[stroke="#d5ef87"]{stroke:#215d7c}.schematic svg text[fill="#d5ef87"]{fill:#215d7c}.schematic svg text[fill="#8da091"]{fill:#667c89}.schematic figcaption{font-size:10px;color:var(--muted);line-height:1.6;padding:8px 5px}.status-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;display:flex;gap:22px;justify-content:space-between;font-size:10px;color:var(--muted)}.status-strip strong{color:var(--teal);font-weight:500}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3c7e67;margin-right:8px}.reading-grid{display:grid;grid-template-columns:160px minmax(0,1fr);gap:58px}.toc{padding-top:58px}.toc-inner{position:sticky;top:105px}.toc-title{font-size:9px;letter-spacing:1.4px;color:#7b8e9b;margin-bottom:17px}.toc a{display:block;font-size:11px;color:var(--muted);text-decoration:none;padding:7px 0;border-left:1px solid var(--line);padding-left:14px}.toc a:hover{border-color:var(--blue);color:var(--blue)}.paper section{padding:58px 0;border-bottom:1px solid var(--line)}.section-label{color:#74909e;font:10px 'IBM Plex Mono';letter-spacing:1.3px;margin-bottom:14px}.section-lede{font-size:16px;line-height:1.85;color:var(--muted);max-width:760px}.abstract{background:var(--tint);padding:28px 32px;border-left:3px solid #94b0bf}.abstract p{font-size:14px;line-height:1.85;margin-bottom:16px}.abstract p:last-child{margin-bottom:0}.abstract b{color:#24495f;font-weight:600}.note{padding:17px 20px;background:#f2f6f8;border:1px solid #dbe5eb;border-radius:3px;color:#4d6373;font-size:12px;line-height:1.8;margin:22px 0}.note.pending{background:#faf8f3;border-color:#e7e0ce;color:#6f6146}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:26px 0}.stat{padding:22px;background:#fff}.stat strong{font:35px var(--serif);display:block;margin-bottom:9px}.stat span{font-size:11px;color:var(--muted)}.text-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}.text-columns p,.body-copy{font-size:14px;line-height:1.9;color:#4b6273}.definition{border-top:1px solid var(--line);padding-top:20px;margin-top:18px}.equation{font:19px var(--serif);background:#f4f7fa;padding:18px 20px;margin:15px 0;overflow:auto;border:1px solid #dce5eb;white-space:nowrap}.equation small{display:block;font:10px 'DM Sans';color:var(--muted);margin-top:8px;white-space:normal}.equation sub{font-size:.7em}.plain-list{padding-left:21px;color:#4b6273;font-size:13px}.plain-list li{padding-left:5px;margin-bottom:12px}.pipeline{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:25px}.pipeline article{padding:22px 20px;border:1px solid var(--line);border-radius:4px}.number{font-size:10px;color:#6c8798;display:block;margin-bottom:15px}.pipeline h3{font-size:16px}.pipeline p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:0}details{border:1px solid var(--line);border-radius:4px;margin-top:15px}summary{padding:17px 20px;font-size:13px;cursor:pointer;color:#2f536a;font-weight:500}details .detail-body{padding:0 22px 21px;font-size:13px;color:var(--muted);line-height:1.9}details p:last-child{margin-bottom:0}.tab-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.tab-buttons button{padding:9px 15px;border:1px solid #c6d7e0;background:white;color:var(--muted);font-size:12px;border-radius:3px}.tab-buttons button[aria-pressed=true]{background:#1b5574;color:white;border-color:#1b5574}.figure-box{border:1px solid var(--line);padding:26px;border-radius:5px;background:#fff;margin:25px 0}.figure-topline{display:flex;justify-content:space-between;align-items:start;gap:18px;flex-wrap:wrap}.caption-label{color:#74909e;font-size:10px;letter-spacing:1px}.figure-box h3{font:25px var(--serif);margin-top:10px}.figure-description{font-size:12px;color:var(--muted);line-height:1.8}.matrix-wrap{overflow:auto}.matrix{border-collapse:collapse;width:100%;font-size:12px;min-width:440px}.matrix td,.matrix th{text-align:center;padding:11px;border-bottom:1px solid #e4ebf0}.matrix td:first-child,.matrix th:first-child{text-align:left}.pass-mark{background:#eaf4f0;color:#296b57;font-size:10px;padding:4px 10px;border-radius:3px}.fail-mark{background:#f0f2f5;color:#657584;font-size:10px;padding:4px 10px;border-radius:3px}.figure-caption{font-size:11px;color:var(--muted);line-height:1.85;margin:20px 0 0}.figure-caption b{color:#304c61}.compact-stats{display:flex;gap:24px;flex-wrap:wrap;margin:15px 0 22px;font-size:11px;color:var(--muted)}.compact-stats strong{font-size:20px;color:var(--blue);font-family:var(--serif);margin-right:5px}.controls{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:13px;margin:25px 0 15px}.controls label{display:block;font-size:10px;letter-spacing:.7px;color:var(--muted);font-weight:600}.controls input,.controls select,.notation-select{width:100%;padding:11px 12px;background:white;border:1px solid #b9cbd7;border-radius:3px;min-height:44px;color:var(--ink);font-size:12px;margin-top:8px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:4px}.scroll-table{max-height:470px;overflow:auto}table.results{width:100%;border-collapse:collapse;min-width:610px;font-size:11px;text-align:left}table.results th{font-size:9px;letter-spacing:.5px;text-transform:uppercase;background:#edf3f7;padding:14px 12px;position:sticky;top:0;z-index:1;color:#526d7f}table.results td{padding:14px 12px;border-top:1px solid #e4ebf0;white-space:nowrap}table.results tbody tr:hover{background:#f4f8fa}.row-button{border:0;padding:0;background:none;text-align:left;color:var(--blue);font-size:12px;text-decoration:underline;text-underline-offset:3px}.selected-row{background:#edf5f8}.rate-bar{display:inline-block;width:50px;height:3px;background:#e5edf2;margin-left:8px;vertical-align:middle}.rate-bar i{display:block;background:#5686a0;height:100%}.table-footer{display:flex;justify-content:space-between;gap:20px;margin-top:15px;font-size:10px;color:var(--muted)}.check-label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);margin:18px 0}.candidate-detail{margin-top:24px;padding:22px;border:1px solid #c7dbe6;border-radius:4px;background:#f5f9fb}.candidate-detail h3{font-size:19px}.candidate-detail p{font-size:12px;color:var(--muted);margin-bottom:8px;line-height:1.8}.effect-chart{display:flex;flex-direction:column;gap:7px;margin-top:20px}.chart-row{display:grid;grid-template-columns:100px minmax(0,1fr) 65px;gap:12px;align-items:center;font-size:10px}.chart-label{border:0;background:none;padding:0;text-align:left;color:var(--blue);font:10px 'IBM Plex Mono'}.chart-track{background:repeating-linear-gradient(90deg,#e1eaf0 0,#e1eaf0 1px,transparent 1px,transparent 25%);height:11px;border-right:1px solid #e1eaf0;position:relative}.chart-fill{height:100%;background:#628da5;display:block}.chart-fill.negative{background:#867c66}.chart-axis{display:flex;justify-content:space-between;margin:0 77px 18px 112px;font:9px 'IBM Plex Mono';color:#7a8e9d}.legend{display:flex;gap:20px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-top:18px}.legend i{display:inline-block;width:9px;height:9px;background:#628da5;margin-right:5px}.legend .negative{background:#867c66}.ledger{width:100%;border-collapse:collapse;font-size:12px;min-width:500px}.ledger th,.ledger td{text-align:left;padding:15px;border-bottom:1px solid var(--line);vertical-align:top}.ledger th{font-size:9px;letter-spacing:1px;background:#f2f6f8}.badge{font-size:9px;white-space:nowrap;display:inline-block;border-radius:3px;padding:4px 7px;color:#346955;background:#edf5f0}.badge.open{background:#f4efe5;color:#806b41}.badge.proposed{background:#edf2f7;color:#526e8a}.downloads{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:23px}.download-card{border:1px solid var(--line);border-radius:4px;padding:20px;color:var(--ink);text-decoration:none;display:block}.download-card:hover{border-color:#6c9bb2;background:#f5f9fb}.download-card span{display:block;color:var(--muted);font-size:11px;margin-top:7px}.download-card b{font-size:13px;font-weight:500}.small{font-size:11px;color:var(--muted);line-height:1.85}.repro-code{background:#152c3e;color:#e4edf2;padding:18px 20px;border-radius:4px;font:12px/1.8 'IBM Plex Mono';overflow:auto}.reference{font-size:12px;color:var(--muted);line-height:1.9;margin:20px 0}.reference strong{color:var(--ink);font-weight:500}.team{display:grid;grid-template-columns:1fr 1fr;gap:25px}.person{padding:20px 0;border-top:1px solid var(--line)}.person h3{font-size:18px;margin-bottom:5px}.person p{font-size:11px;color:var(--muted)}.contact{font-size:13px;overflow-wrap:anywhere}.notation{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0}.token{padding:13px 20px;border:1px solid #cadce7;background:#f2f7fa;border-radius:4px;font:27px var(--serif);color:var(--blue)}.token small{display:block;font:8px 'DM Sans';letter-spacing:1px;color:var(--muted);margin-top:6px}footer{max-width:1180px;margin:auto;padding:30px;font-size:10px;color:#6d8291;display:flex;justify-content:space-between;gap:20px}.noscript{padding:20px;background:#faf8f3;border:1px solid #e7e0ce}::selection{background:#d9eaf3}button:disabled{opacity:.5;cursor:default}@media(min-width:1500px){main,.header-inner,footer{max-width:1320px}.reading-grid{grid-template-columns:170px minmax(0,1fr);gap:80px}}@media(max-width:950px){.hero{gap:35px;grid-template-columns:1.3fr 1fr}.reading-grid{grid-template-columns:130px minmax(0,1fr);gap:30px}.nav-links{gap:17px}.hero h1{font-size:48px}.paper section{padding:48px 0}.pipeline{grid-template-columns:1fr}.pipeline article{padding:20px}}@media(max-width:720px){main{padding:0 22px}.header-inner{padding:18px 22px;flex-wrap:wrap;gap:15px}.nav-links{width:100%;justify-content:space-between;gap:10px}.nav-links a{font-size:10px}.nav-links .download-link{padding:5px 8px}.hero{grid-template-columns:1fr;padding:45px 0 30px;gap:30px}.hero h1{font-size:45px;letter-spacing:-1.6px}.hero .subtitle{font-size:16px}.schematic{max-width:400px;margin:0 auto;width:100%}.schematic svg{max-height:290px}.status-strip{flex-direction:column;gap:7px;font-size:9px}.reading-grid{display:block}.toc{display:none}.paper section{padding:44px 0}.abstract{padding:22px}.stats{grid-template-columns:1fr}.stat{padding:18px}.text-columns{grid-template-columns:1fr;gap:5px}.controls{grid-template-columns:1fr}.downloads{grid-template-columns:1fr}.figure-box{padding:20px}.team{grid-template-columns:1fr;gap:0}.chart-row{grid-template-columns:89px minmax(0,1fr) 48px;gap:8px;font-size:9px}.chart-label{font-size:9px}.chart-axis{margin-left:97px;margin-right:56px}.figure-box h3{font-size:23px}.chart-track{height:10px}footer{padding:25px 22px;flex-direction:column;gap:6px}.equation{font-size:17px}html{scroll-padding-top:135px}}@media print{.site-header,.toc,.hero-actions,.controls,.tab-buttons,.check-label,.table-footer,.download-card,.button{display:none}.reading-grid{display:block}.hero{padding:20px 0;grid-template-columns:1fr}.schematic{display:none}.paper section{break-inside:avoid;padding:25px 0}.scroll-table{max-height:none}body{font-size:11pt}.figure-box{break-inside:avoid}main{max-width:none}a{color:#152c3e}}

/* Accessible introduction and interactive comparison */
.beginner-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.beginner-steps article{padding:22px;border:1px solid var(--line);border-radius:5px;background:#fbfcfd}.beginner-icon{display:block;font:11px 'IBM Plex Mono';color:#7b96a6;margin-bottom:18px}.beginner-steps h3{font-size:17px}.beginner-steps p{font-size:12px;line-height:1.85;color:var(--muted);margin-bottom:0}.plain-result{padding:26px;background:#edf5f7;border-left:3px solid #6593a7;margin:28px 0}.plain-result h3{font-family:var(--serif);font-size:24px;font-weight:400;margin-top:12px}.plain-result p{font-size:14px;color:#496274;line-height:1.85}.plain-result a{font-size:12px}.learning-tool,.comparison-tool{border:1px solid var(--line);border-radius:5px;padding:26px;margin:28px 0;background:white}.learning-tool h3,.comparison-tool h3{font:25px var(--serif);margin-top:12px}.learning-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:32px;margin:25px 0}.slider-label{font-size:12px;font-weight:500;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:15px}.slider-label output{font:16px 'IBM Plex Mono';color:var(--blue)}input[type=range]{width:100%;accent-color:#2c6a8a;height:28px;margin:12px 0 0;cursor:pointer}.slider-caption{font-size:10px;color:var(--muted);line-height:1.7;margin-bottom:25px}.learning-results{background:#f3f7fa;border:1px solid #dbe6ed;border-radius:4px;padding:18px}.learning-results>div{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #dce6ec;padding:10px 0;font-size:11px;color:var(--muted)}.learning-results strong{font:19px var(--serif);color:var(--ink)}.learning-results p{font-size:12px;line-height:1.8;color:#3d6074;margin:16px 0 0}.quiz-options{display:flex;flex-direction:column;gap:9px}.quiz-options button{background:#f7fafc;border:1px solid #cbdce6;padding:13px 15px;border-radius:3px;color:#405e73;text-align:left;font-size:12px;line-height:1.7}.quiz-options button[aria-pressed=true]{border-color:#386d8b;background:#edf5f8}#quiz-feedback{margin:20px 0 0;color:#275c77;font-size:13px}.simple-glossary dt{font-weight:600;color:var(--ink);margin-top:14px}.simple-glossary dd{margin-left:0;margin-top:4px}.reading-paths{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.reading-paths a{border:1px solid var(--line);padding:20px;text-decoration:none;border-radius:4px}.reading-paths b{display:block;font-size:12px;font-weight:500}.reading-paths span{font-size:11px;color:var(--muted);display:block;margin-top:8px}.comparison-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:23px 0}.comparison-controls label{font-size:10px;font-weight:600;letter-spacing:.8px;color:var(--muted)}.comparison-controls select{display:block;width:100%;min-width:0;border:1px solid #bbcfda;background:#fff;padding:12px;border-radius:3px;margin-top:8px;font-size:12px;color:var(--ink)}.comparison-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison-card{padding:20px;background:#f5f8fa;border:1px solid #d8e5ec;border-radius:4px}.comparison-card h4{font-size:16px;font-weight:500;margin:0 0 18px}.comparison-card p{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-bottom:11px}.comparison-card b{font-weight:500;color:#234d66;white-space:nowrap}.nav-links{gap:20px}@media(max-width:950px){.beginner-steps{grid-template-columns:1fr}.learning-layout{grid-template-columns:1fr;gap:10px}.nav-links{gap:12px}}@media(max-width:720px){.learning-tool,.comparison-tool{padding:20px}.comparison-controls,.comparison-cards,.reading-paths{grid-template-columns:1fr}.nav-links{flex-wrap:wrap;justify-content:flex-start;gap:13px 18px}.nav-links a{font-size:10px}.site-header{position:relative}.paper section{scroll-margin-top:10px}.hero-actions .button{font-size:11px}.learning-tool .tab-buttons button{font-size:10px;padding:8px 10px}}
