/* ============================================================================
   GOAT BRACKET — additive Tab 2. Inherits :root tokens from the main file.
   Ink / scarlet terminal aesthetic, JetBrains Mono, no new colors.
   ========================================================================== */

/* ---------- tab bar · compact pill toggle ---------- */
.tabbar{position:fixed;top:14px;left:0;right:0;z-index:80;
  display:flex;align-items:center;justify-content:center;pointer-events:none;
  transition:opacity .5s ease;}
.tabbar .tb-inner{pointer-events:auto;position:relative;display:flex;align-items:stretch;gap:0;
  background:rgba(14,11,8,.86);border:1px solid var(--bone-faint);border-radius:999px;
  padding:4px;backdrop-filter:blur(8px);box-shadow:0 6px 22px rgba(0,0,0,.4);}
/* sliding scarlet thumb */
.tabbar .tb-inner::before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);
  border-radius:999px;background:var(--red);box-shadow:0 0 14px rgba(216,35,26,.5);
  transform:translateX(0);transition:transform .26s cubic-bezier(.3,.7,.2,1);z-index:0;}
body.tab-bracket .tabbar .tb-inner::before{transform:translateX(100%);}
.tab-btn{-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;
  font-family:var(--mono);font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bone-dim);padding:8px 18px;display:flex;align-items:center;justify-content:center;gap:8px;
  position:relative;z-index:1;border-radius:999px;flex:1 1 0;white-space:nowrap;transition:color .18s ease;}
.tab-btn:hover{color:var(--bone);}
.tab-btn.active{color:var(--bone);}
.tab-btn .tb-i{width:6px;height:6px;background:var(--bone-faint);transform:rotate(45deg);flex:0 0 auto;transition:all .15s ease;}
.tab-btn.active .tb-i{background:var(--bone);box-shadow:0 0 8px rgba(236,229,216,.6);}
.tab-btn .tb-tag{font-size:7.5px;font-weight:800;letter-spacing:.12em;color:var(--red);background:var(--bone);
  padding:2px 5px;border-radius:999px;margin-left:1px;animation:tbpulse 2s ease-in-out infinite;}
.tab-btn.active .tb-tag{color:var(--red);background:var(--bone);}
@keyframes tbpulse{0%,100%{opacity:1;}50%{opacity:.5;}}
body.boot .tabbar{opacity:0;}

/* ---------- panel switching ---------- */
.tabpanel{width:100%;}
#panel-odds{display:flex;flex-direction:column;align-items:center;}
#panel-bracket{display:none;}
body.tab-bracket #panel-bracket{display:flex;flex-direction:column;align-items:center;}
/* Tab 1 kept alive & sized (never reset) — just lifted out of view */
body.tab-bracket #panel-odds{position:fixed;inset:0;height:100dvh;opacity:0;pointer-events:none;overflow:hidden;}

/* ---------- bracket layout ---------- */
.bkt-wrap{width:min(1180px,94vw);padding:62px 0 clamp(34px,6vh,68px);display:flex;flex-direction:column;
  gap:clamp(16px,2.6vh,26px);}

/* header */
.bkt-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;
  padding-top:clamp(6px,2vh,18px);}
.bkt-titleblock{display:flex;flex-direction:column;gap:9px;min-width:0;}
.bkt-kick{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:10.5px;font-weight:800;
  letter-spacing:.24em;color:var(--bone-dim);text-transform:uppercase;}
.bkt-kick .bkt-dot{width:8px;height:8px;background:var(--red);transform:rotate(45deg);box-shadow:0 0 9px rgba(216,35,26,.7);}
.bkt-title{font-family:var(--mono);font-weight:800;font-size:clamp(30px,5vw,52px);line-height:.92;letter-spacing:-.02em;
  color:var(--bone);text-transform:uppercase;}
.bkt-title em{font-style:normal;color:var(--red);text-shadow:0 0 34px rgba(216,35,26,.4);}
.bkt-sub{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;}

/* ---------- round-status readout ---------- */
.bkt-status{flex:0 0 auto;display:grid;grid-template-columns:auto auto auto;gap:0;align-items:stretch;
  background:rgba(14,11,8,.8);border:1px solid var(--bone-faint);
  box-shadow:0 18px 48px rgba(0,0,0,.42),inset 0 1px 0 rgba(236,229,216,.05);}
.bs-cell{padding:12px 18px;border-right:1px solid var(--bone-faint);display:flex;flex-direction:column;gap:4px;justify-content:center;min-width:118px;}
.bs-cell:last-child{border-right:none;}
.bs-lab{font-family:var(--mono);font-size:8.5px;font-weight:800;letter-spacing:.2em;color:var(--bone-dim);text-transform:uppercase;}
.bs-round{flex-direction:row;align-items:center;gap:11px;}
.bs-dot{width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:0 0 10px var(--red);flex:0 0 auto;animation:bsdot 1.5s ease-in-out infinite;}
.bs-dot.crowned{background:var(--bone);box-shadow:0 0 10px rgba(236,229,216,.7);animation:none;}
@keyframes bsdot{0%,100%{opacity:1;}50%{opacity:.32;}}
.bs-name{font-family:var(--mono);font-size:14px;font-weight:800;letter-spacing:.02em;color:var(--bone);text-transform:uppercase;line-height:1;white-space:nowrap;}
.bs-state{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.16em;color:var(--red);text-transform:uppercase;margin-top:3px;}
.bs-time{font-family:var(--mono);font-size:17px;font-weight:800;color:var(--bone);font-variant-numeric:tabular-nums;letter-spacing:.02em;}
.bs-num{font-family:var(--mono);font-size:17px;font-weight:800;color:var(--bone);font-variant-numeric:tabular-nums;}
.bs-pips{grid-column:1 / -1;display:flex;align-items:center;gap:0;border-top:1px solid var(--bone-faint);}
.bs-pip{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:8px 6px;border-right:1px solid var(--bone-faint);
  font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.14em;color:var(--bone-faint);text-transform:uppercase;}
.bs-pip:last-child{border-right:none;}
.bs-pip i{width:6px;height:6px;background:currentColor;transform:rotate(45deg);font-style:normal;}
.bs-pip.done{color:var(--bone-dim);}
.bs-pip.live{color:var(--red);}
.bs-pip.live i{box-shadow:0 0 8px var(--red);}

