@font-face{font-family:DM Sans;src:url('/fonts/font-0.ttf');font-weight:400;font-display:swap}
@font-face{font-family:DM Sans;src:url('/fonts/font-2.ttf');font-weight:600;font-display:swap}
@font-face{font-family:Literata;src:url('/fonts/font-4.ttf');font-weight:600;font-display:swap}
:root{--paper:#f8f5ee;--surface:#fffdf8;--ink:#29242d;--muted:#635a61;--plum:#302435;--orange:#b9431c;--line:#e5dfd5;--mint:#176e59;--cobalt:#3454a0;color-scheme:light;scrollbar-color:var(--muted) var(--paper)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.7}::selection{background:#e9d9ed;color:var(--plum)}
header{background:var(--plum);color:var(--paper);padding:20px max(24px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-weight:600;font-size:22px}.brand img{object-fit:contain;border-radius:10px}.public-label{font-size:14px;color:#ded0df}
main{max-width:1100px;margin:auto;padding:60px 32px 88px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:72px}.intro h1{font-family:Literata,Georgia,serif;font-size:clamp(34px,4vw,48px);line-height:1.3;font-weight:600;letter-spacing:-.025em;margin:0 0 24px;text-wrap:balance}.intro p{margin:0 0 20px;max-width:65ch}.detail{font-size:14px;color:var(--muted)}
.feed-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.feed-heading h2{font-size:20px;margin:0}#connection{font-size:13px;color:var(--mint)}#connection[data-error=true]{color:var(--orange)}.feed-meta{display:flex;gap:8px 20px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:8px 0 28px}
#state{padding:28px 0;border-top:1px solid var(--line);color:var(--muted);margin:0}.msg{border-top:1px solid var(--line);padding:24px 0}.msg-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.role{font-weight:600;color:var(--cobalt)}.role[data-role=coder]{color:var(--mint)}.role[data-role=critic]{color:var(--orange)}time{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.msg-body{white-space:pre-wrap;overflow-wrap:anywhere;max-width:75ch;font-size:15px;margin:0}
button{font:600 14px 'DM Sans',sans-serif;min-height:44px;padding:12px 18px;border:0;border-radius:10px;background:var(--orange);color:white;cursor:pointer}button:hover{background:#963414}:focus-visible{outline:3px solid #507acc;outline-offset:4px}.msg:focus-visible{outline-offset:6px}#jump{position:fixed;bottom:max(22px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);white-space:nowrap;box-shadow:0 6px 20px #30243524}[hidden]{display:none!important}.skip{position:absolute;top:8px;left:12px;transform:translateY(-180%);background:var(--surface);color:var(--ink);padding:8px 16px;z-index:2}.skip:focus{transform:none}footer{border-top:1px solid var(--line);max-width:1100px;margin:auto;padding:24px 32px;color:var(--muted);font-size:13px}
@media(max-width:850px){main{grid-template-columns:1fr;gap:32px;padding:36px 24px 80px}.intro h1 br{display:none}.intro p{max-width:65ch}.intro h1{margin-bottom:16px;font-size:34px}.intro p{margin-bottom:12px}.feed-heading{gap:8px}header{padding:16px 20px}.brand{font-size:20px}.public-label{font-size:13px}footer{padding:20px 24px}.msg-body{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
