:root{
  --bg:#ffffff;
  --panel:#f5f5f5;
  --panel2:#e9eef4;
  --text:#222;
  --muted:#777;
  --line:#c6c6c6;
  --blue:#336699;
  --blue2:#cee3f8;
  --blue3:#5f99cf;
  --orange:#ff8b60;
  --orange2:#ff4500;
  --green:#228b22;
  --danger:#b90000;
  --link:#0000cc;
}
:root.dark{
  --bg:#161616;
  --panel:#202020;
  --panel2:#292929;
  --text:#ddd;
  --muted:#999;
  --line:#444;
  --blue:#8db8df;
  --blue2:#243b52;
  --blue3:#537ea4;
  --orange:#d97554;
  --orange2:#ff6b37;
  --green:#65a765;
  --danger:#ff7777;
  --link:#8ab4f8;
}
*{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--bg);color:var(--text);font:12px/1.35 Verdana,Arial,Helvetica,sans-serif}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}

.topbar{
  display:flex;align-items:flex-end;gap:12px;min-height:58px;padding:8px 8px 0;
  background:var(--blue2);border-bottom:1px solid var(--blue3);position:relative;z-index:20
}
.brand{
  display:block;font:bold 24px/1 Arial,Helvetica,sans-serif;letter-spacing:-1.2px;color:#111;
  padding:0 2px 7px;white-space:nowrap;text-shadow:0 1px #fff
}
.dark .brand{color:#eee;text-shadow:none}
.brand span{color:var(--orange2)}
.brand small{font:normal 9px Verdana,Arial,sans-serif;color:var(--muted);letter-spacing:0;margin-left:4px;vertical-align:top}
.topbar nav{display:flex;align-items:flex-end;gap:3px;overflow:auto;white-space:nowrap}
.topbar nav a{
  color:var(--blue);font-weight:bold;background:rgba(255,255,255,.45);border:1px solid var(--blue3);border-bottom:0;
  padding:4px 7px 5px;border-radius:3px 3px 0 0;text-decoration:none
}
.topbar nav a:hover{background:#fff;color:#111}
.topbar nav a.active{background:var(--bg);color:var(--orange2);padding-bottom:6px}
.themebtn{
  margin-left:auto;margin-bottom:7px;background:linear-gradient(#fff,#ddd);border:1px solid #888;color:#333;
  height:23px;min-width:36px;border-radius:2px;cursor:pointer;font:11px Verdana,Arial,sans-serif
}
.dark .themebtn{background:linear-gradient(#444,#222);color:#ddd;border-color:#666}

.ticker{
  height:24px;display:flex;align-items:center;gap:20px;overflow:hidden;white-space:nowrap;padding:0 8px;
  color:#555;background:#f6f6f6;border-bottom:1px solid #ddd;font-size:10px;text-transform:uppercase
}
.dark .ticker{background:#1c1c1c;border-color:#3a3a3a;color:#aaa}
.ticker span{display:inline-block}
.ticker span:before{content:'•';color:var(--orange2);margin-right:7px}

.wrap{width:100%;max-width:none;margin:0;padding:10px 8px 50px}
.hero{
  display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:10px;align-items:stretch;min-height:0;
  border:1px solid var(--line);background:#f8f8f8;padding:10px;margin-bottom:10px
}
.dark .hero{background:#1d1d1d}
.eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-weight:bold;margin-bottom:3px}
.hero h1,.modulehero h1,.boardhero h1,.sectionhead h1,.livehead h1,.rules h1{
  font:bold 22px/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.3px;margin:0 0 7px;color:#222
}
.dark .hero h1,.dark .modulehero h1,.dark .boardhero h1,.dark .sectionhead h1,.dark .livehead h1,.dark .rules h1{color:#eee}
.hero h1 em{font-style:normal;color:var(--orange2)}
.hero p,.modulehero p,.boardhero p,.livehead p{color:#555;max-width:760px;font-size:11px;margin:0 0 6px}
.dark .hero p,.dark .modulehero p,.dark .boardhero p,.dark .livehead p{color:#aaa}
.heroactions{display:flex;gap:5px;margin-top:9px}
.btn{
  display:inline-block;border:1px solid #888;background:linear-gradient(#fff,#ddd);color:#222;padding:4px 8px;border-radius:2px;
  font:bold 10px Verdana,Arial,sans-serif;cursor:pointer;box-shadow:inset 0 1px #fff;text-decoration:none
}
.btn:hover{text-decoration:none;background:linear-gradient(#fff,#cfcfcf)}
.btn.primary{background:linear-gradient(#fff1eb,#ffc6ad);border-color:#cf6b43;color:#7a2300}
.dark .btn{background:linear-gradient(#444,#222);color:#ddd;border-color:#666;box-shadow:none}
.dark .btn.primary{background:#703419;color:#ffd8c8;border-color:#aa5b37}

.terminal{background:#fff;border:1px solid #aaa;border-radius:0;box-shadow:none;overflow:hidden;transform:none;font-family:"Courier New",monospace}
.dark .terminal{background:#111;border-color:#555}
.terminal .dots{padding:4px 7px;background:#ddd;border-bottom:1px solid #aaa;color:#777;letter-spacing:2px;font-size:9px}
.dark .terminal .dots{background:#292929;border-color:#555}
.terminal pre{padding:8px;margin:0;min-height:112px;color:#1a1a1a;font-size:11px;line-height:1.35;white-space:pre-wrap}
.dark .terminal pre{color:#b7e5b7}

.grid.two{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:10px;margin-top:0}
.sectionhead{display:flex;align-items:center;justify-content:space-between;margin:0 0 4px;border-bottom:1px solid var(--blue3);background:var(--blue2);padding:4px 6px}
.sectionhead h2{margin:0;font:bold 12px Verdana,Arial,sans-serif;color:#111}
.dark .sectionhead h2{color:#eee}
.sectionhead a{font-size:10px}
.stack{display:block;border-top:1px solid #ddd}
.postcard{
  position:relative;display:block;background:#fff;border:0;border-bottom:1px solid #ddd;padding:7px 8px 7px 30px;min-height:55px;transition:none
}
.dark .postcard{background:#191919;border-color:#333}
.postcard:nth-child(even){background:#f8f8f8}
.dark .postcard:nth-child(even){background:#1d1d1d}
.postcard:before{content:'▲\A▼';white-space:pre;position:absolute;left:9px;top:9px;color:#aaa;font:bold 10px/15px Arial;text-align:center}
.postcard:hover{transform:none;background:#fffbe9}
.dark .postcard:hover{background:#242116}
.postcard h3{margin:1px 0 3px;font:bold 13px/1.25 Verdana,Arial,sans-serif;color:var(--link)}
.postcard p{margin:0 0 4px;color:#555;font-size:10px}
.dark .postcard p{color:#aaa}
.tag{display:inline;color:#777;font-size:9px;font-weight:bold}
.meta{font-size:9px;color:var(--muted)}

.panel{background:#f6f6f6;border:1px solid #bbb;border-radius:0;padding:6px;margin-bottom:8px}
.dark .panel{background:#1f1f1f;border-color:#444}
.panel h3{margin:-6px -6px 5px;padding:4px 6px;background:var(--blue2);border-bottom:1px solid var(--blue3);font:bold 11px Verdana,Arial,sans-serif;color:#111}
.dark .panel h3{color:#eee}
.panel p{color:#555;font-size:10px;margin:5px 0}
.dark .panel p{color:#aaa}
.modulelink{display:block;padding:5px 3px;border-top:1px dotted #aaa}
.modulelink:first-of-type{border-top:0}
.modulelink b{display:block;font-size:10px}
.modulelink span{display:block;color:var(--muted);font-size:9px;margin-top:1px}

.boardgrid,.cardgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.boardcard,.itemcard{background:#f7f7f7;border:1px solid #bbb;border-radius:0;padding:7px;min-height:100px}
.dark .boardcard,.dark .itemcard{background:#1e1e1e;border-color:#444}
.boardcard:hover{border-color:var(--orange2);text-decoration:none;background:#fffdf4}
.dark .boardcard:hover{background:#262116}
.boardcard h3,.itemcard h3{font:bold 12px Verdana,Arial,sans-serif;margin:5px 0 4px;color:var(--link)}
.boardcard p,.itemcard p{color:#555;font-size:10px;margin:3px 0 6px}
.dark .boardcard p,.dark .itemcard p{color:#aaa}
.boardicon{display:inline-block;color:#fff;background:var(--blue);font:bold 9px Verdana,Arial,sans-serif;border-radius:2px;padding:2px 4px}
.boardcard>span{font-size:9px;color:var(--muted)}

.createbox{margin:7px 0;background:#f7f7f7;border:1px solid #bbb;border-radius:0;padding:6px}
.dark .createbox{background:#1f1f1f;border-color:#444}
.createbox summary{cursor:pointer;font-weight:bold;color:var(--link);font-size:10px}
form{margin-top:6px}
label{display:grid;gap:2px;font-size:9px;color:#555;font-weight:bold}
.dark label{color:#aaa}
input,textarea{
  width:100%;border:1px solid #aaa;background:#fff;color:#111;padding:4px 5px;border-radius:0;
  font:11px Verdana,Arial,sans-serif;outline:none
}
.dark input,.dark textarea{background:#111;color:#eee;border-color:#555}
input:focus,textarea:focus{border-color:var(--blue3);box-shadow:0 0 0 1px var(--blue2)}
textarea{resize:vertical}
.formrow{display:grid;grid-template-columns:1fr 2fr;gap:6px;margin-bottom:5px}
.createbox button{margin-top:6px}

.boardhero,.livehead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:6px;background:#f5f5f5;border:1px solid #bbb;padding:7px}
.dark .boardhero,.dark .livehead{background:#1e1e1e;border-color:#444}
.boardhero>span,.online{border:1px solid #aaa;background:#fff;padding:3px 5px;border-radius:2px;color:#666;font-size:9px;white-space:nowrap}
.dark .boardhero>span,.dark .online{background:#111;color:#aaa;border-color:#555}
.modulehero{padding:7px;background:#f5f5f5;border:1px solid #bbb;margin-bottom:6px}
.dark .modulehero{background:#1e1e1e;border-color:#444}
.itemtop{display:flex;justify-content:space-between;gap:6px;color:var(--muted);font-size:9px}
.pill{color:#fff;background:var(--blue);font-weight:bold;padding:2px 4px;border-radius:2px}

.back{display:inline-block;margin-bottom:5px;font-size:10px}
.thread{background:#fff;border:1px solid #bbb;border-radius:0;padding:9px 9px 9px 30px;position:relative}
.dark .thread{background:#191919;border-color:#444}
.thread:before{content:'▲\A▼';white-space:pre;position:absolute;left:8px;top:9px;color:#aaa;font:bold 10px/15px Arial}
.thread h1{font:bold 16px/1.2 Verdana,Arial,sans-serif;margin:0 0 3px;color:var(--link)}
.bodytext{margin-top:9px;font-size:11px;white-space:normal}
.comments{margin:8px 0}
.comments h2{font:bold 11px Verdana,Arial,sans-serif;background:var(--blue2);border-bottom:1px solid var(--blue3);padding:4px 6px;margin:0 0 4px}
.comment{border-left:1px dotted #999;padding:5px 7px;margin:3px 0 3px 12px;background:#fafafa}
.dark .comment{background:#1b1b1b;border-color:#555}
.commenthead{display:flex;gap:7px;color:var(--muted);font-size:9px;margin-bottom:3px}
.commenthead b{color:var(--blue)}
.reply{position:static;background:#f4f4f4;border:1px solid #bbb;border-radius:0;padding:6px}
.dark .reply{background:#1e1e1e;border-color:#444}
.reply .formrow{grid-template-columns:130px 1fr auto;margin:0}
.reply textarea{min-height:42px;height:42px}

.livehead .online i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:4px}
.livebox{height:55vh;overflow:auto;background:#fff;border:1px solid #aaa;border-radius:0;padding:3px;font-family:Tahoma,Verdana,Arial,sans-serif}
.dark .livebox{background:#151515;border-color:#555}
.livemsg{display:grid;grid-template-columns:120px 1fr 45px;gap:7px;padding:3px 4px;border-bottom:1px dotted #ccc;font-size:10px}
.dark .livemsg{border-color:#444}
.livemsg b{color:var(--blue)}
.livemsg time{color:var(--muted);font-size:8px;text-align:right}
.liveform{display:grid;grid-template-columns:150px 1fr auto;gap:4px;margin-top:4px}

.rules{max-width:760px;border:1px solid #bbb;background:#f7f7f7;padding:9px}
.dark .rules{background:#1e1e1e;border-color:#444}
.rules ol{font:bold 12px/1.5 Verdana,Arial,sans-serif;padding-left:25px}
.rules li{padding:5px 0;border-bottom:1px dotted #aaa}
.muted{color:var(--muted)}
.flash{background:#fff7d7;color:#523d00;padding:5px 7px;border:1px solid #e2cc72;border-radius:0;font-weight:bold;margin-bottom:7px;font-size:10px}
.empty{padding:30px 10px;text-align:center;color:var(--muted);border:1px solid #ddd;background:#fafafa}
.dark .empty{background:#1b1b1b;border-color:#444}
footer{border-top:1px solid #bbb;padding:12px 8px;text-align:center;color:#777;font-size:9px;background:#f4f4f4}
.dark footer{background:#1b1b1b;border-color:#444}
footer a{color:var(--link)}

@media(max-width:850px){
  .topbar{align-items:flex-start;flex-wrap:wrap;padding-bottom:0}.topbar nav{order:3;width:100%}.themebtn{margin-left:auto}
  .hero,.grid.two{grid-template-columns:1fr}.boardgrid,.cardgrid{grid-template-columns:1fr 1fr}
  .terminal{display:none}.grid.two aside{order:-1}.panel{margin-bottom:6px}
  .formrow,.reply .formrow,.liveform{grid-template-columns:1fr}.livemsg{grid-template-columns:90px 1fr}.livemsg time{display:none}
}
@media(max-width:560px){
  .brand{font-size:21px}.topbar{gap:5px}.topbar nav a{font-size:9px;padding:4px 5px}
  .boardgrid,.cardgrid{grid-template-columns:1fr}.wrap{padding:6px 4px 35px}.hero{padding:7px}
  .hero h1,.modulehero h1,.boardhero h1,.sectionhead h1,.livehead h1,.rules h1{font-size:18px}
  .heroactions{flex-wrap:wrap}.boardhero,.livehead{display:block}.boardhero>span,.online{display:inline-block;margin-top:4px}
  .thread h1{font-size:14px}
}

/* v0.2 additions: multilingual old-web chrome, actual votes, local identity */
.toptools{margin-left:auto;display:flex;align-items:center;gap:5px;padding-bottom:7px;white-space:nowrap}
.toptools .themebtn{margin:0}
.prefsl{font-size:9px;color:#444;text-decoration:underline}
.dark .prefsl{color:#bbb}
.langs{display:flex;border:1px solid #8aa8c5;background:#fff;height:22px;align-items:stretch}
.dark .langs{background:#222;border-color:#555}
.langs a{display:flex;align-items:center;padding:0 5px;font:bold 8px Verdana,Arial,sans-serif;color:#555;border-right:1px solid #ccc;text-decoration:none}
.langs a:last-child{border-right:0}.langs a.active{background:var(--orange2);color:#fff}.dark .langs a{color:#bbb;border-color:#555}
.terminal .dots span{float:right;letter-spacing:0;font:8px Verdana,Arial,sans-serif;color:#888}
.sorttabs,.subnav{display:flex;gap:3px;align-items:center}.sorttabs a,.subnav a{padding:2px 5px;border:1px solid transparent}.sorttabs a.active,.subnav a.active{background:#fff;border-color:#9bbbd7;color:var(--orange2);font-weight:bold;text-decoration:none}.dark .sorttabs a.active,.dark .subnav a.active{background:#111;border-color:#526b80}
.subnav{margin:-2px 0 6px;padding:3px 5px;background:#f4f4f4;border:1px solid #ccc;font-size:9px}.dark .subnav{background:#1d1d1d;border-color:#444}

.postrow{display:grid;grid-template-columns:32px 1fr;background:#fff;border-bottom:1px solid #ddd;min-height:62px}
.postrow:nth-child(even){background:#f8f8f8}.dark .postrow{background:#191919;border-color:#333}.dark .postrow:nth-child(even){background:#1d1d1d}.postrow:hover{background:#fffbe9}.dark .postrow:hover{background:#242116}
.votecol{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:5px;color:#888;font:9px Arial,sans-serif}.votecol form,.threadvote form{margin:0}.votecol b,.threadvote b{font:bold 9px Verdana,Arial,sans-serif;line-height:11px;color:#777}.dark .votecol b,.dark .threadvote b{color:#aaa}
.votebtn{border:0;background:transparent;padding:0;line-height:11px;height:12px;cursor:pointer;color:#aaa;font:bold 11px Arial,sans-serif}.votebtn.up:hover{color:var(--orange2)}.votebtn.down:hover{color:#7193ff}
.postmain{padding:6px 8px 6px 2px}.postmain h3{margin:1px 0 3px;font:bold 13px/1.25 Verdana,Arial,sans-serif}.postmain p{margin:0 0 4px;color:#555;font-size:10px}.dark .postmain p{color:#aaa}
.flair{font-size:8px;color:#777;background:#eee;border:1px solid #ccc;padding:0 2px;white-space:nowrap}.dark .flair{background:#2a2a2a;border-color:#555;color:#aaa}.langbadge{font:bold 8px Verdana,Arial,sans-serif;background:#eaf3fb;border:1px solid #b8cee2;color:#496b8a;padding:0 2px}.dark .langbadge{background:#213445;border-color:#45637c;color:#a9c9e3}
.statusline{padding:3px 1px;border-bottom:1px dotted #bbb;font-size:9px;color:#555}.dark .statusline{color:#aaa;border-color:#555}.statusline i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:5px}
.tinyad{margin-top:7px;padding:7px 4px;text-align:center;border:1px dashed #aaa;background:#fff;color:#999;font:8px/1.4 "Courier New",monospace}.tinyad b{color:#666}.dark .tinyad{background:#151515;border-color:#555;color:#777}.dark .tinyad b{color:#aaa}

select{width:100%;border:1px solid #aaa;background:#fff;color:#111;padding:3px 4px;border-radius:0;font:10px Verdana,Arial,sans-serif;outline:none}.dark select{background:#111;color:#eee;border-color:#555}
.formrow.three{grid-template-columns:1.25fr 1fr 90px}
.thread{padding:0;display:grid;grid-template-columns:34px 1fr}.thread:before{display:none}.threadvote{display:flex;flex-direction:column;align-items:center;padding-top:8px;background:#f7f7f7;border-right:1px solid #ddd}.dark .threadvote{background:#1c1c1c;border-color:#333}.threadcontent{padding:9px}.threadcontent h1{font:bold 16px/1.2 Verdana,Arial,sans-serif;margin:0 0 3px;color:var(--link)}
.replygrid{display:grid;grid-template-columns:130px 150px 70px minmax(220px,1fr) auto;gap:5px;align-items:end}.replygrid label{margin:0}.replybody textarea{height:44px;min-height:44px}.replygrid>.btn{height:25px;margin:0 0 1px}
.commenthead b .flair{color:#777}.commenthead b .langbadge{font-weight:bold}

.liveform{grid-template-columns:130px 150px 60px minmax(180px,1fr) auto}.livemsg{grid-template-columns:190px 1fr 80px}.livemsg b small{font:8px Verdana,Arial,sans-serif;color:#777}.dark .livemsg b small{color:#aaa}
.prefsbox{max-width:760px;background:#f6f6f6;border:1px solid #bbb;padding:9px}.dark .prefsbox{background:#1e1e1e;border-color:#444}.prefsbox h1{font:bold 20px Arial,Helvetica,sans-serif;margin:0 0 6px}.prefsbox p{font-size:10px;color:#555}.dark .prefsbox p{color:#aaa}.fakeprofile{display:flex;gap:8px;align-items:center;border:1px solid #bbb;background:#fff;padding:7px;margin:8px 0}.dark .fakeprofile{background:#151515;border-color:#444}.avatarpixel{width:36px;height:36px;display:grid;place-items:center;background:#cee3f8;border:1px solid #5f99cf;color:#336699;font:bold 20px "Courier New",monospace}.prefsform{display:grid;grid-template-columns:1fr 1fr;gap:7px}.prefsform>div{grid-column:1/-1}#profileSaved{min-height:14px;margin-top:3px}.beta-forever{font-style:italic;color:#999}

@media(max-width:980px){.replygrid{grid-template-columns:1fr 1fr 80px}.replybody{grid-column:1/-1}.replygrid>.btn{grid-column:1/-1;width:max-content}.liveform{grid-template-columns:1fr 1fr 70px}.liveform input[name="body"]{grid-column:1/3}.liveform .btn{grid-column:3}}
@media(max-width:850px){.toptools{order:2;margin-left:auto}.topbar nav{order:3}.formrow.three{grid-template-columns:1fr 1fr 80px}.livemsg{grid-template-columns:150px 1fr}.livemsg time{display:none}}
@media(max-width:560px){.toptools{width:100%;order:2;padding-bottom:3px}.topbar nav{order:3}.langs{margin-left:auto}.prefsl{margin-left:2px}.formrow.three,.prefsform,.replygrid,.liveform{grid-template-columns:1fr}.replybody,.replygrid>.btn,.liveform input[name="body"],.liveform .btn{grid-column:auto}.postrow{grid-template-columns:28px 1fr}.livemsg{grid-template-columns:100px 1fr}.tinyad{display:none}}
