:root{--jg-ink: #172033;--jg-muted: #5d6679;--jg-paper: #ffffff;--jg-canvas: #f2f5f4;--jg-line: #d9e1de;--jg-green: #2f7d61;--jg-green-dark: #1f5745;--jg-green-soft: #e4f4ed;--jg-violet: #6d5bd0;--jg-code: #111827;--jg-code-line: #263246;--jg-warn: #fff4d8;--jg-warn-line: #d69a22;--jg-radius: 18px;--jg-shadow: 0 18px 45px rgb(23 32 51 / .09);}
body.bmc-resources{background: var(--jg-canvas);color: var(--jg-ink);}
.jg-page{padding: 1.5rem 0 5rem;background: radial-gradient(circle at 8% 5%,rgb(47 125 97 / .1),transparent 24rem),var(--jg-canvas);}
.jg-page a{color: var(--jg-green-dark);}
.jg-page .breadcrumb-section{margin-bottom: 1rem;}
.jg-hero{display: grid;grid-template-columns: minmax(0,1.3fr) minmax(280px,.7fr);gap: clamp(1.5rem,4vw,3.5rem);padding: clamp(2rem,5vw,4.5rem);border-radius: 28px;background: var(--jg-code);color: #f8fafc;box-shadow: 0 28px 70px rgb(17 24 39 / .2);overflow: hidden;position: relative;}
.jg-hero::before{content: "";position: absolute;width: 24rem;height: 24rem;border-radius: 50%;right: -10rem;top: -12rem;background: rgb(109 91 208 / .25);}
.jg-hero-copy,.jg-picker{position: relative;z-index: 1;}
.jg-kicker{font: 700 .78rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing: .08em;text-transform: uppercase;color: #9de2c5;margin: 0 0 1rem;}
.jg-hero h1{font-size: clamp(2.25rem,5vw,4.4rem);line-height: 1.02;letter-spacing: -.045em;max-width: 850px;margin: 0;}
.jg-lede{font-size: clamp(1.05rem,2vw,1.3rem);line-height: 1.65;color: #d8e1ee;max-width: 760px;margin: 1.5rem 0 .75rem;}
.jg-hero-note{color: #aeb9cb;line-height: 1.7;max-width: 720px;margin: 0;}
.jg-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: .65rem 1.5rem;padding-top: 1.4rem;margin-top: 1.6rem;border-top: 1px solid rgb(255 255 255 / .14);font-size: .9rem;color: #c6d0df;}
.jg-byline a{color: #b7f1d9;}
.jg-picker{align-self: center;background: rgb(255 255 255 / .06);border: 1px solid rgb(255 255 255 / .12);border-radius: 20px;padding: 1rem;}
.jg-picker-title{font: 700 .75rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color: #9ba8bc;text-transform: uppercase;letter-spacing: .09em;margin: .25rem .35rem .7rem;}
.jg-pick{display: grid;grid-template-columns: 2.25rem 1fr auto;align-items: center;gap: .75rem;color: #f8fafc!important;text-decoration: none;padding: .8rem;border-radius: 13px;border: 1px solid transparent;}
.jg-pick:hover,.jg-pick:focus-visible{background: rgb(255 255 255 / .08);border-color: rgb(157 226 197 / .45);}
.jg-pick code{display: grid;place-items: center;width: 2.1rem;height: 2.1rem;border-radius: 9px;background: var(--jg-code-line);color: #9de2c5;}
.jg-pick span{font-weight: 700;}
.jg-pick i{color: #9ba8bc;}
.jg-toc{display: flex;gap: .65rem;overflow-x: auto;padding: 1rem 0;margin: 1rem 0 2rem;scrollbar-width: thin;}
.jg-toc a{flex: 0 0 auto;padding: .65rem .95rem;border: 1px solid var(--jg-line);border-radius: 999px;background: var(--jg-paper);font-weight: 700;font-size: .88rem;text-decoration: none;color: var(--jg-ink);}
.jg-toc a:hover,.jg-toc a:focus-visible{border-color: var(--jg-green);color: var(--jg-green-dark);}
.jg-body{display: grid;gap: 1.25rem;}
.jg-section{background: var(--jg-paper);border: 1px solid var(--jg-line);border-radius: var(--jg-radius);padding: clamp(1.5rem,4vw,3rem);box-shadow: var(--jg-shadow);}
.jg-section h2{font-size: clamp(1.65rem,3vw,2.45rem);line-height: 1.15;letter-spacing: -.025em;margin: 0 0 .9rem;}
.jg-section h3{color: var(--jg-ink);}
.jg-section p{color: var(--jg-muted);line-height: 1.75;}
.jg-intro{max-width: 780px;font-size: 1.07rem;}
.jg-decision-grid{display: grid;grid-template-columns: repeat(4,minmax(0,1fr));gap: 1rem;margin-top: 1.6rem;}
.jg-decision{padding: 1.25rem;border-radius: 15px;background: var(--jg-green-soft);border: 1px solid #c7e4d8;}
.jg-decision strong{display: block;margin-bottom: .45rem;color: var(--jg-green-dark);}
.jg-decision p{font-size: .93rem;line-height: 1.55;margin: 0;}
.jg-decision a{font-weight: 700;}
.jg-rulebook{display: grid;grid-template-columns: minmax(260px,.82fr) minmax(0,1.18fr);gap: 1.5rem;align-items: start;}
.jg-code{background: var(--jg-code);color: #dce5f3;border-radius: 16px;padding: 1.4rem;overflow-x: auto;font: .92rem/1.75 ui-monospace,SFMono-Regular,Menlo,monospace;margin: 0;}
.jg-code .k{color: #c4b5fd;}
.jg-code .s{color: #9de2c5;}
.jg-code .n{color: #f9c97b;}
.jg-warning{border-left: 4px solid var(--jg-warn-line);background: var(--jg-warn);padding: 1.15rem 1.25rem;border-radius: 0 13px 13px 0;margin-top: 1.2rem;color: #5e4618;}
.jg-rules{display: grid;gap: .75rem;margin: 0;padding: 0;list-style: none;}
.jg-rules li{display: grid;grid-template-columns: 1.8rem 1fr;gap: .7rem;align-items: start;padding: .9rem;border-bottom: 1px solid var(--jg-line);color: var(--jg-muted);}
.jg-rules i{color: var(--jg-green);margin-top: .25rem;}
.jg-workflows{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 1rem;margin-top: 1.5rem;}
.jg-workflow{border: 1px solid var(--jg-line);border-radius: 15px;padding: 1.35rem;background: #fbfcfc;}
.jg-workflow-num{font: 800 .78rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;color: var(--jg-violet);letter-spacing: .08em;}
.jg-workflow h3{font-size: 1.05rem;margin: .65rem 0;}
.jg-workflow ol{padding-left: 1.15rem;margin: 0;color: var(--jg-muted);}
.jg-workflow li{padding: .25rem 0;line-height: 1.55;}
.jg-table-wrap{overflow-x: auto;border: 1px solid var(--jg-line);border-radius: 14px;margin-top: 1.4rem;}
.jg-table{width: 100%;min-width: 720px;border-collapse: collapse;}
.jg-table th,.jg-table td{padding: .95rem 1rem;text-align: left;vertical-align: top;border-bottom: 1px solid var(--jg-line);line-height: 1.55;}
.jg-table th{background: #edf2f0;color: var(--jg-ink);font-size: .82rem;text-transform: uppercase;letter-spacing: .045em;}
.jg-table td{color: var(--jg-muted);}
.jg-table tr:last-child td{border-bottom: 0;}
.jg-table a{font-weight: 800;}
.jg-directory-head{display: flex;justify-content: space-between;gap: 1rem;align-items: end;margin-bottom: 1.5rem;}
.jg-count{flex: 0 0 auto;font: 800 .8rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;color: var(--jg-green-dark);background: var(--jg-green-soft);padding: .7rem .85rem;border-radius: 999px;}
.jg-group{border-top: 1px solid var(--jg-line);padding-top: 1.6rem;margin-top: 1.6rem;}
.jg-group:first-of-type{border-top: 0;padding-top: 0;margin-top: 0;}
.jg-group-head{display: grid;grid-template-columns: 3rem minmax(0,1fr);gap: 1rem;align-items: start;margin-bottom: 1rem;}
.jg-group-index{display: grid;place-items: center;width: 3rem;height: 3rem;border-radius: 12px;background: var(--jg-code);color: #9de2c5;font: 800 .78rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;}
.jg-group h3{font-size: 1.25rem;margin: .1rem 0 .25rem;}
.jg-group-head p{margin: 0;line-height: 1.5;}
.jg-tools{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: .75rem;}
.jg-tool{display: grid;grid-template-columns: minmax(0,1fr) auto;gap: .55rem 1rem;align-items: start;padding: 1rem 1.05rem;border: 1px solid var(--jg-line);border-radius: 13px;text-decoration: none;background: #fbfcfc;transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.jg-tool:hover,.jg-tool:focus-visible{transform: translateY(-2px);border-color: #8ebda9;box-shadow: 0 12px 24px rgb(23 32 51 / .08);}
.jg-tool strong{color: var(--jg-ink);}
.jg-tool span{grid-column: 1;color: var(--jg-muted);font-size: .9rem;line-height: 1.5;}
.jg-tool i{grid-column: 2;grid-row: 1 / 3;color: var(--jg-green);margin-top: .25rem;}
.jg-faq{display: grid;gap: .7rem;margin-top: 1.4rem;}
.jg-faq details{border: 1px solid var(--jg-line);border-radius: 13px;background: #fbfcfc;padding: 1rem 1.15rem;}
.jg-faq summary{cursor: pointer;font-weight: 800;color: var(--jg-ink);}
.jg-faq details[open]{border-color: #9dc9b8;}
.jg-faq p{margin: .8rem 0 0;}
.jg-last-rule{display: grid;grid-template-columns: auto 1fr;gap: 1rem;align-items: start;background: var(--jg-code);color: #f8fafc;}
.jg-last-rule code{display: grid;place-items: center;width: 3rem;height: 3rem;border-radius: 12px;background: var(--jg-code-line);color: #9de2c5;font-weight: 800;}
.jg-last-rule h2{color: #fff;}
.jg-last-rule p{color: #c7d2e2;margin-bottom: 0;}
@media (max-width: 991px){.jg-hero{grid-template-columns: 1fr;}.jg-decision-grid,.jg-workflows{grid-template-columns: repeat(2,minmax(0,1fr));}.jg-rulebook{grid-template-columns: 1fr;}}
@media (max-width: 767px){.jg-page{padding-top: .75rem;}.jg-hero{border-radius: 20px;padding: 1.5rem;}.jg-hero h1{font-size: clamp(2.1rem,12vw,3.2rem);}.jg-decision-grid,.jg-workflows,.jg-tools{grid-template-columns: 1fr;}.jg-directory-head{display: block;}.jg-count{display: inline-block;margin-top: .5rem;}.jg-last-rule{grid-template-columns: 1fr;}.jg-section{padding: 1.25rem;}}
