/* The target inventory is a reading map, not an effort percentage. */
.pg-map{margin:35px 0 55px;color:#333}
.pg-map *{box-sizing:border-box}.pg-map [hidden]{display:none!important}
.pg-intro{max-width:640px}.pg-intro>span{font:10px/1.6 Menlo,monospace;letter-spacing:.06em;color:#666}.rf-body .pg-intro>h3{font-size:32px;margin:12px 0 18px}.rf-body .pg-intro>p{font-size:14px;line-height:1.9;margin:0 0 28px;color:#505050}
.pg-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border-block:1px solid #bdbdbd;padding:22px 0;margin:0}.pg-totals dt{font-size:11px;color:#555}.pg-totals dd{font:38px/1.4 var(--nan-serif);margin:8px 0 0}
.rf-body .pg-reading-note,.rf-body .pg-footnote{font-size:12px;line-height:1.9;color:#555;margin:18px 0 32px}
.pg-lane{margin:35px 0 42px}.pg-lane>header{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.rf-body .pg-lane h4{font-size:26px;margin:0}.pg-lane>header>span{white-space:nowrap;font:11px Menlo,monospace;color:#666}.rf-body .pg-lane>p{font-size:13px;color:#555;margin:10px 0 20px}
.pg-group-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pg-group-card{position:relative;display:flex;flex-direction:column;text-decoration:none!important;padding:20px 22px;background:#f5f5f5;border:1px solid #c7c7c7;min-width:0;color:#333;transition:background .15s,border-color .15s}.pg-group-card>span{font:10px/1.6 Menlo,monospace;color:#666}.pg-group-card>strong{font:23px/1.4 var(--nan-serif);margin:9px 0 0;max-width:90%}.rf-body .pg-group-card>p{font-size:12px;line-height:1.8;color:#555;margin:12px 0 16px;flex:1}.pg-group-card>small{font-size:10px;color:#555}.pg-group-card>b{position:absolute;right:18px;top:19px;font-size:16px;font-weight:400;color:#666}.pg-group-card:hover,.pg-group-card:focus-visible{background:#e5e5e5;border-color:#777;outline:2px solid #777;outline-offset:2px}
.pg-explorer{border-top:1px solid #aaa;padding-top:28px}.rf-body .pg-explorer>header>h4{font-size:28px;margin:0 0 14px}.rf-body .pg-explorer>header>p{font-size:13px;color:#555;margin:0 0 24px}
.pg-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;background:#e6e6e6;padding:18px;margin:25px 0}.pg-controls>label{display:flex;flex-direction:column;gap:8px;font-size:11px;min-width:0}.pg-controls input,.pg-controls select{min-width:0;width:100%;height:40px;border:1px solid #aaa;background:#f8f8f8;padding:7px;font:12px var(--nan-sans);color:#333}.pg-controls button{justify-self:start;padding:8px 13px;border:1px solid #aaa;background:#f6f6f6;cursor:pointer;color:#333;font:11px var(--nan-sans)}.pg-controls output{grid-column:2/-1;text-align:right;align-self:center;font-size:11px;color:#555}
.pg-group{margin:12px 0;border:1px solid #c1c1c1;background:#f4f4f4;scroll-margin-top:85px}.pg-group>summary{display:flex;align-items:center;gap:14px;padding:17px 20px;cursor:pointer;list-style:none}.pg-group>summary:before{content:'+';font:18px Menlo,monospace;color:#555}.pg-group[open]>summary:before{content:'−'}.pg-group>summary>span{font:21px var(--nan-serif);flex:1}.pg-group>summary>small{font-size:10px;color:#555}.pg-group[open]>summary{border-bottom:1px solid #c9c9c9;background:#e9e9e9}
.rf-body .pg-targets{list-style:none;padding:0;margin:0}.rf-body .pg-targets>li{margin:0;border-bottom:1px solid #d5d5d5}.rf-body .pg-targets>li:last-child{border-bottom:0}.pg-target{scroll-margin-top:85px}.pg-target>summary{display:flex;align-items:baseline;gap:16px;cursor:pointer;padding:15px 20px;list-style:none}.pg-target>summary:before{content:'›';font-size:16px;color:#555}.pg-target[open]>summary:before{content:'⌄'}.pg-target>summary>code{font-size:12px;background:transparent;padding:0;flex:1;overflow-wrap:anywhere}.pg-badge{font-size:10px;padding:3px 7px;border:1px solid #bababa;white-space:nowrap;background:#eee}.pg-registered{background:#dedede;border-color:#999}.pg-local{background:#eee;border-style:dashed;border-color:#888}.pg-open{background:#f8f8f8}.pg-blocked{border-color:#8d5044;color:#7b4138;background:#f0e7e5}
.pg-target-body{padding:0 22px 23px;background:#fafafa}.pg-target-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0;padding:18px 0}.pg-target-facts dt{font-size:10px;color:#666}.pg-target-facts dd{font-size:12px;margin:7px 0 0}.pg-target-links{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:11px;padding:8px 0 20px;border-bottom:1px solid #ccc}.pg-target-links a{color:#444;text-underline-offset:3px}
.pg-dependencies{display:grid;grid-template-columns:1fr 1fr;gap:25px 30px;margin-top:22px}.rf-body .pg-dependencies h5{font:15px var(--nan-serif);margin:0 0 13px}.pg-dependencies h5>small{font:10px Menlo,monospace;margin-left:5px;color:#666}.rf-body .pg-dependencies ul{padding:0 0 0 15px;margin:0}.rf-body .pg-dependencies li{font-size:11px;margin:7px 0}.pg-dependencies code{font-size:10px;background:transparent;padding:0;overflow-wrap:anywhere}.rf-body .pg-dependencies p{font-size:11px;color:#666;margin:0;line-height:1.8}.rf-body .pg-edge-note{border-top:1px dashed #ccc;padding-top:15px;margin:24px 0 0;font-size:11px;line-height:1.9;color:#666}.rf-body .pg-empty{font-size:13px;padding:20px;background:#e6e6e6}
.pg-map a:focus-visible,.pg-map summary:focus-visible,.pg-map input:focus-visible,.pg-map select:focus-visible,.pg-map button:focus-visible{outline:2px solid #555;outline-offset:3px}
@media(max-width:620px){.pg-totals{grid-template-columns:1fr 1fr;gap:20px}.pg-totals dd{font-size:33px}.pg-group-cards{grid-template-columns:1fr}.pg-group-card{padding:20px}.rf-body .pg-lane h4{font-size:23px}.pg-lane>header{align-items:start}.pg-controls{grid-template-columns:1fr 1fr;gap:14px;padding:14px}.pg-controls>label:first-child{grid-column:1/-1}.pg-controls output{grid-column:2}.pg-group>summary{padding:16px 14px}.pg-group>summary>span{font-size:19px}.pg-target>summary{padding:15px 12px;gap:9px;flex-wrap:wrap}.pg-target>summary>code{min-width:65%;font-size:11px}.pg-target>summary>.pg-badge{margin-left:19px}.pg-target-body{padding:0 15px 20px}.pg-target-facts,.pg-dependencies{grid-template-columns:1fr;gap:18px}.pg-target-facts{grid-template-columns:1fr 1fr;gap:12px}.pg-target-facts dd{font-size:11px}}
@media(prefers-reduced-motion:reduce){.pg-group-card{transition:none}}
@media print{.pg-controls{display:none!important}.pg-group-cards{grid-template-columns:1fr 1fr}.pg-group{break-inside:avoid}.pg-target-body{background:white}}

/* Directed dependency diagrams: fixed component layout, focused target ranks. */
.pg-graph{margin:30px 0 45px;scroll-margin-top:80px;border:1px solid #b9b9b9;background:#f7f7f7}
.pg-graph-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:16px;padding:18px;border-bottom:1px solid #ccc}
.pg-graph-modes,.pg-graph-zoom{display:flex;gap:4px}.pg-graph button{font:11px var(--nan-sans);color:#333;cursor:pointer}.pg-graph-modes button,.pg-graph-zoom button{padding:9px 11px;border:1px solid #bbb;background:#f3f3f3}.pg-graph-modes button[aria-pressed="true"]{background:#dedede;border-color:#666}.pg-graph-picker{display:grid;gap:7px;flex:1 1 180px;min-width:0;max-width:100%;font-size:11px;color:#555}.pg-graph-picker select{min-width:0;width:100%;max-width:100%;font:11px Menlo,monospace;appearance:none;-webkit-appearance:none;background:#fafafa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1L6 6L11 1' fill='none' stroke='%23555' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center;border:1px solid #aaa;height:35px;padding:5px 38px 5px 8px;color:#333}.pg-graph-zoom{margin-left:auto}
.pg-graph-legend{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:11px;line-height:1.7;padding:18px 18px 0;color:#4b4b4b}.pg-graph-legend span{display:flex;align-items:center;gap:9px}.pg-graph-legend i{display:inline-block;width:25px;border-top:2px solid #555}.pg-graph-legend .pg-line-call{border-top-style:dashed;color:#888}.rf-body .pg-graph-instruction{font-size:11px;line-height:1.8;margin:12px 18px 18px;color:#555}
.pg-graph-scroll{scroll-margin-top:85px;overflow:auto;overscroll-behavior-inline:contain;max-width:100%;border-block:1px solid #d0d0d0;background:radial-gradient(#d0d0d066 .8px,transparent .8px);background-size:18px 18px}.pg-graph-size{position:relative;margin:0 auto;width:1230px;height:730px;overflow:hidden}.pg-graph-canvas{position:absolute;left:0;top:0;transform-origin:0 0}.pg-component-diagram{position:relative;width:100%;height:100%}.pg-graph-edges,.pg-focus-edges{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.pg-graph-edges marker path,.pg-focus-edges marker path{fill:#666}.pg-diagram-edge{transition:opacity .15s}.pg-diagram-edge>path{fill:none;stroke:#626262;stroke-width:1.8}.pg-edge-call>path{stroke:#888;stroke-dasharray:6 5}.pg-diagram-edge text{font:13px Menlo,monospace;fill:#444;text-anchor:middle;paint-order:stroke;stroke:#f7f7f7;stroke-width:7;stroke-linejoin:round}.pg-diagram-edge.is-muted{opacity:.13}.pg-diagram-edge.is-related>path{stroke:#292929;stroke-width:3}.pg-graph-column{position:absolute;top:25px;font:12px var(--nan-sans);color:#606060;width:225px;border-bottom:1px solid #ccc;padding-bottom:10px}
.pg-graph-node{position:absolute;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:16px;background:#f1f1f1;border:1px solid #929292;text-decoration:none!important;color:#292929;transition:background .15s,opacity .15s}.pg-graph-node strong{font:20px/1.35 var(--nan-serif)}.pg-graph-node small{font:11px var(--nan-sans);color:#555}.pg-graph-node.is-muted,.pg-focus-node.is-muted{opacity:.3}.pg-graph-node:hover,.pg-graph-node.is-related{background:#e2e2e2;border-color:#555}
.pg-focus-diagram{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:90px;width:1050px;padding:28px 25px 35px;min-height:300px}.pg-focus-column{position:relative;min-width:0}.rf-body .pg-focus-column h4{font:14px var(--nan-sans);color:#555;text-align:center;margin:0 0 20px}.pg-focus-nodes{display:flex;flex-direction:column;gap:12px}.pg-graph .pg-focus-node{position:relative;display:grid;gap:10px;justify-items:start;width:100%;padding:12px;border:1px solid #aaa;background:#f5f5f5;text-align:left;min-height:70px}.pg-focus-node code{font:12px/1.65 Menlo,monospace;white-space:normal;overflow-wrap:anywhere;background:transparent;padding:0;color:#333}.pg-focus-node .pg-badge{font-size:10px;line-height:1.3}.pg-graph .pg-focus-node.is-selected{border:2px solid #444;background:#e0e0e0}.pg-graph .pg-focus-node.is-related{border-color:#555}.rf-body .pg-focus-none{font-size:11px;color:#666;text-align:center;line-height:1.8;margin:0}.pg-graph-detail{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 20px;padding:17px 20px;font-size:12px}.rf-body .pg-graph-detail>p{margin:0;font-size:11px;color:#555;line-height:1.8}.pg-graph-detail strong{font:13px Menlo,monospace;overflow-wrap:anywhere;max-width:100%}.pg-graph-detail>span{font-size:11px;color:#555}.pg-graph-detail>a{font-size:11px;margin-left:auto}.pg-graph [hidden]{display:none!important}
@media(max-width:620px){.pg-graph-toolbar{gap:12px;padding:13px}.pg-graph-picker{min-width:0;width:100%;flex-basis:100%;order:2}.pg-graph-zoom{margin-left:0}.pg-graph-modes button,.pg-graph-zoom button{padding:8px 9px}.pg-graph-legend{padding:14px 13px 0;gap:8px;font-size:10px}.rf-body .pg-graph-instruction{margin:10px 13px 14px;font-size:10px}.pg-graph-detail{padding:14px}.pg-graph-detail>a{margin-left:0}}
@media(prefers-reduced-motion:reduce){.pg-graph-node{transition:none}}

@media(prefers-reduced-motion:reduce){.pg-diagram-edge{transition:none}}

.pg-graph-scroll.can-pan{cursor:grab}.pg-graph-scroll.is-dragging{cursor:grabbing;user-select:none}

.pg-focus-diagram.is-vertical{grid-template-columns:1fr;gap:65px;padding:20px 35px;min-height:0}.pg-focus-diagram.is-vertical .pg-focus-column h4{font-size:12px}.pg-focus-diagram.is-vertical .pg-focus-node{min-height:70px}
