:root{color-scheme:only light;--ink:#080808;--muted:#606060;--line:#dedede;--pad:clamp(22px,3.2vw,54px)}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.7 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #000;outline-offset:5px}::selection{background:#111;color:white}.skip{position:absolute;left:20px;top:-100px;background:#000;color:white;padding:10px;z-index:20}.skip:focus{top:10px}
.site-head{padding:28px var(--pad);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;font-size:12px;line-height:normal;font-weight:700;letter-spacing:.08em}.site-head a{text-decoration:none}.brand{font-size:15px;letter-spacing:.12em;white-space:nowrap}.nav{display:flex;gap:clamp(18px,2.4vw,38px)}.nav a{padding:8px 0}.nav a:hover,.nav [aria-current]{text-decoration:underline;text-underline-offset:6px}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;line-height:1.5}.pixel{display:inline-block;width:9px;height:9px;background:#080808;box-shadow:12px 0 #ddd,0 12px #ddd;margin-right:26px}.overview{width:min(1100px,100% - 44px);margin:64px auto 100px}h1{font-size:clamp(40px,6vw,76px);line-height:1;letter-spacing:-.065em;margin:24px 0}h2{font-size:30px;line-height:1.2;letter-spacing:-.04em}h3{font-size:21px;line-height:1.35;letter-spacing:-.025em}.lead{font-size:19px;line-height:1.6;color:#555;max-width:620px}.guide-choices{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 22px}.primary,.secondary{display:inline-block;padding:12px 20px;font-size:14px;font-weight:700;text-decoration:none;border:1px solid #111}.primary{background:#111;color:#fff}.secondary:hover{background:#f4f4f4}.version{color:var(--muted);font-size:12px;line-height:1.7}.start-route{border-block:1px solid var(--line);margin:48px 0;padding:22px 0 34px}.route-links{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.route-links a{text-decoration:none;font-size:15px;font-weight:700}.route-links span{display:block;font-size:10px;letter-spacing:.12em;color:#666;margin-bottom:8px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.section-head a{font-size:13px}.topics{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(9,auto);grid-auto-flow:column;column-gap:36px}.topic{display:grid;grid-template-columns:22px 1fr 18px;gap:16px;align-items:center;border-bottom:1px solid var(--line);text-decoration:none;padding:18px 0}.topic h3{font-size:17px;margin:0}.topic:hover h3{text-decoration:underline;text-underline-offset:5px}.topic .eyebrow{color:#666}.note{font-size:14px;color:#555;margin:32px 0}
.guide-layout{width:min(1240px,100% - 44px);margin:40px auto 90px;display:grid;grid-template-columns:245px minmax(0,760px);gap:clamp(32px,5vw,80px);justify-content:center}.guide-layout aside{min-width:0}.chapter-menu{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto;padding:0 12px 12px 0}.chapter-menu summary{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;cursor:pointer;padding:12px 0}.chapter-menu ol{list-style:none;padding:0;margin:8px 0}.chapter-menu a{display:flex;gap:12px;font-size:13px;line-height:1.4;padding:7px 0;text-decoration:none;color:#555}.chapter-menu a:hover,.chapter-menu a[aria-current]{color:#000;text-decoration:underline}.chapter-menu span{font-size:10px;color:#777;min-width:16px;padding-top:2px}.guide-layout article{min-width:0}.guide-top{display:flex;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:30px}.languages{display:flex;gap:18px}.languages [aria-current]{font-weight:700;text-decoration:none}.guide-layout h1{font-size:clamp(40px,5vw,64px)}.intro>p:first-child{font-size:20px;line-height:1.5;color:#333}.intro p{font-size:15px;color:#555}.chapter{border-top:1px solid var(--line);margin-top:40px;padding-top:24px;scroll-margin-top:24px}.chapter>.eyebrow{color:#666}.chapter h2{font-size:29px;margin:12px 0 22px}.chapter h3{margin-top:30px}.chapter p,.chapter li{font-size:16px;color:#333}.chapter strong{color:#111}.chapter li{padding-left:4px;margin:8px 0}.chapter ol,.chapter ul{padding-left:24px}code{font-size:.9em;background:#f2f2f2;padding:2px 5px;overflow-wrap:anywhere}pre{background:#f4f4f4;border:1px solid var(--line);padding:20px;overflow:auto;font-size:14px;line-height:1.6}pre code{background:none;padding:0;overflow-wrap:normal}.table-scroll{overflow-x:auto;margin:22px 0}table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.6}th,td{text-align:left;vertical-align:top;padding:13px 12px;border-bottom:1px solid var(--line)}th{background:#f5f5f5;font-size:12px}td:first-child{width:35%;color:#111}td{color:#444}.related{border-left:3px solid #111;background:#f7f7f7;padding:14px 18px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;margin:28px 0}.related span{width:100%;font-weight:700}.back-top{font-size:12px;color:#666}.mobile-hint{display:none}figure{margin:28px 0}figure img{display:block;width:100%;height:auto;border:1px solid var(--line)}figcaption{font-size:12px;color:#666;margin-top:10px}footer{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid #eee;padding:28px var(--pad);font-size:11px}footer>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;letter-spacing:.12em;text-decoration:none}footer svg{width:16px;height:16px}footer>span{color:#666}
@media(max-width:800px){.site-head{padding-top:22px}.nav{font-size:11px}.guide-layout{display:flex;flex-direction:column;gap:20px;margin-top:22px}.chapter-menu{position:static;max-height:280px;border-block:1px solid var(--line);padding:0}.chapter-menu summary{padding:14px 0}.chapter-menu nav{padding-bottom:12px}.guide-top{margin-bottom:22px}.guide-layout h1{margin-top:18px}.chapter h2{font-size:26px}.mobile-hint{display:block;font-size:13px}.overview{margin-top:32px}.route-links{grid-template-columns:1fr;gap:22px}.topics{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}.section-head{align-items:flex-start;flex-direction:column;gap:0;margin-bottom:20px}.section-head h2{margin-bottom:10px}.lead{font-size:17px}.guide-choices>a{width:100%;text-align:center}.chapter p,.chapter li{font-size:15px}.chapter{margin-top:32px}th,td{padding:11px 8px}footer{padding-top:20px;padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Keep the overview headline on one line on desktop. */
@media(min-width:800px){.overview h1{font-size:clamp(44px,5.8vw,72px);white-space:nowrap}.overview h1 br{display:none}}

/* Collection Builder: bounded tables and full-size screenshot links. */
.collection-callout{border-left:3px solid #111;background:#f7f7f7;padding:14px 22px;margin:28px 0}.collection-callout p{margin:8px 0}.role-table table{min-width:640px}.role-table td:first-child{width:16%}.collection-figure{max-width:620px;margin:28px auto}.collection-figure img{width:100%;height:auto}.chapter h3[id]{scroll-margin-top:32px}

.collection-toc{display:flex;flex-wrap:wrap;gap:8px 18px;padding:18px 0;border-block:1px solid var(--line);margin:28px 0}.collection-toc a{font-size:13px;padding:6px 0}.collection-callout{display:block}.collection-callout p{width:100%}

.chapter .table-hint{display:none}@media(max-width:640px){.chapter .table-hint{display:block;font-size:12px;color:#666;margin-bottom:0}}

/* Inline vectors keep link and workflow arrows monochrome on iOS. */
.docs-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex:none}
