/* assets/kz_board.css — the fixture board shared by the landing page (index.php) and the member
 * dashboard (2026-10-13). Everything is scoped under .kzb so it cannot collide with page styles. */
.kzb{--b-green:#1BE37B;--b-ink:#0A0E0C;--b-panel:#0d1410;--b-card:#111a14;--b-line:#1a2e22;--b-muted:#7d8f84;--b-loss:#ff5252;--b-gold:#ffd54f;--b-live:#ff3b3b;color:#f2f7f4}
.kzb button{font:inherit}
.kzb .dates{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:10px}
.kzb .dates::-webkit-scrollbar{display:none}
.kzb .dates button{flex:0 0 auto;background:var(--b-panel);border:1px solid var(--b-line);color:#cfe0d6;border-radius:10px;padding:6px 12px;cursor:pointer;text-align:center;min-width:64px}
.kzb .dates button b{display:block;font-size:13px;color:#fff}
.kzb .dates button small{font-size:11px;color:var(--b-muted)}
.kzb .dates button.on{background:var(--b-green);border-color:var(--b-green)}
.kzb .dates button.on b,.kzb .dates button.on small{color:var(--b-ink)}
.kzb .chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:10px}
.kzb .chips::-webkit-scrollbar{display:none}
.kzb .chips button{flex:0 0 auto;display:flex;align-items:center;gap:6px;background:var(--b-panel);border:1px solid var(--b-line);color:#cfe0d6;border-radius:999px;padding:5px 10px;font-size:12px;cursor:pointer}
.kzb .chips button.on{border-color:var(--b-green);color:#fff}
.kzb .tabs{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap;align-items:center}
.kzb .tabs button{background:none;border:1px solid var(--b-line);color:#cfe0d6;border-radius:999px;padding:5px 12px;font-size:13px;cursor:pointer}
.kzb .tabs button.on{background:#fff;color:var(--b-ink);border-color:#fff;font-weight:700}
.kzb .tabs .flt{margin-left:auto;font-size:12px;color:var(--b-muted)}
.kzb .tabs .flt button{color:#fff;cursor:pointer;border:1px solid var(--b-line);border-radius:999px;padding:4px 8px;margin-left:4px}
.kzb .refresh-status{font-size:12px;color:var(--b-muted);margin:0 0 8px}
.kzb .refresh-status:empty{display:none}
.kzb .refresh-status button{font:inherit;color:var(--b-green);background:transparent;border:0;padding:6px;cursor:pointer;text-decoration:underline}
.kzb .record{display:flex;align-items:center;gap:10px;background:linear-gradient(90deg,rgba(27,227,123,.12),transparent);border:1px solid var(--b-line);border-radius:10px;padding:8px 12px;font-size:13px;margin-bottom:10px}
.kzb .record b.g{color:var(--b-green)} .kzb .record b.r{color:var(--b-loss)}
.kzb .grp{background:var(--b-panel);border:1px solid var(--b-line);border-radius:14px;margin-bottom:10px;overflow:hidden}
.kzb .gh{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--b-line);cursor:pointer}
.kzb img.lgo{width:24px;height:24px;object-fit:contain;background:#fff;border-radius:5px;padding:2px;flex:0 0 24px}
.kzb .chips img.lgo,.kzb .lglist img.lgo{width:18px;height:18px;flex:0 0 18px;padding:1px;border-radius:4px}
.kzb .gh .t{font-weight:700;font-size:14px;line-height:1.2}
.kzb .gh .c{font-size:11px;color:var(--b-muted);display:flex;align-items:center;gap:4px}
.kzb .gh .c img{width:14px;height:10px;object-fit:cover;border-radius:2px}
.kzb .gh .cnt{margin-left:auto;font-size:11px;color:var(--b-muted)}
.kzb .row{display:grid;grid-template-columns:52px minmax(0,1fr) 34px 150px;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #121e17}
.kzb .row:last-child{border-bottom:0}
.kzb .row:hover{background:#0f1813}
.kzb .row.click{cursor:pointer}
.kzb .st{font-size:12px;color:var(--b-muted);text-align:center;line-height:1.2;min-width:0;overflow:hidden;overflow-wrap:anywhere}
.kzb .st abbr{text-decoration:none}
.kzb .st.live{color:var(--b-live);font-weight:700}
.kzb .st.ft{color:#cfe0d6}
.kzb .tm{display:flex;flex-direction:column;gap:3px;min-width:0}
.kzb .tm div{display:flex;align-items:center;gap:7px;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kzb .tm img{width:18px;height:18px;object-fit:contain;flex:0 0 18px}
.kzb .sc{display:flex;flex-direction:column;gap:3px;font-weight:800;font-size:14px;text-align:center;min-width:0;overflow:hidden}
.kzb .sc.live{color:var(--b-live)}
.kzb .pk{display:block;font-size:11.5px;border-radius:8px;padding:5px 8px;text-align:left;line-height:1.25;border:1px solid var(--b-line);word-break:break-word}
.kzb .pk .tx{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kzb .pk.win{background:rgba(27,227,123,.12);border-color:rgba(27,227,123,.45)}
.kzb .pk.loss{background:rgba(255,82,82,.10);border-color:rgba(255,82,82,.45)}
.kzb .pk.void{background:rgba(245,158,11,.10);border-color:rgba(245,158,11,.4)}
.kzb .pk.free{background:rgba(27,227,123,.18);border-color:var(--b-green);color:#fff}
.kzb .pk.mine{background:#0f1f17;border-color:#245a3b;color:#fff}
.kzb .pk.mine.vip{border-color:#806414;background:#1d1807}
.kzb .pk.soon{color:var(--b-muted);font-size:11px;text-align:center}
.kzb .pk.lock{display:block;background:#1a1240;border-color:#3d2c8f;color:#d9cffc;text-align:center;font-weight:700;cursor:pointer;text-decoration:none}
.kzb .pk.lock.vip{background:#2a2108;border-color:#806414;color:var(--b-gold)}
.kzb .pk.lock:hover{filter:brightness(1.25)}
.kzb .pk .tag{font-size:9.5px;font-weight:800;letter-spacing:.5px;display:block;opacity:.85}
.kzb .pk .pr{display:block;font-size:10px;color:var(--b-muted)}
.kzb .empty{padding:30px;text-align:center;color:var(--b-muted)}
.kzb .more{display:block;width:100%;background:var(--b-panel);border:1px solid var(--b-line);color:#fff;border-radius:10px;padding:10px;cursor:pointer;margin-top:4px}
.kzb .lglist button{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;color:#cfe0d6;font-size:13px;padding:6px;border-radius:8px;cursor:pointer;text-align:left}
.kzb .lglist button:hover,.kzb .lglist button.on{background:var(--b-card);color:#fff}
.kzb .lglist .n{margin-left:auto;font-size:11px;color:var(--b-muted)}
.kzb .lglist details summary{cursor:pointer;font-size:13px;color:#cfe0d6;padding:6px;border-radius:8px;list-style:none;display:flex;gap:8px;align-items:center}
.kzb .lglist details summary::-webkit-details-marker{display:none}
.kzb .lglist details summary img{width:18px;height:13px;object-fit:cover;border-radius:2px}
.kzb .lglist details[open] summary{color:#fff}
.kzb .lglist details .in{padding-left:10px}
@media (max-width:820px){
  .kzb .row{grid-template-columns:44px minmax(0,1fr) 28px 112px;padding:8px 10px;gap:6px}
  .kzb .tm div{font-size:13px}
  .kzb .pk{font-size:11px;padding:5px 6px}
}
@media (max-width:480px){ .kzb .row{grid-template-columns:40px minmax(0,1fr) 24px 104px} }
.kzb .lglist button.all{font-weight:700}.kzb .lglist button.all.on{color:var(--b-green)}
.kzb .tabs .flt b{color:#fff;font-weight:700}.kzb .tabs .flt button{margin-left:8px;color:var(--b-green);border-color:var(--b-green);font-weight:700}