/* ---------- live-round matchup cards ---------- */
.bkt-secthead{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px;}
.bkt-secttitle{font-family:var(--mono);font-size:12px;font-weight:800;letter-spacing:.2em;color:var(--bone);text-transform:uppercase;
  display:flex;align-items:center;gap:9px;}
.bkt-secttitle .sq{width:7px;height:7px;background:var(--red);transform:rotate(45deg);}
.bkt-secthint{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--bone-dim);text-transform:uppercase;}

.bkt-live{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.bkt-live.one{grid-template-columns:minmax(0,560px);justify-content:center;}

.mc{position:relative;background:rgba(14,11,8,.82);border:1px solid var(--bone-faint);
  box-shadow:0 16px 40px rgba(0,0,0,.4),inset 0 1px 0 rgba(236,229,216,.05);
  display:grid;grid-template-columns:1fr 50px 1fr;overflow:hidden;}
.mc.live{border-color:rgba(216,35,26,.42);box-shadow:0 16px 44px rgba(0,0,0,.46),0 0 0 1px rgba(216,35,26,.18),inset 0 1px 0 rgba(236,229,216,.05);}
.mc-side{-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;text-align:left;
  padding:14px 14px 13px;display:flex;flex-direction:column;gap:10px;font-family:var(--mono);color:var(--bone);
  transition:background .15s ease;position:relative;}
.mc-side:hover{background:rgba(236,229,216,.04);}
.mc-side.b{align-items:flex-end;text-align:right;}
.mc-plate-wrap{width:100%;}
.mc-meta{display:flex;flex-direction:column;gap:3px;width:100%;}
.mc-side.b .mc-meta{align-items:flex-end;}
.mc-seedrow{display:flex;align-items:center;gap:8px;}
.mc-side.b .mc-seedrow{flex-direction:row-reverse;}
.mc-name{font-size:15px;font-weight:800;letter-spacing:.01em;line-height:1.02;text-transform:uppercase;text-wrap:balance;}
.mc-year{font-size:9.5px;font-weight:700;letter-spacing:.12em;color:var(--bone-dim);}
.mc-bar{width:100%;height:7px;background:rgba(236,229,216,.09);position:relative;overflow:hidden;}
.mc-side.b .mc-bar{transform:scaleX(-1);}
.mc-fill{position:absolute;left:0;top:0;height:100%;width:0;background:rgba(236,229,216,.34);transition:width .7s cubic-bezier(.3,.7,.2,1);}
.mc-pctrow{display:flex;align-items:baseline;gap:7px;width:100%;}
.mc-side.b .mc-pctrow{flex-direction:row-reverse;}
.mc-pct{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--bone);line-height:1;}
.mc-tag{font-size:8.5px;font-weight:800;letter-spacing:.14em;color:var(--bone-dim);text-transform:uppercase;}

/* leading / trailing scarlet treatment */
.mc-side.lead{background:rgba(216,35,26,.05);}
.mc-side.lead:hover{background:rgba(216,35,26,.08);}
.mc-side.lead .mc-fill{background:var(--red);box-shadow:0 0 14px rgba(216,35,26,.55);}
.mc-side.lead .mc-pct{color:var(--red);text-shadow:0 0 22px rgba(216,35,26,.4);}
.mc-side.lead .mc-plate{outline:1px solid rgba(216,35,26,.5);}
.mc-side.trail{opacity:.7;}
.mc-plate-wrap .plate{aspect-ratio:16/10;}
/* user's pick */
.mc-side.mine::before{content:"YOUR PICK";position:absolute;top:9px;font-size:8px;font-weight:800;letter-spacing:.14em;
  color:var(--panel);background:var(--bone);padding:2px 6px;text-transform:uppercase;}
.mc-side.a.mine::before{left:14px;}
.mc-side.b.mine::before{right:14px;}

/* center seam */
.mc-seam{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  border-left:1px solid var(--bone-faint);border-right:1px solid var(--bone-faint);background:rgba(0,0,0,.28);position:relative;}
.mc-seam span{font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--bone-dim);
  writing-mode:vertical-rl;text-orientation:mixed;}
.mc-seam::before,.mc-seam::after{content:"";width:5px;height:5px;background:var(--bone-faint);transform:rotate(45deg);}

/* footer of card */
.mc-foot{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:9px 14px;border-top:1px solid var(--bone-faint);background:rgba(0,0,0,.3);}
.mc-total{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--bone-dim);text-transform:uppercase;}
.mc-total b{color:var(--bone);font-weight:800;font-variant-numeric:tabular-nums;}
.mc-cta{font-family:var(--mono);font-size:9.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-dim);
  display:inline-flex;align-items:center;gap:7px;}
.mc-cta b{color:var(--red);font-weight:800;cursor:pointer;}
.mc-cta.picked b{color:var(--bone);}

/* gated tease — clean locked state (no overlay, no name collision) */
.mc.gated{border-color:rgba(216,35,26,.28);}
.mc-locked{width:100%;height:36px;display:flex;align-items:center;gap:9px;}
.mc-side.b .mc-locked{flex-direction:row-reverse;}
.mc-lockline{flex:1;height:7px;background:repeating-linear-gradient(90deg,rgba(236,229,216,.13) 0 5px,transparent 5px 11px);}
.mc-lockt{font-size:8.5px;font-weight:800;letter-spacing:.16em;color:var(--bone-dim);text-transform:uppercase;flex:0 0 auto;}
.mc-cta.tease b{color:var(--red);letter-spacing:.16em;}

/* resolved matchup states (in cards, brief) */
.mc-side.won{opacity:1;}
.mc-side.lost{opacity:.4;}
.mc-side.lost .mc-name{text-decoration:line-through;text-decoration-color:rgba(216,35,26,.6);}

/* ---------- title plate (cover fallback) ---------- */
.plate{position:relative;width:100%;aspect-ratio:1/1;background:#100C09;border:1px solid var(--bone-faint);
  display:flex;flex-direction:column;justify-content:space-between;padding:11px;overflow:hidden;
  background-image:repeating-linear-gradient(135deg,rgba(236,229,216,.05) 0,rgba(236,229,216,.05) 1px,transparent 1px,transparent 7px);}
.plate::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0,rgba(0,0,0,.22) 1px,transparent 1px,transparent 4px);
  mix-blend-mode:multiply;opacity:.5;}
