.kn-head{padding:72px 0 24px}.kn-head h1{max-width:820px}.kn-list{padding:24px 0 80px}.kn-filters{flex-wrap:wrap;gap:8px;margin:0 0 24px;display:flex}.kn-chip{font:700 13.5px/1 var(--font);border:var(--border-width) solid var(--line);border-radius:var(--radius);background:var(--bg);color:var(--ink);cursor:pointer;min-height:40px;padding:9px 14px}.kn-chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.kn-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.kn-card a{background:var(--glass);border:var(--border-width) solid var(--line);border-radius:var(--radius);flex-direction:column;gap:8px;height:100%;padding:24px;text-decoration:none;transition:border-color .2s;display:flex}.kn-card a:hover{border-color:var(--ink)}.kn-card h2{letter-spacing:-.01em;margin:0;font-size:21px;line-height:1.2}.kn-card p{color:var(--ink-2);margin:0;font-size:15.5px}.kn-cat{font:700 12px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text)}.kn-meta{color:var(--ink-2);margin-top:auto;font-size:13.5px}.kn-empty{color:var(--ink-2);max-width:640px;font-size:17px}.kn-article{padding:56px 0 96px}.kn-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:48px;display:grid}.kn-crumb{margin:0 0 16px;font-size:14.5px}.kn-crumb a{color:var(--accent-text);text-underline-offset:3px}.kn-main h1{margin:12px 0;font-size:clamp(32px,4.4vw,52px)}.kn-main .kn-meta{margin:0 0 20px}.kn-main .lead{max-width:65ch;margin:0 0 28px}.kn-body h2:first-child{margin-top:0}.kn-sources{margin-top:40px;font-size:15px}.kn-sources h2,.kn-box h2{letter-spacing:-.01em;margin:0 0 8px;font-size:18px}.kn-sources ul,.kn-box ul{margin:0;padding-left:20px}.kn-side{gap:16px;display:grid;position:sticky;top:88px}.kn-box{background:var(--glass);border:var(--border-width) solid var(--line);border-radius:var(--radius);padding:22px;font-size:15px}.kn-box p{color:var(--ink-2);margin:0 0 16px}.kn-cta{border-color:var(--accent)}@media (width<=860px){.kn-grid{grid-template-columns:minmax(0,1fr);gap:32px}.kn-side{position:static}.kn-head{padding:48px 0 16px}.kn-article{padding:40px 0 64px}}
