/* Forum: topic list, topic page. Forms reuse .field/.inp from hall-register.css. */
.board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:clamp(24px,4vw,48px);align-items:start;margin-top:clamp(28px,4vw,44px)}
.quiet{font-size:15px;color:#b3bbbf}
.flash{display:flex;gap:12px;align-items:center;margin-top:26px;padding:14px 18px;font-size:15px;line-height:1.45}
.flash-ok{background:#0e2821eb;box-shadow:inset 0 0 0 1px #3ddba059;color:#c9f4e2}
.flash-bad{background:#33191aeb;box-shadow:inset 0 0 0 1px #ff7a665c;color:#ffc4ba}
.topics{padding:6px 0}
.topics>.quiet{padding:26px 24px}
.tlist{list-style:none;margin:0;padding:0}
.trow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 22px;border-top:1px solid #ffffff10}
.trow:first-child{border-top:0}
.trow.is-hidden{opacity:.55}
.tmain{display:grid;gap:4px;min-width:0}
.ttitle{font-size:17px;font-weight:600;color:#eef1f2;text-decoration:none;overflow-wrap:anywhere}
.ttitle:hover{color:var(--gold-hi)}
.tmeta{font-size:13px;color:#a9b1b5}
.tstat{display:grid;justify-items:end;font-size:13px;color:#a9b1b5;text-align:right;white-space:nowrap}
.tstat b{font:400 22px/1 var(--f-carve);color:var(--gold)}
.tag{display:inline-block;margin-right:8px;padding:2px 7px;border-radius:2px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:2px;color:#c3cacd;background:#ffffff12}
.tag-pin{color:#20160a;background:var(--gold)}
.tag-off{color:#ffc4ba;background:#ff7a6624}
.newtopic,.reply{padding:clamp(22px,3vw,32px);display:grid;gap:16px}
.newtopic h2,.reply h2{font-size:28px;color:#eceff1}
.newtopic .plate,.reply .plate{justify-self:start}
.fform{display:grid;gap:16px}
.sel{position:relative}
.sel::after{content:"";position:absolute;right:17px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:rotate(45deg);pointer-events:none}
.sel select{appearance:none;width:100%;height:50px;padding:0 42px 0 14px;border:0;border-radius:2px;background:#070a0b;color:#f0f2f3;font:500 16px var(--f-text);box-shadow:inset 0 0 0 1px #3a3f41,inset 0 2px 6px #000a;cursor:pointer}
.sel select:focus{outline:0;box-shadow:inset 0 0 0 1px var(--gold),0 0 0 3px #e0b35a2e}
.thead{display:grid;gap:10px;max-width:860px}
.thead h1{font-size:clamp(30px,4vw,48px);color:#eceff1;overflow-wrap:anywhere;text-shadow:0 2px 14px #000c}
.back{font-size:14px;color:var(--gold-hi);text-decoration:none}
.back:hover{text-decoration:underline}
.mod{display:flex;flex-wrap:wrap;gap:8px}
.mod .plate{min-height:36px;padding:0 14px;font-size:13px}
.posts{display:grid;gap:14px;margin-top:clamp(24px,3vw,36px);max-width:860px}
.post{padding:18px 22px}
.post header{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:10px}
.post header b{color:#eef1f2;font-weight:600}
.post header time{font-size:13px;color:#a9b1b5}
.post header form{margin-left:auto}
.post.by-admin header b{color:var(--gold-hi)}
.post.is-hidden{opacity:.55}
.pbody{white-space:pre-wrap;overflow-wrap:anywhere;color:#d6dcdf;line-height:1.6}
.linkbtn{border:0;background:none;padding:0;color:#ffab9e;font:500 13px var(--f-text);cursor:pointer;text-decoration:underline;text-underline-offset:.2em}
.pager{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}
.pager a{min-width:36px;padding:7px 10px;text-align:center;color:#c3cacd;text-decoration:none;box-shadow:inset 0 0 0 1px #ffffff1a}
.pager a[aria-current="page"]{color:var(--gold-hi);box-shadow:inset 0 0 0 1px var(--gold)}
.reply{margin-top:clamp(24px,3vw,36px);max-width:860px}
@media (max-width:900px){.board{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.trow{grid-template-columns:minmax(0,1fr);gap:8px;padding:14px 16px}.tstat{display:flex;gap:8px;align-items:baseline;justify-content:flex-start;text-align:left}.post{padding:16px}}