.plate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.plate-mid{position:relative;z-index:1;}
.plate-title{font-family:var(--mono);font-size:clamp(13px,1.5vw,17px);font-weight:800;letter-spacing:-.01em;line-height:.98;
  color:var(--bone);text-transform:uppercase;text-wrap:balance;}
.plate-year{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;color:var(--bone-dim);position:relative;z-index:1;}
.mc-side.b .plate{align-items:flex-end;}

/* ---------- full bracket map ---------- */
.bkt-mapwrap{display:flex;flex-direction:column;gap:12px;}
.bkt-maphead{display:flex;align-items:center;justify-content:space-between;gap:14px;}
.bkt-expand{display:none;-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(236,229,216,.05);
  border:1px solid var(--bone-faint);color:var(--bone);font-family:var(--mono);font-size:9.5px;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;padding:8px 12px;transition:all .12s ease;}
.bkt-expand:hover{border-color:var(--bone-dim);}

.bkt-scaler{position:relative;width:100%;overflow:hidden;}
.bkt-sizer{position:relative;width:0;height:0;pointer-events:none;}
.bkt-stage{position:absolute;top:0;left:0;transform-origin:top left;}
.bkt-scrollhint{display:none;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--bone-dim);margin-top:8px;}
.bkt-stage svg.bkt-wires{position:absolute;top:0;left:0;pointer-events:none;}

/* bracket node */
.bn{position:absolute;display:flex;flex-direction:column;background:rgba(14,11,8,.9);border:1px solid var(--bone-faint);
  overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,.4);}
.bn.live{border-color:rgba(216,35,26,.5);box-shadow:0 0 0 1px rgba(216,35,26,.3),0 0 22px rgba(216,35,26,.22);animation:bnglow 2.4s ease-in-out infinite;}
@keyframes bnglow{0%,100%{box-shadow:0 0 0 1px rgba(216,35,26,.28),0 0 18px rgba(216,35,26,.18);}50%{box-shadow:0 0 0 1px rgba(216,35,26,.5),0 0 28px rgba(216,35,26,.32);}}
.bn-row{display:flex;align-items:center;gap:7px;padding:0 9px;height:50%;font-family:var(--mono);color:var(--bone);
  border-bottom:1px solid rgba(236,229,216,.08);position:relative;overflow:hidden;}
.bn-row:last-child{border-bottom:none;}
.bn-seed{font-size:8px;font-weight:800;letter-spacing:.06em;color:var(--bone-dim);width:16px;flex:0 0 auto;font-variant-numeric:tabular-nums;}
.bn-nm{font-size:10px;font-weight:800;letter-spacing:.01em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;}
.bn-share{font-size:9.5px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--bone-dim);flex:0 0 auto;}
.bn-row.win .bn-nm{color:var(--red);}
.bn-row.win .bn-seed{color:var(--red);}
.bn-row.win .bn-share{color:var(--red);}
.bn-row.lose{opacity:.4;}
.bn-row.lose .bn-nm{text-decoration:line-through;text-decoration-color:rgba(216,35,26,.55);}
.bn-row.tbd .bn-nm{color:var(--bone-faint);}
.bn-row.tbd .bn-seed{visibility:hidden;}
.bn-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(236,229,216,.07);z-index:0;transition:width .7s cubic-bezier(.3,.7,.2,1);}
.bn-row.win .bn-fill{background:rgba(216,35,26,.16);}
.bn-row>*{position:relative;z-index:1;}
.bn-row .bn-fill{z-index:0;}
/* throne node */
.bn.throne{border-color:rgba(216,35,26,.4);background:rgba(20,8,6,.92);}
.bn.throne.crowned{border-color:var(--red);box-shadow:0 0 0 1px var(--red),0 0 34px rgba(216,35,26,.4);}

/* node resolve animations */
.bn-row.just-win{animation:justwin 1.1s ease-out 1;}
@keyframes justwin{0%{background:rgba(216,35,26,.55);}100%{background:transparent;}}
.bn-row.just-lose{animation:justlose 1.1s ease-out 1;}
@keyframes justlose{0%{opacity:1;}100%{opacity:.4;}}

/* throne label between halves */
.bkt-thronelab{position:absolute;text-align:center;font-family:var(--mono);text-transform:uppercase;pointer-events:none;}
.bkt-thronelab .tl-k{font-size:9px;font-weight:800;letter-spacing:.24em;color:var(--bone-dim);}
.bkt-thronelab .tl-crown{font-size:13px;font-weight:800;letter-spacing:.14em;color:var(--red);text-shadow:0 0 20px rgba(216,35,26,.5);}

/* ---------- compact map (mobile) ---------- */
.bkt-compact{display:none;flex-direction:column;gap:8px;}
.bcrow{display:flex;align-items:center;gap:12px;background:rgba(14,11,8,.8);border:1px solid var(--bone-faint);padding:11px 14px;}
.bcrow .bc-rd{font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--bone);text-transform:uppercase;width:62px;flex:0 0 auto;}
.bcrow .bc-state{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);flex:1;}
.bcrow.live{border-color:rgba(216,35,26,.4);}
.bcrow.live .bc-rd{color:var(--red);}
.bcrow .bc-i{width:7px;height:7px;background:var(--bone-faint);transform:rotate(45deg);flex:0 0 auto;}
.bcrow.done .bc-i{background:var(--bone-dim);}
.bcrow.live .bc-i{background:var(--red);box-shadow:0 0 8px var(--red);}

/* map overlay (mobile expand) */
.bkt-overlay{position:fixed;inset:0;z-index:130;display:none;flex-direction:column;background:rgba(7,5,4,.96);backdrop-filter:blur(5px);}
.bkt-overlay.on{display:flex;}
.bkt-ovhead{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--bone-faint);}
.bkt-ovhead .ovt{font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--bone);text-transform:uppercase;}
.bkt-ovx{-webkit-appearance:none;appearance:none;background:none;border:1px solid var(--bone-faint);color:var(--bone-dim);cursor:pointer;
  font-family:var(--mono);font-size:11px;padding:6px 10px;}
.bkt-ovbody{flex:1;overflow:auto;padding:16px;display:flex;align-items:center;}

