/* Forums (2026-10-26). Class selectors only: the site-wide letter glint wraps letters in spans, so no rule here
   may style bare span descendants. */
.forum .f-msg{margin:.4rem 0;min-height:1.2em}
.forum .f-msg.err{color:#d33}
.forum .f-small,.forum .f-blurb,.forum .f-meta{font-size:.88rem;opacity:.8}
.forum .f-login{margin:.4rem 0 1rem}
.forum .f-modon,.forum .f-modbar{padding:.4rem .7rem;border:1px dashed currentColor;border-radius:8px}
.forum .f-crumbs{font-size:.9rem;margin-bottom:.6rem}
.forum .f-h{margin:.2rem 0 .3rem;overflow-wrap:anywhere}
.forum .f-scroll{overflow-x:auto}
.forum .f-table{width:100%;border-collapse:collapse}
.forum .f-table th,.forum .f-table td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid rgba(127,127,127,.3);vertical-align:top}
.forum .f-num{text-align:right!important;white-space:nowrap}
.forum .f-last{white-space:nowrap;font-size:.88rem}
.forum .f-cat{font-weight:700;font-size:1.05rem}
.forum .f-threads,.forum .f-posts{list-style:none;padding:0;margin:.8rem 0}
.forum .f-threads > li{padding:.65rem 0;border-bottom:1px solid rgba(127,127,127,.3)}
.forum .f-threads > li.f-pin{font-weight:600}
.forum .f-title{font-weight:700;overflow-wrap:anywhere}
.forum .f-flag{display:inline-block;font-size:.8rem;font-weight:600;margin-left:.4rem;opacity:.85}
.forum .f-flag.f-crisis{color:#d33;opacity:1}
.forum .f-empty{opacity:.7;padding:.6rem 0}
.forum .f-post{padding:.8rem .9rem;margin:0 0 .7rem;border:1px solid rgba(127,127,127,.35);border-radius:10px}
.forum .f-post.f-s1,.forum .f-post.f-s2{border-style:dashed;opacity:.85}
.forum .f-post.f-s3{opacity:.6}
.forum .f-body{overflow-wrap:anywhere}
.forum .f-body p{margin:.5rem 0}
.forum .f-pre{white-space:pre-wrap}
.forum .f-gone{font-style:italic;opacity:.75}
.forum .f-acts{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:.4rem}
.forum button{font:inherit;font-weight:600;font-size:.88rem;padding:.3rem .8rem;border-radius:999px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer}
.forum button.f-mod{border-style:dashed}
.forum button:disabled{opacity:.5;cursor:default}
.forum .f-form{display:grid;gap:.6rem;max-width:44rem;margin:.6rem 0}
.forum .f-form label{display:grid;gap:.25rem;font-weight:600}
.forum .f-form label.f-check{display:block;font-weight:400}
.forum .f-form input:not([type=checkbox]),.forum .f-form textarea,.forum .f-form select{font:inherit;padding:.5rem .6rem;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;width:100%;box-sizing:border-box}
.forum .f-form select option{color:#111}
.forum .f-form textarea{resize:vertical;min-height:6rem}
.forum .f-form button{justify-self:start}
.forum .f-new > summary{cursor:pointer;font-weight:700;display:inline-block;padding:.35rem .9rem;border:1px solid currentColor;border-radius:999px;margin:.3rem 0}
.forum .f-pager{display:flex;flex-wrap:wrap;gap:.35rem;margin:.6rem 0}
.forum .f-pager > a,.forum .f-pager > b{padding:.15rem .55rem;border:1px solid rgba(127,127,127,.5);border-radius:6px}
.forum .f-rulelist > li{margin:.5rem 0}
.forum .f-intro .safety-notice{margin-top:.8rem}
/* Experience reports */
.forum .f-report-form{border:1px solid rgba(127,127,127,.4);border-radius:10px;padding:.8rem .9rem;display:grid;gap:.6rem;min-width:0}
.forum .f-report-form > legend{font-weight:700;padding:0 .3rem}
.forum .f-lab{font-weight:600}
.forum .f-subrows,.forum .f-tl{display:grid;gap:.4rem}
.forum .f-subrow{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) minmax(0,1.3fr) auto;gap:.4rem}
.forum .f-tlrow{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.4rem}
.forum .f-subrow input,.forum .f-subrow select,.forum .f-tlrow input{font:inherit;padding:.45rem .5rem;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;min-width:0;width:100%;box-sizing:border-box}
.forum .f-subrow select option{color:#111}
.forum .f-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem}
.forum button.f-x{padding:.2rem .6rem}
@media (max-width:560px){.forum .f-subrow{grid-template-columns:1fr 1fr}.forum .f-subrow .f-sname{grid-column:1/-1}}
.forum .f-chips{display:flex;flex-wrap:wrap;gap:.3rem;margin:.3rem 0 .1rem}
.forum .f-chip{font-size:.78rem;font-weight:600;padding:.1rem .5rem;border:1px solid rgba(127,127,127,.5);border-radius:999px}
.forum .f-filter{padding:.4rem .7rem;border-left:3px solid currentColor}
.forum .f-repcard{border:1px solid rgba(127,127,127,.45);border-radius:10px;padding:.6rem .9rem;margin:.6rem 0 1rem}
.forum .f-repcard h3{margin:.8rem 0 .3rem;font-size:1rem}
.forum .f-facts{display:grid;grid-template-columns:max-content 1fr;gap:.2rem .9rem;margin:.6rem 0}
.forum .f-facts dt{font-weight:600}
.forum .f-facts dd{margin:0}
.forum .f-timeline{padding-left:1.2rem;margin:.3rem 0}
.forum .f-timeline > li{margin:.25rem 0}
.forum .f-sec{margin:1.2rem 0 .2rem}
/* Admin and staff */
.forum .f-announce{padding:.55rem .8rem;border:1px solid currentColor;border-left-width:4px;border-radius:8px;font-weight:600;margin:0 0 .8rem}
.forum .f-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.05rem .4rem;margin-left:.35rem;border:1px solid currentColor;border-radius:999px;vertical-align:.1em}
.forum .f-check.f-mod{opacity:.9;font-style:italic}
.forum .f-modbar select{font:inherit;font-size:.88rem;padding:.25rem .4rem;border-radius:8px;background:transparent;color:inherit;border:1px solid currentColor;max-width:12rem}
.forum .f-modbar select option{color:#111}
.forum button.f-danger{color:#d33}
.forum .f-boards input,.forum .f-boards select{font:inherit;font-size:.88rem;padding:.25rem .35rem;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;width:100%;box-sizing:border-box;min-width:4rem}
.forum .f-boards select option{color:#111}
.forum .f-boards td{padding:.3rem .25rem}
.forum .f-stats{display:flex;flex-wrap:wrap;gap:1.2rem;margin:.4rem 0}
.forum .f-stats > div > b{display:block;font-size:1.4rem}
.forum .f-boards td:nth-child(1) input{min-width:7rem}.forum .f-boards td:nth-child(2) input{min-width:10rem}.forum .f-boards td:nth-child(3) input{min-width:15rem}.forum .f-boards td:nth-child(4) select{min-width:7rem}
.forum a.f-by{font-weight:700}
/* Admin ⋯ menus */
.forum .f-hrow{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.forum .f-menuwrap{position:relative;display:inline-block;margin-left:.35rem;vertical-align:middle}
.forum button.f-more{font-size:1rem;line-height:1;padding:.1rem .45rem;border-radius:6px;border:1px solid rgba(127,127,127,.5);font-weight:700;opacity:.75}
.forum button.f-more:hover,.forum button.f-more[aria-expanded=true]{opacity:1}
.forum .f-menu{position:fixed;left:0;top:0;z-index:1000;min-width:13rem;max-width:calc(100vw - 16px);overflow-y:auto;display:grid;padding:.3rem;border:1px solid rgba(127,127,127,.5);border-radius:10px;background:var(--paper,#161f28);color:var(--ink,inherit);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.forum .f-menu[hidden]{display:none}
.forum .f-menu > button{border:0;border-radius:6px;text-align:left;font-weight:500;padding:.4rem .6rem;white-space:normal}
.forum .f-menu > button:hover,.forum .f-menu > button:focus{background:rgba(127,127,127,.18);outline:none}
.forum .f-menusep{border:0;border-top:1px solid rgba(127,127,127,.35);margin:.25rem 0}
.forum .f-meta .f-menuwrap{float:right}
.forum .f-addrow{margin:.4rem 0 .8rem}
.forum .f-rulestop[hidden]{display:none}
.forum .f-msg:empty{min-height:0;margin:0}
/* Post editor toolbar and BBCode posts (editor.js). Class selectors only. */
.forum .bb-editor{display:grid;gap:0;min-width:0}
.forum .bb-bar{display:flex;flex-wrap:wrap;gap:.25rem .5rem;align-items:center;padding:.3rem;border:1px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0;background:rgba(127,127,127,.08)}
.forum .bb-group{display:flex;flex-wrap:wrap;gap:.15rem;align-items:center}
.forum .bb-end{margin-left:auto;gap:.5rem}
.forum .f-form .bb-editor textarea{border-radius:0 0 8px 8px}
.forum button.bb-btn{min-width:2rem;height:2rem;padding:0 .45rem;border-radius:6px;border:1px solid transparent;font-size:.92rem;font-weight:600;line-height:1;opacity:.85}
.forum button.bb-btn:hover,.forum button.bb-btn:focus-visible,.forum button.bb-btn[aria-expanded=true],.forum button.bb-btn[aria-pressed=true]{opacity:1;border-color:rgba(127,127,127,.6);background:rgba(127,127,127,.18)}
.forum button.bb-b{font-weight:800}.forum button.bb-i{font-style:italic;font-family:Georgia,serif}.forum button.bb-u{text-decoration:underline}.forum button.bb-s{text-decoration:line-through}
.forum button.bb-pvbtn{border-color:rgba(127,127,127,.6);padding:0 .7rem}
.forum .bb-count{font-size:.78rem;opacity:.65;font-variant-numeric:tabular-nums}
.forum .bb-popwrap{position:relative}
.forum .bb-pop{position:absolute;left:0;top:calc(100% + 4px);z-index:900;display:grid;gap:.2rem;padding:.35rem;border:1px solid rgba(127,127,127,.5);border-radius:10px;background:var(--paper,#161f28);color:var(--ink,inherit);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.forum .bb-pop[hidden]{display:none}
.forum .bb-hpop,.forum .bb-spop{min-width:10rem}
.forum button.bb-choice{border:0;border-radius:6px;text-align:left;font-weight:500;padding:.35rem .6rem}
.forum button.bb-choice:hover,.forum button.bb-choice:focus{background:rgba(127,127,127,.18);outline:none}
.forum button.bb-h1{font-size:1.25rem;font-weight:800}.forum button.bb-h2{font-size:1.1rem;font-weight:700}.forum button.bb-h3{font-size:.95rem;font-weight:700}
.forum .bb-cpop{grid-template-columns:repeat(5,1.8rem)}
.forum button.bb-swatch{width:1.8rem;height:1.8rem;padding:0;border-radius:50%;border:2px solid rgba(127,127,127,.5)}
.forum button.bb-swatch:hover,.forum button.bb-swatch:focus{border-color:currentColor;outline:none}
.forum .bb-epop{grid-template-columns:repeat(10,2.1rem);max-height:15rem;overflow-y:auto;max-width:min(23.5rem,calc(100vw - 32px))}
.forum button.bb-emo{width:2.1rem;height:2.1rem;padding:0;border:0;border-radius:6px;font-size:1.2rem;font-weight:400;line-height:1}
.forum button.bb-emo:hover,.forum button.bb-emo:focus{background:rgba(127,127,127,.2);outline:none}
@media (max-width:560px){.forum .bb-epop{grid-template-columns:repeat(8,2.1rem)}}
.forum .bb-preview{margin-top:.5rem;padding:.6rem .8rem;border:1px dashed rgba(127,127,127,.6);border-radius:8px;min-width:0}
.forum .bb-preview[hidden]{display:none}
.forum .bb-pvlab{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.6;margin-bottom:.2rem}
.forum .bb-empty{opacity:.6;font-style:italic}
.forum .bb-help{margin-top:.4rem;font-size:.88rem}
.forum .bb-help > summary{cursor:pointer;opacity:.8;font-weight:600}
.forum .bb-note{margin:.4rem 0}
.forum .bb-helptbl{border-collapse:collapse;width:100%}
.forum .bb-helptbl td{padding:.3rem .4rem;border-bottom:1px solid rgba(127,127,127,.25);vertical-align:top}
.forum .bb-helptbl td:first-child{white-space:pre-wrap;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:.8rem;width:55%;overflow-wrap:anywhere}
.forum .bb-helptbl .f-body p{margin:0}
/* BBCode in posts */
.forum .bb .bb-h{margin:.8rem 0 .3rem;line-height:1.25}
.forum .bb h3.bb-h{font-size:1.35rem}.forum .bb h4.bb-h{font-size:1.15rem}.forum .bb h5.bb-h{font-size:1rem}
.forum .bb .bb-quote{margin:.5rem 0;padding:.4rem .8rem;border-left:3px solid rgba(127,127,127,.7);background:rgba(127,127,127,.1);border-radius:0 8px 8px 0}
.forum .bb .bb-qby{font-size:.82rem;font-weight:700;opacity:.8;margin-bottom:.2rem}
.forum .bb .bb-spoiler{margin:.5rem 0;border:1px solid rgba(127,127,127,.45);border-radius:8px;padding:.35rem .7rem}
.forum .bb .bb-spoiler > summary{cursor:pointer;font-weight:600}
.forum .bb .bb-spoilbody{padding-top:.35rem}
.forum .bb .bb-code{margin:.5rem 0;padding:.6rem .8rem;border-radius:8px;background:rgba(127,127,127,.14);overflow-x:auto;white-space:pre;font-size:.85rem}
.forum .bb .bb-code > code,.forum .bb .bb-icode{font-family:"JetBrains Mono",ui-monospace,monospace}
.forum .bb .bb-icode{font-size:.88em;padding:.05rem .3rem;border-radius:4px;background:rgba(127,127,127,.18)}
.forum .bb .bb-list{margin:.4rem 0;padding-left:1.4rem}
.forum .bb .bb-list > li{margin:.15rem 0}
.forum .bb .bb-center{text-align:center}.forum .bb .bb-right{text-align:right}
.forum .bb .bb-hr{border:0;border-top:1px solid rgba(127,127,127,.5);margin:.8rem 0}
.forum .bb .bb-mark{background:rgba(255,214,0,.4);color:inherit;padding:0 .1em;border-radius:3px}
.forum .bb .bb-size1{font-size:.8em}.forum .bb .bb-size2{font-size:1em}.forum .bb .bb-size3{font-size:1.25em}.forum .bb .bb-size4{font-size:1.5em}.forum .bb .bb-size5{font-size:1.9em;line-height:1.2}
.forum .bb > p:first-child{margin-top:0}
/* Forum rules fold */
.forum details.f-rulestop > summary{cursor:pointer;list-style:none}
.forum details.f-rulestop > summary::-webkit-details-marker{display:none}
.forum details.f-rulestop > summary > h2{display:inline;margin:0}
.forum details.f-rulestop > summary::after{content:" ▸ show";font-size:.85rem;font-weight:600;opacity:.7}
.forum details.f-rulestop[open] > summary::after{content:" ▾ hide"}
.forum button.bb-btn[aria-label^="Add a link"]{border-color:rgba(127,127,127,.6);padding:0 .65rem}
.forum .bb-lpop{width:min(20rem,calc(100vw - 32px));gap:.45rem;padding:.6rem}
.forum .bb-lpop .bb-field{display:grid;gap:.2rem;font-size:.85rem;font-weight:600}
.forum .bb-lpop input{font:inherit;font-weight:400;padding:.4rem .5rem;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;width:100%;box-sizing:border-box}
.forum .bb-lpop .bb-err{margin:0;font-size:.8rem;color:#e5484d}
.forum .bb-lpop .bb-err:empty{display:none}
.forum .bb-lpop button.bb-go{justify-self:start}
/* Forum settings panel (2026-10-28): edited rules are BBCode boxes inside the rule list; the editor on /forum/mod/. */
.forum .f-rulelist .f-body > p{margin:0}
.forum .f-rulelist .f-body > p + p{margin-top:.4rem}
.forum .s-rules{padding-left:1.6rem}
.forum .s-rule{margin:.7rem 0}
.forum .s-rule textarea,.forum #s-edit textarea{width:100%;box-sizing:border-box}
.forum .s-limits label{display:block;margin:.4rem 0}
.forum #q-settings h3 .f-flag{font-size:.75rem;vertical-align:middle}
