/* promptarium github page: ranked repo list, click a row to expand. sits on top of pa.css + site.css */
.gh-list{padding-bottom:40px}
.gh-grp{margin-top:clamp(30px,3.6vw,52px)}
.gh-grp:first-child{margin-top:18px}
.gh-grp-h{display:flex;align-items:baseline;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--edge-2)}
.gh-grp-h h2{font-size:clamp(26px,3vw,40px);font-weight:800;font-stretch:125%;letter-spacing:-.045em;line-height:1}
.gh-grp-h .n{font:500 13px/1 var(--mono);color:var(--dim)}
.gh-grp-h p{margin-left:auto;font-size:13.5px;color:var(--dim);text-align:right;max-width:46ch}
.gh-repo{border-bottom:1px solid var(--edge)}
.gh-row{width:100%;display:grid;grid-template-columns:34px 30px minmax(170px,.9fr) minmax(0,2fr) 78px 18px;align-items:center;gap:14px;padding:15px 4px;text-align:left;transition:background-color .2s}
.gh-row:hover{background:rgba(255,255,255,.025)}
.gh-rk{font:500 12.5px/1 var(--mono);color:var(--dim);font-variant-numeric:tabular-nums}
.gh-av{width:30px;height:30px;border-radius:9px;background:var(--surface);object-fit:cover}
.gh-nm{min-width:0;font-size:16px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gh-nm .own{color:var(--dim);font-weight:500}
.gh-nm b{font-weight:750;font-stretch:108%;letter-spacing:-.01em}
.gh-new{display:inline-block;margin-left:8px;padding:3px 6px;border-radius:6px;box-shadow:inset 0 0 0 1px var(--edge-2);color:var(--smoke);font:500 10px/1 var(--mono);vertical-align:2px}
.gh-sm{min-width:0;color:var(--smoke);font-size:15px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gh-st{display:flex;align-items:center;justify-content:flex-end;gap:5px;font:500 13.5px/1 var(--mono);font-variant-numeric:tabular-nums}
.gh-st svg{width:13px;height:13px;fill:var(--bone)}
.gh-chev{width:18px;height:18px;fill:none;stroke:var(--dim);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--out),stroke .2s}
.gh-repo.open .gh-chev{transform:rotate(180deg);stroke:var(--bone)}
.gh-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s var(--out)}
.gh-repo.open .gh-panel{grid-template-rows:1fr}
.gh-panel>div{overflow:hidden;min-height:0}
.gh-pin{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(22px,3vw,44px);padding:6px 4px 30px 78px}
.gh-desc p{font-size:15.5px;line-height:1.62;max-width:64ch;color:var(--bone);opacity:.9}
.gh-desc p+p{margin-top:12px}
.gh-lbl{margin:22px 0 9px;font:500 11.5px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}
.gh-hl{list-style:none;display:grid;gap:7px}
.gh-hl li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.5;color:var(--smoke)}
.gh-hl li::before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:2px;background:var(--bone);opacity:.5}
.gh-inst{display:flex;align-items:flex-start;gap:10px;padding:6px 6px 6px 14px;border-radius:12px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--edge)}
.gh-inst code{flex:1;min-width:0;font:400 13px/1.55 var(--mono);white-space:pre;overflow-x:auto;scrollbar-width:none;padding:4px 0}
.gh-inst code::-webkit-scrollbar{display:none}
.gh-copy{flex:none;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:9px;background:var(--field-2);font-size:13px;font-weight:600;transition:background-color .2s}
.gh-copy:hover{background:rgba(255,255,255,.18)}
.gh-copy svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.gh-hu{margin-top:14px;padding:11px 14px;border-radius:12px;border:1px dashed rgba(255,255,255,.22);font-size:14px;line-height:1.5;color:var(--smoke)}
.gh-ic{font:400 .88em var(--mono);padding:1px 5px;border-radius:5px;background:var(--field-2);overflow-wrap:anywhere}
.gh-side{display:flex;flex-direction:column;gap:16px;min-width:0}
.gh-pv{border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:inset 0 0 0 1px var(--edge)}
.gh-pv img{width:100%;max-height:340px;object-fit:cover;object-position:top}
.gh-rankline{font:500 12.5px/1.5 var(--mono);color:var(--smoke)}
.gh-rankline b{color:var(--bone);font-weight:600}
.gh-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:16px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--edge)}
.gh-facts div{padding:11px 14px;border-bottom:1px solid var(--edge)}
.gh-facts div:nth-child(odd){border-right:1px solid var(--edge)}
.gh-facts div:nth-last-child(-n+2){border-bottom:0}
.gh-facts dt{font:500 11px/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--dim)}
.gh-facts dd{margin-top:6px;font:500 14.5px/1.25 var(--mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gh-x{font-size:14px;line-height:1.5;color:var(--smoke)}
.gh-x a{color:var(--bone);border-bottom:1px solid var(--edge-2)}
.gh-x a:hover{border-color:var(--bone)}
.gh-acts{display:flex;flex-wrap:wrap;gap:8px}
.gh-acts .btn{height:42px;padding:0 18px;font-size:14px}
.gh-acts .btn svg{width:13px;height:13px}
.gh-empty{padding:70px 0;color:var(--dim)}
@media (max-width:860px){
  .gh-row{grid-template-columns:26px 28px minmax(0,1fr) auto 16px;grid-template-areas:"rk av nm st ch" ". . sm sm sm";row-gap:6px;gap:10px;padding:14px 2px}
  .gh-rk{grid-area:rk}.gh-av{grid-area:av;width:28px;height:28px;border-radius:8px}.gh-nm{grid-area:nm}.gh-st{grid-area:st}.gh-chev{grid-area:ch}
  .gh-sm{grid-area:sm;font-size:14.5px}
  .gh-pin{grid-template-columns:minmax(0,1fr);padding:4px 2px 26px}
  .gh-grp-h p{display:none}
}
@media (prefers-reduced-motion:reduce){.gh-panel,.gh-chev{transition:none}}
