:root{--ink: #18213a;--muted: #5a6178;--soft: #8a90a6;--line: #e2e5f1;--bg: #ffffff;--bg-soft: #f5f6fc;--bg-tint: #eef0f9;--accent: #3b54e0;--accent-2: #5b7bff;--radius: 10px;--content: 46rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}.wrap{max-width:64rem;margin:0 auto;padding:0 1.25rem}.narrow{max-width:var(--content)}.site-header{border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;padding-bottom:1rem;gap:1rem}.wordmark{font-weight:700;font-size:1.15rem;letter-spacing:.01em;color:var(--ink);text-decoration:none;white-space:nowrap}.wordmark .dot{display:inline-block;width:.5em;height:.5em;margin-left:.18em;border-radius:50%;background:linear-gradient(135deg,var(--accent-2),var(--accent))}.site-nav{display:flex;gap:1.4rem;flex-wrap:wrap}.site-nav a{color:var(--muted);text-decoration:none;font-size:.95rem}.site-nav a:hover{color:var(--ink)}h1{font-size:clamp(2rem,5vw,3rem);line-height:1.12;letter-spacing:-.02em;margin:0 0 1rem}h2{font-size:1.6rem;line-height:1.25;letter-spacing:-.01em;margin:2.5rem 0 .75rem}h3{font-size:1.15rem;margin:1.75rem 0 .4rem}p{margin:.6rem 0}.lede{font-size:1.2rem;color:var(--muted);max-width:38rem}a{color:var(--accent)}.hero{padding:5rem 0 3.5rem}section.band{padding:3rem 0}section.band.tint{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.75rem}.btn{display:inline-block;padding:.65rem 1.15rem;border-radius:var(--radius);text-decoration:none;font-weight:600;font-size:.98rem;line-height:1.2}.btn-primary{background:linear-gradient(135deg,var(--accent-2),var(--accent));color:#fff}.btn-primary:hover{filter:brightness(1.06)}.btn-ghost{border:1px solid var(--line);color:var(--ink);background:var(--bg)}.btn-ghost:hover{border-color:var(--soft)}.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none}.rules li{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem}.rules strong{display:block;margin-bottom:.25rem}.rules span{color:var(--muted);font-size:.95rem}.apps{display:grid;grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));gap:1.25rem;margin-top:1.5rem}.app-card{border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;background:var(--bg);display:flex;flex-direction:column;gap:.5rem}.app-card h3{margin:0}.app-card p{color:var(--muted);font-size:.98rem;margin:0;flex:1}.app-card .cta{margin-top:.9rem;font-weight:600;text-decoration:none}.soon{color:var(--soft);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.code-rule{border-left:3px solid var(--accent);padding-left:1.25rem;margin:2.25rem 0}.code-rule h2{margin-top:0}.code-rule p{color:var(--muted)}.site-footer{border-top:1px solid var(--line);margin-top:4rem;padding:2rem 0 2.5rem;color:var(--soft);font-size:.92rem}.site-footer nav{display:flex;gap:1.25rem;flex-wrap:wrap;margin-bottom:.75rem}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--ink)}.prose{max-width:var(--content)}.prose img{max-width:100%}.prose blockquote{border-left:3px solid var(--line);margin:1rem 0;padding:.2rem 0 .2rem 1rem;color:var(--muted)}.prose pre{overflow-x:auto;background:var(--bg-soft);padding:1rem;border-radius:var(--radius)}@media(max-width:640px){.hero{padding:3.25rem 0 2.5rem}body{font-size:16px}}.guide-head{padding:3.5rem 0 1.25rem}.guide-part{color:var(--soft);font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;margin:0 0 .5rem}.guide-head h1{display:flex;align-items:baseline;gap:.7rem}.guide-number{font-size:.95rem;font-weight:600;color:#fff;flex:none;background:linear-gradient(135deg,var(--accent-2),var(--accent));border-radius:999px;min-width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center}.guide-menu{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-soft);margin:0 0 2rem}.guide-menu>summary{cursor:pointer;padding:.8rem 1rem;list-style:none;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.guide-menu>summary::-webkit-details-marker{display:none}.guide-menu>summary:after{content:"▾";margin-left:auto;color:var(--soft)}.guide-menu[open]>summary:after{content:"▴"}.guide-menu[open]>summary{border-bottom:1px solid var(--line)}.guide-menu-label{font-weight:600;font-size:.95rem}.guide-menu-here{color:var(--muted);font-size:.95rem}.guide-menu nav{padding:.4rem 1rem 1rem}.guide-menu-part h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--soft);margin:1rem 0 .4rem}.guide-menu ol{list-style:none;padding:0;margin:0}.guide-menu li{margin:0}.guide-menu li a{display:flex;gap:.6rem;align-items:baseline;padding:.35rem .5rem;border-radius:6px;color:var(--ink);text-decoration:none;font-size:.97rem}.guide-menu li a:hover{background:var(--bg-tint)}.guide-menu li a[aria-current=page]{background:var(--bg-tint);font-weight:600}.guide-menu li a .n{color:var(--soft);font-variant-numeric:tabular-nums;min-width:1.2rem}.guide-menu-all{margin:1rem 0 0;font-size:.92rem}.guide-body{padding-bottom:2.5rem}.guide-body h2{margin-top:2.4rem}.guide-body h3{margin-top:1.8rem}.shot{margin:1.8rem 0}.shot img{display:block;width:100%;border:1px solid var(--line);border-radius:var(--radius)}.shot figcaption{color:var(--muted);font-size:.92rem;margin-top:.55rem}.shot-spec{border:1px dashed var(--soft);border-radius:var(--radius);background:var(--bg-soft);padding:1rem 1.1rem}.shot-spec b{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--soft);margin-bottom:.45rem}.shot-spec ul{margin:.5rem 0 0;padding-left:1.1rem;color:var(--muted);font-size:.95rem}.shot-spec code{font-size:.85rem;color:var(--soft)}.note{border-left:3px solid var(--accent);background:var(--bg-soft);padding:.9rem 1.1rem;border-radius:0 var(--radius) var(--radius) 0;margin:1.5rem 0}.note.warn{border-left-color:#c2410c}.note p:first-child{margin-top:0}.note p:last-child{margin-bottom:0}.guide-nav{display:flex;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding:1.5rem 0 4rem}.guide-nav a{flex:1 1 12rem;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;display:flex;flex-direction:column;gap:.2rem}.guide-nav a:hover{border-color:var(--soft)}.guide-nav .guide-next{text-align:right}.guide-nav-label{color:var(--soft);font-size:.85rem}.guide-nav-title{font-weight:600;font-size:.98rem}.guide-index-part h2{font-size:1rem;text-transform:uppercase;letter-spacing:.04em;color:var(--soft);margin:2rem 0 .75rem}.guide-index-list{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}.guide-index-list a{display:flex;gap:.9rem;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:.85rem 1rem}.guide-index-list a:hover{border-color:var(--soft);background:var(--bg-soft)}.guide-index-list .n{color:var(--soft);font-variant-numeric:tabular-nums;min-width:1.4rem}.guide-index-list .t{display:flex;flex-direction:column;gap:.15rem}.guide-index-list .t span{color:var(--muted);font-size:.93rem}