/* ---------- footer ---------- */
.bkt-foot{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.16em;color:var(--bone-dim);text-transform:uppercase;
  display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.bkt-foot .sq{width:6px;height:6px;background:var(--bone-faint);transform:rotate(45deg);flex:0 0 auto;}

/* ---------- champion reveal ---------- */
.bkt-champ{position:fixed;inset:0;z-index:150;display:flex;align-items:center;justify-content:center;padding:24px;
  background:radial-gradient(60% 50% at 50% 46%,rgba(40,12,9,.9),rgba(7,5,4,.97));backdrop-filter:blur(6px);overflow:auto;}
.bkt-champ[hidden]{display:none;}
.bkt-champ-bloom{position:absolute;left:50%;top:46%;width:120vmin;height:120vmin;transform:translate(-50%,-50%);pointer-events:none;
  background:radial-gradient(circle,rgba(216,35,26,.34),rgba(216,35,26,0) 60%);mix-blend-mode:screen;
  animation:champbloom 2.6s ease-out both;}
@keyframes champbloom{0%{opacity:0;transform:translate(-50%,-50%) scale(.3);}30%{opacity:1;}100%{opacity:.7;transform:translate(-50%,-50%) scale(1.05);}}
.champ-card{position:relative;z-index:1;width:min(560px,100%);display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;}
.champ-kick{font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.4em;color:var(--bone-dim);text-transform:uppercase;
  display:flex;align-items:center;gap:11px;}
.champ-kick .sq{width:8px;height:8px;background:var(--red);transform:rotate(45deg);box-shadow:0 0 10px var(--red);}
.champ-goat{font-family:var(--mono);font-size:clamp(40px,9vw,82px);font-weight:800;line-height:.86;letter-spacing:-.03em;
  color:var(--red);text-transform:uppercase;text-shadow:0 0 44px rgba(216,35,26,.5);animation:champin .8s cubic-bezier(.2,.7,.2,1) both;}
@keyframes champin{0%{opacity:0;transform:scale(.86);filter:blur(8px);}100%{opacity:1;transform:none;filter:none;}}
.champ-plate{width:min(248px,62vw);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px rgba(216,35,26,.4),0 0 50px rgba(216,35,26,.3);
  animation:champin .9s cubic-bezier(.2,.7,.2,1) .1s both;}
.champ-plate .plate{aspect-ratio:1/1;}
.champ-name{font-family:var(--mono);font-size:clamp(22px,3.4vw,32px);font-weight:800;letter-spacing:-.01em;color:var(--bone);text-transform:uppercase;line-height:1;}
.champ-name span{color:var(--bone-dim);font-size:.6em;letter-spacing:.1em;margin-left:.4em;}
.champ-stats{display:flex;gap:0;border:1px solid var(--bone-faint);background:rgba(14,11,8,.7);}
.champ-stat{padding:14px 22px;border-right:1px solid var(--bone-faint);display:flex;flex-direction:column;gap:5px;}
.champ-stat:last-child{border-right:none;}
.champ-stat .cs-num{font-family:var(--mono);font-size:22px;font-weight:800;color:var(--red);font-variant-numeric:tabular-nums;line-height:1;}
.champ-stat .cs-lab{font-family:var(--mono);font-size:8.5px;font-weight:800;letter-spacing:.16em;color:var(--bone-dim);text-transform:uppercase;}
.champ-btns{display:flex;gap:10px;margin-top:4px;}
.champ-btn{-webkit-appearance:none;appearance:none;cursor:pointer;font-family:var(--mono);font-size:11px;font-weight:800;
  letter-spacing:.16em;text-transform:uppercase;padding:13px 20px;border:1px solid var(--bone-faint);background:rgba(236,229,216,.05);color:var(--bone);transition:all .12s ease;}
.champ-btn:hover{border-color:var(--bone-dim);}
.champ-btn.primary{background:var(--red);border-color:var(--red);box-shadow:0 0 22px rgba(216,35,26,.3);}
.champ-btn.primary:hover{background:#e8362c;}

/* ---------- bracket tweaks additions ---------- */
.tw-seg2{display:flex;gap:5px;}
.tw-seg2 button{flex:1;background:rgba(236,229,216,.05);border:1px solid var(--bone-faint);color:var(--bone-dim);
  font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:8px 4px;cursor:pointer;transition:all .12s ease;}
.tw-seg2 button:hover{color:var(--bone);border-color:var(--bone-dim);}
.tw-seg2 button.sel{background:var(--red);border-color:var(--red);color:var(--bone);}
.tw-btns{display:flex;flex-direction:column;gap:6px;}
.tw-act{-webkit-appearance:none;appearance:none;cursor:pointer;font-family:var(--mono);font-size:10px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;padding:9px 10px;border:1px solid var(--bone-faint);background:var(--red);color:var(--bone);
  border-color:var(--red);transition:all .12s ease;}
.tw-act:hover{background:#e8362c;}
.tw-act.ghost{background:rgba(236,229,216,.05);border-color:var(--bone-faint);color:var(--bone-dim);}
.tw-act.ghost:hover{color:var(--bone);border-color:var(--bone-dim);}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .bkt-status{grid-template-columns:1fr 1fr;}
  .bs-cell:nth-child(2){border-right:none;}
}
@media (max-width:760px){
  .bkt-wrap{width:92vw;}
  .bkt-live{grid-template-columns:100%;grid-auto-flow:column;grid-auto-columns:88%;overflow-x:auto;scroll-snap-type:x mandatory;
    gap:12px;padding-bottom:8px;-webkit-overflow-scrolling:touch;}
  .bkt-live.one{grid-template-columns:100%;}
  .mc{scroll-snap-align:center;}
  .bkt-scaler{display:block;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;}
  .bkt-scrollhint{display:block;}
  .bkt-expand{display:inline-flex;}
  .bkt-title{font-size:clamp(28px,9vw,40px);}
  .champ-stat{padding:11px 14px;}
}
@media (max-width:520px){
  .bkt-status{grid-template-columns:1fr;}
  .bs-cell{border-right:none;border-bottom:1px solid var(--bone-faint);}
}
@media (prefers-reduced-motion: reduce){
  .bn.live,.bs-dot,.tab-btn .tb-tag{animation:none;}
  .mc-fill,.bn-fill{transition:none;}
  .bkt-champ-bloom,.champ-goat,.champ-plate{animation:none;}
}

/* ============================================================================
   FLOW APP — gate → intro → build → review → tracker
   ========================================================================== */
.bkt-app{width:min(1080px,94vw);min-height:100dvh;display:flex;flex-direction:column;justify-content:center;
  padding:74px 0 clamp(36px,7vh,84px);}
@media (max-width:760px){ .bkt-app{justify-content:flex-start;padding-top:64px;} }

.hero-kick{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:10.5px;font-weight:800;
  letter-spacing:.24em;color:var(--bone-dim);text-transform:uppercase;}
.hero-kick .bkt-dot{width:8px;height:8px;background:var(--red);transform:rotate(45deg);box-shadow:0 0 9px rgba(216,35,26,.7);}
.hero-kick.ok{color:var(--bone);} .bkt-dot.ok{background:#2faf6b !important;box-shadow:0 0 9px rgba(47,175,107,.7) !important;}
.hero-fine{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.08em;line-height:1.6;color:var(--bone-dim);text-transform:uppercase;margin-top:14px;}
.hero-fine b{color:var(--bone);font-weight:800;}

/* ---- shared primary CTA ---- */
.hero-cta{-webkit-appearance:none;appearance:none;border:none;cursor:pointer;width:100%;
  background:var(--red);color:var(--bone);font-family:var(--mono);font-size:15px;font-weight:800;letter-spacing:.16em;
  text-transform:uppercase;padding:19px 18px;box-shadow:0 0 30px rgba(216,35,26,.32);transition:background .15s,transform .1s,box-shadow .15s;}
.hero-cta:hover{background:#e8362c;box-shadow:0 0 40px rgba(216,35,26,.45);}
.hero-cta:active{transform:translateY(1px);}
.hero-cta.disabled,.hero-cta:disabled{background:rgba(236,229,216,.08);color:var(--bone-dim);box-shadow:none;cursor:not-allowed;}

/* ---- GATE / hero wall ---- */
.bkt-hero{position:relative;border:1px solid var(--bone-faint);background:rgba(14,11,8,.7);overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.45),inset 0 1px 0 rgba(236,229,216,.05);}
.bkt-hero-bg{position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:
    radial-gradient(60% 70% at 82% 18%,rgba(216,35,26,.16),transparent 60%),
    repeating-linear-gradient(135deg,rgba(236,229,216,.025) 0 1px,transparent 1px 9px);}
.bkt-hero-in{position:relative;padding:clamp(28px,5vw,52px);display:flex;flex-direction:column;align-items:flex-start;gap:16px;}
.hero-title{font-family:var(--mono);font-weight:800;font-size:clamp(38px,6.6vw,74px);line-height:1.05;letter-spacing:-.03em;
  color:var(--bone);text-transform:uppercase;margin:2px 0;padding-bottom:.06em;}
.hero-title em{font-style:normal;color:var(--red);text-shadow:0 0 40px rgba(216,35,26,.45);}
.hero-sub{font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1.62;color:var(--bone-dim);
  text-transform:uppercase;max-width:60ch;}
.hero-prize{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;border-top:1px solid var(--bone-faint);border-bottom:1px solid var(--bone-faint);
  padding:14px 0;margin:4px 0;width:100%;}
.hero-prize .hp-num{font-family:var(--mono);font-weight:800;font-size:clamp(34px,5vw,52px);color:var(--red);line-height:1;
  text-shadow:0 0 30px rgba(216,35,26,.4);font-variant-numeric:tabular-nums;}
.hero-prize .hp-lab{font-family:var(--mono);font-size:9.5px;font-weight:800;letter-spacing:.2em;color:var(--bone-dim);text-transform:uppercase;}
.hero-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin:2px 0 6px;}
.hstep{display:flex;align-items:center;gap:11px;border:1px solid var(--bone-faint);background:rgba(0,0,0,.25);padding:13px 14px;}
.hstep .hs-n{font-family:var(--mono);font-size:13px;font-weight:800;color:var(--red);flex:0 0 auto;}
.hstep .hs-t{display:flex;flex-direction:column;gap:3px;min-width:0;}
.hstep .hs-t b{font-family:var(--mono);font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--bone);text-transform:uppercase;}
.hstep .hs-t span{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.06em;color:var(--bone-dim);text-transform:uppercase;}
@media (max-width:680px){ .hero-steps{grid-template-columns:1fr;} }

/* ---- INTRO ---- */
.bkt-intro{display:flex;flex-direction:column;align-items:flex-start;gap:16px;border:1px solid var(--bone-faint);
  background:rgba(14,11,8,.7);padding:clamp(26px,4.5vw,48px);box-shadow:0 24px 64px rgba(0,0,0,.4);}
.intro-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px;}
.intro-signout{-webkit-appearance:none;appearance:none;cursor:pointer;background:none;border:1px solid var(--bone-faint);
  color:var(--bone-dim);font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:6px 10px;transition:all .12s;}
