.avatar{background:radial-gradient(circle at 30% 25%, #fff3, transparent 60%), var(--accent);color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;transition:box-shadow .16s;display:inline-grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000026}.avatar img{object-fit:cover;width:100%;height:100%}.avatar__initials{font-family:var(--serif);letter-spacing:.02em;text-box:trim-both cap alphabetic;font-style:italic;font-weight:500;line-height:1}@supports not (text-box:trim-both cap alphabetic){.avatar__initials{transform:translateY(.07em)}}.userlink{min-width:0;color:var(--ink);align-items:center;gap:9px;display:inline-flex}.userlink__text{min-width:0;line-height:1.25;display:grid}.userlink__name{font-size:var(--t-sm);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-weight:560;display:inline-flex;overflow:hidden}.userlink:hover .userlink__name{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px}.userlink__sub{font-size:var(--t-xs);color:var(--ink-3)}.username{color:var(--ink);font-weight:560}.username:hover{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px}.demo-tag{border:1px solid var(--rule-strong);letter-spacing:.02em;height:16px;color:var(--ink-3);border-radius:3px;flex:none;align-items:center;padding:0 5px;font-size:10px;font-weight:500;display:inline-flex}.mention{color:var(--accent);font-weight:500}.mention:hover{text-underline-offset:3px;text-decoration:underline}.avatar-stack{align-items:center;display:inline-flex}.avatar-stack__item{margin-left:calc(var(--s) * -.28);box-shadow:0 0 0 2px var(--wall);border-radius:50%}.avatar-stack__item:first-child{margin-left:0}.avatar-stack__more{font-size:var(--t-xs);color:var(--ink-3);margin-left:8px}.follow-btn{min-width:96px}.follow-btn.is-on:hover{--btn-bd:var(--heart);color:var(--heart)}.like-btn{height:28px;color:var(--ink-3);font-size:var(--t-xs);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:5px;margin-left:-6px;padding:0 6px;transition:color .14s,background-color .14s;display:inline-flex}.like-btn:hover{color:var(--ink);background:var(--accent-soft)}.like-btn.is-on{color:var(--heart)}.like-btn.is-on svg{fill:currentColor}.like-btn svg{transition:transform .22s var(--ease-out)}.like-btn.is-on svg{animation:like-pop .32s var(--ease-out)}@keyframes like-pop{40%{transform:scale(1.25)}}.join-prompt{padding:var(--space-5);border:1px solid var(--rule);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--wall-lift) 55%, transparent);gap:8px;display:grid}.join-prompt--compact{padding:var(--space-4)}.join-prompt__title{font-family:var(--serif);font-size:var(--t-body);color:var(--ink)}.join-prompt__actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.rcard{gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--rule);display:grid}.rcard--book{grid-template-columns:76px 1fr}.rcard:last-child{border-bottom:0}.rcard__cover{align-self:start}.rcard__main{align-content:start;gap:10px;min-width:0;display:grid}.rcard__title{font-family:var(--serif);font-size:var(--t-lg);font-weight:420;line-height:1.2}.rcard__title:hover{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px}.rcard__year{font-family:var(--sans);font-size:var(--t-sm);color:var(--ink-3);margin-left:8px}.rcard__by{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.rcard__heart{color:var(--heart);fill:currentColor}.rcard__when{font-size:var(--t-xs)}.rcard__when:hover{color:var(--ink-2)}.rcard__text{max-width:68ch;font-size:16.5px}.rcard__clamp{max-height:11.34em;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,#0000);mask-image:linear-gradient(#000 70%,#0000)}.rcard__more{color:var(--ink-2);justify-self:start}.rcard__more:hover{color:var(--ink)}.rcard__spoiler{border:1px dashed var(--rule-strong);border-radius:var(--radius);color:var(--ink-2);font-family:var(--serif);font-style:italic;font-size:var(--t-md);cursor:pointer;background:0 0;justify-self:start;padding:10px 14px}.rcard__spoiler:hover{color:var(--ink);border-color:var(--ink-3)}.rcard__moods{letter-spacing:.01em}.rcard__foot{align-items:center;gap:14px;display:flex}.rcard__comments{font-size:var(--t-xs);color:var(--ink-3);align-items:center;gap:5px;display:inline-flex}.rcard__comments:hover{color:var(--ink)}@media (width<=560px){.rcard--book{gap:var(--space-3);grid-template-columns:58px 1fr}}.comments{gap:var(--space-4);display:grid}.comments__head{padding-bottom:var(--space-3);border-bottom:1px solid var(--rule);align-items:baseline;gap:10px;display:flex}.comments__list,.comments__replies{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.comments__replies{margin-top:var(--space-4);padding-left:var(--space-4);border-left:1px solid var(--rule);gap:var(--space-4);margin-left:42px}.comments__loading{gap:10px;display:grid}.comments__empty,.comments__closed{font-style:italic;font-family:var(--serif)}.comment{grid-template-columns:auto 1fr;gap:10px;display:grid}.comment__main{gap:4px;min-width:0;display:grid}.comment__meta{font-size:var(--t-sm);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.comment__meta .faint{font-size:var(--t-xs)}.comment__page{font-size:var(--t-xs);color:var(--accent)}.comment__body{font-family:var(--serif);overflow-wrap:anywhere;max-width:66ch;font-size:16px;line-height:1.55}.comment__body p+p{margin-top:.6em}.comment__ahead{border:1px dashed var(--rule-strong);border-radius:var(--radius);color:var(--ink-2);font-size:var(--t-sm);text-align:left;cursor:pointer;background:0 0;justify-self:start;padding:8px 12px}.comment__ahead:hover{color:var(--ink)}.comment__actions{align-items:center;gap:12px;margin-top:2px;display:flex}.comment__action{font-size:var(--t-xs);color:var(--ink-3);align-items:center;gap:4px;display:inline-flex}.composer{padding-top:var(--space-2);grid-template-columns:auto 1fr;gap:10px;display:grid}.composer__main{gap:8px;display:grid}.composer__input{min-height:0;font-size:16px}.composer__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.composer__buttons{gap:6px;margin-left:auto;display:flex}.composer__page{font-size:var(--t-xs);color:var(--ink-2);align-items:center;gap:8px;display:inline-flex}.composer__page .input{width:76px;font-size:var(--t-sm);padding:5px 8px}@media (width<=560px){.comments__replies{padding-left:var(--space-3);margin-left:14px}}
