:root{--bg:#fff;--ink:#0a0a0a;--ink-soft:#2b2b2b;--muted:#6b6b6b;--line-soft:#e6e6e6;--accent:#2f6b5a;--soft:#f2f6f4;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;text-transform:lowercase}a{color:inherit;text-decoration:none}h1{font-weight:600;letter-spacing:-.02em}h1,p{margin:0}p{color:var(--ink-soft)}button{font:inherit;text-transform:lowercase;cursor:pointer}.hidden{display:none!important}.nav{display:flex;align-items:center;justify-content:space-between;padding:.9rem clamp(1rem,4vw,3rem);border-bottom:1px solid var(--line-soft)}.brand{font-size:.875rem}.brand,.eyebrow{font-family:var(--font-mono)}.eyebrow{font-size:.625rem;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}.wrap{max-width:760px;margin:0 auto;padding:clamp(1rem,3vw,2rem) clamp(1rem,4vw,2rem) 5rem}.app{display:flex;flex-direction:column;gap:1.2rem}.hero h1{font-size:clamp(1.5rem,4vw,2.1rem);line-height:1.05}.hero p{color:var(--muted);margin-top:.5rem;max-width:54ch}.hero .session{font-family:var(--font-mono);font-size:.625rem;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-top:.6rem}.tabs{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.tabs button{background:none;border:1px solid var(--line-soft);padding:.45rem .9rem;color:var(--muted)}.tabs button.on{border-color:var(--ink);color:var(--ink)}.tabs .msg{font-family:var(--font-mono);font-size:.625rem;color:var(--accent);margin-left:auto}.pane{flex-direction:column;gap:.8rem}.bar,.pane{display:flex}.bar{gap:.5rem}.bar input{flex:1 1;font:inherit;text-transform:none;background:var(--bg);border:1px solid var(--line-soft);padding:.6rem .8rem;min-width:0}.bar input:focus{outline:none;border-color:var(--ink)}.bar button{background:var(--accent);color:#fff;border:1px solid var(--accent);padding:.6rem 1.1rem}.bar button:disabled{opacity:.5}.hint{font-family:var(--font-mono);font-size:.625rem;color:var(--muted)}.fp{display:flex;flex-direction:column;gap:1rem}.digest{font-size:.95rem;color:var(--ink-soft);border-left:2px solid var(--accent);padding-left:.8rem}.grp{display:flex;flex-direction:column}.grp-h{font-family:var(--font-mono);font-size:.625rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.35rem}.dir-row,.link-row{display:flex;align-items:center;gap:.6rem;padding:.45rem 0;border-top:1px solid var(--line-soft)}.grp .link-row:first-of-type{border-top:none}.lic{width:1.6rem;text-align:center;flex:none}.lurl{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lurl:hover{color:var(--accent)}.conf{font-size:.6rem}.conf,.tag-open{font-family:var(--font-mono);color:var(--accent)}.tag-open{font-size:.55rem;text-transform:uppercase;border:1px solid var(--accent);padding:.05rem .3rem}.dir-row .x,.link-row button{background:none;border:1px solid var(--line-soft);padding:.2rem .55rem;font-size:.6875rem;color:var(--muted);flex:none}.link-row button:hover{border-color:var(--ink);color:var(--ink)}.feed{flex-direction:column}.feed,.post{display:flex}.post{align-items:center;gap:.7rem;padding:.55rem 0;border-top:1px solid var(--line-soft)}.post:first-child{border-top:none}.post:hover .p-title{color:var(--accent)}.p-thumb{width:52px;height:52px;object-fit:cover;background:var(--soft);flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.7rem;color:var(--muted);text-transform:uppercase}.p-meta{flex:1 1;overflow:hidden}.p-title{text-transform:none}.p-sub{font-family:var(--font-mono);font-size:.625rem;margin-top:.15rem}.more,.p-sub{color:var(--muted)}.more{align-self:center;background:none;border:1px solid var(--line-soft);padding:.5rem 1.2rem}.more:hover{border-color:var(--ink);color:var(--ink)}.caught{text-align:center;color:var(--accent);padding:1rem 0}.caught,.empty{font-family:var(--font-mono);font-size:.75rem}.empty{color:var(--muted);padding:.6rem 0}.dir-row:first-of-type{border-top:none}@media (max-width:560px){.wrap{padding:.75rem .7rem 4rem}.nav{padding:.7rem .9rem}.bar{flex-wrap:wrap}.bar input,.tabs .msg{flex:1 1 100%}.tabs .msg{margin-left:0}}