.intro-signout:hover{color:var(--bone);border-color:var(--bone-dim);}
.intro-title{font-family:var(--mono);font-weight:800;font-size:clamp(28px,4.8vw,52px);line-height:1.06;letter-spacing:-.02em;color:var(--bone);text-transform:uppercase;padding-bottom:.06em;}
.intro-title em{font-style:normal;color:var(--red);text-shadow:0 0 32px rgba(216,35,26,.4);}
.intro-sub{font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.02em;line-height:1.6;color:var(--bone-dim);text-transform:uppercase;max-width:62ch;}
.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;width:100%;border:1px solid var(--bone-faint);margin:4px 0;}
.icell{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-right:1px solid var(--bone-faint);}
.icell:last-child{border-right:none;}
.ic-lab{font-family:var(--mono);font-size:8.5px;font-weight:800;letter-spacing:.18em;color:var(--bone-dim);text-transform:uppercase;}
.ic-big{font-family:var(--mono);font-size:clamp(18px,2.4vw,24px);font-weight:800;color:var(--bone);font-variant-numeric:tabular-nums;line-height:1;}
.ic-sub{font-family:var(--mono);font-size:8.5px;font-weight:600;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;}
@media (max-width:680px){ .intro-grid{grid-template-columns:1fr;} .icell{border-right:none;border-bottom:1px solid var(--bone-faint);} .icell:last-child{border-bottom:none;} }

