.jg{padding-bottom:88px}.jg .accent{color:var(--accent)}.jg a:not(.btn):not(.jg-more-card):not(.jg-dir-card){color:var(--accent);text-underline-offset:3px}.jg-hero{padding-top:64px;padding-bottom:24px}.jg-crumb a{text-decoration:none}.jg-crumb a:hover{text-underline-offset:3px;text-decoration:underline}.jg-eyebrow{width:fit-content;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:8px;margin:22px 0 0;font-size:12px;display:flex}.jg-eyebrow:before{content:"";background:var(--accent);border-radius:999px;width:7px;height:7px}.jg-hero .lead{max-width:62ch;margin:22px 0 0}.jg-meta{font-family:var(--mono);color:var(--ink-3);margin:16px 0 0;font-size:12px}.jg-cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.jg-stats{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-sm);grid-template-columns:repeat(4,1fr);margin-top:40px;display:grid;overflow:hidden}.jg-stat{box-shadow:inset -1px 0 0 var(--line);flex-direction:column;gap:6px;padding:20px 24px;display:flex}.jg-stat:last-child{box-shadow:none}.jg-stat strong{font-family:var(--display);color:var(--ink);font-size:clamp(24px,3vw,32px);font-weight:600;line-height:1.05}.jg-stat span{font-family:var(--mono);letter-spacing:.03em;color:var(--ink-3);font-size:12px}.jg-stats-src{font-family:var(--mono);color:var(--ink-3);margin:10px 0 0;font-size:11.5px}.jg-tldr{border-radius:var(--r);background:var(--accent-tint);border-left:3px solid var(--accent);margin-top:36px;padding:24px 26px}.jg-tldr h2{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink,var(--accent));margin:0;font-size:12px;font-weight:600}.jg-tldr ul{margin:12px 0 0;padding-left:20px}.jg-tldr li{font-family:var(--body);color:var(--ink);margin-top:6px;font-size:16px;line-height:1.6}.jg-body{max-width:780px}.jg-sec{padding-top:64px;scroll-margin-top:72px}.jg-sec .h2{font-family:var(--display);letter-spacing:-.025em;margin:12px 0 0;font-size:clamp(26px,3.2vw,36px);font-weight:600;line-height:1.1}.jg-sec h3{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);margin:28px 0 0;font-size:19px;font-weight:600}.jg-sec p,.jg-sec li{font-family:var(--body);color:var(--ink-2);font-size:17px;line-height:1.68}.jg-sec p{margin:16px 0 0}.jg-sec ul,.jg-sec ol{margin:14px 0 0;padding-left:22px}.jg-sec li{margin-top:8px}.jg-sec strong{color:var(--ink)}.jg-sec code{font-family:var(--mono);background:var(--surface-2);color:var(--ink);border-radius:4px;padding:1px 5px;font-size:.88em}.jg-note{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-sm);align-items:flex-start;gap:14px;margin-top:22px;padding:18px 20px;display:flex}.jg-note p{margin:0;font-size:16px}.jg-note-mark{background:var(--accent);color:#fff;width:24px;height:24px;font-family:var(--mono);border-radius:999px;flex:none;justify-content:center;align-items:center;margin-top:2px;font-size:12px;font-weight:600;display:flex}.jg-note.warn .jg-note-mark{background:#d97706}.jg-table-wrap{border-radius:var(--r);border:1px solid var(--line);margin-top:20px;overflow-x:auto}.jg-table{border-collapse:collapse;width:100%;font-family:var(--body);font-size:15px}.jg-table th{text-align:left;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-2);padding:10px 14px;font-size:11.5px;font-weight:600}.jg-table td{border-top:1px solid var(--line);color:var(--ink-2);vertical-align:top;padding:12px 14px;line-height:1.5}.jg-table td:first-child{color:var(--ink);font-weight:500}.jg-code{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-sm);margin:20px 0 0;overflow:hidden}.jg-code-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px 8px 16px;display:flex}.jg-code-label{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);font-size:12px}.jg-code pre{font-family:var(--mono);color:var(--ink);margin:0;padding:16px 18px;font-size:13px;line-height:1.6;overflow-x:auto}.jg-code pre code{font-size:inherit;color:inherit;background:0 0;padding:0}.jg-code.dark{background:var(--ink);border-color:var(--ink);box-shadow:var(--sh-lg)}.jg-code.dark .jg-code-bar{border-color:#ffffff1a}.jg-code.dark .jg-code-label{color:#ffffff8c}.jg-code.dark pre{color:#ffffffdb;white-space:pre-wrap;word-break:break-word;max-height:440px}.jg-copy{cursor:pointer;border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);font-family:var(--mono);border-radius:var(--r-sm);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;padding:5px 10px;font-size:12px}.jg-copy:hover{border-color:var(--accent);color:var(--accent)}.jg-code.dark .jg-copy{color:#fff;background:#ffffff14;border-color:#fff3}.jg-copy.done,.jg-code.dark .jg-copy.done{color:#fff;background:#16a34a;border-color:#16a34a}.jg-faq{border-top:1px solid var(--line-2);margin-top:20px}.jg-faq details{border-bottom:1px solid var(--line)}.jg-faq summary{cursor:pointer;font-family:var(--display);color:var(--ink);padding:18px 36px 18px 2px;font-size:17.5px;font-weight:600;list-style:none;position:relative}.jg-faq summary::-webkit-details-marker{display:none}.jg-faq summary:after{content:"+";font-family:var(--mono);color:var(--ink-3);font-size:18px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.jg-faq details[open] summary:after{content:"−";color:var(--accent)}.jg-faq details p{margin:0;padding:0 36px 20px 2px}.jg-sources{margin:14px 0 0;padding-left:20px}.jg-sources li{font-size:15.5px}.jg-dir{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:20px;display:grid}.jg-dir-card{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-sm);transition:border-color var(--dur) var(--ease);flex-direction:column;gap:6px;padding:18px 20px;text-decoration:none;display:flex}.jg-dir-card:hover{border-color:var(--accent)}.jg-dir-card strong{font-family:var(--mono);color:var(--ink);word-break:break-word;font-size:13.5px}.jg-dir-card span{font-family:var(--body);color:var(--ink-2);font-size:14.5px;line-height:1.5}.jg-dir-card em{font-style:normal;font-family:var(--mono);color:var(--ink-3);margin-top:auto;padding-top:6px;font-size:11.5px}.jg .jg-dir-card{color:inherit}.jg-more{margin-top:72px}.jg-more-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0;font-size:12px}.jg-more-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:14px;display:grid}.jg-more-card{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-sm);transition:border-color var(--dur) var(--ease);flex-direction:column;gap:8px;padding:22px;text-decoration:none;display:flex}.jg-more-card:hover{border-color:var(--accent)}.jg-more-kicker{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:11.5px}.jg-more-card strong{font-family:var(--display);color:var(--ink);font-size:18px;font-weight:600}.jg-more-tag{font-family:var(--body);color:var(--ink-2);font-size:14.5px;line-height:1.5}@media (width<=760px){.jg-stats{grid-template-columns:repeat(2,1fr)}.jg-stat:first-child{box-shadow:inset -1px -1px 0 var(--line)}.jg-stat:nth-child(2){box-shadow:inset 0 -1px 0 var(--line)}.jg-sec p,.jg-sec li{font-size:16px}}
