/* The Big Board */
.bb{--bg:#05070C;--card:#0B1019;--card2:#0E1522;--line:#1B2433;--txt:#EAF2F7;--mut:#8C9AAD;--g1:#FFF3C4;--g2:#F5C451;--g3:#B9821C;--green:#39E19B;--sil1:#F4F7FA;--sil2:#AEB9C6;--brz1:#F0B98A;--brz2:#B46A32;
  font:16px/1.45 Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--txt);-webkit-font-smoothing:antialiased;position:relative;box-sizing:border-box}
.bb *{box-sizing:border-box}
.bb button{font:inherit;color:inherit;cursor:pointer}
.bb [hidden]{display:none!important}
.bb .gold{background:linear-gradient(180deg,var(--g1),var(--g2) 48%,var(--g3));-webkit-background-clip:text;background-clip:text;color:transparent}
.bb svg{display:block;flex:none}

/* header */
.bb-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1em;flex-wrap:wrap}
.bb-brand{font-family:Monoton,Manrope,sans-serif;font-size:1.05em;letter-spacing:.04em;text-decoration:none;display:inline-block}
.bb-title,.bb h2,.bb h3{font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif}
.bb-title{margin:.05em 0 0;font-size:clamp(2.3em,7.2vw,4.6em);line-height:.9;font-weight:800;letter-spacing:-.045em;text-transform:uppercase;filter:drop-shadow(0 .06em .35em rgba(245,196,81,.28))}
.bb-meta{display:flex;align-items:center;gap:.7em;flex-wrap:wrap;margin-top:.55em;font-size:.82em;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.bb-live{display:inline-flex;align-items:center;gap:.45em;color:var(--green)}
.bb-live i{width:.6em;height:.6em;border-radius:50%;background:var(--green);animation:bbpulse 2s infinite}
.bb-live.off{color:var(--mut)}.bb-live.off i{background:var(--mut);animation:none}
@keyframes bbpulse{0%{box-shadow:0 0 0 0 rgba(57,225,155,.6)}70%{box-shadow:0 0 0 .7em rgba(57,225,155,0)}100%{box-shadow:0 0 0 0 rgba(57,225,155,0)}}
.bb-tools{display:flex;gap:.5em;flex-wrap:wrap;align-items:center}
.bb-btn{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:.55em .95em;border-radius:.8em;border:1px solid var(--line);background:var(--card);font-weight:800;font-size:.9em;text-decoration:none;color:var(--txt)}
.bb-btn svg{width:1.15em;height:1.15em}
.bb-btn.pri{border:0;color:#05070C;background:linear-gradient(90deg,var(--g2),#FFE29A)}
.bb-btn:hover{border-color:rgba(245,196,81,.6)}
.bb-btn:focus-visible,.bb-seg button:focus-visible,.bb a:focus-visible{outline:3px solid #fff;outline-offset:2px}
.bb-btn[aria-pressed="true"]{border-color:var(--g2);color:var(--g2)}

/* controls */
.bb-ctl{display:flex;gap:.7em;flex-wrap:wrap;margin:1.1em 0 .9em;align-items:center}
.bb-seg{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:.85em;padding:.22em;max-width:100%;overflow-x:auto;scrollbar-width:none}
.bb-seg::-webkit-scrollbar{display:none}
.bb-seg button{border:0;background:transparent;min-height:40px;padding:.4em .95em;border-radius:.65em;font-weight:800;font-size:.9em;color:var(--mut);white-space:nowrap}
.bb-seg button[aria-selected="true"]{background:linear-gradient(90deg,var(--g2),#FFE29A);color:#05070C}
.bb-seg button.hot{color:var(--g2)}.bb-seg button.hot[aria-selected="true"]{color:#05070C}
.bb-rot{height:3px;border-radius:3px;background:var(--line);overflow:hidden;margin:-.3em 0 .9em}
.bb-rot i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--g3),var(--g2),var(--g1))}

/* challenge strip */
.bb-chal{display:flex;align-items:center;justify-content:space-between;gap:.8em 1.2em;flex-wrap:wrap;background:linear-gradient(90deg,var(--g1),var(--g2) 45%,var(--g3));color:#1A1205;border-radius:.95em;padding:.7em 1em;font-weight:800;margin-bottom:.9em;text-decoration:none}
.bb-chal b{font-size:1.25em;letter-spacing:-.01em}.bb-chal span{font-size:.82em;letter-spacing:.1em;text-transform:uppercase}.bb-chal span span{font-size:1em}
.bb-chal .cd{font-size:1.45em;font-variant-numeric:tabular-nums;letter-spacing:.02em}

/* KPI tiles */
.bb-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.7em}
.bb-kpi{background:linear-gradient(160deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:1em;padding:.85em 1em;min-width:0;position:relative;overflow:hidden}
.bb-kpi:first-child{border-color:rgba(245,196,81,.55);background:linear-gradient(150deg,rgba(245,196,81,.2),var(--card) 60%)}
.bb-kpi b{display:block;font-size:2.5em;line-height:1;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.bb-kpi:first-child b{background:linear-gradient(180deg,var(--g1),var(--g2) 50%,var(--g3));-webkit-background-clip:text;background-clip:text;color:transparent}
.bb-kpi small{display:block;margin-top:.45em;color:var(--mut);font-size:.8em;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.bb-goal{margin:.7em 0 0;font-size:.82em;color:var(--mut);font-weight:700;display:flex;align-items:center;gap:.8em}
.bb-goal .bar{flex:1;height:.5em;border-radius:1em;background:var(--line);overflow:hidden}.bb-goal .bar i{display:block;height:100%;border-radius:1em;background:linear-gradient(90deg,var(--g3),var(--g2));min-width:.5em;transition:width .8s cubic-bezier(.2,.8,.2,1)}

/* layout */
.bb-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:.9em;margin-top:.9em;align-items:start}
.bb-card{background:var(--card);border:1px solid var(--line);border-radius:1.1em;padding:1em 1.1em}
.bb-main{border-color:rgba(245,196,81,.4);background:radial-gradient(120% 60% at 50% 0%,rgba(245,196,81,.12),transparent 60%),var(--card)}
.bb-h{display:flex;justify-content:space-between;align-items:baseline;gap:.6em;flex-wrap:wrap;margin:0 0 .15em}
.bb-h h2{margin:0;font-size:1.25em;font-weight:800;letter-spacing:-.01em}
.bb-h span{font-size:.78em;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--g2)}
.bb-sub{margin:0 0 .8em;color:var(--mut);font-size:.88em}

/* podium */
.bb-pod{display:grid;grid-template-columns:1fr 1.14fr 1fr;gap:.6em;align-items:end;margin:.4em 0 .7em}
.bb-p{position:relative;text-align:center;border-radius:1em;padding:1em .5em .85em;border:1px solid var(--line);background:linear-gradient(180deg,var(--card2),#080C14);min-width:0}
.bb-p.r1{order:2;padding-top:1.25em;padding-bottom:1.15em;border-color:rgba(245,196,81,.75);background:linear-gradient(180deg,rgba(245,196,81,.24),rgba(185,130,28,.08) 55%,#080C14);box-shadow:0 0 2.2em rgba(245,196,81,.2),inset 0 -3px 0 var(--g2)}
.bb-p.r2{order:1;border-color:rgba(174,185,198,.5);box-shadow:inset 0 -3px 0 var(--sil2)}
.bb-p.r3{order:3;border-color:rgba(180,106,50,.6);box-shadow:inset 0 -3px 0 var(--brz2)}
.bb-p .rk{font-size:.78em;font-weight:800;letter-spacing:.16em;color:var(--mut);display:flex;align-items:center;justify-content:center;gap:.35em}
.bb-p.r1 .rk{color:var(--g2)}.bb-p .rk svg{width:1.5em;height:1.5em}
.bb-av{position:relative;width:4.6em;height:4.6em;margin:.45em auto .5em;display:flex;align-items:center;justify-content:center}
.bb-p.r1 .bb-av{width:5.6em;height:5.6em}
.bb-av .laurel{position:absolute;inset:-18% -32% -10%;width:auto;height:auto;color:var(--sil2);opacity:.85}
.bb-p.r1 .laurel{color:var(--g2);opacity:1}.bb-p.r3 .laurel{color:var(--brz2)}.bb-p.open .laurel{display:none}
.bb-av .mono{position:relative;width:76%;height:76%;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.3em;letter-spacing:-.02em;color:#05070C;background:linear-gradient(145deg,var(--sil1),var(--sil2))}
.bb-p.r1 .mono{background:linear-gradient(145deg,var(--g1),var(--g2) 55%,var(--g3));font-size:1.6em}
.bb-p.r3 .mono{background:linear-gradient(145deg,var(--brz1),var(--brz2))}
.bb-p .nm{font-weight:800;font-size:1.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 .2em}
.bb-p.r1 .nm{font-size:1.18em}
.bb-p .num{font-weight:800;font-size:1.85em;line-height:1.05;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:.12em}
.bb-p.r1 .num{font-size:2.5em;background:linear-gradient(180deg,var(--g1),var(--g2) 50%,var(--g3));-webkit-background-clip:text;background-clip:text;color:transparent}
.bb-p .num small{font-size:.36em;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);-webkit-text-fill-color:var(--mut);margin-left:.35em}
.bb-p .ex{font-size:.8em;color:var(--mut);font-weight:700;margin-top:.2em;min-height:1.3em;line-height:1.25}
.bb-p.open{border-style:dashed;opacity:.9}.bb-p.open .mono{background:transparent;border:2px dashed var(--line);color:var(--mut)}
.bb-p.open .nm{color:var(--mut);font-weight:700}
.bb-p.me,.bb-row.me{outline:2px solid var(--green);outline-offset:2px}
.bb-tag{display:inline-block;font-size:.62em;font-weight:800;letter-spacing:.12em;padding:.15em .5em;border-radius:.5em;background:rgba(57,225,155,.16);color:var(--green);vertical-align:middle;margin-left:.4em}
.bb-tag.hq{background:rgba(245,196,81,.16);color:var(--g2)}.bb-tag.cash{background:rgba(245,196,81,.2);color:var(--g2)}

/* rows 4+ */
.bb-rows{list-style:none;margin:0;padding:0}
.bb-row{display:grid;grid-template-columns:2.2em minmax(0,1fr) minmax(3em,28%) auto;align-items:center;gap:.7em;padding:.62em .3em;border-top:1px solid #131b28;border-radius:.5em}
.bb-row .rk{text-align:center;font-weight:800;color:var(--mut);font-variant-numeric:tabular-nums}
.bb-row .rk svg{width:1.3em;height:1.3em;margin:0 auto}
.bb-row .nm{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bb-row .nm small{display:block;font-weight:600;font-size:.78em;color:var(--mut);overflow:hidden;text-overflow:ellipsis}
.bb-row .bar{height:.5em;border-radius:1em;background:var(--line);overflow:hidden}.bb-row .bar i{display:block;height:100%;border-radius:1em;background:linear-gradient(90deg,var(--g3),var(--g2));transition:width .8s cubic-bezier(.2,.8,.2,1)}
.bb-row .n{font-weight:800;font-size:1.2em;font-variant-numeric:tabular-nums;text-align:right;min-width:2.4em}
.bb-empty{color:var(--mut);text-align:center;padding:.4em 0 .2em;font-weight:700;font-size:.95em}
.bb-you{margin-top:.8em;display:flex;align-items:center;justify-content:space-between;gap:.8em;flex-wrap:wrap;border:1px solid rgba(57,225,155,.45);background:rgba(57,225,155,.07);border-radius:.9em;padding:.7em .9em;font-weight:700;font-size:.95em}
.bb-you b{color:var(--green)}
.bb-foot{margin:.9em 0 0;font-size:.82em;color:var(--mut)}
.bb-foot b{color:var(--txt)}

/* side */
.bb-side,.bb-left{display:grid;gap:.9em;min-width:0}
.bb-kc .bb-kinds{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7em 1.2em}
.bb-pipe{display:grid;gap:.55em;margin-top:.5em}
.bb-st{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2em .8em;align-items:center}
.bb-st span{font-weight:700;font-size:.9em;color:#C9D3DE}.bb-st b{font-weight:800;font-variant-numeric:tabular-nums;font-size:1.15em}
.bb-st .bar{grid-column:1/-1;height:.7em;border-radius:1em;background:var(--line);overflow:hidden}
.bb-st .bar i{display:block;height:100%;border-radius:1em;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.bb-st:nth-child(1) .bar i{background:linear-gradient(90deg,#3A4A63,#8C9AAD)}
.bb-st:nth-child(2) .bar i{background:linear-gradient(90deg,var(--g3),var(--g2))}
.bb-st:nth-child(3) .bar i{background:linear-gradient(90deg,var(--g2),var(--g1))}
.bb-st:nth-child(4) .bar i{background:linear-gradient(90deg,#1FA871,var(--green))}
.bb-kinds{list-style:none;margin:.5em 0 0;padding:0;display:grid;gap:.5em}
.bb-kinds li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.15em .8em;font-size:.9em;font-weight:700;color:#C9D3DE}
.bb-kinds b{color:var(--txt)}.bb-kinds .bar{grid-column:1/-1;height:.35em;border-radius:1em;background:var(--line);overflow:hidden}.bb-kinds .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--g3),var(--g2));border-radius:1em}
.bb-feed{list-style:none;margin:.5em 0 0;padding:0}
.bb-feed li{display:flex;gap:.65em;align-items:center;padding:.5em 0;border-top:1px solid #131b28;font-size:.9em}
.bb-feed li:first-child{border-top:0}
.bb-feed .ic{width:1.9em;height:1.9em;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(245,196,81,.14);color:var(--g2);flex:none}
.bb-feed .ic svg{width:1.05em;height:1.05em}
.bb-feed .ic.signed{background:rgba(57,225,155,.14);color:var(--green)}.bb-feed .ic.recruit{background:rgba(140,154,173,.16);color:#C9D3DE}
.bb-feed .tx{flex:1;min-width:0}.bb-feed .tx b{font-weight:800}.bb-feed time{color:var(--mut);font-size:.85em;white-space:nowrap;font-weight:700}
.bb-feed li.new{animation:bbnew 2.4s ease-out}
@keyframes bbnew{0%{background:rgba(245,196,81,.35)}100%{background:transparent}}

/* toast + confetti */
.bb-toast{position:fixed;left:50%;top:1.2em;visibility:hidden;transform:translate(-50%,-260%);z-index:60;background:linear-gradient(90deg,var(--g1),var(--g2) 45%,var(--g3));color:#1A1205;font-weight:800;border-radius:1em;padding:.8em 1.3em;box-shadow:0 .8em 2.5em rgba(0,0,0,.55);transition:transform .45s cubic-bezier(.2,.9,.2,1.2);max-width:92vw;text-align:center;font-size:1.1em}
.bb-toast.on{transform:translate(-50%,0);visibility:visible}
.bb-toast small{display:block;font-size:.68em;letter-spacing:.16em;text-transform:uppercase}
.bb-conf{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:55}
.bb-note{margin:.8em 0 0;padding:.6em .9em;border-radius:.8em;border:1px solid var(--line);background:var(--card);color:#C9D3DE;font-size:.88em;font-weight:700;display:flex;gap:.8em;align-items:center;justify-content:space-between;flex-wrap:wrap}
.bb-note a{color:var(--g2)}

/* share dialog */
.bb-dlg{position:fixed;inset:0;z-index:70;background:rgba(2,4,8,.86);display:flex;align-items:center;justify-content:center;padding:1em}
.bb-dlg .box{background:var(--card);border:1px solid rgba(245,196,81,.5);border-radius:1.1em;padding:1em;max-width:26em;width:100%;max-height:94vh;overflow:auto}
.bb-dlg h3{margin:0 0 .5em;font-size:1.15em}
.bb-dlg img{display:block;width:100%;height:auto;border-radius:.7em;border:1px solid var(--line)}
.bb-dlg p{font-size:.86em;color:var(--mut);margin:.6em 0}
.bb-dlg .row{display:flex;gap:.5em;flex-wrap:wrap;margin-top:.7em}

/* phone */
@media(max-width:900px){.bb-grid{grid-template-columns:1fr}}
@media(max-width:620px){
  .bb{font-size:15px}
  .bb-kpis{grid-template-columns:repeat(2,1fr)}.bb-kpi b{font-size:2.1em}
  .bb-pod{gap:.4em}.bb-p{padding:.8em .25em .7em}.bb-av{width:3.5em;height:3.5em}.bb-p.r1 .bb-av{width:4.3em;height:4.3em}
  .bb-p .nm{font-size:.86em}.bb-p.r1 .nm{font-size:.95em}.bb-p .num{font-size:1.5em}.bb-p.r1 .num{font-size:2em}.bb-p .ex{font-size:.7em}
  .bb-p .num small{display:block;margin:.3em 0 0}
  .bb-row{grid-template-columns:1.8em minmax(0,1fr) auto}.bb-row .bar{display:none}
  .bb-p .bb-tag{display:table;margin:.25em auto 0}.bb-p .ex{white-space:normal;line-height:1.25}
  .bb-kc .bb-kinds{grid-template-columns:1fr}
  .bb-tools .bb-btn span{display:none}.bb-tools .bb-btn{padding:.55em .8em}
}

/* TV mode: the whole wall on one screen, readable from across the room */
body.bb-tv{overflow:hidden;background:#05070C}
body.bb-tv .bb-wrap{max-width:none;padding:0}
body.bb-tv .bb{font-size:min(1.08vw,1.92vh);height:100vh;padding:2vh 2.2vw 1.4vh;overflow:hidden;cursor:none;display:grid;gap:.8em 1.4em;
  grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto auto minmax(0,1fr) auto;
  grid-template-areas:"head head head head head kpis kpis kpis kpis kpis kpis kpis" "ctl ctl ctl ctl ctl ctl ctl ctl chal chal chal chal" "rot rot rot rot rot rot rot rot rot rot rot rot" "grid grid grid grid grid grid grid grid grid grid grid grid" "bar bar bar bar bar bar bar bar bar bar bar bar"}
body.bb-tv .bb-chal .nm{display:none}body.bb-tv .bb-chal{flex-wrap:nowrap;white-space:nowrap}body.bb-tv .bb-chal span{font-size:.74em}
body.bb-tv .bb.wake{cursor:default}
body.bb-tv .bb-head{grid-area:head;align-items:center}
body.bb-tv .bb-kpis{grid-area:kpis;align-self:center}
body.bb-tv .bb-ctl{grid-area:ctl;margin:0;flex-wrap:nowrap}
body.bb-tv .bb-chal{grid-area:chal;margin:0;align-self:center;padding:.45em 1em}
body.bb-tv .bb-rot{grid-area:rot;margin:0}
body.bb-tv .bb-grid{grid-area:grid;margin:0;min-height:0;align-items:stretch;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr)}
body.bb-tv .bb-tvbar{grid-area:bar;display:flex;margin:0}
body.bb-tv .bb-title{font-size:3.6em}
body.bb-tv .bb-tools{position:absolute;top:2vh;right:2.2vw;z-index:5}
body.bb-tv .bb-tools .bb-btn:not(.tvx),body.bb-tv .bb-foot,body.bb-tv .bb-you,body.bb-tv .bb-goal,body.bb-tv .bb-kc,body.bb-tv .bb-note,body.bb-tv .bb-main .bb-sub{display:none!important}
body.bb-tv .bb-tools .tvx{opacity:0;transition:opacity .3s}
body.bb-tv .bb.wake .bb-tools .tvx{opacity:1}
body.bb-tv .bb-seg{pointer-events:none}
body.bb-tv .bb-left,body.bb-tv .bb-main,body.bb-tv .bb-side{min-height:0;overflow:hidden}
body.bb-tv .bb-left{grid-template-rows:minmax(0,1fr)}
body.bb-tv .bb-side{grid-template-rows:auto minmax(0,1fr)}
body.bb-tv .bb-side .bb-card:last-child{overflow:hidden}
body.bb-tv .bb-kpi{padding:.7em .9em}body.bb-tv .bb-kpi b{font-size:2.6em}body.bb-tv .bb-kpi small{font-size:.72em}
body.bb-tv .bb-pod{margin-top:.8em}
body.bb-tv .bb-row{padding:.5em .3em;font-size:1.08em}
.bb-tvbar{display:none;justify-content:space-between;gap:2em;align-items:center;font-weight:800;font-size:1.05em;color:#C9D3DE}
.bb-tvbar b{color:var(--g2)}

@media(prefers-reduced-motion:reduce){.bb-live i,.bb-feed li.new{animation:none}.bb *{transition:none!important}}
