/* トーナメント表の見た目（お客様アプリ・観戦ページ共通）。黒×金のG-SPeC配色 */
.bv { --bv-gold:#d9b451; --bv-line:#333; --bv-ink:#f3efe4; --bv-you:#e8703a; --bv-w:#4f79c4; --bv-l:#c47f3a; }
.bv * { box-sizing: border-box; }
.bv-mynext { background:#232323; border:1px solid var(--bv-gold); border-radius:12px; padding:12px; margin-bottom:12px; text-align:center; font-size:14px; color:var(--bv-ink); }
.bv-mynext b { color:var(--bv-gold); }
.bv-mynext.bv-champ { border-color:var(--bv-gold); background:rgba(217,180,81,.14); font-size:16px; font-weight:bold; color:var(--bv-gold); }
.bv-mynext.bv-out { color:#999; }
.bv-pod { border:1px solid var(--bv-gold); border-radius:12px; padding:12px; margin-bottom:12px; background:rgba(217,180,81,.08); }
.bv-pod-h { text-align:center; color:var(--bv-gold); font-weight:bold; margin-bottom:8px; }
.bv-pod-row { display:flex; align-items:center; gap:8px; padding:5px 0; font-size:15px; color:var(--bv-ink); }
.bv-pod-row.bv-you { color:var(--bv-you); }
.bv-medal { font-size:20px; } .bv-rank { color:#999; font-size:12px; min-width:30px; }
.bv-pn { flex:1; font-weight:bold; }
.bv-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin-bottom:14px; }
.bv-stat { background:#232323; border:1px solid var(--bv-line); border-radius:10px; padding:9px 11px; }
.bv-stat .l { font-size:11px; color:#999; } .bv-stat .v { font-size:16px; font-weight:bold; color:var(--bv-ink); margin-top:2px; }
.bv-sec { margin-bottom:16px; }
.bv-sec-h { display:flex; align-items:center; gap:8px; padding-left:8px; border-left:4px solid var(--bv-gold); margin-bottom:8px; }
.bv-sec-h.bv-w { border-color:var(--bv-w); } .bv-sec-h.bv-l { border-color:var(--bv-l); }
.bv-k { font-size:16px; font-weight:bold; color:var(--bv-gold); }
.bv-sec-h.bv-w .bv-k { color:#9fbdf0; } .bv-sec-h.bv-l .bv-k { color:#e6b985; }
.bv-sub { font-size:11px; color:#999; }
.bv-rounds { display:flex; gap:12px; overflow-x:auto; padding:2px 2px 10px; -webkit-overflow-scrolling:touch; }
.bv-round { display:flex; flex-direction:column; gap:10px; min-width:150px; flex:0 0 auto; }
.bv-rh { font-size:10.5px; letter-spacing:.06em; color:#999; padding-left:2px; }
.bv-match { background:#1e1e1e; border:1px solid var(--bv-line); border-radius:10px; overflow:hidden; }
.bv-match.bv-wside { border-left:3px solid var(--bv-w); } .bv-match.bv-lside { border-left:3px solid var(--bv-l); }
.bv-top { display:flex; justify-content:space-between; align-items:center; padding:3px 8px; font-size:9.5px; color:#999; background:#262626; border-bottom:1px solid var(--bv-line); }
.bv-st { font-weight:bold; padding:1px 6px; border-radius:10px; font-size:9px; }
.bv-st-ready { color:#20170a; background:var(--bv-gold); } .bv-st-live { color:#062b2f; background:#54c9d6; }
.bv-st-done { color:#bbb; background:rgba(255,255,255,.06); } .bv-st-pending { color:#888; background:rgba(255,255,255,.04); }
.bv-row { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:8px 9px; font-size:13.5px; color:var(--bv-ink); }
.bv-row + .bv-row { border-top:1px solid var(--bv-line); }
.bv-l { display:flex; align-items:center; gap:6px; min-width:0; overflow:hidden; }
.bv-nm { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bv-empty { color:#777; } .bv-bye .bv-nm { color:#777; font-style:italic; }
.bv-sc { font-family:ui-monospace,monospace; color:#aaa; font-size:13px; flex:0 0 auto; }
.bv-win { background:linear-gradient(90deg,rgba(217,180,81,.14),transparent); }
.bv-win .bv-nm { color:var(--bv-gold); font-weight:bold; } .bv-win .bv-sc { color:var(--bv-gold); }
.bv-lose .bv-nm { color:#888; text-decoration:line-through; text-decoration-color:rgba(255,255,255,.2); }
.bv-you .bv-nm { color:var(--bv-you); font-weight:bold; }
.bv-youtag { font-size:9px; background:var(--bv-you); color:#fff; border-radius:8px; padding:0 5px; font-weight:bold; flex:0 0 auto; }
.bv-cls { font-size:9px; font-weight:bold; color:var(--bv-gold); border:1px solid var(--bv-gold); border-radius:5px; padding:0 4px; flex:0 0 auto; }
.bv-foot { font-size:10px; padding:4px 9px; border-top:1px solid var(--bv-line); color:#999; background:#262626; }
.bv-foot.bv-live { color:#fff; background:#1c8a4a; font-weight:bold; }