/* ---- HOW TO PLAY (post-verify intro) ---- */
.htp-steps{display:flex;flex-direction:column;width:100%;border:1px solid var(--bone-faint);margin:2px 0;}
.htp-step{display:flex;align-items:flex-start;gap:16px;padding:16px 18px;border-bottom:1px solid var(--bone-faint);}
.htp-step:last-child{border-bottom:none;}
.htp-n{font-family:var(--mono);font-size:clamp(18px,2.6vw,22px);font-weight:800;color:var(--red);line-height:1;flex:0 0 auto;width:18px;text-align:center;text-shadow:0 0 18px rgba(216,35,26,.4);}
.htp-t{display:flex;flex-direction:column;gap:5px;}
.htp-t b{font-family:var(--mono);font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--bone);text-transform:uppercase;}
.htp-t span{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.03em;line-height:1.5;color:var(--bone-dim);text-transform:uppercase;}

/* ---- BUILD stepper ---- */
.bld{display:flex;flex-direction:column;gap:clamp(16px,2.6vh,24px);}
.bld-head{display:flex;align-items:center;gap:14px;}
.bld-back{-webkit-appearance:none;appearance:none;cursor:pointer;background:none;border:1px solid var(--bone-faint);
  color:var(--bone-dim);font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:9px 12px;flex:0 0 auto;transition:all .12s;}
.bld-back:hover{color:var(--bone);border-color:var(--bone-dim);}
.bld-prog{flex:1;display:flex;flex-direction:column;gap:7px;min-width:0;}
.bld-prog-lab{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;}
.bld-prog-lab b{color:var(--bone);font-weight:800;}
.bld-bar{height:4px;background:rgba(236,229,216,.1);position:relative;overflow:hidden;}
.bld-bar span{position:absolute;left:0;top:0;height:100%;background:var(--red);box-shadow:0 0 10px rgba(216,35,26,.6);transition:width .4s cubic-bezier(.3,.7,.2,1);}
.bld-prize{font-family:var(--mono);font-size:15px;font-weight:800;color:var(--red);flex:0 0 auto;letter-spacing:.02em;text-shadow:0 0 18px rgba(216,35,26,.35);}
.bld-q{font-family:var(--mono);font-size:clamp(20px,3.2vw,30px);font-weight:800;letter-spacing:-.01em;color:var(--bone);text-transform:uppercase;text-align:center;}

.mc-step{max-width:760px;width:100%;margin:0 auto;}
.mc-step .mc-side{padding:20px 18px 18px;gap:13px;}
.mc-step .mc-plate-wrap .plate{aspect-ratio:1/1;}
.mc-step .mc-name{font-size:18px;}
.mc-step .mc-seam{font-size:13px;}
.mc-step.revealed .mc-side:not(.picked){opacity:.6;}
.mc-side.picked{background:rgba(216,35,26,.08);}
.mc-side.picked .mc-plate{outline:2px solid var(--red);outline-offset:-1px;}
.mc-side.picked::after{content:"\2713 PICKED";position:absolute;top:10px;left:50%;transform:translateX(-50%);
  font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.14em;color:var(--bone);background:var(--red);padding:3px 8px;text-transform:uppercase;z-index:4;white-space:nowrap;}

.bld-foot{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;min-height:46px;}
.bld-hint{font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.12em;color:var(--bone-dim);text-transform:uppercase;text-align:center;}
.bld-picked{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;}
.bld-picked b{color:var(--bone);font-weight:800;}
.bld-next{-webkit-appearance:none;appearance:none;cursor:pointer;background:var(--red);border:none;color:var(--bone);
  font-family:var(--mono);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:13px 22px;
  box-shadow:0 0 22px rgba(216,35,26,.3);transition:background .15s,transform .1s;}
.bld-next:hover{background:#e8362c;} .bld-next:active{transform:translateY(1px);}

/* ---- REVIEW ---- */
.bkt-review{display:flex;flex-direction:column;gap:clamp(16px,2.6vh,24px);}
.rev-head{display:flex;flex-direction:column;gap:9px;}
.rev-title{font-family:var(--mono);font-weight:800;font-size:clamp(28px,4.6vw,46px);line-height:1.06;letter-spacing:-.02em;color:var(--bone);text-transform:uppercase;padding-bottom:.06em;}
.rev-title em{font-style:normal;color:var(--red);text-shadow:0 0 30px rgba(216,35,26,.4);}
.rev-champrow{display:flex;align-items:center;gap:18px;border:1px solid rgba(216,35,26,.35);background:rgba(20,8,6,.6);padding:16px;
  box-shadow:0 0 0 1px rgba(216,35,26,.12),0 16px 40px rgba(0,0,0,.4);}
.rev-champ-plate{width:96px;flex:0 0 auto;box-shadow:0 0 24px rgba(216,35,26,.3);}
.rev-champ-plate .plate{aspect-ratio:1/1;}
.rev-champ-meta{display:flex;flex-direction:column;gap:5px;}
.rc-lab{font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.2em;color:var(--bone-dim);text-transform:uppercase;}
.rc-name{font-family:var(--mono);font-size:clamp(22px,3.4vw,30px);font-weight:800;letter-spacing:-.01em;color:var(--red);text-transform:uppercase;line-height:1;}
.rc-sub{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--bone-dim);text-transform:uppercase;}
.rev-actions{display:flex;flex-direction:column;gap:10px;}
.rev-edit{-webkit-appearance:none;appearance:none;cursor:pointer;background:rgba(236,229,216,.05);border:1px solid var(--bone-faint);
  color:var(--bone);font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:13px 16px;transition:all .12s;}
.rev-edit:hover{border-color:var(--bone-dim);}

