*{box-sizing:border-box}html{scroll-behavior:smooth}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #b54627;outline-offset:5px}.skip{position:fixed;left:20px;top:-100px;padding:16px;background:#c8ff38;z-index:10}.skip:focus{top:15px}header{display:flex;align-items:center;gap:25px;max-width:1440px;margin:auto;padding:25px 5%}.brand{font:bold 43px/.8 Arial,sans-serif;letter-spacing:-4px;text-decoration:none}.brand span{font-size:30px;margin-left:5px}header>span{font:10px Consolas,monospace;letter-spacing:.04em}header>p{margin:0 0 0 auto;font:12px Georgia,serif;color:#78816e}.opening{background:#c8ff38;border-top:1px solid #252b2226;border-bottom:1px solid #252b2226}.opening-inner{max-width:840px;margin:auto;padding:45px 40px 42px;position:relative}.eyebrow{font:9px/1.7 Consolas,monospace;letter-spacing:.1em}.opening h1{font-size:66px;line-height:.95;letter-spacing:-3.5px;font-weight:500;margin:22px 0}.opening h1 em{font:normal 64px/.95 Georgia,serif;letter-spacing:-3.5px}.opening p{font:16px/1.6 Georgia,serif;margin:22px 0 0;max-width:560px}.opening-mark{position:absolute;right:45px;bottom:45px;font-size:32px}.articles{max-width:840px;margin:auto;padding:0 40px}.articles article{padding:58px 0 55px;border-bottom:1px solid #b7c0aa;scroll-margin-top:30px}.article-meta{display:flex;justify-content:space-between;gap:20px;font:9px Consolas,monospace;letter-spacing:.07em;color:#7f8b73}h2{font:normal 43px/1.08 Georgia,'Times New Roman',serif;letter-spacing:-1.6px;margin:25px 0 20px}article>p{font:17px/1.85 Georgia,'Times New Roman',serif;margin:20px 0;color:#4b5642}article>.standfirst{font:19px/1.6 Georgia,serif;color:#2e3927;margin-bottom:23px}p code{font:13px Consolas,monospace;background:#e5e9db;padding:3px 5px;border-radius:3px;color:#36482a;overflow-wrap:anywhere}figure{margin:28px 0;background:#e7ebde;border:1px solid #d6decb}figcaption{display:flex;justify-content:space-between;padding:13px 22px;border-bottom:1px solid #d1dac3;font:9px Consolas,monospace;color:#81916f}pre{margin:0;padding:24px 22px;font:13px/1.9 Consolas,'Courier New',monospace;overflow-x:auto;tab-size:4;color:#3b4d31}pre code{font:inherit}.keyword{color:#8e5372}.type{color:#42666b}.string{color:#688243}.error{text-decoration:underline wavy #b6503d;text-underline-offset:5px}.diagnostic{display:flex;gap:12px;align-items:center;padding:15px 22px;border-top:1px solid #d1dac3;color:#a04b36}.diagnostic>p{font:11px Consolas,monospace;margin:0}.diagnostic p code{font-size:11px;background:transparent;padding:0;color:inherit}.diagnostic>span{font-size:19px}article>.aside{font:11px/1.8 Arial,sans-serif;color:#8c947e}.aside code{font-size:10px}.hover-example{border-top:1px solid #d1dac3;padding:16px 22px;display:flex;justify-content:space-between;align-items:center;gap:18px}.hover-example>span{font:8px/1.5 Consolas,monospace;color:#82916e}.hover-example>code{font:12px Consolas,monospace;color:#3b592b}.hover-example span code{font:inherit}.caret{color:#687e4c}.suggestions{margin:0 22px 22px;border:1px solid #bac7a9;background:#f3f6ec;max-width:340px}.suggestions>div{display:flex;justify-content:space-between;padding:9px 13px;font:11px Consolas,monospace;color:#798c65}.suggestions>div:first-child{background:#d4e1c2;color:#3d552c}.suggestions code{font:inherit}.suggestions>div span{font-size:10px}.code-transition{padding:12px 22px;background:#d8e5c6;font:9px Consolas,monospace;color:#698551}.definition figcaption:nth-of-type(2){border-top:1px solid #c5d2b4}.highlight{background:#d1e6a7;padding:3px}.end-note{padding:55px 0 65px}.end-note>p{font:32px/1.2 Georgia,serif;letter-spacing:-1px;margin:23px 0 27px}.end-note>p em{font-weight:normal}.end-note>a{font:10px Consolas,monospace}footer{border-top:1px solid #c0c9b4;padding:27px 5%;display:flex;justify-content:space-between;gap:20px;align-items:start;max-width:1440px;margin:auto;font:8px/1.8 Consolas,monospace;color:#89957c}footer p{margin:0}footer a{white-space:nowrap}
@media(max-width:650px){header{padding:23px 6%;gap:17px}.brand{font-size:36px}.brand span{font-size:25px}header>span{font-size:9px}header>p{display:none}.opening-inner{padding:33px 6% 32px}.opening .eyebrow{font-size:7px}.opening h1{font-size:52px;letter-spacing:-2.8px}.opening h1 em{font-size:49px;letter-spacing:-2.8px}.opening p{font-size:14px;padding-right:30px;line-height:1.65}.opening-mark{font-size:25px;right:6%;bottom:38px}.articles{padding:0 6%}.articles article{padding:38px 0}.article-meta{font-size:7px;gap:12px}h2{font-size:32px;letter-spacing:-1.1px;line-height:1.12;margin-top:24px}article>p{font-size:16px;line-height:1.85;margin:18px 0}article>.standfirst{font-size:18px;line-height:1.55}p code{font-size:12px}figure{margin:23px 0}figcaption{padding:12px 15px;font-size:8px}pre{padding:21px 15px;font-size:11px;line-height:1.85}.diagnostic{padding:13px 15px;gap:10px}.diagnostic>p{font-size:10px}.diagnostic p code{font-size:10px}.hover-example{display:block;padding:14px 15px}.hover-example>span{display:block;font-size:7px;margin-bottom:12px}.hover-example>code{font-size:11px}.suggestions{margin:0 15px 18px}.code-transition{padding:12px 15px;font-size:8px}article>.aside{font-size:10px;line-height:1.8}.aside code{font-size:9px}.end-note{padding:40px 0 45px}.end-note>.eyebrow{font-size:7px}.end-note>p{font-size:28px}footer{display:block;padding:25px 6%;font-size:7px}footer p{margin:15px 0}footer a{display:inline-block;margin-top:5px}}
@media(max-width:360px){.opening h1{font-size:46px}.opening h1 em{font-size:43px}.opening p{font-size:12px}.opening .eyebrow{font-size:6px}h2{font-size:29px}article>.standfirst{font-size:17px}pre{font-size:10px;padding-inline:12px}.article-meta{font-size:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Retain each candidate's cover; unify only the reading flow below it. */
.reading-header{display:flex;align-items:center;gap:25px;margin:0 auto;width:100%;max-width:1600px;padding:25px 5%;border-bottom:0;background:transparent;font-family:Arial,sans-serif}.reading-header .brand{text-decoration:none;display:block;color:inherit}.reading-header>span{margin:0;font:9px Consolas,monospace;color:inherit}.reading-header .compare-link{margin-left:auto;font:9px Consolas,monospace;text-decoration:none}
.articles{color:#252b22;background:transparent}.articles article h2{color:inherit}.articles .end-note>p{margin:23px 0 27px}.articles .end-note>a{color:inherit}.articles figure{border-radius:0}.articles .article-meta{font-family:Consolas,monospace}.articles .code-example pre{text-align:left}.articles .code-example code{font-family:Consolas,monospace}.articles .code-example .type{font-size:inherit}.articles .code-example .string{font-size:inherit}.articles .standfirst{font-family:Georgia,serif}
body.read-original{background:#f4f3eb}.read-original .articles h2{font-size:44px}.read-original .hero .hero-top{font-size:10px}.read-original .hero-bottom p{font:18px/1.4 Georgia,serif}.read-original .hero-footer{font-size:10px}.read-original footer{font-family:Consolas,monospace}.read-original .hero-copy h1{margin:0}.read-original .hero-art code{background:transparent}.read-original .hero .diagnostic{padding:13px 0 0;color:#f4f3eb;border-color:#ffffff25}.read-original .hero .diagnostic code{color:inherit;font-size:11px}
.read-a .articles h2{color:#192bbd}.read-a .articles .article-meta{color:#5b63a6}.read-a .articles article{border-color:#a9afd0}.read-a .articles figure{background:#e7eaf4;border-color:#ccd3e9}.read-a .articles figcaption{border-color:#ccd3e9}.read-a .articles .code-example pre{color:#283b7d}.read-a .articles .diagnostic{border-color:#ccd3e9}.read-a .articles .end-note{color:#192bbd}.read-a .color-grid h1{margin:35px 0}.read-a footer{color:#69749c;border-color:#bfc6df}
.read-b .articles{color:#252522}.read-b .articles .article-meta{color:#a65a45}.read-b .articles article{border-color:#c4b7a5}.read-b .articles figure{background:#e6e1d6;border-color:#d0c6b6}.read-b .articles figcaption{border-color:#d0c6b6}.read-b .articles .diagnostic{border-color:#d0c6b6}.read-b .articles .hover-example{border-color:#d0c6b6}.read-b .articles .highlight{background:#e9c1af}.read-b .articles .end-note{color:#bd492e}.read-b footer{color:#8a806d;border-color:#ccc3b1}
.read-c .articles h2{font-family:Georgia,serif}.read-c .articles .article-meta{color:#a55c4f}.read-c .articles article{border-color:#c5c0b4}.read-c .articles figure{background:#e4e1d8;border-color:#ccc7b9}.read-c .articles figcaption{border-color:#ccc7b9}.read-c .articles .diagnostic{border-color:#ccc7b9}.read-c .articles .hover-example{border-color:#ccc7b9}.read-c .articles .highlight{background:#dfc6b7}.read-c .keycap{cursor:default}.read-c .articles .end-note{color:#9f4134}.read-c footer{color:#918a78;border-color:#cbc5b8}
.read-d .articles{color:#dce4d4;background:#20251e;max-width:none;padding-inline:max(40px,calc((100% - 760px)/2))}.read-d .articles article{border-color:#536247}.read-d .articles .article-meta{color:#97ac83}.read-d .articles article>p{color:#b4c1aa}.read-d .articles article>.standfirst{color:#d9e2d1}.read-d .articles article>p.aside{color:#8b9a7d}.read-d .articles h2{color:#e8eedf}.read-d .articles figure{background:#2a3423;border-color:#4b5d3b}.read-d .articles figcaption{color:#a3b78c;border-color:#4b5d3b}.read-d .articles pre{color:#d2debf}.read-d .articles .keyword{color:#d0acc3}.read-d .articles .string{color:#b8ce93}.read-d .articles .type{color:#9cbdba}.read-d .articles .diagnostic{color:#e1b08d;border-color:#4b5d3b}.read-d .articles p code{color:#c8ff38;background:#36472b}.read-d .articles .hover-example{border-color:#4b5d3b}.read-d .articles .hover-example>code{color:#c8ff38}.read-d .articles .hover-example>span{color:#a3b78c}.read-d .articles .suggestions{background:#303e25;border-color:#607549}.read-d .articles .suggestions>div{color:#adbf96}.read-d .articles .suggestions>div:first-child{background:#415a2b;color:#c8ff38}.read-d .articles .code-transition{background:#3d512c;color:#bfdb9b}.read-d .articles .highlight{background:#465e2d;color:#c8ff38}.read-d .articles .end-note{color:#c8ff38}.read-d footer{max-width:none;background:#20251e;color:#8ea17e;border-color:#536247}
@media(max-width:650px){.reading-header{padding:23px 6%;gap:17px}.reading-header>span{font-size:8px}.reading-header .compare-link{font-size:8px}.read-original .articles h2{font-size:32px}.read-original .hero-copy h1{font-size:24vw}.read-original .hero-bottom p{font-size:17px}.read-original .hero .hero-top,.read-original .hero-footer{font-size:8px}.read-d .articles{padding-inline:6%}.read-a .color-title h1{margin:25px 0}.read-a .color-title p{font:18px/1.2 Georgia,serif}.read-original .hero-top>span{max-width:48%}.read-c .object-bottom{grid-template-columns:1fr 1fr}.read-c .object-bottom h1{grid-row:auto}}
