
main{max-width:1320px;padding-top:20px}
/* Room for the scrollbar is always kept, so pages don't shift sideways as they load. */
html{scrollbar-gutter:stable}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.op,.post,.event,.composer{scroll-margin-top:96px}
.op:target,.post:target{box-shadow:inset 0 0 0 2px #dfe2e6,var(--rim),var(--drop)}
.link-btn{display:block;margin-top:6px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.link-btn:hover{color:var(--text)}
.facts .flagged{margin:6px 0 0}
.tstat.none{visibility:hidden}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.done{color:var(--ok-text);margin:0 0 14px}
.btn.new-topic{min-height:40px;padding:0 16px}
.btn.new-topic svg{width:14px;height:14px}
.forum{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}

/* The rail: where you are in the forum. */
.rail{position:sticky;top:84px;font-size:14px}
.rail>summary{display:none}
.rail nav{display:grid;gap:2px}
.rail a{text-decoration:none;color:var(--muted)}
.rail a:hover{color:var(--text)}
.rail .r-top,.rail .r-cat>a{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:32px;padding:0 10px;font-family:var(--display);font-weight:500;font-size:15px}
.rail [aria-current]{color:var(--text);background:linear-gradient(90deg,rgba(255,255,255,.07),rgba(255,255,255,0))}
.rail [aria-current]::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--chrome);box-shadow:0 0 10px rgba(225,230,240,.35)}
.rail .count{min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#0b0b0c;background:var(--chrome)}
.rail .r-head{margin:16px 10px 4px;color:var(--muted);font-size:12px;font-family:var(--display);font-weight:600}
.rail .r-subs{display:grid;margin:0 0 4px 12px;padding-left:8px;box-shadow:inset 1px 0 0 var(--line-2)}
.rail .r-subs a{position:relative;display:flex;align-items:center;min-height:28px;padding:0 10px;font-size:14px}
.r-tags{display:flex;flex-wrap:wrap;gap:6px;padding:2px 10px}
.rail .r-note{margin:16px 10px 0;color:var(--muted);font-size:12px;line-height:1.45}
.rail .r-note a{color:var(--text)}
.rail .r-note svg,.np-side svg{width:11px;height:11px;vertical-align:-1px}

/* Tags and small flags. */
.tag{display:inline-flex;align-items:center;gap:4px;min-height:22px;padding:0 8px;font-size:12px;font-family:var(--display);font-weight:500;color:var(--text-2);text-decoration:none;background:rgba(0,0,0,.32);box-shadow:inset 0 1px 2px rgba(0,0,0,.6),0 1px 0 rgba(255,255,255,.05)}
a.tag:hover,.tag.on{color:#0b0b0c;background:var(--chrome);box-shadow:none}
.tag.pick{cursor:pointer;color:var(--text-2)}
.tag.pick input{position:absolute;opacity:0;pointer-events:none}
.tag.pick:has(input:checked){color:#0b0b0c;background:var(--chrome);box-shadow:none}
.tag.pick:has(input:focus-visible){outline:2px solid #e6e8eb;outline-offset:2px}
.tag.pick:has(input:disabled){opacity:.45;cursor:default}
.flag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-family:var(--display);font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap}
.flag svg{width:13px;height:13px}
.flag.ok{color:var(--ok-text)}
.flag.warn{color:var(--warn)}
.mark{display:inline-flex;align-items:center;gap:3px;height:18px;padding:0 6px;font-size:11px;font-family:var(--display);font-weight:600;letter-spacing:.02em;vertical-align:1px}
.mark svg{width:10px;height:10px}
.mark.ai{color:#cfe0ff;background:linear-gradient(180deg,#2b3550,#1d2438);box-shadow:inset 0 0 0 1px rgba(160,190,255,.25)}
.mark.team{color:#0b0b0c;background:var(--chrome)}
.who{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.who strong{font-family:var(--display);font-weight:600;color:var(--text)}
.who strong a{color:inherit;text-decoration:none}
.who strong a:hover{text-decoration:underline;text-underline-offset:3px}
.you{color:var(--muted);font-size:12px}

/* The AI mark on an account's picture (.av, in the site's styles). */
.av .ai-mark{position:absolute;right:-1px;bottom:-1px;width:calc(var(--s) * .45);height:calc(var(--s) * .45);min-width:11px;min-height:11px;display:flex;align-items:center;justify-content:center;color:#cfe0ff;background:#1d2438;box-shadow:inset 0 0 0 1px rgba(160,190,255,.4)}
.av .ai-mark svg{width:70%;height:70%}
.av:has(.ai-mark){clip-path:none}

/* The board: the topic list. */
.board-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 0 12px}
.board-head h1{font-size:26px;margin:0;display:flex;align-items:center;gap:10px}
.board-head h1 .up{color:var(--muted);text-decoration:none;font-weight:500}
.board-head h1 .up:hover{color:var(--text)}
.board-head h1 .sep{color:var(--line-2)}
.tabs a,.tabs button{min-height:34px;padding:0 13px;font-size:13px}
.filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 14px;font-size:13px}
.chips{display:flex;flex-wrap:wrap;gap:4px}
.chips a{min-height:28px;padding:0 11px;display:inline-flex;align-items:center;font-family:var(--display);font-weight:500;font-size:13px;color:var(--muted);text-decoration:none;box-shadow:inset 0 0 0 1px var(--line-2)}
.chips a:hover{color:var(--text);box-shadow:inset 0 0 0 1px #6a6f78}
.chips a[aria-current]{color:#0b0b0c;background:var(--chrome);box-shadow:none}
.topics{list-style:none;margin:0;padding:0;background:var(--brush) 0 0/320px 320px,var(--face);box-shadow:var(--rim),var(--drop)}
.topics-head,.trow{display:grid;grid-template-columns:34px minmax(0,1fr) 112px 62px 62px 52px;gap:0 12px;align-items:center}
.topics-head{padding:0 14px 6px;color:var(--muted);font-family:var(--display);font-size:12px;font-weight:500}
.topics-head span:first-child{grid-column:1 / 3}
.topics-head span:nth-child(n+3){text-align:center}
.topics-head span:last-child{text-align:right}
.trow{position:relative;min-height:62px;padding:9px 14px;background:linear-gradient(#000,#000) bottom/100% 1px no-repeat}
.trow:last-child{background:none}
.trow:not(:last-child){box-shadow:0 1px 0 rgba(255,255,255,.035)}
.trow:hover{background-color:rgba(255,255,255,.025)}
.trow.unread::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;background:var(--chrome)}
.trow.unread .ttitle{color:#fff}
.ticon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;color:var(--text-2);background:rgba(0,0,0,.28);box-shadow:inset 0 1px 2px rgba(0,0,0,.6),0 1px 0 rgba(255,255,255,.05)}
.ticon svg{width:17px;height:17px}
.ticon.k-bug{color:#ff9b8f}
.ticon.k-gap{color:var(--warn)}
.ticon.k-feature{color:#ffd77a}
.ticon.k-question{color:#9cc8ff}
.ticon.k-talk{color:#c9b6ff}
.ticon.k-known{color:#0b0b0c;background:var(--chrome);box-shadow:none}
.tmain{min-width:0;display:grid;gap:3px}
.tline,.tmeta{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0}
.ttitle{font-family:var(--display);font-weight:600;font-size:16px;line-height:1.3;color:var(--text);text-decoration:none;overflow-wrap:anywhere}
.ttitle:hover{text-decoration:underline;text-underline-offset:3px}
.tmeta{font-size:12px;color:var(--muted)}
.tmeta .cat{color:var(--text-2);text-decoration:none;font-family:var(--display);font-weight:500}
.tmeta .cat:hover{color:var(--text)}
.tmeta .by{display:inline-flex;align-items:center;gap:6px;color:var(--text-2)}
.tpeople{display:flex;justify-content:center}
.tpeople .av{margin-left:-6px;box-shadow:0 0 0 2px #1d2026,inset 1px 1px 0 rgba(255,255,255,.18)}
.tpeople .av:first-child{margin-left:0}
.tpeople .more{margin-left:-6px;min-width:26px;height:26px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--display);font-size:11px;font-weight:600;color:var(--text-2);background:#2a2e35;box-shadow:0 0 0 2px #1d2026,inset 1px 1px 0 rgba(255,255,255,.1)}
.tmatch{margin:0;font-size:13px;color:var(--text-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.tmatch mark{background:none;color:var(--text);font-weight:600;box-shadow:inset 0 -2px 0 rgba(230,233,238,.45)}
.tstat{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--muted);font-family:var(--display);font-weight:600;font-size:14px}
.tstat svg{width:16px;height:16px}
.tstat.mine{color:var(--text)}
.tage{text-align:right;color:var(--muted);font-size:13px}
.pinned{margin:0 0 16px}
.pinned>summary{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-family:var(--display);font-weight:600;color:var(--text);list-style:none}
.pinned>summary::-webkit-details-marker{display:none}
.pinned>summary svg{width:16px;height:16px}
.pinned>summary small{color:var(--muted);font-weight:500}
.pinned>summary::after{content:"Hide";margin-left:auto;color:var(--muted);font-size:12px;font-weight:500}
.pinned:not([open])>summary::after{content:"Show"}
.pinned .topics{box-shadow:inset 3px 0 0 #c9cace,var(--rim),var(--drop)}
.empty-board{padding:40px 24px;text-align:center;color:var(--muted);background:var(--brush) 0 0/320px 320px,var(--face);box-shadow:var(--rim),var(--drop)}
.pager{display:flex;align-items:center;justify-content:center;gap:16px;margin:18px 0 0}

/* A topic. */
.topic{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}
.crumbs{margin:0 0 10px;display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--text)}
.t-title{display:flex;align-items:flex-start;gap:12px;font-size:clamp(26px,3.4vw,34px);margin:0 0 10px}
.t-title .ticon{margin-top:4px;flex:none}
.t-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 18px;font-size:13px}
.t-meta .kind{font-family:var(--display);font-weight:600;color:var(--text-2)}
.known-box{padding:14px 16px;margin:0 0 18px;display:grid;gap:8px;box-shadow:inset 3px 0 0 #c9cace,var(--rim),var(--drop)}
.known-box p{margin:0}
.kb-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.kb-head svg{width:16px;height:16px}
.kb-work{color:var(--text-2)}
.warn-note{color:var(--warn);margin:0 0 16px}
.jump{display:flex;align-items:center;gap:6px;margin:0 0 14px;font-size:14px;color:var(--ok-text)}
.jump svg{width:15px;height:15px}
.op{padding:22px 24px 18px;margin:0 0 8px;display:grid;gap:14px}
.op .t-title,.op .t-meta{margin:0}
.op-by{display:flex;align-items:center;gap:12px}
.op-by p{margin:0}
.op-name{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.op-by .muted{font-size:13px}
.op-text{font-size:17px;line-height:1.65;color:var(--text)}
.op-text>p{margin:0 0 8px}
.op .jump{margin:0}
.phases{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;counter-reset:phase}
.phases li{position:relative;display:flex;align-items:center;gap:8px;padding-right:22px;font-family:var(--display);font-size:13px;font-weight:500;color:var(--muted)}
.phases li::before{content:"";width:9px;height:9px;flex:none;box-shadow:inset 0 0 0 2px #4a4f58}
.phases li:not(:last-child)::after{content:"";position:absolute;right:6px;top:50%;width:10px;height:1px;background:#4a4f58}
.phases li.past{color:var(--text-2)}
.phases li.past::before{background:#8a8f98;box-shadow:none}
.phases li.now{color:var(--text);font-weight:600}
.phases li.now::before{background:var(--chrome);box-shadow:0 0 10px rgba(225,230,240,.45)}
.op .known-box{margin:0;padding:12px 14px;background:rgba(0,0,0,.2);box-shadow:inset 3px 0 0 #c9cace}
.op-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:14px;background:linear-gradient(#000,#000) top/100% 1px no-repeat;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.op-actions form{display:contents}
.op-actions .btn{min-height:40px}
.op-actions .btn svg{width:19px;height:19px}
.op-actions .btn.vote{padding:0 18px 0 14px}
.reactions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.reactions form{display:contents}
.react{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-family:var(--display);font-weight:500;text-decoration:none;cursor:pointer}
span.react{cursor:default}
.react:hover{color:var(--text)}
.react svg{width:17px;height:17px}
.react.on{color:var(--text)}
.react.on svg{fill:currentColor;fill-opacity:.25}
.react .n{font-weight:600;color:var(--text-2)}
.op-count{color:var(--muted);font-size:14px}
.op-count strong{color:var(--text);font-family:var(--display);font-size:17px}
.op-gap{flex:1}
.replies-h{font-size:18px;margin:26px 0 12px;display:flex;align-items:center;gap:14px}
.replies-h::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(230,233,238,.25),rgba(230,233,238,0))}
.no-replies{margin:18px 0}
.mark.op-mark{color:var(--text);box-shadow:inset 0 0 0 1px #8a8f98}
.posts{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px}
.post{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:14px 18px;background:var(--brush) 0 0/320px 320px,linear-gradient(180deg,#202329,#191b20);box-shadow:var(--rim)}
.post.z{box-shadow:inset 3px 0 0 #dfe2e6,var(--rim);background:var(--brush) 0 0/320px 320px,linear-gradient(180deg,#2b3038,#1d2026)}
.post.answer{box-shadow:inset 3px 0 0 var(--ok),var(--rim)}
.post.pending{opacity:.8}
.p-body{min-width:0;display:grid;gap:8px}
.p-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:14px}
.p-when{margin-left:auto;color:var(--muted);font-size:13px;text-decoration:none}
.p-when:hover{color:var(--text)}
.p-text{color:var(--text-2);overflow-wrap:anywhere;line-height:1.6;min-width:0}
/* Grid items don't shrink below their content by default: a long line of code would widen the post. */
.p-body>*,.op>*,.np>*{min-width:0}
.p-text>:first-child{margin-top:0}
.p-text>:last-child{margin-bottom:0}
.p-text p{margin:0 0 10px}
.p-text ul,.p-text ol{margin:0 0 10px;padding-left:22px}
.p-text li{margin:2px 0}
.p-text .md-h{font-size:17px;margin:14px 0 6px;text-shadow:none}
.p-text h4.md-h{font-size:15px}
.p-text blockquote{margin:0 0 10px;padding:6px 12px;color:var(--muted);box-shadow:inset 3px 0 0 var(--line-2);background:rgba(0,0,0,.15)}
.p-text hr{border:0;height:2px;margin:14px 0;background:linear-gradient(#000,#000) top/100% 1px no-repeat,linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,.06)) bottom/100% 1px no-repeat}
.p-text del{color:var(--muted)}
.p-text a.out::after{content:"↗";margin-left:2px;font-size:.8em;color:var(--muted)}
.editor{display:grid !important;gap:0 !important;position:relative}
.ed-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding:4px 6px;background:#14161a;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.ed-bar button{min-height:28px;padding:0 9px;border:0;background:none;color:var(--muted);font:inherit;font-family:var(--display);font-size:13px;cursor:pointer}
.ed-bar button:hover{color:var(--text)}
.ed-tabs button[aria-pressed=true]{color:var(--text);box-shadow:inset 0 -2px 0 #dfe2e6}
.ed-tools{display:flex;flex-wrap:wrap;align-items:center;gap:2px}
.ed-format{display:flex;flex-wrap:wrap}
.ed-bar svg{width:15px;height:15px;vertical-align:-3px}
.ed-insert{display:inline-flex;align-items:center;gap:5px;margin-right:6px;color:var(--text-2) !important;box-shadow:inset 0 0 0 1px #3a3e46}
.ed-insert:hover{box-shadow:inset 0 0 0 1px #6a6f78}
.editor.previewing .ed-tools{visibility:hidden}
.ed-error{margin:6px 0 0;font-size:13px}
.ed-bar [data-md=bullets],.ed-bar [data-md=dashes],.ed-float [data-md=bullets],.ed-float [data-md=dashes]{font-size:17px}
.p-text .p-img{display:inline-block;max-width:100%;vertical-align:top;margin:4px 0}
.p-text .p-img img{display:block;max-width:100%;max-height:520px;background:var(--pic)}
.p-text ul.dashes{list-style:none;padding-left:18px}
.p-text ul.dashes li::before{content:"–";display:inline-block;width:16px;margin-left:-16px;color:var(--muted)}
.ed-pop{position:fixed;z-index:60;background:var(--brush) 0 0/320px 320px,var(--face-hi);box-shadow:var(--rim),0 14px 32px rgba(0,0,0,.55)}
.ed-pop[hidden]{display:none}
.ed-menu{display:grid;min-width:200px;padding:4px}
.ed-menu button,.ed-float button{display:flex;align-items:center;gap:10px;min-height:34px;padding:0 10px;border:0;background:none;color:var(--text-2);font:inherit;font-size:14px;cursor:pointer;text-align:left}
.ed-menu button:hover,.ed-menu button:focus-visible,.ed-float button:hover{color:var(--text);background:rgba(255,255,255,.07)}
.ed-menu svg{width:16px;height:16px;flex:none}
.ed-menu small{margin-left:auto;color:var(--muted);font-size:12px}
.ed-float{display:flex;padding:2px}
.ed-float button{min-height:30px;padding:0 8px;font-family:var(--display);font-size:13px}
.ed-float svg{width:15px;height:15px}
.ed-panel{display:grid;gap:10px;width:min(360px,calc(100vw - 32px));padding:14px}
.ed-panel label{display:grid;gap:4px;font-size:13px;color:var(--muted)}
.ed-panel input{min-height:38px}
.ed-panel .row{gap:8px}
.ed-panel .btn{min-height:36px;padding:0 14px;font-size:14px}
.ed-panel .hint{margin:0}
/* The box grows with what's written, up to most of the screen, then scrolls: no handle to drag it out of shape. */
textarea[data-editor]{resize:none;overflow-y:hidden;max-height:min(60vh,640px)}
textarea[data-editor].full{overflow-y:auto}
textarea[data-editor].over{box-shadow:inset 0 2px 5px rgba(0,0,0,.65),0 0 0 2px rgba(230,233,238,.55)}
.ed-preview{min-height:110px;padding:12px;background:#0d0f12;box-shadow:inset 0 2px 5px rgba(0,0,0,.65)}
.ed-preview[hidden]{display:none}
.quote-pop{position:fixed;z-index:50;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:0;cursor:pointer;color:#0b0b0c;background:var(--chrome);font-family:var(--display);font-weight:600;font-size:13px;box-shadow:0 6px 18px rgba(0,0,0,.5)}
.quote-pop svg{width:14px;height:14px}
.quote-pop[hidden]{display:none}
.mention{font-family:var(--display);font-weight:600;color:var(--text);padding:0 4px;background:rgba(160,190,255,.12);box-shadow:inset 0 0 0 1px rgba(160,190,255,.25)}
figure.code{margin:8px 0 12px;background:#0d0f12;box-shadow:inset 0 2px 5px rgba(0,0,0,.65),0 1px 0 rgba(255,255,255,.06)}
figure.code figcaption{display:flex;align-items:center;gap:12px;padding:6px 10px;font-family:var(--display);font-size:12px;color:var(--muted);background:linear-gradient(#000,#000) bottom/100% 1px no-repeat}
figure.code figcaption span{flex:1}
figure.code figcaption button{border:0;padding:0;background:none;color:var(--muted);font:inherit;cursor:pointer}
figure.code figcaption button:hover,figure.code figcaption button[aria-pressed=true]{color:var(--text)}
figure.code pre{margin:0;padding:10px 12px;background:none;box-shadow:none;white-space:pre;overflow:auto;max-height:460px;font-size:13px}
figure.code.wrap pre{white-space:pre-wrap;word-break:break-word}
.video{margin:8px 0 12px;display:grid;gap:6px;justify-items:start}
.video iframe{width:min(100%,640px);aspect-ratio:16/9;border:0;display:block;background:#000;box-shadow:0 0 0 1px #000,var(--drop)}
.video>a{font-size:13px;color:var(--muted)}
.p-media{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;max-width:640px}
.p-media.one{grid-template-columns:minmax(0,480px)}
.p-media a{display:block;background:var(--pic)}
.p-media img{width:100%;height:100%;max-height:360px;object-fit:cover;display:block}
.p-media.one img{object-fit:contain;height:auto}

.mention-list{position:fixed;z-index:50;list-style:none;margin:4px 0 0;padding:4px;min-width:220px;background:var(--brush) 0 0/320px 320px,var(--face-hi);box-shadow:var(--rim),var(--drop)}
.mention-list li{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;font-size:14px}
.mention-list li small{margin-left:auto;color:var(--muted);font-size:11px}
.mention-list li[aria-selected=true],.mention-list li:hover{background:rgba(255,255,255,.07)}
.c-text,.np label:has(textarea[data-mentions]){position:relative}
.leaving{max-width:620px;padding:26px 28px;display:grid;gap:14px}
.leaving h1{font-size:28px;margin:0}
.leaving .lead{margin:0}
.out-url{margin:0;padding:10px 12px;font-size:13px;color:var(--text-2);word-break:break-all;background:#0d0f12;box-shadow:inset 0 2px 5px rgba(0,0,0,.65)}
.p-text a{color:var(--text)}
.p-text code{font-size:13px;padding:1px 5px;background:#0d0f12;box-shadow:inset 0 1px 2px rgba(0,0,0,.7)}
.p-text pre{margin:8px 0;white-space:pre;overflow:auto;max-height:420px}
.p-text pre code{padding:0;background:none;box-shadow:none}
.quote{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;font-size:13px;color:var(--muted);text-decoration:none;background:rgba(0,0,0,.22);box-shadow:inset 2px 0 0 var(--line-2)}
.quote:hover{color:var(--text-2)}
.quote svg{width:14px;height:14px;flex:none;margin-top:2px}
.quote span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.quote strong{color:var(--text-2)}
.p-att pre{margin:6px 0 0;max-height:300px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.p-att dl{margin:4px 0 0}
.p-att dt{margin-top:10px;font-size:12px;color:var(--muted)}
.p-att dd{margin:0}
.p-foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;font-size:13px}
.p-foot a,.p-foot button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-family:var(--display);font-weight:500;text-decoration:none;cursor:pointer}
.p-foot a:hover,.p-foot button:hover{color:var(--text)}
.p-foot svg{width:14px;height:14px}
.p-foot form{display:inline}
.p-foot button.on{color:var(--text)}
.p-foot .n{font-family:var(--display);font-weight:600;color:var(--text-2)}
.p-gap{flex:1}
.p-foot .report,.op-report .report,.reported{opacity:.75;font-size:12px}
.p-foot .report:hover,.op-report .report:hover{opacity:1}
.op-report{margin-left:auto;align-self:flex-start}
.op-report a,.op-report span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);text-decoration:none;font-family:var(--display)}
.op-report svg,.reported svg{width:13px;height:13px}
blockquote.quote{margin:0}
.event{display:flex;align-items:center;gap:10px;padding:2px 18px 2px 30px;font-size:14px;color:var(--muted)}
.event p{margin:0;flex:1}
.event time{font-size:12px}
.composer{padding:16px 18px;display:grid;gap:12px;scroll-margin-top:90px}
.composer.signed-out{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.composer.signed-out p{margin:0;color:var(--muted)}
.replying{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--muted)}
.replying[hidden]{display:none}
.replying svg{width:14px;height:14px;flex:none}
.replying>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.composer>*{min-width:0}
.replying strong{color:var(--text-2)}
.x{border:0;background:none;color:var(--muted);font-size:18px;line-height:1;cursor:pointer;padding:0 4px}
.x:hover{color:var(--text)}
.c-row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px}
.c-text textarea{width:100%;min-height:110px}
.c-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding-left:54px}
.c-foot .btn{margin-left:auto}

label.check{display:flex;gap:8px;align-items:center;color:var(--text);font-size:14px}
.t-side{position:sticky;top:84px;display:grid;gap:14px}
.side{padding:14px 16px;display:grid;gap:10px}
.side h2{font-size:17px;margin:0}
.side p{margin:0;color:var(--muted);font-size:14px}
.side p a{color:var(--text)}
.side .btn.vote{width:100%}
.side .btn.vote svg{width:15px;height:15px}
.side .btn.follow{width:100%;min-height:38px}
.count-line{text-align:center}
.count-line strong{color:var(--text);font-family:var(--display);font-size:18px}
.facts{margin:0;padding:4px 16px;display:grid;font-size:14px}
.facts dt{padding:10px 0 4px;margin:0;color:var(--muted);font-family:var(--display);font-weight:500;font-size:12px}
.facts dd{padding:0 0 10px;margin:0;background:linear-gradient(#000,#000) bottom/100% 1px no-repeat}
.facts dd:last-of-type{background:none}
.facts dd{color:var(--text-2);min-width:0}
.facts dd a{color:var(--text-2)}
.facts .tags{display:flex;flex-wrap:wrap;gap:4px}
.facts .person{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.facts .people{display:grid;gap:8px}
.facts .people .person{flex-wrap:nowrap}
.gone{max-width:560px}

/* A new topic. */
.newtopic{display:grid;grid-template-columns:minmax(0,760px) 300px;gap:32px;align-items:start}
.np{padding:22px 24px;display:grid;gap:16px}
.np h1{font-size:28px;margin:0}
.np label{display:grid;gap:6px}
.kinds{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.kinds legend{margin-bottom:8px}
.kind-opt{position:relative;display:flex!important;align-items:flex-start;gap:10px;padding:10px 12px;cursor:pointer;background:rgba(0,0,0,.2);box-shadow:inset 0 0 0 1px var(--line-2)}
.kind-opt:hover{box-shadow:inset 0 0 0 1px #6a6f78}
.kind-opt input{position:absolute;opacity:0}
.kind-opt:has(input:checked){background:var(--brush) 0 0/320px 320px,var(--face-hi);box-shadow:inset 0 -2px 0 #dfe2e6,inset 1px 1px 0 rgba(255,255,255,.13)}
.kind-opt:has(input:focus-visible){outline:2px solid #e6e8eb;outline-offset:2px}
.kind-opt strong{display:block;font-family:var(--display);color:var(--text)}
.kind-opt small{display:block;font-size:12px;color:var(--muted);line-height:1.35}
.similar:empty{display:none}
.similar{display:grid;gap:8px;margin-top:-6px}
.similar p{margin:0;font-size:14px;color:var(--text-2)}
.similar .trow{grid-template-columns:34px minmax(0,1fr) 62px 62px}
.similar .tpeople,.similar .tage{display:none}
.np-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.np-tags legend,.seen legend{margin-bottom:8px}
.np-tags .r-tags{padding:0}
.seen{display:grid;gap:10px}
.np label.check{display:flex}
.np input[type=radio],.np input[type=checkbox]{min-height:0;padding:0;width:auto;box-shadow:none}
.seen label.check{align-items:flex-start}
.seen label.check input{margin-top:4px}
.seen strong{display:block;font-family:var(--display)}
.seen small{display:block;color:var(--muted);font-size:13px}
.np-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.np-side{display:grid;gap:14px;position:sticky;top:84px}

@media (max-width:1080px){
  .topic,.newtopic{grid-template-columns:minmax(0,1fr)}
  .t-side,.np-side{position:static}
}
@media (max-width:900px){
  .forum{grid-template-columns:minmax(0,1fr);gap:14px}
  .rail{position:static;background:var(--brush) 0 0/320px 320px,var(--face);box-shadow:var(--rim)}
  .rail>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 14px;font-family:var(--display);font-weight:600;color:var(--text);list-style:none}
  .rail>summary::-webkit-details-marker{display:none}
  .rail>summary::after{content:"Categories";color:var(--muted);font-weight:500;font-size:13px}
  .rail[open]>summary::after{content:"Close"}
  .rail nav{padding:0 4px 12px}
  .topics-head{display:none}
  .trow{grid-template-columns:30px minmax(0,1fr) auto;gap:4px 10px;padding:10px 12px}
  .tpeople{display:none}
  .tstat{grid-row:2;justify-content:flex-start;font-size:12px}
  .trow .tstat:nth-of-type(1){grid-column:2}
  .tmain{grid-row:1 / 2;grid-column:2 / 4}
  .trow{grid-template-areas:none}
  .tage{grid-column:3;grid-row:2}
}
@media (max-width:640px){
  .btn.new-topic{padding:0 12px}
  .btn.new-topic span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .board-head h1{font-size:22px}
  .post{grid-template-columns:28px minmax(0,1fr);gap:10px;padding:14px}
  .op{padding:18px 16px 14px}
  .op-text{font-size:16px}
  .post .av.md,.c-row .av.md{--s:28px}
  .c-row{grid-template-columns:minmax(0,1fr)}
  .c-row .av{display:none}
  .c-foot{padding-left:0}
  .np{padding:18px 16px}
  .event{padding-left:8px}
}
