.cat{display:grid;grid-template-columns:var(--rail, 250px) 1fr;gap:0;border-top:1px solid var(--rule);margin-top:2.5rem}@media(max-width:900px){.cat{grid-template-columns:1fr}}.cat__rail{border-right:1px solid var(--rule);padding:1.5rem 1.4rem 3rem;position:sticky;top:4.5rem;align-self:start;max-height:calc(100vh - 4.5rem);overflow-y:auto}@media(max-width:900px){.cat__rail{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--rule)}}.cat__searchrow{position:relative;margin-bottom:1rem}.cat__search{width:100%;font-family:var(--font-mono);font-size:13px;padding:.6rem .7rem;background:var(--surface);color:var(--fg);border:1px solid var(--rule-hi, var(--rule));border-radius:0}.cat__search:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cat__toolbar{display:flex;gap:.5rem;margin-bottom:1.25rem}.cat__btn{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:.45rem .7rem;background:transparent;color:var(--fg-dim);border:1px solid var(--rule);cursor:pointer}.cat__btn:hover{color:var(--fg);border-color:var(--fg-dim)}.cat__btn[aria-pressed=true]{background:var(--love);color:var(--base);border-color:var(--love)}.cat-facet{margin-bottom:1.5rem}.cat-facet__head{margin:0 0 .6rem}.cat-facet__chips{display:flex;flex-wrap:wrap;gap:.3rem}.cat-chip{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:11px;letter-spacing:.02em;padding:.28rem .5rem;background:transparent;color:var(--fg-dim);border:1px solid var(--rule);cursor:pointer;transition:color .12s,border-color .12s,background .12s}.cat-chip:hover{color:var(--fg);border-color:var(--acc)}.cat-chip__n{font-size:9.5px;color:var(--fg-faint)}.cat-chip[aria-checked=true]{background:var(--acc);color:var(--base);border-color:var(--acc)}.cat-chip[aria-checked=true] .cat-chip__n{color:var(--base);opacity:.8}.cat__main{padding:1.5rem 1.6rem 4rem;min-width:0}.cat__meta{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--fg-dim);padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--rule)}.cat__meta strong{color:var(--fg);font-weight:600}.cat__results{display:flex;flex-direction:column;gap:1px;background:var(--rule);border:1px solid var(--rule)}.trow{background:var(--bg)}.trow__head{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:.7rem;width:100%;text-align:left;padding:.7rem .9rem;background:transparent;border:0;cursor:pointer;color:var(--fg)}.trow__head:hover{background:var(--wash)}.trow__chev{color:var(--fg-faint);transition:transform .16s var(--ease);font-size:15px}.trow--open .trow__chev{transform:rotate(90deg)}.trow__name{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;min-width:0}.trow__tool{font-family:var(--font-archivo);font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--fg);text-decoration:none}.trow__tool:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.trow__sub{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint)}.trow__badges{display:flex;flex-wrap:wrap;gap:.3rem;justify-content:flex-end}.tbadge{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:.12rem .4rem;color:var(--acc);border:1px solid color-mix(in srgb,var(--acc) 45%,transparent);white-space:nowrap}.tbadge--soft{color:var(--fg-faint);border-color:var(--rule)}.tbadge--src{background:var(--acc);color:var(--base);border-color:var(--acc)}.tbadge--new{background:var(--love);color:var(--base);border-color:var(--love);font-weight:600}.trow__cmdbar{position:relative;display:flex;align-items:stretch;gap:0;margin:0 .9rem .7rem}.trow__cmd{flex:1;min-width:0;margin:0;padding:.6rem .8rem;background:var(--color-night-base, #191724);border:1px solid color-mix(in srgb,#000 20%,var(--color-night-base, #191724));overflow-x:auto;font-family:var(--font-mono);font-size:12.5px;line-height:1.6}.trow__cmd code{white-space:pre;color:var(--color-night-text, #e0def4)}.trow__copy{flex-shrink:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:0 .8rem;background:var(--color-night-surface, #1f1d2e);color:var(--color-night-subtle, #908caa);border:1px solid color-mix(in srgb,#000 20%,var(--color-night-base, #191724));border-left:0;cursor:pointer}.trow__copy:hover,.trow__copy.is-copied{color:var(--color-night-foam, #9ccfd8)}.trow__detail{padding:0 .9rem 1rem 1.9rem}.tdetail__desc{margin:0 0 .8rem;font-size:14px;line-height:1.6;color:var(--fg-dim);max-width:72ch;white-space:pre-wrap}.tdetail__note{margin:0 0 .8rem;font-family:var(--font-mono);font-size:11.5px;color:var(--foam)}.tdetail__grid{display:grid;gap:.4rem 1.5rem}.tdetail__row{display:grid;grid-template-columns:84px 1fr;gap:.8rem;font-size:12.5px;line-height:1.55}.tdetail__k{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-faint);padding-top:.1rem}.tdetail__v{color:var(--fg-dim);word-break:break-word}.tdetail__v--mono{font-family:var(--font-mono);font-size:11.5px}.tdetail__v a{color:var(--accent);text-decoration:none}.tdetail__v a:hover{text-decoration:underline;text-underline-offset:2px}.tchip-link{font-family:var(--font-mono);font-size:11px;border:1px solid var(--rule);padding:.05rem .35rem;margin-right:.2rem}.cat__morerow{margin-top:1.25rem;display:flex;justify-content:center}.cat__more{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:.6rem 1.4rem;background:transparent;color:var(--fg-dim);border:1px solid var(--rule);cursor:pointer}.cat__more:hover{color:var(--fg);border-color:var(--accent)}.cat-empty{padding:3rem 1rem;text-align:center;color:var(--fg-dim)}.cat-empty p{margin:.4rem 0}.tk-base{color:var(--color-night-text, #e0def4)}.tk-muted{color:var(--color-night-muted, #8b87a3);font-style:italic}.tk-op{color:var(--color-night-subtle, #908caa)}.tk-cmd{color:var(--color-night-foam, #9ccfd8)}.tk-flag{color:var(--color-night-gold, #f6c177)}.tk-str{color:var(--color-night-rose, #ebbcba)}.tk-num{color:var(--color-night-iris, #c4a7e7)}.tk-warn{color:var(--color-night-love, #eb6f92)}.tk-kw{color:var(--color-night-pine, #3e8fb0)}
