/* Forum layout layered over the site's shared styles. Existing post anchors and
   forms are retained; all rules stay within the forum. */
.cf-forum { overflow-wrap:anywhere; }
.cf-forum-wrap { width:min(1160px,calc(100% - 88px)); margin:auto; padding:46px 0 72px; }
.cf-forum-heading { display:flex; justify-content:space-between; align-items:center; gap:32px; margin-bottom:36px; }
.cf-forum-heading>div { max-width:690px; }
.cf-forum-eyebrow { margin:0 0 12px; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.cf-forum h1 { letter-spacing:-.055em; line-height:1.12; }
.cf-forum-heading h1 { font-size:54px; margin:0 0 16px; }
.cf-forum-heading p:not(.cf-forum-eyebrow) { color:var(--muted); margin:0; font-size:15px; line-height:1.75; }
.cf-forum-heading>.knop { flex-shrink:0; }
.cf-forum .knop { border-radius:30px; font-size:13px; gap:8px; }
.cf-forum-layout { display:grid; grid-template-columns:225px minmax(0,1fr); gap:36px; align-items:start; }
.cf-forum-sidebar>h2 { margin:0 12px 12px; text-transform:uppercase; letter-spacing:.12em; font:700 10px/1.5 system-ui,sans-serif; color:var(--muted); }
.cf-mobile-categories { display:none; }
.cf-category-list { display:flex; flex-direction:column; gap:4px; }
.cf-category-list a { display:flex; align-items:center; gap:10px; border-radius:10px; padding:11px 12px; text-decoration:none; color:var(--ink); font-size:12px; min-width:0; }
.cf-category-list a>span:first-child { width:21px; flex-shrink:0; text-align:center; font-size:17px; }
.cf-category-list a>span:nth-child(2) { flex:1; }
.cf-category-list small { font-size:10px; color:var(--muted); }
.cf-category-list a[aria-current="page"] { background:var(--soft); color:var(--accent); font-weight:700; }
.cf-category-list a:hover { background:var(--soft); }
.cf-forum-guidance { margin:25px 12px 0; border-top:1px solid var(--line); padding-top:24px; font-size:12px; }
.cf-forum-guidance h3 { font-size:17px; margin:0 0 10px; }
.cf-forum-guidance p { margin:0 0 15px; color:var(--muted); line-height:1.8; }
.cf-forum-guidance a { font-size:12px; }
.cf-forum-main { min-width:0; }
.cf-current-category { margin:0 0 25px; }
.cf-current-category h2 { font-size:25px; margin:0 0 8px; }
.cf-current-category p { color:var(--muted); font-size:13px; margin:0; }
.cf-forum-search label { display:block; font-size:12px; font-weight:700; margin-bottom:9px; }
.cf-forum-search>div { display:flex; align-items:stretch; gap:8px; }
.cf-forum-search input { border:1px solid var(--line); border-radius:12px; padding:12px 15px; background:var(--white); font:inherit; font-size:13px; color:var(--ink); min-width:0; width:100%; min-height:48px; }
.cf-forum-search button { flex-shrink:0; white-space:nowrap; min-width:76px; }
.cf-forum-search input { flex:1; min-width:0; }
.cf-forum-search button,.cf-sort-form button { border:1px solid var(--line); background:var(--soft); color:var(--ink); border-radius:10px; padding:9px 14px; font:inherit; font-size:12px; cursor:pointer; }
.cf-forum-toolbar { display:flex; justify-content:space-between; align-items:center; gap:15px; flex-wrap:wrap; margin:18px 0; }
.cf-filter-tabs { display:flex; gap:4px; flex-wrap:wrap; }
.cf-filter-tabs a { text-decoration:none; border:1px solid transparent; padding:8px 12px; border-radius:24px; font-size:11px; line-height:1.7; color:var(--muted); }
.cf-filter-tabs a[aria-current="page"] { background:var(--ink); color:var(--white); }
.cf-filter-tabs a:hover { border-color:var(--line); }
.cf-sort-form { display:flex; align-items:center; flex-wrap:wrap; gap:7px; font-size:11px; color:var(--muted); }
.cf-sort-form select { background:transparent; color:var(--ink); padding:7px 0; border:0; font:inherit; max-width:150px; }
.cf-sort-form button { font-size:10px; padding:6px 8px; }
.cf-topic-panel { border:1px solid var(--line); border-radius:var(--radius); background:var(--white); overflow:hidden; padding:0; }
.cf-topic-panel-label { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px 21px; border-bottom:1px solid var(--line); color:var(--muted); font-size:11px; }
.cf-topic-panel-label>span:first-child { color:var(--ink); font-weight:600; }
.cf-topic-row { display:flex; gap:14px; align-items:center; padding:19px 21px; text-decoration:none; color:var(--ink); border-bottom:1px solid var(--line); min-width:0; }
.cf-topic-row:last-child { border-bottom:0; }
.cf-topic-row:hover { background:#f5f4ec; }
.cf-topic-avatar { display:grid; place-items:center; width:37px; height:37px; flex:0 0 37px; border-radius:50%; background:var(--soft); color:#67594c; font-size:11px; font-weight:600; }
.cf-topic-info { flex:1; min-width:0; }
.cf-topic-info>strong { display:block; font-size:14px; font-weight:600; line-height:1.5; }
.cf-topic-meta { display:flex; flex-wrap:wrap; gap:6px; color:var(--muted); font-size:10px; margin-top:5px; }
.cf-topic-meta .cf-topic-category { color:#81563e; }
.cf-topic-replies { display:flex; flex-direction:column; min-width:50px; align-items:center; font-size:10px; color:var(--muted); }
.cf-topic-replies strong { font-size:14px; color:var(--ink); font-weight:600; }
.cf-topic-date-mobile { display:none; }
.cf-topic-date { font-size:10px; color:var(--muted); width:77px; flex-shrink:0; text-align:right; }
.cf-topic-arrow { color:var(--muted); font-size:17px; }
.cf-forum-empty { padding:32px 24px; }
.cf-forum-empty h2 { font-size:23px; margin:0 0 10px; }
.cf-forum-empty p { color:var(--muted); font-size:13px; margin:0 0 14px; }
.cf-forum-empty a { font-size:12px; }
.cf-new-topic { margin:38px 0 24px; background:var(--soft); border-radius:var(--radius); padding:28px; scroll-margin-top:30px; }
.cf-new-topic h2 { margin:0 0 12px; font-size:28px; letter-spacing:-.045em; }
.cf-new-topic>p:not(.cf-forum-eyebrow) { font-size:13px; color:var(--muted); margin:0 0 24px; }
.cf-new-topic .formulier { max-width:none; margin-top:24px; }
.cf-new-topic .formulier input,.cf-new-topic .formulier textarea,.cf-new-topic .formulier select { max-width:100%; min-width:0; }
.cf-new-topic .formulier select { width:100%; background:var(--white); border:1px solid var(--line); border-radius:10px; color:var(--ink); padding:12px; font:inherit; font-size:14px; }
.cf-new-topic .formulier .knop { align-self:start; }
.cf-forum-login p { margin:0 0 18px; font-size:14px; }
.cf-similar-topics { background:var(--white); border:1px solid var(--line); border-radius:10px; padding:16px; font-size:12px; }
.cf-similar-topics p { margin:7px 0; color:var(--muted); }
.cf-similar-topics a { display:block; padding:8px 0; border-bottom:1px solid var(--line); }
.cf-similar-topics a:last-child { border-bottom:0; }
.cf-forum-rules { padding:18px 0; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.cf-forum-rules summary { cursor:pointer; font-weight:600; color:var(--ink); }
.cf-forum-rules p { line-height:1.8; margin:13px 0 0; }
/* Existing topic detail keeps message numbers, quotes and forms unchanged. */
.cf-forum>.pagina-kop { padding:40px 0 30px; text-align:left; }
.cf-forum>.pagina-kop .container { max-width:860px; }
.cf-forum>.pagina-kop p { margin:0 0 20px; max-width:none; font-size:12px; }
.cf-forum>.pagina-kop h1 { margin:0; font-size:clamp(30px,4vw,44px); }
.cf-topic-head-actions { display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:23px; font-size:12px; color:var(--muted); }
.cf-forum>.inhoud { max-width:860px; }
.cf-forum .forum-bericht { background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:25px; margin-bottom:18px; scroll-margin-top:24px; }
.cf-forum .forum-bericht:target { border-color:var(--accent); }
.cf-forum .forum-meta { display:flex; align-items:center; flex-wrap:wrap; gap:6px; font-size:12px; color:var(--muted); margin-bottom:16px; }
.cf-forum .forum-bericht>p { line-height:1.85; font-size:15px; }
.cf-forum .forum-foto { max-height:520px; width:auto; max-width:100%; object-fit:contain; border-radius:12px; margin:20px 0; }
.cf-forum .bericht-acties { flex-wrap:wrap; }
.cf-forum .citaat { margin:15px 0; background:var(--soft); padding:14px; border-color:var(--accent); }
.cf-forum .vertaal-info { font-size:12px; }
.cf-forum .vertaal-info summary { cursor:pointer; }
.cf-forum .formulier { width:100%; }
.cf-forum .formulier button { align-self:start; }
.cf-forum .formulier textarea { resize:vertical; }
.cf-forum [hidden] { display:none!important; }
.cf-forum a:focus-visible,.cf-forum button:focus-visible,.cf-forum input:focus-visible,.cf-forum select:focus-visible,.cf-forum textarea:focus-visible,.cf-forum summary:focus-visible { outline:3px solid #496b4e; outline-offset:4px; }
@media(max-width:1050px) {
 .cf-forum-wrap { width:calc(100% - 48px); }
 .cf-forum-layout { grid-template-columns:200px minmax(0,1fr); gap:24px; }
 .cf-topic-date,.cf-topic-arrow { display:none; }
 .cf-topic-date-mobile { display:block; flex-basis:100%; }
 .cf-topic-row { padding:18px 16px; }
}
@media(max-width:760px) {
 .cf-forum-wrap { width:calc(100% - 36px); padding:30px 0 45px; }
 .cf-forum-heading { flex-direction:column; align-items:start; gap:22px; margin-bottom:28px; }
 .cf-forum-heading h1 { font-size:43px; margin-bottom:12px; }
 .cf-forum-heading p:not(.cf-forum-eyebrow) { font-size:14px; }
 .cf-forum-layout { grid-template-columns:minmax(0,1fr); gap:28px; }
 .cf-forum-sidebar>h2,.cf-category-list { display:none; }
 .cf-mobile-categories { display:block; min-width:0; }
 .cf-mobile-categories label { display:block; font-size:12px; font-weight:700; margin-bottom:9px; }
 .cf-mobile-categories>div { display:flex; gap:8px; min-width:0; }
 .cf-mobile-categories select { flex:1; min-width:0; width:100%; min-height:46px; border:1px solid var(--line); border-radius:10px; background:var(--white); color:var(--ink); padding:10px; font:inherit; font-size:12px; }
 .cf-mobile-categories button { flex-shrink:0; white-space:nowrap; min-height:46px; padding:10px; border:1px solid var(--line); border-radius:10px; background:var(--soft); color:var(--ink); font:inherit; font-size:11px; cursor:pointer; }
 .cf-category-list a { padding:8px 7px; gap:6px; font-size:11px; min-height:44px; }
 .cf-category-list a>span:first-child { font-size:15px; width:18px; }
 .cf-category-list small { font-size:9px; }
 .cf-forum-guidance { display:none; }
 .cf-current-category h2 { font-size:24px; }
 .cf-forum-search input { padding:10px 12px; font-size:12px; }
 .cf-forum-search button { font-size:11px; padding:10px; }
 .cf-forum-toolbar { gap:12px; }
 .cf-filter-tabs { gap:2px; }
 .cf-filter-tabs a { padding:10px 11px; font-size:11px; min-height:42px; }
 .cf-sort-form { margin-left:auto; }
 .cf-sort-form select,.cf-sort-form button { min-height:40px; }
 .cf-topic-panel-label { padding:13px 15px; }
 .cf-topic-row { padding:17px 13px; gap:10px; }
 .cf-topic-info>strong { font-size:13px; }
 .cf-topic-avatar { width:31px; height:31px; flex-basis:31px; font-size:10px; }
 .cf-topic-replies { min-width:43px; font-size:9px; }
 .cf-topic-meta { font-size:10px; }
 .cf-new-topic { padding:23px 18px; }
 .cf-new-topic h2 { font-size:25px; }
 .cf-new-topic .formulier label { font-size:13px; }
 .cf-forum>.pagina-kop { padding-top:30px; }
 .cf-forum>.pagina-kop .container,.cf-forum>.inhoud { padding-inline:18px; }
 .cf-forum .forum-bericht { padding:20px 17px; }
 .cf-forum .forum-bericht>p { font-size:14px; }
 .cf-forum .forum-meta { font-size:11px; }
 .cf-forum .citeer-knop { font-size:12px; }
}
@media(max-width:390px) {
 .cf-topic-avatar { display:none; }
 .cf-filter-tabs a { padding-inline:9px; font-size:10px; }
 .cf-category-list a { font-size:10px; gap:4px; }
 .cf-topic-panel-label>span:last-child { display:none; }
}
