/* Codex pages (characters / weapons & items / enemies). Loaded after wh.css. */
.cx-wide{max-width:1120px}
.cx-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}
.cx-tabs a{font:500 14px/1 var(--f-pixel);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);
  padding:9px 12px;border:2px solid var(--line2);background:var(--panel)}
.cx-tabs a:hover{color:var(--gold2);border-color:var(--brass)}
.cx-tabs a.on{color:#fff;background:var(--blood);border-color:#5c0a0e}
.cx-tools{position:sticky;top:64px;z-index:10;display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;margin:18px 0 10px;padding:12px 14px;
  background:rgba(28,23,20,.97);box-shadow:0 0 0 2px #000,0 0 0 4px var(--line2),6px 6px 0 4px rgba(0,0,0,.55)}
.cx-tools label{display:flex;flex-direction:column;gap:4px;min-width:0}
.cx-tools label span{font:600 11px/1 var(--f-pixel);letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.cx-tools .cx-q{flex:1 1 220px}
.cx-tools input,.cx-tools select{font:16px/1.2 var(--f-body);color:var(--ink);background:#0f0c0a;border:2px solid var(--line2);padding:8px 10px;border-radius:0;min-width:0;max-width:100%}
.cx-tools input:focus,.cx-tools select:focus{outline:2px solid var(--gold);outline-offset:1px}
.cx-tools .btn{padding:10px 14px;font-size:13px}
#cx-count{flex:1 0 100%;font:500 13px/1 var(--f-pixel);color:var(--muted)}
.cx-legend{font-size:14px;color:var(--muted);margin:8px 0 6px}
.cx-group[hidden],.cx-card[hidden]{display:none!important}
.cx-scroll{overflow-x:auto;margin:18px 0 22px}
.cx-scroll table{margin:0;min-width:0}
.cx-sub{color:var(--muted);font-size:15px;margin:-4px 0 6px}
.cx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:16px 0 26px}
.cx-card{min-width:0;background:var(--panel);padding:14px 16px 10px;border-left:var(--px) solid var(--line2);scroll-margin-top:150px;
  box-shadow:0 0 0 2px #000,0 0 0 4px var(--line2),6px 6px 0 4px rgba(0,0,0,.55)}
.cx-card.cx-official{border-left-color:var(--bile)}
.cx-card.cx-press{border-left-color:var(--gold)}
.cx-card.cx-community{border-left-color:var(--ember)}
.cx-card:target{box-shadow:0 0 0 2px #000,0 0 0 4px var(--gold),6px 6px 0 4px rgba(0,0,0,.55)}
.cx-hd{display:flex;gap:14px;align-items:center;min-width:0}
.cx-t{min-width:0}
.cx-card h3{margin:0 0 6px;font-size:16px;overflow-wrap:break-word}
.cx-bs{display:flex;flex-wrap:wrap;gap:4px}
.cx-b{display:inline-block;font:600 10.5px/1.3 var(--f-pixel);letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;
  border:1px solid var(--line2);color:var(--muted);background:#15110f;white-space:nowrap}
.cx-f-40k{color:#ffb0a8;border-color:#6e1a1e}
.cx-f-aos{color:#f4d68c;border-color:var(--brass)}
.cx-c-official{color:#bdf08a;border-color:#3f6a1d}
.cx-c-press{color:var(--gold2);border-color:var(--brass)}
.cx-c-community{color:#ffb070;border-color:#7a3c0e}
.cx-t-boss{color:#fff;background:var(--blood);border-color:#5c0a0e}
.cx-t-elite{color:#e0c8ff;border-color:var(--warp)}
.cx-d{margin:12px 0 8px;font-size:15.5px}
.cx-card dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 10px;margin:0 0 8px;font-size:14.5px}
.cx-card dt{font:600 11px/1.6 var(--f-pixel);letter-spacing:.05em;text-transform:uppercase;color:var(--gold)}
.cx-card dd{margin:0;min-width:0;overflow-wrap:break-word}
.pend{color:var(--dim);font-style:italic}
.cx-src{margin:6px 0 0;padding-top:6px;border-top:1px solid var(--line);font-size:13px;color:var(--dim);overflow-wrap:anywhere}
@media (max-width:640px){
  .cx-tools{position:static;padding:10px}
  .cx-tools label{flex:1 1 40%}
  .cx-tools .cx-q{flex:1 1 100%}
  .cx-grid{grid-template-columns:1fr;gap:16px}
  .cx-card dl{grid-template-columns:1fr;gap:0 0}
  .cx-card dd{margin-bottom:6px}
  .cx-card .ico{width:56px;height:56px}
  .cx-tabs a{font-size:12.5px;padding:8px 9px}
  .cx-scroll th,.cx-scroll td{padding:8px 6px;font-size:13.5px}
}