/* ---- TRACKER ---- */
.bkt-tracker{display:flex;flex-direction:column;gap:clamp(16px,2.6vh,22px);}
.tr-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.tr-title{font-family:var(--mono);font-weight:800;font-size:clamp(26px,4.4vw,44px);line-height:1.06;letter-spacing:-.02em;color:var(--bone);text-transform:uppercase;margin-top:8px;padding-bottom:.04em;}
.tr-prizechip{display:flex;flex-direction:column;align-items:flex-end;gap:3px;border:1px solid rgba(216,35,26,.4);padding:9px 14px;background:rgba(20,8,6,.5);}
.tr-prizechip span{font-family:var(--mono);font-size:8.5px;font-weight:800;letter-spacing:.18em;color:var(--bone-dim);text-transform:uppercase;}
.tr-prizechip b{font-family:var(--mono);font-size:22px;font-weight:800;color:var(--red);line-height:1;}
/* hero (RAP MADNESS-style): GOAT pick + rank / score / percentile */
.tr-hero{position:relative;overflow:hidden;border:1px solid var(--bone-faint);box-shadow:0 18px 48px rgba(0,0,0,.45);
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding:clamp(22px,3vw,38px) clamp(18px,2.6vw,32px);min-height:210px;}
.tr-hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  z-index:0;opacity:.5;filter:saturate(.9) contrast(1.02);}
.tr-hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(78% 120% at 16% 0%,rgba(216,35,26,.42),transparent 60%),
    radial-gradient(70% 110% at 100% 100%,rgba(216,35,26,.16),transparent 60%),
    linear-gradient(90deg,rgba(10,8,6,.72),transparent 55%),
    linear-gradient(180deg,rgba(40,16,12,.6),rgba(10,8,6,.5));}
.trh-left{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;min-width:0;}
.trh-lab{font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.2em;color:var(--bone-dim);text-transform:uppercase;}
.trh-name{font-family:var(--mono);font-size:clamp(30px,5.6vw,58px);font-weight:800;line-height:.9;letter-spacing:-.02em;color:var(--bone);text-transform:uppercase;text-shadow:0 4px 30px rgba(0,0,0,.6);}
.trh-sub{font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--bone-dim);text-transform:uppercase;}
.trh-stats{position:relative;z-index:1;display:flex;gap:clamp(18px,3vw,42px);align-items:flex-end;}
.trh-stat{display:flex;flex-direction:column;gap:4px;}
.trh-n{font-family:var(--mono);font-size:clamp(20px,3vw,32px);font-weight:800;color:var(--bone);line-height:1;font-variant-numeric:tabular-nums;}
.trh-l{font-family:var(--mono);font-size:8.5px;font-weight:800;letter-spacing:.16em;color:var(--bone-dim);text-transform:uppercase;}
.trh-stat:nth-child(2) .trh-n{color:var(--red);text-shadow:0 0 26px rgba(216,35,26,.4);}
.tr-herometa{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.12em;color:var(--bone-dim);text-transform:uppercase;margin-top:-4px;}
/* round schedule strip */
.tr-sched{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--bone-faint);background:rgba(14,11,8,.55);}
.sched-item{display:flex;flex-direction:column;gap:6px;padding:13px 15px;border-right:1px solid var(--bone-faint);border-left:3px solid transparent;}
.sched-item:last-child{border-right:none;}
.si-rd{font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--bone);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.si-st{font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;font-variant-numeric:tabular-nums;}
.sched-item.done{border-left-color:rgba(236,229,216,.3);}
.sched-item.done .si-st{color:var(--bone);}
.sched-item.live{border-left-color:var(--red);background:rgba(216,35,26,.08);}
.sched-item.live .si-rd,.sched-item.live .si-st{color:var(--red);}
@media (max-width:680px){ .tr-hero{flex-direction:column;align-items:flex-start;gap:18px;} .trh-stats{gap:26px;} .tr-sched{grid-template-columns:repeat(2,1fr);} }

