:root{--bg:#fbfaf7;--fg:#1d1d1b;--mut:#5d5b55;--line:#e3e0d8;--card:#fff;--acc:#8a3b12;--acc2:#2f5d62;--chip:#f1eee6}
@media (prefers-color-scheme:dark){:root{--bg:#161614;--fg:#ece9e1;--mut:#a8a59b;--line:#33312c;--card:#1e1d1a;--acc:#e0a074;--acc2:#8fc3c9;--chip:#26241f}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 ui-serif,Georgia,"Times New Roman",serif}
a{color:var(--acc)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.top,.foot{max-width:1180px;margin:0 auto;padding:1.25rem 1rem}
h1{font-size:1.9rem;margin:.2rem 0 .4rem}
.lede{max-width:62ch;color:var(--mut);margin:0 0 1rem}
form{display:flex;gap:.5rem;max-width:44rem}
input[type=search]{flex:1;min-width:0;padding:.7rem .8rem;font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:.5rem}
input[type=search]:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--acc2);outline-offset:2px}
button{padding:.7rem 1.1rem;font:inherit;color:#fff;background:var(--acc);border:0;border-radius:.5rem;cursor:pointer}
@media (prefers-color-scheme:dark){button{color:#161614}}
button:disabled{opacity:.6;cursor:progress}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.75rem 0 0}
.chips button{background:var(--chip);color:var(--fg);padding:.3rem .65rem;font-size:.9rem;border:1px solid var(--line);border-radius:999px}
#status{min-height:1.5rem;color:var(--mut);margin:.75rem 0 0}
.grid{max-width:1180px;margin:0 auto;padding:0 1rem 1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.col{background:var(--card);border:1px solid var(--line);border-radius:.6rem;padding:.9rem;min-width:0}
.col h2{font-size:1.05rem;margin:0}
.col .how{font-size:.88rem;color:var(--mut);margin:.2rem 0 .7rem}
.col ol{margin:0;padding:0;list-style:none;display:grid;gap:.8rem}
.hit{border-top:1px solid var(--line);padding-top:.6rem}
.hit:first-child{border-top:0;padding-top:0}
.hit .t{font-weight:600;line-height:1.3;overflow-wrap:anywhere}
.hit .p{font-size:.82rem;color:var(--mut);margin:.15rem 0}
.hit .s{font-size:.9rem;margin:.25rem 0 0;overflow-wrap:anywhere}
.badge{display:inline-block;font-size:.78rem;background:var(--chip);border:1px solid var(--line);border-radius:.3rem;padding:.05rem .4rem;margin-top:.3rem}
.ev{font-size:.8rem;color:var(--mut);margin:.2rem 0 0}
.empty{color:var(--mut);font-size:.9rem}
.foot{color:var(--mut);font-size:.88rem}
