.tool-hub{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px;display:grid}.tool-hub-card{background:var(--ink-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);align-content:start;gap:8px;padding-block:22px;padding-inline:24px;text-decoration:none;display:grid}.tool-hub-card h2{font-family:var(--font-serif);font-size:var(--type-object);color:var(--gold);margin:0}.tool-hub-card p{color:var(--text-muted);margin:0;line-height:1.6}@media (hover:hover) and (pointer:fine){.tool-hub-card:hover{border-color:var(--jade)}.mod-chip:is(a):hover{border-color:var(--jade);color:var(--jade-bright)}}.tool-hub-card:active,.mod-chip:is(a):active{background:var(--ink-raised)}.mod-lede{max-inline-size:72ch;font-size:var(--font-16-19);margin-block:0 10px;line-height:1.7}.mod-intro{max-inline-size:72ch;color:var(--text-muted);margin-block:0 22px;line-height:1.7}.mod-toolbar{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-block-end:8px;display:flex}.mod-search{background:var(--ink-dark);border:1px solid var(--border);border-radius:var(--radius);min-inline-size:0;max-inline-size:460px;color:var(--text);font:inherit;font-size:var(--type-label);flex:260px;padding-block:10px;padding-inline:14px}.mod-search::-webkit-search-cancel-button{appearance:none}.mod-search:focus-visible{outline:2px solid var(--jade);outline-offset:1px}.mod-facet{align-items:baseline;gap:8px 14px;margin-block-start:10px;display:flex}.mod-facet__label{min-inline-size:84px;color:var(--text-muted);font-size:var(--type-label);flex:none}.mod-chips{flex-wrap:wrap;gap:6px;margin:0;display:flex}.mod-chip{background:var(--ink-dark);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:var(--type-label);padding-block:5px;padding-inline:12px;line-height:1.4;text-decoration:none;display:inline-block}.mod-chip--loader{border-style:dashed}.mod-chip[aria-current]{border-color:var(--gold);color:var(--gold);background:color-mix(in oklch, var(--gold) 9%, var(--ink-black))}.mod-status{color:var(--text-muted);flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-block-start:18px;display:flex}.mod-status p{margin:0}.mod-status__subject{font-family:var(--font-serif);font-size:var(--type-object);color:var(--gold);flex-basis:100%;margin:0}.mod-pager{color:var(--text-muted);flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin-block:18px;display:flex}.mod-list{gap:12px;margin-block:18px 0;padding:0;list-style:none;display:grid}.mod-row{background:var(--ink-panel);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:clamp(84px,18vw,176px) minmax(0,1fr);align-items:start;gap:8px 20px;padding:16px;scroll-margin-block-start:96px;display:grid}.mod-row:target{border-color:var(--gold)}.mod-row__art{aspect-ratio:16/10;background:var(--ink-black);outline:1px solid var(--border);outline-offset:-1px;display:block}.mod-row__art img{object-fit:contain;block-size:100%;inline-size:100%;display:block}.mod-row__body{gap:8px;min-inline-size:0;display:grid}.mod-row__name{font-family:var(--font-serif);font-size:var(--type-object);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;font-weight:600;line-height:1.35;display:flex}.mod-row__name a,.mod-row__name .external-link{color:var(--text);overflow-wrap:break-word;text-decoration:none}@media (hover:hover) and (pointer:fine){.mod-row__name a:hover,.mod-row__name .external-link:hover,.mod-row__link:hover{color:var(--jade-bright)}}.mod-row__platform{font-family:var(--font-sans);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);padding-block:1px;padding-inline:6px;font-size:12px;font-weight:400}.mod-row__facts{font-size:var(--type-label);flex-wrap:wrap;gap:2px 18px;margin:0;display:flex}.mod-row__facts div{gap:6px;display:flex}.mod-row__facts dt{color:var(--text-muted)}.mod-row__facts dd{font-variant-numeric:tabular-nums;margin:0}.mod-row__summary{overflow-wrap:break-word;max-inline-size:80ch;margin:0;line-height:1.65}.mod-row__links{font-size:var(--type-label);flex-wrap:wrap;align-items:baseline;gap:4px 20px;margin:0;display:flex}.mod-row__needs{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:inline-flex}.mod-row__needs .mod-facet__label{min-inline-size:0}.mod-row__link{color:var(--link);text-decoration:none}@media not (min-width:640px){.mod-facet{flex-direction:column;gap:6px}}