/* crowned banner */
.tr-crown{display:flex;align-items:center;gap:16px;border:1px solid rgba(216,35,26,.4);background:rgba(20,8,6,.6);padding:14px 16px;}
.tr-crown.hit{box-shadow:0 0 0 1px var(--red),0 0 30px rgba(216,35,26,.3);}
.trc-plate{width:78px;flex:0 0 auto;} .trc-plate .plate{aspect-ratio:1/1;}
.trc-meta{display:flex;flex-direction:column;gap:4px;}
.trc-k{font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.18em;color:var(--red);text-transform:uppercase;}
.trc-nm{font-family:var(--mono);font-size:clamp(20px,3vw,26px);font-weight:800;color:var(--bone);text-transform:uppercase;line-height:1;}
.trc-res{font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;}
.tr-crown.hit .trc-res{color:#2faf6b;}

/* live-now matchup mini cards */
.tr-livewrap{display:flex;flex-direction:column;gap:11px;}
.tr-livecards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:9px;}
.tlm{position:relative;border:1px solid var(--bone-faint);background:rgba(14,11,8,.7);padding:12px 13px 28px;display:flex;align-items:center;gap:9px;}
.tlm-side{display:flex;align-items:center;gap:7px;flex:1;min-width:0;font-family:var(--mono);}
.tlm-side.b{justify-content:flex-end;text-align:right;}
.tlm-nm{font-size:11px;font-weight:800;color:var(--bone);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tlm-side.mine .tlm-nm{color:var(--red);}
.tlm-vs{font-family:var(--mono);font-size:9px;font-weight:700;color:var(--bone-faint);flex:0 0 auto;}
.tlm-tag{position:absolute;left:13px;right:13px;bottom:8px;font-family:var(--mono);font-size:8px;font-weight:800;letter-spacing:.1em;color:var(--bone-dim);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tr-livenote{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.06em;line-height:1.5;color:var(--bone-dim);text-transform:uppercase;}
.tr-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:space-between;}
.tr-foot .hero-fine{margin-top:0;} .tr-foot .hero-fine b{color:var(--red);}

/* ---- bracket node states for predicted / scored map ---- */
.bn-row.mypick .bn-nm{color:var(--bone);}
.bn-row.win .bn-nm{color:var(--red);}
.bn-row.correct{background:rgba(47,175,107,.1);}
.bn-row.correct .bn-nm{color:#3fbf7b;} .bn-row.correct .bn-seed{color:#3fbf7b;} .bn-row.correct .bn-share{color:#3fbf7b;}
.bn-row.wrong{opacity:.55;} .bn-row.wrong .bn-nm{text-decoration:line-through;text-decoration-color:rgba(216,35,26,.6);color:var(--bone-dim);}
.bn-row.wrong .bn-share{color:var(--red);}
.bn.crowned{border-color:var(--red);box-shadow:0 0 0 1px var(--red),0 0 30px rgba(216,35,26,.35);}

/* ============================================================================
   BRACKET MAP v2 — March-Madness style competitor cards
   ========================================================================== */
.b2card{position:absolute;display:flex;align-items:center;gap:9px;padding:0 11px 0 7px;
  background:rgba(22,17,12,.95);border:1px solid var(--bone-faint);border-radius:8px;overflow:hidden;
  box-shadow:0 4px 14px rgba(0,0,0,.35);}
.b2-av{width:36px;height:36px;flex:0 0 auto;border-radius:6px;overflow:hidden;position:relative;
  display:flex;align-items:center;justify-content:center;background:#1b1510;
  background-image:repeating-linear-gradient(135deg,rgba(236,229,216,.07) 0 1px,transparent 1px 6px);}
.b2-av img{width:100%;height:100%;object-fit:cover;}
.b2-av span{font-family:var(--mono);font-size:13px;font-weight:800;color:var(--bone-dim);font-variant-numeric:tabular-nums;}
.b2-nm{font-family:var(--mono);font-size:11px;font-weight:800;line-height:1.04;letter-spacing:.005em;text-transform:uppercase;color:var(--bone);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
/* advanced (winner) */
.b2card.adv{background:rgba(34,20,15,.97);border-color:rgba(216,35,26,.5);box-shadow:0 4px 16px rgba(0,0,0,.4),0 0 0 1px rgba(216,35,26,.18);}
.b2card.adv .b2-av{background:var(--red);background-image:none;}
.b2card.adv .b2-av span{color:var(--bone);}
.b2card.adv .b2-nm{color:#fff;}
/* eliminated */
.b2card.out{opacity:.34;}
.b2card.out .b2-nm{color:var(--bone-dim);}
/* live (undecided) */
.b2card.live{border-color:rgba(236,229,216,.24);}
/* tbd */
.b2card.tbd{background:rgba(14,11,8,.4);border-style:dashed;border-color:var(--bone-faint);box-shadow:none;}
.b2card.tbd .b2-av{background:transparent;} .b2card.tbd .b2-av span{color:var(--bone-faint);}
.b2card.tbd .b2-nm{color:var(--bone-faint);}
/* ---- LEADERBOARD ---- */
.bkt-lbwrap{display:flex;flex-direction:column;gap:12px;margin-top:4px;}
.lb{display:flex;flex-direction:column;border:1px solid var(--bone-faint);background:rgba(14,11,8,.55);}
.lb-row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid rgba(236,229,216,.08);font-family:var(--mono);}
.lb-row:last-child{border-bottom:none;}
.lb-rank{font-size:12px;font-weight:800;color:var(--bone-dim);width:48px;flex:0 0 auto;font-variant-numeric:tabular-nums;}
.lb-name{flex:1;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--bone);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lb-name b{color:var(--red);font-weight:800;}
.lb-score{font-size:11px;font-weight:800;color:var(--bone-dim);flex:0 0 auto;font-variant-numeric:tabular-nums;}
.lb-row.me{background:rgba(216,35,26,.12);}
.lb-row.me .lb-rank,.lb-row.me .lb-score{color:var(--bone);}
.lb-empty{padding:16px 14px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--bone-dim);text-transform:uppercase;}
.lb-sep{padding:4px 14px;text-align:center;font-family:var(--mono);font-size:12px;font-weight:800;letter-spacing:.2em;color:var(--bone-faint);border-bottom:1px solid rgba(236,229,216,.08);}

/* scored states (MY BRACKET view): hit / miss / pending vs official results */
.b2card.hit{border-color:rgba(47,175,107,.65);box-shadow:0 4px 16px rgba(0,0,0,.4),0 0 0 1px rgba(47,175,107,.35);}
.b2card.hit .b2-av{background:#2faf6b;background-image:none;} .b2card.hit .b2-av span{color:#0b0907;}
.b2card.hit .b2-nm{color:#d7f3e3;}
.b2card.miss{opacity:.5;}
.b2card.miss .b2-nm{color:var(--bone-dim);text-decoration:line-through;text-decoration-color:rgba(216,35,26,.6);}
.b2card.pending{border-color:rgba(236,229,216,.24);}

/* tracker map toggle */
.bkt-mapmode{display:inline-flex;border:1px solid var(--bone-faint);overflow:hidden;}
.mm-btn{-webkit-appearance:none;appearance:none;cursor:pointer;background:none;border:none;border-right:1px solid var(--bone-faint);
  font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);padding:7px 12px;transition:all .12s;}
.mm-btn:last-child{border-right:none;}
.mm-btn:hover{color:var(--bone);}
.mm-btn.active{background:var(--red);color:var(--bone);}
.bkt-maphead2{display:flex;justify-content:flex-end;margin-top:-4px;}

/* pickable (selectable directly on the tree in build/review) */
.b2card.pickable{cursor:pointer;transition:border-color .12s,box-shadow .12s,transform .12s;}
.b2card.pickable:hover{border-color:rgba(216,35,26,.6);box-shadow:0 4px 18px rgba(0,0,0,.45),0 0 0 1px rgba(216,35,26,.3),0 0 22px rgba(216,35,26,.18);transform:translateY(-1px);}
/* champion */
.b2card.champ{background:rgba(40,16,12,.98);border-color:var(--red);box-shadow:0 0 0 1px var(--red),0 0 30px rgba(216,35,26,.45);}
.b2card.champ .b2-av{background:var(--red);background-image:none;} .b2card.champ .b2-av span{color:var(--bone);}
.b2card.champ .b2-nm{color:#fff;}

.b2crown{position:absolute;text-align:center;font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.16em;
  color:var(--red);text-transform:uppercase;text-shadow:0 0 18px rgba(216,35,26,.5);}
.b2throne{position:absolute;display:flex;align-items:center;justify-content:center;border:1px dashed rgba(216,35,26,.4);border-radius:8px;background:rgba(20,8,6,.5);}
.b2throne span{font-family:var(--mono);font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--bone-dim);text-transform:uppercase;}

.b2head{position:absolute;top:14px;text-align:center;display:flex;flex-direction:column;gap:3px;}
.b2head b{font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--bone);text-transform:uppercase;}
.b2head span{font-family:var(--mono);font-size:8px;font-weight:800;letter-spacing:.14em;color:var(--bone-dim);text-transform:uppercase;}
.b2head.live b{color:var(--red);} .b2head.live span{color:var(--red);}
