
:root{
  --bg:#050505; --panel:#0d0d0d; --panel2:#111; --line:#1e1e1e;
  --red:#e01230; --red-hot:#ff2d4d; --red-dim:#5c0a17;
  --txt:#f2f2f2; --dim:#9a9a9a; --faint:#5c5c5c;
  --w:1240px;
  --clip:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--txt);
  font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
a{color:var(--txt);text-decoration:none}
a:hover{color:#fff}
.wrap{max-width:var(--w);margin:0 auto;padding:0 20px}

/* ── header ─────────────────────────────────────────────── */
header{position:relative;background:
  repeating-linear-gradient(-55deg, rgba(224,18,48,.05) 0 2px, transparent 2px 14px),
  linear-gradient(180deg,#0b0b0b,#050505);
  border-bottom:3px solid var(--red);
  box-shadow:0 4px 30px rgba(224,18,48,.25)}
.logo-strip{max-width:var(--w);margin:0 auto;padding:22px 20px 16px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.logo-strip img{height:84px;width:auto;max-width:100%;display:block;object-fit:contain;mix-blend-mode:screen}
.tag{color:var(--faint);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:700}
.tag b{color:var(--red-hot)}
nav{background:#0a0a0a;border-top:1px solid #161616}
nav .wrap{display:flex;align-items:center;gap:2px;flex-wrap:wrap}
nav a{padding:13px 16px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);position:relative}
nav a::after{content:"";position:absolute;left:16px;right:16px;bottom:6px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .18s}
nav a:hover::after,nav a.on::after{transform:scaleX(1)}
nav a:hover,nav a.on{color:#fff}
nav .grow{flex:1}
nav .btn{padding:9px 18px;margin:9px 0;border:1px solid #2a2a2a;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
nav .btn:hover{color:#fff;border-color:var(--red)}
nav .btn.red{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 0 18px rgba(224,18,48,.4)}
nav .btn.red:hover{background:var(--red-hot)}
@media(max-width:640px){
  .logo-strip{padding:14px 20px 10px}
  .logo-strip img{height:54px}
  .tag{display:none}
}

/* ── in memoriam ────────────────────────────────────────── */
.memorial{background:#040404;border-bottom:1px solid #151515;position:relative}
.memorial::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--red-dim)}
.memorial .wrap{display:flex;align-items:center;gap:18px;padding:16px 20px}
.memorial img{height:48px;width:auto;display:block}
.memorial .note{font-size:13px;color:var(--dim);line-height:1.5;max-width:72ch}
.memorial .note b{color:#d8d8d8;font-weight:700}

/* ── layout ─────────────────────────────────────────────── */
main{padding:26px 0 46px}
.cols{display:grid;grid-template-columns:340px 1fr;gap:26px}
@media(max-width:940px){.cols{grid-template-columns:1fr}}

/* ── boxes (clipped, angular) ───────────────────────────── */
aside .box{background:var(--panel);border:1px solid var(--line);margin-bottom:16px;
  clip-path:var(--clip);position:relative}
.box h3{background:linear-gradient(180deg,#161616,#101010);padding:12px 16px;display:flex;align-items:center;gap:10px;
  font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.box h3::before{content:"";width:14px;height:14px;background:var(--red);transform:skewX(-22deg);box-shadow:0 0 10px var(--red);flex:none}
.box .bd{padding:16px}
.servers .bd{padding:0}
.servers .tsv-mount{min-height:240px;background:#000}
.servers .connect{display:block;text-align:center;padding:12px;background:#12060a;border-top:1px solid var(--red-dim);color:var(--red-hot);font-weight:900;letter-spacing:.14em;font-size:12px;text-transform:uppercase}
.servers .connect:hover{background:var(--red);color:#fff}
.servers .quake-sub{border-top:2px solid var(--red-dim)}
.servers .quake-sub-h{padding:10px 14px 0;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);display:flex;align-items:center;gap:10px;justify-content:center}
.servers .quake-sub-h::before{content:"";width:14px;height:3px;background:var(--red);transform:skewX(-22deg)}
.servers .quake-wrap{display:flex;justify-content:center;padding:12px}
.servers .quake-sub iframe{display:block;width:300px;height:375px;border:0;background:#000}
.stat-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #171717;font-size:13.5px}
.stat-row:last-child{border:none}
.stat-row span{color:var(--dim);text-transform:uppercase;font-size:11px;letter-spacing:.08em;font-weight:700;padding-top:2px}
.stat-row b{color:#fff;font-size:15px}
.online{font-size:13px;color:var(--dim)}
.online .n{color:#7fd18a;font-weight:800}

/* left rail welcome */
.welcome .bd .lead{font-size:13px;color:var(--dim);margin-bottom:14px}
.field{margin-bottom:12px}
.field label{display:block;font-size:10px;color:var(--faint);margin-bottom:5px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}
.field input{width:100%;background:#090909;border:1px solid #222;color:var(--txt);padding:10px 12px;font-size:14px;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
.field input:focus{outline:none;border-color:var(--red-dim)}
.wbtn{width:100%;background:var(--red);border:none;color:#fff;font-weight:900;padding:12px;cursor:pointer;letter-spacing:.14em;text-transform:uppercase;font-size:13px;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);box-shadow:0 0 16px rgba(224,18,48,.35)}
.wbtn:hover{background:var(--red-hot)}
.wlinks{display:flex;justify-content:space-between;margin-top:12px;font-size:12px}
.wlinks a{color:var(--faint)}
.wlinks a:hover{color:var(--dim)}

/* ── forum cards ────────────────────────────────────────── */
.cat{margin-bottom:26px}
.cat-head{display:flex;align-items:center;gap:12px;padding:0 0 12px 2px}
.cat-head h2{font-size:13px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);display:flex;align-items:center;gap:12px}
.cat-head h2::before{content:"";width:26px;height:4px;background:var(--red);transform:skewX(-22deg);box-shadow:0 0 14px var(--red)}
.forums{display:flex;flex-direction:column;gap:10px}
.frow{display:grid;grid-template-columns:52px 1fr 110px 130px;gap:18px;align-items:center;padding:16px 20px;
  background:var(--panel);border:1px solid var(--line);
  clip-path:var(--clip);position:relative;
  transition:border-color .15s,transform .15s}
.frow::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red-dim);transition:background .15s,box-shadow .15s}
.frow:hover{border-color:#2a2a2a;transform:translateX(4px)}
.frow:hover::before{background:var(--red);box-shadow:0 0 12px var(--red)}
.fic{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;color:var(--red-hot);
  background:linear-gradient(160deg,#171717,#0c0c0c);transform:skewX(-6deg);
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  box-shadow:inset 0 0 0 1px #232323}
.fic span{transform:skewX(6deg)}
.fname a{font-size:16px;font-weight:800;letter-spacing:.02em}
.fname a:hover{color:var(--red-hot)}
.fdesc{font-size:13px;color:var(--faint);margin-top:3px;line-height:1.4}
.fstats{text-align:right;font-size:10px;color:var(--faint);text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.fstats b{display:block;color:#fff;font-size:22px;font-weight:900;line-height:1;letter-spacing:0}
.flast{font-size:12.5px;color:var(--faint);text-align:right;line-height:1.45}
.flast a{color:var(--dim)}
.flast a:hover{color:#fff}
@media(max-width:640px){
  .frow{grid-template-columns:44px 1fr;padding:14px}
  .fstats,.flast{display:none}
  .fic{width:42px;height:42px;font-size:14px}
}

/* forum scroller */
.scroller{background:var(--panel);border:1px solid var(--line);margin-bottom:22px;clip-path:var(--clip)}
.scroller-head{display:flex;align-items:center;gap:12px;background:linear-gradient(180deg,#161616,#101010);padding:13px 18px;
  font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.scroller-head .slash{width:22px;height:4px;background:var(--red);transform:skewX(-22deg);box-shadow:0 0 12px var(--red)}
.scroller-body{max-height:580px;overflow-y:auto;padding:16px;scrollbar-width:thin;scrollbar-color:var(--red-dim) #0d0d0d}
.scroller-body::-webkit-scrollbar{width:10px}
.scroller-body::-webkit-scrollbar-track{background:#0d0d0d}
.scroller-body::-webkit-scrollbar-thumb{background:var(--red-dim)}
.scroller-body::-webkit-scrollbar-thumb:hover{background:var(--red)}
.scroller .cat{margin-bottom:22px}
.scroller .cat:last-child{margin-bottom:0}

/* news block */
.newsbox{background:var(--panel);border:1px solid var(--line);clip-path:var(--clip)}
.newsbox .box-h{background:linear-gradient(180deg,#161616,#101010);padding:13px 18px;display:flex;align-items:center;gap:12px;
  font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.newsbox .box-h::before{content:"";width:22px;height:4px;background:var(--red);transform:skewX(-22deg);box-shadow:0 0 12px var(--red)}
.newsbox iframe{display:block;width:100%;height:489px;border:0;background:#0a0a0a}

/* latest-posts auto feed */
.feed-body{max-height:430px}
.live-dot{margin-left:auto;font-size:9px;letter-spacing:.14em;color:var(--faint);border:1px solid #2a2a2a;padding:3px 8px;font-weight:900}
.live-dot.on{color:var(--red-hot);border-color:var(--red-dim)}
.feed-item{padding:12px 14px;border-bottom:1px solid #171717;background:#0b0b0b}
.feed-item a.ft{font-size:15px;font-weight:800}
.feed-item a.ft:hover{color:var(--red-hot)}
.feed-item .fmeta{font-size:12px;color:var(--faint);margin-top:3px}
.feed-item .fmeta b{color:var(--dim);font-weight:700}
.feed-item .fmeta a{color:var(--faint)}
.feed-item .fmeta a:hover{color:var(--txt)}

/* ── MOBILE ─────────────────────────────────────────────── */
@media(max-width:700px){
  .wrap{padding:0 12px}
  main{padding:16px 0 30px}
  .cols{gap:16px}
  .cols{display:flex;flex-direction:column}
  /* main content first on phones; sidebar stacks below */
  .cols > div{order:1}
  aside{order:2}
  aside .box{clip-path:none;border-radius:0}
  .memorial .wrap{padding:12px}
  .memorial img{height:36px}
  .memorial .note{font-size:12px}
  .scroller-body{max-height:380px}
  .newsbox iframe{height:440px}
  .scroller-head,.box h3,.newsbox .box-h{letter-spacing:.1em;padding:10px 12px}
  nav a{padding:12px 10px;font-size:12px}
  .logo-strip{padding:12px}
  .logo-strip img{height:48px;filter:none}
  .frow{gap:10px;padding:12px}
  .fic{width:40px;height:40px;font-size:13px}
  .fname a{font-size:15px}
}

/* ── footer ─────────────────────────────────────────────── */
footer{border-top:3px solid var(--red);background:#040404;padding:22px 0 28px;box-shadow:0 -4px 30px rgba(224,18,48,.15)}
footer .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--faint);letter-spacing:.04em}
footer a{color:var(--faint)}
footer a:hover{color:var(--dim)}


/* ===== KoBk theme v2 — MyBB markup layer (added to prototype design) ===== */

/* ---- page scaffold ---- */
body#forums, body { background:#0a0a0a; color:#ddd; }
#mainwidth, #container, #content, .wrapper { width:auto; max-width:1280px; margin:0 auto; padding:0; }
main { min-height:60vh; }

/* ---- header (prototype design, MyBB hooks) ---- */
header .logo-strip img { max-width:340px; width:340px; height:auto; display:block; }
header nav a { color:#bbb; }
header nav .welcomeblock, header nav .userbg { font-size:13px; color:#ccc; }
header nav a.loginbox, header nav a.button4, header nav a.button5,
header nav .button4, header nav .button5, header nav .quick_login a {
  background:#c81e2c; color:#fff !important; border:0;
  padding:6px 14px; font-weight:700; text-transform:uppercase; font-size:12px; letter-spacing:.06em;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  text-decoration:none; margin-left:6px;
}
header nav #quick_login { display:none; }

/* ---- memorial strip ---- */
.memorial .wrap { display:flex; gap:18px; align-items:center; justify-content:center; text-align:center; }
.memorial img { width:auto; max-width:260px; height:auto; display:block; }

/* ---- columns grid ---- */
.cols { display:grid; grid-template-columns:300px 1fr; gap:22px; align-items:start; padding:26px 0 40px; }
aside { display:flex; flex-direction:column; gap:22px; }

/* ---- boxes ---- */
.box { background:#111; border:1px solid #1e1e1e; position:relative; }
.box h3 {
  font-family:'Arial Black',Arial,sans-serif; font-size:12px; letter-spacing:.22em; text-transform:uppercase;
  color:#e6e6e6; background:#161616; padding:10px 16px; border-bottom:2px solid #c81e2c; margin:0;
}
.box .bd { padding:16px; }
.servers .bd { padding:0; }
.servers .tsv-mount { width:100%; }
.servers .connect { display:block; text-align:center; padding:10px; background:#c81e2c; color:#fff; font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:12px; text-decoration:none; }
.servers .connect:hover { background:#a3121f; }
.servers .quake-sub { border-top:2px solid #c81e2c; padding:10px 12px 12px; }
.servers .quake-sub-h { font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:#888; margin-bottom:8px; }
.servers .quake-wrap iframe { width:100%; height:375px; border:0; background:#0a0a0a; }

/* welcome box: strip the stock tborder chrome so it reads as plain content */
.box .bd table.tborder, .box .bd table, .box table.tborder { width:100%; border:0 !important; background:transparent !important; border-collapse:collapse; }
.box .bd td, .box table.tborder td { border:0 !important; background:transparent !important; padding:0 !important; }
.box .bd td.thead, .box table.tborder td.thead { background:#161616 !important; border-bottom:1px solid #262626 !important; padding:8px 12px !important; }
.box .bd td.thead strong { color:#e6e6e6; letter-spacing:.06em; }
.box .bd td.trow1, .box .bd td.trow2 { background:transparent !important; padding:10px 12px !important; }
.box .bd .smalltext { color:#999; font-size:12px; line-height:1.7; }
.box .bd .smalltext a { color:#e0a0a0; }
.box a { color:#e0a0a0; text-decoration:none; }
.box a:hover { color:#ff6b6b; text-decoration:underline; }

/* search box (stock portal_search) */
.box form input.textbox.portal_search, .box input.textbox { width:70%; background:#0a0a0a; border:1px solid #2a2a2a; color:#ddd; padding:8px 10px; }

/* ---- feed scroller ---- */
.scroller { background:#111; border:1px solid #1e1e1e; }
.scroller-head { background:#161616; padding:10px 16px; font-size:12px; letter-spacing:.22em; text-transform:uppercase; color:#e6e6e6; display:flex; align-items:center; gap:10px; border-bottom:2px solid #c81e2c; }
.scroller-head .slash { width:14px; height:14px; background:#c81e2c; display:inline-block; clip-path:polygon(0 0,100% 0,100% 100%); }
.scroller-head .live-dot { margin-left:auto; color:#7a7a7a; letter-spacing:.1em; font-size:10px; }
.scroller-body { max-height:560px; overflow-y:auto; scroll-behavior:auto; }
.scroller-body table, .scroller-body td { width:100%; border:0; background:transparent; padding:0; }
.feed-item { padding:12px 16px; border-bottom:1px solid #1a1a1a; }
.feed-item:hover { background:#141414; }
.feed-item .ft { color:#e8e8e8; text-decoration:none; font-weight:600; font-size:14px; line-height:1.35; display:block; }
.feed-item .ft:hover { color:#ff6b6b; }
.feed-item .fmeta { color:#8a8a8a; font-size:12px; margin-top:4px; }
.feed-item .fmeta b { color:#b06060; font-weight:600; }
.feed-item .fmeta a { color:#9a9a9a; text-decoration:none; }

/* ---- newsbox ---- */
.newsbox { background:#111; border:1px solid #1e1e1e; margin-top:22px; }
.newsbox h3.box-h { background:#161616; padding:10px 16px; font-size:12px; letter-spacing:.22em; text-transform:uppercase; color:#e6e6e6; border-bottom:2px solid #c81e2c; margin:0; }
.newsbox iframe { width:100%; height:520px; border:0; display:block; }

/* ---- announcements ---- */
#announcements, .announcement { background:#111; border:1px solid #1e1e1e; margin-bottom:22px; }
.announcement .thead { background:#161616; padding:10px 16px; color:#e6e6e6; letter-spacing:.08em; }

/* ---- forum list (index) ---- */
.page-head { display:flex; gap:16px; align-items:center; margin-bottom:22px; }
.page-head h1, .idx-head h1 { font-family:'Arial Black',Arial,sans-serif; font-size:26px; letter-spacing:.04em; margin:0; color:#f2f2f2; text-transform:uppercase; }
.page-head .fd, .idx-head .fd { color:#888; font-size:13px; margin-top:2px; }
.idx-head { display:flex; gap:16px; align-items:center; margin-bottom:22px; }
.forums { margin-bottom:28px; }
.idx-side { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:20px; }
@media(max-width:900px){ .idx-side { grid-template-columns:1fr; } }
.fh-ico { width:54px; height:54px; background:#161616; border:1px solid #2a2a2a; display:flex; align-items:center; justify-content:center; clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px); }
.fh-ico span::before { font-family:'Arial Black',Arial,sans-serif; font-size:16px; color:#c81e2c; letter-spacing:.05em; }
.fh-ico span::before, .fic span::before { content:"K"; }

.cat { margin-bottom:20px; }
.cat-head { background:#161616; border-left:3px solid #c81e2c; padding:10px 16px; }
.cat-head h2 { margin:0; font-size:14px; letter-spacing:.18em; text-transform:uppercase; color:#e6e6e6; }
.frow { display:grid; grid-template-columns:54px 1fr 150px 220px; gap:14px; align-items:center; background:#111; border:1px solid #1c1c1c; border-top:0; padding:14px 16px; }
.frow:first-child, .forums .frow:first-child { border-top:1px solid #1c1c1c; }
.fic { width:54px; height:54px; background:#0c0c0c; border:1px solid #2a2a2a; display:flex; align-items:center; justify-content:center; clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px); }
.fic span::before { font-family:'Arial Black',Arial,sans-serif; font-size:15px; color:#c81e2c; }
.fname a { color:#e8e8e8; font-weight:700; font-size:15px; text-decoration:none; }
.fname { text-align:left; }
.fname a:hover { color:#ff6b6b; }
.fdesc { color:#8a8a8a; font-size:12px; margin-top:3px; line-height:1.4; }
.fdesc a { color:#9a9a9a; text-decoration:none; }
.fstats { text-align:right; color:#8a8a8a; font-size:12px; line-height:1.6; }
.fstats b { color:#ccc; font-size:15px; }
.flast { color:#7a7a7a; font-size:12px; line-height:1.5; border-left:1px solid #1e1e1e; padding-left:14px; }
.flast a { color:#9a9a9a; text-decoration:none; }
.flast a:hover { color:#ff6b6b; }
.subforums-note { color:#666; font-size:11px; text-transform:uppercase; letter-spacing:.14em; margin:10px 0 0 4px; }

/* monogram map (fid -> initials) */

.fic[data-fid='4'] span::before,.fh-ico[data-fid='4'] span::before{content:"KO"}
.fic[data-fid='5'] span::before,.fh-ico[data-fid='5'] span::before{content:"GA"}
.fic[data-fid='6'] span::before,.fh-ico[data-fid='6'] span::before{content:"SE"}
.fic[data-fid='7'] span::before,.fh-ico[data-fid='7'] span::before{content:"B"}
.fic[data-fid='8'] span::before,.fh-ico[data-fid='8'] span::before{content:"B"}
.fic[data-fid='9'] span::before,.fh-ico[data-fid='9'] span::before{content:"GD"}
.fic[data-fid='10'] span::before,.fh-ico[data-fid='10'] span::before{content:"TS"}
.fic[data-fid='11'] span::before,.fh-ico[data-fid='11'] span::before{content:"Q3"}
.fic[data-fid='12'] span::before,.fh-ico[data-fid='12'] span::before{content:"Q3"}
.fic[data-fid='13'] span::before,.fh-ico[data-fid='13'] span::before{content:"QL"}
.fic[data-fid='14'] span::before,.fh-ico[data-fid='14'] span::before{content:"GC"}
.fic[data-fid='15'] span::before,.fh-ico[data-fid='15'] span::before{content:"F"}
.fic[data-fid='16'] span::before,.fh-ico[data-fid='16'] span::before{content:"TS"}
.fic[data-fid='17'] span::before,.fh-ico[data-fid='17'] span::before{content:"W7"}
.fic[data-fid='18'] span::before,.fh-ico[data-fid='18'] span::before{content:"W8"}
.fic[data-fid='19'] span::before,.fh-ico[data-fid='19'] span::before{content:"W8"}
.fic[data-fid='20'] span::before,.fh-ico[data-fid='20'] span::before{content:"H"}
.fic[data-fid='21'] span::before,.fh-ico[data-fid='21'] span::before{content:"G5"}
.fic[data-fid='22'] span::before,.fh-ico[data-fid='22'] span::before{content:"T"}
.fic[data-fid='24'] span::before,.fh-ico[data-fid='24'] span::before{content:"T"}
.fic[data-fid='25'] span::before,.fh-ico[data-fid='25'] span::before{content:"F4"}
.fic[data-fid='26'] span::before,.fh-ico[data-fid='26'] span::before{content:"D2"}
.fic[data-fid='27'] span::before,.fh-ico[data-fid='27'] span::before{content:"D4"}
.fic[data-fid='28'] span::before,.fh-ico[data-fid='28'] span::before{content:"H"}
.fic[data-fid='29'] span::before,.fh-ico[data-fid='29'] span::before{content:"SW"}
.fic[data-fid='30'] span::before,.fh-ico[data-fid='30'] span::before{content:"B"}
.fic[data-fid='31'] span::before,.fh-ico[data-fid='31'] span::before{content:"UT"}
.fic[data-fid='32'] span::before,.fh-ico[data-fid='32'] span::before{content:"UT"}

/* ---- thread list (forumdisplay) ---- */
.crumb { color:#7a7a7a; font-size:12px; padding:18px 0 0; letter-spacing:.04em; }
.crumb a { color:#8a8a8a; text-decoration:none; }
.crumb a:hover { color:#ff6b6b; }
.crumb b { color:#cfcfcf; }
.forum-head { display:flex; gap:16px; align-items:center; margin:14px 0 22px; padding-bottom:18px; border-bottom:2px solid #1e1e1e; }
.forum-head h1 { font-family:'Arial Black',Arial,sans-serif; font-size:26px; margin:0; color:#f2f2f2; text-transform:uppercase; }
.forum-head .fd { color:#888; font-size:13px; margin-top:2px; max-width:640px; }
.newthread {
  background:#c81e2c; color:#fff !important; font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:12px;
  padding:10px 18px; text-decoration:none; margin-left:auto;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.newthread:hover { background:#a3121f; }
.fd-actions { color:#7a7a7a; font-size:12px; margin-bottom:10px; }
.fd-actions a { color:#9a9a9a; text-decoration:none; }
.fd-actions a:hover { color:#ff6b6b; }
.thead { background:#161616; border:1px solid #1e1e1e; padding:10px 16px; font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:#e6e6e6; display:flex; gap:14px; }
.thead a { color:#cfcfcf; text-decoration:none; }
.thead span.r { margin-left:auto; }
.thead span + span.r { margin-left:0; }
.trow { display:grid; grid-template-columns:1fr 64px 84px 170px; gap:14px; align-items:center; background:#111; border:1px solid #1c1c1c; border-top:0; padding:12px 16px; }
.trow .tmain { display:flex; gap:14px; align-items:center; min-width:0; }
.trow .tmain .avatar { flex:0 0 44px; }
.trow .avatar { width:44px; height:44px; background:#0c0c0c; border:1px solid #2a2a2a; display:flex; align-items:center; justify-content:center; color:#6a6a6a; font-size:16px; clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px); }
.trow .tt { color:#e8e8e8; font-weight:600; font-size:14px; text-decoration:none; line-height:1.35; }
.trow .tt:hover { color:#ff6b6b; }
.trow .tsub { color:#7a7a7a; font-size:12px; margin-top:3px; }
.trow .reply-b { background:#161616; border:1px solid #2a2a2a; color:#e0a0a0; font-weight:700; text-align:center; padding:8px 0; display:block; clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px); }
.trow .by { color:#7a7a7a; font-size:12px; text-align:right; line-height:1.5; }
.trow .by a { color:#9a9a9a; text-decoration:none; }
.fd-sort select { background:#0c0c0c; color:#bbb; border:1px solid #2a2a2a; padding:6px 8px; margin:12px 6px 0 0; }
.page-nav { margin-top:16px; color:#9a9a9a; }
.page-nav a { color:#cfcfcf; text-decoration:none; margin:0 3px; }
.page-nav .multipage span { margin:0 3px; }
.page-nav table, .page-nav td { border:0; background:transparent; }

/* ---- thread view (showthread) ---- */
.st-toolbar { display:flex; align-items:center; gap:14px; margin:16px 0; }
.st-toolbar .grow { flex:1; }
.postbit { display:grid; grid-template-columns:190px 1fr; background:#111; border:1px solid #1c1c1c; margin-bottom:16px; }
.pb-side { background:#0c0c0c; border-right:1px solid #1e1e1e; padding:16px; text-align:left; }
.pb-side .pb-avatar { text-align:center; }
.pb-side .pb-name { text-align:left; }
.pb-side .pb-meta { text-align:left; line-height:1.8; font-size:12px; color:#8a8a8a; }
.pb-side .pb-meta a { color:#9a9a9a; text-decoration:none; }
/* user_details renders as .pinfo with float_left/float_right spans — collapse so values sit after labels */
.pb-side .pinfo .float_left, .pb-side .pinfo .float_right { float:none; display:inline; }
.pb-side .pinfo .float_right { margin-left:2px; }
.pb-side .pinfo { margin-top:6px; }
.pb-avatar img { width:100%; max-width:150px; display:block; }
.pb-name { margin:10px 0 6px; font-size:14px; color:#e8e8e8; }
.pb-name a { color:#e8e8e8; text-decoration:none; font-weight:700; }
.pb-name a:hover { color:#ff6b6b; }
.pb-meta { color:#7a7a7a; font-size:11px; line-height:1.6; }
.pb-meta a { color:#9a9a9a; text-decoration:none; }
.pb-main { padding:14px 18px 12px; min-width:0; }
.post_head { display:flex; align-items:center; gap:12px; border-bottom:1px solid #1e1e1e; padding-bottom:10px; margin-bottom:12px; font-size:12px; color:#8a8a8a; }
.post_head a { color:#cfcfcf; text-decoration:none; font-weight:700; font-size:14px; }
.post_head a:hover { color:#ff6b6b; }
.post_body { color:#cfcfcf; font-size:14px; line-height:1.6; word-wrap:break-word; }
.post_body img { max-width:100%; height:auto; }
.post_body a { color:#e0a0a0; }
.post_body blockquote { background:#0c0c0c; border-left:3px solid #c81e2c; padding:10px 14px; margin:10px 0; color:#aaa; font-size:13px; }
.pb-sig { border-top:1px dashed #262626; margin-top:14px; padding-top:10px; color:#6a6a6a; font-size:12px; }
.post_controls { margin-top:12px; font-size:12px; }
.postbit_buttons a, .postbit_buttons2 a, .post_management_buttons a {
  color:#9a9a9a; text-decoration:none; background:#0c0c0c; border:1px solid #2a2a2a; padding:5px 10px; margin:0 4px 4px 0; display:inline-block; font-size:11px; letter-spacing:.04em;
}
.postbit_buttons a:hover, .postbit_buttons2 a:hover { color:#ff6b6b; border-color:#4a2a2a; }
.postbit_buttons a i, .postbit_buttons2 a i { margin-right:4px; }

/* ---- forms (register / login / post form) ---- */
.formbox { background:#111; border:1px solid #1e1e1e; padding:24px; margin-bottom:24px; }
.fgrid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.fcol { background:#0c0c0c; border:1px solid #1e1e1e; }
.fhead { background:#161616; padding:10px 16px; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:#e6e6e6; border-bottom:2px solid #c81e2c; }
.fbody { padding:16px; }
.frow { margin-bottom:14px; }
.frow label { display:block; color:#9a9a9a; font-size:11px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:6px; }
.frow input.textbox, .frow select, .formbox select { width:100%; background:#0a0a0a; border:1px solid #2a2a2a; color:#ddd; padding:9px 11px; font-size:13px; }
.formbox input.textbox { width:100%; background:#0a0a0a; border:1px solid #2a2a2a; color:#ddd; padding:9px 11px; }
.ck { display:block; color:#bbb; font-size:13px; margin:8px 0; }
.fsubmit { margin-top:20px; text-align:right; }
.wbtn, .fsubmit input[type=submit] {
  background:#c81e2c; color:#fff; border:0; font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:13px;
  padding:12px 26px; cursor:pointer; clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.wbtn:hover { background:#a3121f; }
.regcheck, .regerror { color:#ff6b6b; }

/* post form (newthread/newreply) */
.tform { background:#111; border:1px solid #1e1e1e; padding:20px; margin-bottom:20px; }
.tform fieldset { border:1px solid #1e1e1e; padding:14px 16px; margin:0 0 16px; background:#0c0c0c; }
.tform legend { color:#cfcfcf; font-size:12px; letter-spacing:.14em; text-transform:uppercase; padding:0 8px; }
.tform input.textbox { background:#0a0a0a; border:1px solid #2a2a2a; color:#ddd; padding:9px 11px; }
.tform textarea { width:100%; min-height:220px; background:#0a0a0a; border:1px solid #2a2a2a; color:#ddd; padding:10px 12px; }
.tform .button, .tform input[type=submit] {
  background:#c81e2c; color:#fff; border:0; font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:12px;
  padding:11px 22px; cursor:pointer; clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.tform .button:hover { background:#a3121f; }
.qreply, #quickreply { background:#111; border:1px solid #1e1e1e; margin-top:20px; }
#quickreply h3, .qreply h3 { background:#161616; border-bottom:2px solid #c81e2c; margin:0; padding:10px 16px; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:#e6e6e6; }

/* ---- misc stock bits ---- */
.popup_menu, .popup_item_container { display:none; }
.extraslink_popup { display:none; }
.online_users .online_avatars { display:none; }
#online { color:#999; }
.onlinemembers { color:#8a8a8a; }
.onlinemembers a { color:#a9a9a9; }
.tipsy, #fbak, .float_left, .float_right { clear:both; }
.kobk-credit { padding:22px 0 30px; text-align:center; }
.kobk-credit a.button6 { color:#7a7a7a; text-decoration:none; background:transparent; }
.kobk-credit a.button6:hover { color:#ff6b6b; }
.smalltext { color:#999; font-size:12px; }
a.button4, a.button5 {
  background:#c81e2c; color:#fff !important; border:0; padding:7px 16px; font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.06em; text-decoration:none;
  clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
}
a.button6 { color:#8a8a8a; text-decoration:none; }
a.button6:hover { color:#ff6b6b; }

/* ---- mobile ---- */
@media (max-width: 900px) {
  .cols { grid-template-columns:1fr; padding:18px 0 30px; }
  aside { order:2; }
  .frow { grid-template-columns:48px 1fr; grid-auto-rows:auto; }
  .frow .fstats, .frow .flast { grid-column:2; text-align:left; border-left:0; padding-left:0; }
  .frow .flast { border-top:1px solid #1e1e1e; padding-top:8px; margin-top:4px; }
  .trow { grid-template-columns:1fr; }
  .trow .tmain { flex-wrap:wrap; }
  .trow .r, .trow .by { grid-column:1; text-align:left; }
  .trow .by { border-top:1px solid #1e1e1e; padding-top:6px; margin-top:4px; }
  .postbit { grid-template-columns:1fr; }
  .pb-side { border-right:0; border-bottom:1px solid #1e1e1e; padding:10px 12px; display:flex; align-items:center; gap:10px; }
  .pb-side .pb-avatar { flex:0 0 36px; }
  .pb-side .pb-avatar img { width:36px; max-width:36px; height:36px; object-fit:cover; clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px); }
  .pb-side .pb-name { font-size:13px; margin:0; line-height:1.2; }
  .pb-side .pb-meta { display:none; }
  .fgrid { grid-template-columns:1fr; }
  .memorial .wrap { flex-direction:column; align-items:flex-start; }
  header .logo-strip img { max-width:240px; }
  .scroller-body { max-height:420px; }
  .newsbox iframe { height:400px; }
}

/* metallic logo on dark header: drop the black via screen blend, static (no animation) */
.kobk-logo { mix-blend-mode:screen; width:352px; max-width:60vw; height:auto; display:block; }
@media (max-width:900px){ .kobk-logo { width:220px; } }

/* v2.1 fixes: feed alignment + account button red */
.latest-threads-wrap, .latest-threads-wrap table, .latest-threads-wrap td { text-align:left; background:transparent; border:0; }
.feed-item, .feed-item table, .feed-item td { text-align:left; }
.scroller-body table, .scroller-body td { text-align:left; }
header nav a.button5, header nav a.button4, header nav .button4, header nav .button5,
a.button5, a.button4 {
  background:#c81e2c !important; color:#fff !important; border:0 !important;
  font-weight:700 !important; text-transform:uppercase !important; letter-spacing:.06em !important;
  font-size:12px !important; padding:7px 14px !important; text-decoration:none !important;
  clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
}

/* postbit_classic: .post.classic wrapper sits inside .pb-main — keep it clean */
.pb-main .post.classic, .postbit .post.classic { background:transparent; border:0; padding:0; margin:0; }
.pb-main .post_head .post_status { color:#7a7a7a; font-size:11px; }
