.cat-mast{padding:64px var(--page-x) 28px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:32px;border-bottom:1px solid var(--ink)}.cat-mast .h-wrap .kicker{margin-bottom:18px}.cat-mast h1{margin:0;font-family:var(--display);font-style:italic;font-weight:500;font-size:clamp(64px,7vw,112px);line-height:.96;letter-spacing:-.025em;color:var(--ink);text-wrap:balance}.cat-mast .stats{display:flex;flex-direction:column;gap:10px;font-family:var(--mono);font-size:var(--t-mono-sm);color:var(--muted);text-align:right;align-items:flex-end;letter-spacing:.04em}.cat-mast .stats .stat{display:flex;align-items:baseline;gap:8px}.cat-mast .stats .stat .k{text-transform:uppercase;letter-spacing:.12em;color:var(--quiet)}.cat-mast .stats .stat .v{color:var(--ink);font-size:14px}@media(max-width:720px){.cat-mast{grid-template-columns:1fr}.cat-mast .stats{align-items:flex-start;text-align:left}}.filter-bar{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:18px var(--page-x);border-bottom:1px solid var(--rule);background:var(--paper-2)}.filter-bar .chips{display:flex;flex-wrap:wrap;gap:8px}.filter-bar .utils{display:flex;gap:14px;font-family:var(--mono);font-size:var(--t-mono-sm);color:var(--muted);letter-spacing:.04em}.filter-bar .utils a{color:var(--ink);border-bottom:1px solid var(--rule-2);padding-bottom:1px}.filter-bar .utils a:hover{color:var(--accent);border-bottom-color:var(--accent)}.cat-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink)}@media(max-width:767px){.cat-grid{grid-template-columns:1fr}}.cat-card{padding:32px var(--page-x);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);display:flex;flex-direction:column;min-height:240px;background:var(--paper);color:inherit;transition:background var(--t-fast)}.cat-card:hover{background:var(--paper-2)}@media(min-width:768px){.cat-grid .cat-card:nth-child(2n){border-right:0}}@media(max-width:767px){.cat-card{border-right:0}}.cat-card .kicker{margin-bottom:14px}.cat-card h2{margin:0 0 12px;font-family:var(--sans);font-weight:600;font-size:24px;line-height:1.22;letter-spacing:-.018em;color:var(--ink);text-wrap:balance}.cat-card:hover h2{color:var(--accent)}.cat-card .dek{font-family:var(--sans);font-size:15px;line-height:1.55;color:var(--muted);margin:0 0 18px;max-width:52ch}.cat-card .src{font-family:var(--mono);font-size:var(--t-mono-sm);color:var(--quiet);letter-spacing:.04em;margin:0 0 14px;display:flex;gap:8px;align-items:baseline}.cat-card .src .k{text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.cat-card .byline{margin-top:auto;padding-top:14px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:var(--t-mono-sm);color:var(--muted);display:flex;align-items:center;gap:8px;letter-spacing:.04em}.cat-card .byline .who{color:var(--ink)}.cat-card .byline .id{margin-left:auto;color:var(--quiet)}.cat-card .byline .id em{color:var(--accent);font-style:normal}.pager{display:flex;justify-content:center;align-items:center;gap:8px;padding:40px var(--page-x);border-top:1px solid var(--rule);flex-wrap:wrap}.pager .pg{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--rule-2);font-family:var(--mono);font-size:var(--t-mono-sm);color:var(--ink);padding:0 10px;letter-spacing:.04em;transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}.pager .pg:hover{background:var(--paper-2);border-color:var(--ink)}.pager .pg.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.pager .nav-btn{border-color:var(--ink);text-transform:uppercase;letter-spacing:.08em}.pager .nav-btn:hover{background:var(--ink);color:var(--paper)}.pager .nav-btn.is-disabled{opacity:.35;pointer-events:none;border-color:var(--rule)}.pager .gap{color:var(--quiet);padding:0 4px;font-family:var(--mono);font-size:var(--t-mono-sm)}.cat-empty{padding:64px var(--page-x);text-align:center}.cat-empty p{font-family:var(--display);font-style:italic;font-size:22px;color:var(--ink-2);max-width:50ch;margin:0 auto;line-height:1.45}.cat-empty .small{margin-top:12px;font-family:var(--mono);font-size:var(--t-mono-sm);color:var(--muted);letter-spacing:.04em}
