:root{--font: "Arial Rounded MT Bold", "Nunito", "Varela Round", "Quicksand", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display: var(--font);--bg-1: #06251c;--bg-2: #0b4a33;--bg-3: #041a2e;--ink: #ffffff;--ink-soft: rgba(255, 255, 255, .78);--ink-dim: rgba(255, 255, 255, .55);--coral: #ff5e7e;--sun: #ffd166;--mint: #06d6a0;--sky: #4cc9f0;--violet: #9b5de5;--orange: #ff9f1c;--lime: #b5f44a;--pink: #ff8fd8;--card: rgba(255, 255, 255, .08);--card-strong: rgba(255, 255, 255, .14);--card-border: rgba(255, 255, 255, .16);--shadow: 0 1.2rem 3rem rgba(0, 0, 0, .35);--radius: 1.4rem;--radius-lg: 2.2rem;font-size:clamp(13px,calc(.55vw + .75vh + 4px),28px);--text-scale: 1;--transition-fast: .12s;--transition: .22s;--ease-pop: cubic-bezier(.34, 1.56, .64, 1)}html[data-large-text=true]{--text-scale: 1.22;font-size:clamp(15px,calc(.68vw + .9vh + 5px),34px)}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%;margin:0;padding:0}body{font-family:var(--font);color:var(--ink);background:var(--bg-1);overflow:hidden;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;user-select:none;touch-action:manipulation;overscroll-behavior:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:.28rem solid var(--sun);outline-offset:.2rem}h1,h2,h3{margin:0;font-family:var(--font-display);letter-spacing:-.01em;line-height:1.05}.bg{position:fixed;inset:0;z-index:0;overflow:hidden;background:radial-gradient(120% 90% at 10% 0%,#0f7a4a 0%,transparent 55%),radial-gradient(90% 80% at 100% 100%,#0f3b6e 0%,transparent 60%),linear-gradient(160deg,var(--bg-1),var(--bg-2) 55%,var(--bg-3))}.bg .blob{position:absolute;border-radius:50%;filter:blur(4rem);opacity:.55;animation:floaty 18s ease-in-out infinite;will-change:transform}.bg .blob.b1{width:40vw;height:40vw;left:-10vw;top:-10vw;background:var(--mint)}.bg .blob.b2{width:35vw;height:35vw;right:-8vw;top:20vh;background:var(--sky);animation-delay:-6s}.bg .blob.b3{width:32vw;height:32vw;left:25vw;bottom:-14vw;background:var(--coral);animation-delay:-12s}.bg .stars{position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(255,255,255,.7) 50%,transparent 55%),radial-gradient(1.5px 1.5px at 70% 20%,rgba(255,255,255,.6) 50%,transparent 55%),radial-gradient(2px 2px at 40% 70%,rgba(255,255,255,.5) 50%,transparent 55%),radial-gradient(1.5px 1.5px at 85% 60%,rgba(255,255,255,.6) 50%,transparent 55%),radial-gradient(1.5px 1.5px at 10% 80%,rgba(255,255,255,.5) 50%,transparent 55%),radial-gradient(2px 2px at 55% 45%,rgba(255,255,255,.45) 50%,transparent 55%),radial-gradient(1.5px 1.5px at 92% 88%,rgba(255,255,255,.55) 50%,transparent 55%),radial-gradient(1.5px 1.5px at 30% 10%,rgba(255,255,255,.55) 50%,transparent 55%);opacity:.8}@keyframes floaty{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(4vw,-3vh,0) scale(1.08)}}.screen{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;animation:screen-in .32s var(--ease-pop) both}@keyframes screen-in{0%{opacity:0;transform:translateY(1.2rem) scale(.985)}to{opacity:1;transform:none}}.screen-body{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.6rem 2rem 1rem;gap:1rem;overflow:auto;justify-content:flex-start;justify-content:safe center}.screen-body.top{justify-content:flex-start}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.4rem;gap:1rem;z-index:2}.topbar .left,.topbar .right{display:flex;align-items:center;gap:.6rem}.brand{display:flex;align-items:center;gap:.6rem;font-size:1.35rem;font-weight:800;letter-spacing:.02em}.brand .logo{width:2.2rem;height:2.2rem;border-radius:.7rem;display:grid;place-items:center;background:linear-gradient(135deg,var(--coral),var(--violet));box-shadow:0 .3rem .8rem #00000059;font-size:1.3rem}.btn{--btn-bg: linear-gradient(180deg, #ffe08a, var(--orange));--btn-ink: #3a1d00;--btn-shadow: #b85f00;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.75em 1.7em;font-size:1.35rem;font-weight:800;line-height:1;border-radius:999px;color:var(--btn-ink);background:var(--btn-bg);box-shadow:0 .32em 0 var(--btn-shadow),0 .9em 1.6em #0000004d;transform:translateY(0);transition:transform var(--transition-fast) ease,box-shadow var(--transition-fast) ease,filter var(--transition-fast) ease;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.35)}.btn:hover{filter:brightness(1.06)}.btn:active,.btn.pressed{transform:translateY(.24em);box-shadow:0 .08em 0 var(--btn-shadow),0 .4em 1em #0000004d}.btn.huge{font-size:2.2rem;padding:.7em 2.2em}.btn.big{font-size:1.7rem}.btn.small{font-size:1rem;padding:.6em 1.2em}.btn.secondary{--btn-bg: linear-gradient(180deg, rgba(255, 255, 255, .22), rgba(255, 255, 255, .1));--btn-ink: #fff;--btn-shadow: rgba(0, 0, 0, .45);text-shadow:none;border:2px solid rgba(255,255,255,.22)}.btn.mint{--btn-bg: linear-gradient(180deg, #7ff5d1, var(--mint));--btn-ink: #003d2b;--btn-shadow: #039367}.btn.coral{--btn-bg: linear-gradient(180deg, #ff9db0, var(--coral));--btn-ink: #4a0016;--btn-shadow: #b8264a}.btn.sky{--btn-bg: linear-gradient(180deg, #a2e6fb, var(--sky));--btn-ink: #003548;--btn-shadow: #1a8bb3}.btn.violet{--btn-bg: linear-gradient(180deg, #c8a5ff, var(--violet));--btn-ink: #fff;--btn-shadow: #5d2ea6;text-shadow:0 1px 2px rgba(0,0,0,.35)}.btn.ghost{--btn-bg: transparent;--btn-ink: var(--ink-soft);--btn-shadow: transparent;box-shadow:none;text-shadow:none}.btn.ghost:hover{background:#ffffff14}.btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}.btn .k{font-size:.65em;opacity:.7;font-weight:700;border:1.5px solid currentColor;border-radius:.4em;padding:.15em .4em}.icon-btn{width:2.9rem;height:2.9rem;border-radius:999px;display:grid;place-items:center;font-size:1.35rem;background:#ffffff1a;border:2px solid rgba(255,255,255,.14);transition:transform var(--transition-fast) var(--ease-pop),background var(--transition-fast);line-height:1}.icon-btn:hover{background:#fff3;transform:scale(1.06)}.icon-btn:active{transform:scale(.94)}.icon-btn.active{background:var(--sun);color:#3a1d00;border-color:transparent}.icon-btn .lbl{font-size:.55rem;margin-top:-.2rem}.card{background:var(--card);border:1.5px solid var(--card-border);border-radius:var(--radius-lg);padding:1.4rem 1.8rem;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.card.strong{background:var(--card-strong)}.panel-title{font-size:1.1rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-dim);font-weight:800;margin-bottom:.6rem}.title-xl{font-size:4.2rem;font-weight:900;line-height:.95;text-align:center;text-shadow:0 .2rem 0 rgba(0,0,0,.25),0 1rem 2.5rem rgba(0,0,0,.35)}.title-lg{font-size:2.6rem;font-weight:900;text-align:center;text-shadow:0 .15rem 0 rgba(0,0,0,.25)}.title-md{font-size:1.7rem;font-weight:800}.subtitle{font-size:1.25rem;color:var(--ink-soft);text-align:center;max-width:40rem;line-height:1.35}.gradient-text{background:linear-gradient(90deg,var(--sun),var(--coral),var(--violet),var(--sky));-webkit-background-clip:text;background-clip:text;color:transparent}.hub-hero{text-align:center;padding:.4rem 0}.hub-hero .title-xl{font-size:clamp(2.2rem,5vw,4rem)}.hub-hero .subtitle{margin:.3rem auto 0;max-width:44rem}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1.2rem;width:min(100%,68rem);padding:.5rem .4rem 1rem}.tile{--tile-a: var(--coral);--tile-b: var(--violet);position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:12rem;padding:1.3rem 1.6rem;border-radius:var(--radius-lg);background:linear-gradient(150deg,var(--tile-a),var(--tile-b));color:#fff;text-align:left;overflow:hidden;box-shadow:0 .6rem #00000047,0 1.4rem 3rem #0006;transition:transform var(--transition) var(--ease-pop),box-shadow var(--transition);isolation:isolate}.tile:before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 100% 0%,rgba(255,255,255,.35),transparent 60%);pointer-events:none}.tile:hover,.tile:focus-visible{transform:translateY(-.4rem) scale(1.02);box-shadow:0 1rem #00000047,0 2rem 4rem #00000080}.tile:active{transform:translateY(.2rem) scale(.99)}.tile .emoji{font-size:4.6rem;line-height:1;position:absolute;right:1.1rem;top:.8rem;filter:drop-shadow(0 .5rem .8rem rgba(0,0,0,.35));transition:transform var(--transition) var(--ease-pop)}.tile:hover .emoji{transform:rotate(-8deg) scale(1.1)}.tile .emoji{animation:emoji-bob 3.2s ease-in-out infinite}.tile:nth-child(2) .emoji{animation-delay:-1.6s}@keyframes emoji-bob{0%,to{translate:0 0}50%{translate:0 -.5rem}}.tile .t-title{font-size:2.4rem;font-weight:900;line-height:.95;text-shadow:0 .15rem 0 rgba(0,0,0,.25)}.tile .t-tag{font-size:1.2rem;margin-top:.4rem;opacity:.92;font-weight:700}.tile .t-meta{display:flex;gap:.5rem;margin-top:.8rem;flex-wrap:wrap}.tile .pill{font-size:.85rem;padding:.25rem .7rem;border-radius:999px;background:#00000040;font-weight:700}.tile.soon{filter:saturate(.5);opacity:.6;min-height:9rem}.tile.soon .t-title{font-size:1.6rem}.tile.soon .emoji{font-size:3rem}.chips{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.chip{--chip: var(--sun);display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem .45rem .5rem;border-radius:999px;background:#ffffff1a;border:2.5px solid transparent;font-size:1.15rem;font-weight:800;transition:transform var(--transition-fast) var(--ease-pop),background var(--transition-fast),border-color var(--transition-fast)}.chip .av{width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;background:var(--chip);font-size:1.15rem;box-shadow:inset 0 -.15rem #0003}.chip.on{background:#fff3;border-color:var(--chip);transform:scale(1.04)}.chip.off{opacity:.55}.chip.add{border-style:dashed;border-color:#fff6;opacity:.85}.chip:hover{transform:scale(1.05)}.chip.big{font-size:1.5rem;padding:.6rem 1.4rem .6rem .6rem}.chip.big .av{width:2.6rem;height:2.6rem;font-size:1.5rem}.seg{display:inline-flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.seg .opt{padding:.55rem 1.2rem;border-radius:1rem;background:#ffffff1a;border:2.5px solid rgba(255,255,255,.14);font-size:1.15rem;font-weight:800;display:inline-flex;flex-direction:column;align-items:center;gap:.15rem;min-width:6.5rem;transition:transform var(--transition-fast) var(--ease-pop),background var(--transition-fast),border-color var(--transition-fast)}.seg .opt .sub{font-size:.8rem;font-weight:700;color:var(--ink-dim)}.seg .opt .ico{font-size:1.7rem;line-height:1}.seg .opt:hover{transform:translateY(-2px);background:#ffffff29}.seg .opt.on{background:var(--sun);color:#3a1d00;border-color:#fff;box-shadow:0 .4rem 1rem #ffd16666}.seg .opt.on .sub{color:#3a1d00bf}.seg .opt:disabled{opacity:.4;cursor:not-allowed}.seg.compact .opt{min-width:3.6rem;padding:.5rem .7rem;font-size:1.25rem}.seg.compact.lang .opt{min-width:0;padding:.45rem .75rem;font-size:1.1rem}.seg.tables .opt{min-width:4rem;padding:.4rem;font-size:1.3rem}.seg.tables .opt .mastery{height:.35rem;width:80%;border-radius:999px;background:#00000040;overflow:hidden;margin-top:.15rem}.seg.tables .opt .mastery i{display:block;height:100%;background:var(--mint)}.setup-grid{display:grid;grid-template-columns:1fr;gap:.7rem;width:min(100%,64rem)}.setup-row{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem;padding:.6rem 1.1rem;border-radius:var(--radius);background:#ffffff0f;border:1.5px solid rgba(255,255,255,.1)}.setup-row .lbl{min-width:8rem;font-size:1.05rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-dim);font-weight:800}.setup-row .grow{flex:1 1 22rem;display:flex;justify-content:center}.setup-row>.hint{margin-left:auto;flex:0 1 auto;text-align:right}.actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;align-items:center;padding:.6rem 0 .8rem}.text-input{font-size:1.6rem;font-weight:800;padding:.6em 1em;border-radius:1rem;border:3px solid rgba(255,255,255,.25);background:#00000040;color:#fff;width:min(100%,18rem);text-align:center;outline:none}.text-input:focus{border-color:var(--sun)}.text-input::placeholder{color:#fff6}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(3.4rem,1fr));gap:.5rem;width:min(100%,34rem)}.avatar-grid button{font-size:2rem;aspect-ratio:1;border-radius:1rem;background:#ffffff14;border:3px solid transparent;transition:transform var(--transition-fast) var(--ease-pop)}.avatar-grid button:hover{transform:scale(1.12)}.avatar-grid button.on{border-color:var(--sun);background:#fff3}.swatches{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.swatches button{width:2.6rem;height:2.6rem;border-radius:50%;border:3px solid transparent;transition:transform var(--transition-fast) var(--ease-pop)}.swatches button.on{border-color:#fff;transform:scale(1.15)}.slider{display:flex;align-items:center;gap:.8rem;min-width:14rem}.slider input[type=range]{flex:1;accent-color:var(--sun);height:1.4rem}.slider .val{min-width:3rem;text-align:right;font-weight:800;color:var(--ink-soft)}.toggle{display:inline-flex;align-items:center;gap:.6rem;font-weight:800;font-size:1.1rem;text-align:left}.toggle .sw{width:3.4rem;height:1.9rem;border-radius:999px;background:#fff3;position:relative;transition:background var(--transition-fast);flex-shrink:0}.toggle .sw:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.5rem;height:1.5rem;border-radius:50%;background:#fff;transition:transform var(--transition-fast) var(--ease-pop)}.toggle.on .sw{background:var(--mint)}.toggle.on .sw:after{transform:translate(1.5rem)}.play-root{position:fixed;inset:0;z-index:5;background:#0b0a2a;overflow:hidden}.play-root canvas.game{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.play-overlay{position:absolute;inset:0;pointer-events:none}.play-overlay>*{pointer-events:auto}.play-hud-buttons{position:absolute;top:.8rem;right:.8rem;display:flex;gap:.5rem;z-index:3}.play-hud-buttons .icon-btn{background:#00000059;border-color:#fff3;width:2.5rem;height:2.5rem;font-size:1.15rem}.camera-pip{position:absolute;left:.8rem;bottom:.8rem;width:14rem;aspect-ratio:4 / 3;border-radius:1rem;overflow:hidden;border:3px solid rgba(255,255,255,.35);background:#000;box-shadow:0 .6rem 1.6rem #00000080;z-index:3}.camera-pip canvas{width:100%;height:100%;display:block}.camera-pip .pip-status{position:absolute;left:0;right:0;bottom:0;font-size:.75rem;font-weight:800;padding:.25rem .5rem;background:#0000008c;display:flex;justify-content:space-between}.modal{position:absolute;inset:0;display:grid;place-items:center;background:#08061eb8;backdrop-filter:blur(6px);z-index:10;animation:fade-in .2s ease both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal .card{min-width:min(90vw,28rem);text-align:center;display:flex;flex-direction:column;gap:1rem;align-items:center;animation:screen-in .26s var(--ease-pop) both}.countdown{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:8}.countdown .num{font-size:clamp(8rem,30vh,20rem);font-weight:900;color:#fff;text-shadow:0 .4rem 0 rgba(0,0,0,.3),0 2rem 4rem rgba(0,0,0,.5);animation:count-pop .9s var(--ease-pop) both}.countdown .num.go{color:var(--sun)}@keyframes count-pop{0%{transform:scale(.3);opacity:0}35%{transform:scale(1.15);opacity:1}75%{transform:scale(1);opacity:1}to{transform:scale(1.4);opacity:0}}.touch-controls{position:absolute;inset:0;pointer-events:none;z-index:4}.touch-controls .tc{position:absolute;pointer-events:auto;width:5.2rem;height:5.2rem;border-radius:50%;background:#ffffff29;border:3px solid rgba(255,255,255,.35);font-size:2.2rem;display:grid;place-items:center;color:#fff;backdrop-filter:blur(4px);transition:transform 80ms}.touch-controls .tc:active{transform:scale(.92);background:#ffffff59}.touch-controls .tc.left{left:1rem;bottom:1.2rem}.touch-controls .tc.right{left:7rem;bottom:1.2rem}.touch-controls .tc.jump{right:1rem;bottom:6.6rem}.touch-controls .tc.duck{right:1rem;bottom:1.2rem}.touch-controls.with-pip .tc.left{left:15.4rem}.touch-controls.with-pip .tc.right{left:21.4rem}.podium{display:flex;align-items:flex-end;justify-content:center;gap:1rem;flex-wrap:wrap}.podium .place{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:9rem;animation:screen-in .4s var(--ease-pop) both}.podium .place .av{width:4.5rem;height:4.5rem;border-radius:50%;display:grid;place-items:center;font-size:2.6rem;background:var(--chip);box-shadow:0 .5rem 1.2rem #0006}.podium .place.first .av{width:6rem;height:6rem;font-size:3.4rem}.podium .place .nm{font-size:1.4rem;font-weight:900}.podium .place .sc{font-size:2rem;font-weight:900;color:var(--sun)}.podium .place .stand{width:100%;border-radius:.8rem .8rem 0 0;background:#ffffff26;display:grid;place-items:center;font-size:2rem;font-weight:900}.podium .place.first .stand{height:6rem;background:linear-gradient(180deg,var(--sun),var(--orange));color:#3a1d00}.podium .place.second .stand{height:4.2rem;background:linear-gradient(180deg,#e8ecf3,#b8c0cf);color:#222}.podium .place.third .stand{height:3rem;background:linear-gradient(180deg,#e0a074,#b8703f);color:#2b1500}.stat-lines{display:flex;gap:.4rem 1.2rem;flex-wrap:wrap;justify-content:center;font-size:.95rem;color:var(--ink-soft)}.stat-lines b{color:#fff}.badge{display:inline-block;padding:.3rem .9rem;border-radius:999px;background:var(--sun);color:#3a1d00;font-weight:900;font-size:1rem;animation:badge-pop .6s var(--ease-pop) both}@keyframes badge-pop{0%{transform:scale(0) rotate(-20deg)}to{transform:none}}.grid-heat{display:grid;grid-template-columns:auto repeat(12,1fr);gap:.2rem;font-size:.8rem;width:min(100%,44rem)}.grid-heat .h{color:var(--ink-dim);font-weight:800;display:grid;place-items:center;aspect-ratio:1}.grid-heat .c{aspect-ratio:1;border-radius:.3rem;display:grid;place-items:center;font-weight:800;color:#000000b3;font-size:.7rem}.list{display:flex;flex-direction:column;gap:.4rem;width:100%}.list .row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem .9rem;border-radius:.8rem;background:#ffffff0f;font-size:1rem}.kpis{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center}.kpi{min-width:8rem;padding:.8rem 1rem;border-radius:1rem;background:#ffffff14;text-align:center}.kpi .v{font-size:2rem;font-weight:900;color:var(--sun)}.kpi .l{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-dim);font-weight:800}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1rem;width:min(100%,70rem)}.hint{font-size:.95rem;color:var(--ink-dim);text-align:center}.hint kbd,kbd{font-family:inherit;font-weight:800;padding:.1em .5em;border-radius:.4em;background:#ffffff26;border:1.5px solid rgba(255,255,255,.25);color:#fff}.toast{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%);background:#000000b3;padding:.7rem 1.4rem;border-radius:999px;font-weight:800;z-index:50;animation:screen-in .2s var(--ease-pop) both}.confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:40}.footer-note{font-size:.8rem;color:var(--ink-dim);text-align:center;padding:.4rem 1rem .8rem}.cam-stage{position:relative;width:min(100%,44rem);aspect-ratio:4 / 3;border-radius:var(--radius-lg);overflow:hidden;background:#000;border:3px solid rgba(255,255,255,.25);box-shadow:var(--shadow)}.cam-stage canvas{width:100%;height:100%;display:block}.cam-stage .cam-msg{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:2rem;font-size:1.4rem;font-weight:800;background:#00000059}.cam-stage .cal-bar{position:absolute;left:10%;right:10%;bottom:1rem;height:.9rem;border-radius:999px;background:#fff3;overflow:hidden}.cam-stage .cal-bar i{display:block;height:100%;background:var(--mint);transition:width .12s linear}.cam-checks{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.cam-checks .ck{padding:.5rem 1rem;border-radius:999px;background:#ffffff1a;font-weight:800;font-size:1rem;border:2px solid transparent;transition:all var(--transition-fast)}.cam-checks .ck.done{background:var(--mint);color:#003d2b}html[data-reduced-motion=true] *,html[data-reduced-motion=true] *:before,html[data-reduced-motion=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html[data-reduced-motion=true] .bg .blob{animation:none}@media(prefers-reduced-motion:reduce){.bg .blob{animation:none}}@media(max-width:720px){.screen-body{padding:.6rem 1rem}.topbar{padding:.6rem .8rem}.brand span.txt{display:none}.tile{min-height:12rem}.tile .emoji{font-size:4.5rem}.tile .t-title{font-size:2.2rem}.setup-row .lbl{min-width:100%}.camera-pip{width:9rem}}@media(max-height:520px){.tile{min-height:9rem}.hub-hero .subtitle{display:none}}.cam-stage-inner{position:absolute;inset:0}.cam-stage-inner canvas{width:100%;height:100%}.setup-row .lbl-wrap{display:flex;flex-direction:column;min-width:8rem}.setup-row .hint-inline{font-size:.85rem;color:var(--ink-dim)}.format-picker{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.6rem}.card>.setup-row+.setup-row{margin-top:.6rem}.pick-summary{font-weight:800}.star-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.7rem;margin:.8rem 0;max-height:40vh;overflow:auto;padding:.2rem}.star-grid.compact{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));max-height:32vh}.star-card{display:flex;flex-direction:column;gap:.4rem;text-align:left;padding:.7rem .8rem;border-radius:var(--radius);border:2px solid rgba(255,255,255,.14);background:linear-gradient(135deg,#ffffff1a,#ffffff0a);cursor:pointer;transition:transform var(--transition-fast) var(--ease-pop),border-color var(--transition-fast);position:relative;overflow:hidden}.star-card:before{content:"";position:absolute;inset:0 auto 0 0;width:.5rem;background:linear-gradient(var(--kit-a),var(--kit-b));opacity:.9}.star-card:hover,.star-card:focus-visible{transform:translateY(-2px);border-color:#fff6}.star-card.on{border-color:var(--sun);box-shadow:0 0 0 3px #ffd16659,var(--shadow)}.star-card .sc-top{display:flex;align-items:center;gap:.5rem;padding-left:.4rem}.star-card .sc-emoji{font-size:1.6rem}.star-card .sc-name{font-weight:900;font-size:1.05rem}.star-card.compact .sc-name{font-size:.95rem}.star-card .sc-tag{color:var(--ink-soft);font-size:.85rem;padding-left:.4rem}.star-card .sc-stats{display:grid;grid-template-columns:1fr 1fr;gap:.15rem .6rem;padding-left:.4rem}.statbar{display:flex;align-items:center;gap:.35rem;font-size:.7rem;color:var(--ink-dim)}.statbar .sl{width:2rem;font-weight:800}.statbar .sb{flex:1;height:.4rem;border-radius:999px;background:#ffffff1f;overflow:hidden}.statbar .sf{display:block;height:100%;background:linear-gradient(90deg,var(--mint),var(--sun))}.kit{display:inline-flex;flex-direction:column;align-items:center;width:1.5rem;vertical-align:middle}.kit .kit-shirt{width:1.5rem;height:1.05rem;border-radius:.3rem .3rem .15rem .15rem;background:linear-gradient(90deg,var(--kit-a) 0 45%,var(--kit-b) 45% 55%,var(--kit-a) 55%);border:1.5px solid rgba(0,0,0,.35)}.kit .kit-shorts{width:1.1rem;height:.55rem;border-radius:0 0 .25rem .25rem;background:var(--kit-s);border:1.5px solid rgba(0,0,0,.35);border-top:none}.team-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0;max-height:26vh;overflow:auto}.team-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .7rem .35rem .45rem;border-radius:999px;border:2px solid rgba(255,255,255,.14);background:#ffffff12;cursor:pointer;font-weight:800;font-size:.9rem}.team-chip:hover{border-color:#fff6}.team-chip.on{border-color:var(--sun);background:#ffd1662e}.profile-editor{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:.4rem 0}.profile-editor .big-av .av{font-size:1.4rem}.profile-editor .text-input{flex:1 1 10rem}.avatar-grid .av-opt{font-size:1.4rem;padding:.3rem;border-radius:.8rem;border:2px solid transparent;background:#ffffff14;cursor:pointer}.avatar-grid .av-opt.on{border-color:var(--sun)}.player-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.35rem .5rem;border-radius:var(--radius);border:2px solid rgba(255,255,255,.1);background:#ffffff0d}.player-row.on{border-color:var(--mint);background:#06d6a01f}.player-row .player-main{flex:1;display:flex;align-items:center;gap:.6rem;text-align:left;background:none;border:none;cursor:pointer;padding:.3rem}.player-row .av{width:2.2rem;height:2.2rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem}.player-row .pn{font-weight:900;min-width:6rem}.player-row .pm{color:var(--ink-soft);font-size:.85rem}.player-row .order{margin-left:auto;font-weight:900;color:var(--sun)}.player-row .player-edit{flex-basis:100%;padding:.4rem .2rem .2rem}.icon-btn.small{width:2.2rem;height:2.2rem;font-size:1rem}.history-row{display:grid;grid-template-columns:6rem 1fr 1fr auto 1fr;gap:.6rem;align-items:center;padding:.5rem .8rem;border-radius:var(--radius);background:#ffffff0d}.history-row .hr-date,.history-row .hr-mode{color:var(--ink-dim);font-size:.85rem}.history-row .hr-name.win{color:var(--sun);font-weight:900}.history-row .hr-score{font-weight:900;font-size:1.2rem}.results-board{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:stretch;width:min(70rem,100%)}.results-score{display:flex;align-items:center;font-size:3.4rem;font-weight:900;padding:0 .6rem;text-shadow:0 .2rem 0 rgba(0,0,0,.35)}.side-card{border-radius:var(--radius-lg);padding:1rem 1.2rem;background:linear-gradient(160deg,#ffffff1f,#ffffff0d);border:2px solid rgba(255,255,255,.14);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.5rem}.side-card:before{content:"";position:absolute;inset:0 0 auto;height:.6rem;background:linear-gradient(90deg,var(--kit-a),var(--kit-b))}.side-card.winner{border-color:var(--sun);box-shadow:0 0 0 3px #ffd16659,var(--shadow)}.side-card .sc-head{display:flex;align-items:center;gap:.5rem;font-size:1.4rem;font-weight:900}.side-card .sc-head .av{font-size:1.8rem}.side-card .sc-sub{color:var(--ink-soft);font-size:.9rem;display:flex;align-items:center;gap:.4rem}.shot-map{display:flex;flex-wrap:wrap;gap:.35rem;min-height:2rem}.shot-map .shot{width:2.2rem;height:2.2rem;border-radius:.7rem;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;background:#ffffff1a;border:2px solid rgba(255,255,255,.15)}.shot-map .shot.goal{border-color:var(--mint);background:#06d6a033}.shot-map .shot.saved{border-color:var(--sun);background:#ffd16633}.shot-map .shot.miss{border-color:var(--coral);background:#ff5e7e33}@media(max-width:720px){.results-board{grid-template-columns:1fr}.results-score{justify-content:center;padding:0}.history-row{grid-template-columns:1fr auto 1fr}.history-row .hr-date,.history-row .hr-mode{display:none}}.turn-prompt{position:absolute;left:50%;top:18%;transform:translate(-50%);background:#0000008c;border:2px solid rgba(255,255,255,.25);border-radius:999px;padding:.6rem 1.4rem;font-size:1.6rem;font-weight:900;z-index:5;animation:pop-in .22s var(--ease-pop);pointer-events:none}.turn-prompt .av{font-size:1.8rem;margin-right:.3rem}.done-bar{position:absolute;left:50%;bottom:6%;transform:translate(-50%);z-index:6}.emote-bar{position:absolute;left:50%;bottom:.6rem;transform:translate(-50%);display:flex;gap:.3rem;z-index:6;background:#00000059;border-radius:999px;padding:.25rem .4rem}.emote-btn{width:2.4rem;height:2.4rem;border-radius:50%;border:none;background:#ffffff1f;font-size:1.3rem;cursor:pointer}.emote-btn:hover{background:#ffffff47}@keyframes pop-in{0%{transform:translate(-50%) scale(.6);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.join-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.code-input{width:8rem;font-size:1.8rem;letter-spacing:.3em;text-align:center;text-transform:uppercase;font-weight:900}html:lang(es) .code-input::placeholder{font-size:.9rem;letter-spacing:.02em}.toast.inline{position:static;transform:none;margin-top:.6rem;display:inline-block}.howto{margin:0;padding-left:1.4rem;color:var(--ink-soft);line-height:1.5}.lobby-code{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.4rem;width:min(56rem,100%)}.lobby-code .lc-label{text-transform:uppercase;letter-spacing:.2em;color:var(--ink-dim);font-weight:800;font-size:.9rem}.lobby-code .lc-code{font-size:4rem;font-weight:900;letter-spacing:.25em;line-height:1;text-shadow:0 .2rem 0 rgba(0,0,0,.35)}.conn.open{color:var(--mint)}.conn.reconnecting,.conn.connecting{color:var(--sun)}.conn.closed,.conn.error{color:var(--coral)}.player-row.waiting{opacity:.6;border-style:dashed}.lobby-code .lc-row{display:flex;align-items:center;justify-content:center;gap:1.4rem;flex-wrap:wrap;width:100%}.lobby-code .lc-main{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex:1 1 18rem}.qr{margin:0;display:flex;flex-direction:column;align-items:center;gap:.3rem}.qr svg{width:7.5rem;height:7.5rem;border-radius:.8rem;box-shadow:var(--shadow)}.qr figcaption{font-size:.8rem;color:var(--ink-dim);font-weight:800}.sc-portrait{flex:0 0 auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}.star-card .sc-emoji-sm{font-size:.95em;opacity:.9}.player-row svg,.side-card .sc-head svg{flex:0 0 auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}.team-chip svg{flex:0 0 auto}.pm svg{vertical-align:middle}.cam-stage.compact{width:min(100%,22rem);flex:0 0 auto}.drill{width:min(100%,44rem);display:flex;flex-direction:column;gap:.9rem;text-align:center}.drill-dots{display:flex;gap:.5rem;justify-content:center}.drill-dots .dot{width:2.4rem;height:2.4rem;border-radius:999px;display:grid;place-items:center;font-size:1.1rem;font-weight:900;background:#ffffff1f;border:2px solid transparent}.drill-dots .dot.now{border-color:var(--sun);transform:scale(1.12)}.drill-dots .dot.good{background:var(--mint);color:#003d2b}.drill-dots .dot.bad{background:var(--coral);color:#40000f}.drill-step,.drill-report{display:flex;flex-direction:column;gap:.7rem;align-items:center}.drill-step .cal-bar{width:min(100%,30rem);height:.8rem;border-radius:999px;background:#ffffff2e;overflow:hidden}.drill-step .cal-bar i{display:block;height:100%;background:var(--sun);transition:width .2s linear}.drill-read{font-weight:800;font-size:1.15rem;color:var(--ink-soft);min-height:1.6em}.drill-score{color:var(--sun)}.drill .ck{padding:.5rem 1rem;border-radius:999px;font-weight:800;background:var(--mint);color:#003d2b}.drill-list,.drill-advice{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;text-align:left;width:100%}.drill-list li{padding:.45rem .8rem;border-radius:var(--radius-sm, .8rem);background:#ffffff14;border-left:4px solid var(--coral);font-size:1rem}.drill-list li.good{border-left-color:var(--mint)}.drill-advice li{font-size:1rem;color:var(--ink-soft);padding-left:1.4rem;position:relative}.drill-advice li:before{content:"💡";position:absolute;left:0}.player-row.entrant{width:100%;cursor:pointer;color:inherit;font:inherit;text-align:left;gap:.6rem;padding:.5rem .7rem}.player-row.entrant .order{color:var(--mint);font-size:1.2rem}.draw-preview{text-align:center;font-weight:800;color:var(--ink-soft);display:flex;flex-direction:column;gap:.5rem;align-items:center}.draw-preview .big{font-size:2rem;color:var(--sun)}.draw-faces{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:center}.next-match{width:min(100%,44rem);text-align:center;display:flex;flex-direction:column;gap:.8rem;align-items:center}.next-pair{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}.next-pair .vs{font-weight:900;font-size:1.3rem;color:var(--sun)}.next-pair .chip.tbd{opacity:.6;font-weight:700}.champion{display:flex;flex-direction:column;gap:.8rem;align-items:center;text-align:center}.bracket{display:flex;gap:1rem;align-items:stretch;overflow-x:auto;padding:.4rem;width:100%;justify-content:center}.bracket-round{display:flex;flex-direction:column;gap:.6rem;justify-content:space-around;min-width:12rem}.bracket-match{border-radius:var(--radius-sm, .8rem);border:2px solid rgba(255,255,255,.12);background:#ffffff0f;padding:.3rem;position:relative;display:flex;flex-direction:column;gap:.2rem}.bracket-match.live{border-color:var(--sun);box-shadow:0 0 0 3px #ffd16640}.bracket-match.done{opacity:.9}.bracket-match .side{display:flex;align-items:center;gap:.5rem;padding:.25rem .4rem;border-radius:.6rem;font-weight:800}.bracket-match .side.won{background:#06d6a02e;color:var(--mint)}.bracket-match .side.tbd{opacity:.45;font-weight:600}.bracket-match .side .nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bracket-match .side .gl{font-variant-numeric:tabular-nums;color:var(--sun)}.bracket-match .bye{position:absolute;top:-.6rem;right:.4rem;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;background:#ffffff26;border-radius:999px;padding:.05rem .5rem}.bracket-match .bye.live{background:var(--sun);color:#3a2a00}.shot-map .shot{cursor:pointer;color:inherit;font-family:inherit;transition:transform var(--transition-fast) var(--ease-pop),border-color var(--transition-fast)}.shot-map .shot:hover,.shot-map .shot:focus-visible{transform:scale(1.12);border-color:var(--ink)}.replay-overlay{position:fixed;inset:0;z-index:40;background:#020c0ab8;display:grid;place-items:center;padding:1rem;backdrop-filter:blur(3px)}.replay-box{width:min(100%,52rem);display:flex;flex-direction:column;gap:.7rem}.replay-title{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;justify-content:center;font-size:1.15rem}.replay-stage{width:100%;border-radius:var(--radius);overflow:hidden;background:#05231a;line-height:0}.replay-stage canvas{width:100%;height:auto;display:block}.kit.kit-hoops .kit-shirt{background:repeating-linear-gradient(180deg,var(--kit-a) 0 .17rem,var(--kit-h) .17rem .32rem)}.side-card.kit-hoops:before{height:.9rem;background:repeating-linear-gradient(180deg,var(--kit-a) 0 .18rem,var(--kit-h) .18rem .36rem)}.bb{--u: min(calc(100vw / 1920), calc(100vh / 1080));--gap: calc(var(--u) * 40);--lw: max(2px, calc(var(--u) * 4));--face: calc(var(--u) * 64);--name: calc(var(--u) * 30);--score: calc(var(--u) * 42);--center: calc(var(--u) * 560);--col-max: calc(var(--u) * 500);--final-at: 64%;--final-h: calc(var(--u) * 200);--final-face: calc(var(--u) * 70);--final-name: calc(var(--u) * 32);--line: rgba(255, 255, 255, .32);--line-on: rgba(255, 255, 255, .88);--card-bg: #0d2c24;flex:1;min-height:0;display:flex;flex-direction:column;color:var(--ink);background:radial-gradient(55% 50% at 50% 42%,rgba(255,209,102,.13),transparent 70%),linear-gradient(180deg,#05190f,#031310 60%,#020c0b)}.bb[data-rounds="3"]{--center: calc(var(--u) * 540);--gap: calc(var(--u) * 36);--face: calc(var(--u) * 70);--name: calc(var(--u) * 34);--score: calc(var(--u) * 46)}.bb[data-rounds="4"]{--gap: calc(var(--u) * 26);--face: calc(var(--u) * 46);--name: calc(var(--u) * 26);--score: calc(var(--u) * 36);--center: calc(var(--u) * 450);--final-at: 66%;--final-h: calc(var(--u) * 176);--final-face: calc(var(--u) * 58);--final-name: calc(var(--u) * 28)}.bb[data-rounds="2"],.bb[data-rounds="1"]{--face: calc(var(--u) * 84);--name: calc(var(--u) * 40);--score: calc(var(--u) * 56);--center: calc(var(--u) * 640);--col-max: calc(var(--u) * 540);--final-at: 68%;--final-h: calc(var(--u) * 250);--final-face: calc(var(--u) * 92);--final-name: calc(var(--u) * 42)}.bb-head{flex:none;display:flex;align-items:center;gap:calc(var(--u) * 20);padding:calc(var(--u) * 18) calc(var(--u) * 32) calc(var(--u) * 4)}.bb-title{font-size:calc(var(--u) * 46);font-weight:900;white-space:nowrap}.bb-progress{font-size:max(13px,calc(var(--u) * 26));font-weight:900;white-space:nowrap;padding:.28em .9em;border-radius:999px;background:#ffffff24;border:max(2px,calc(var(--u) * 3)) solid rgba(255,255,255,.28)}.bb-spacer{flex:1}.bb-keys{font-size:calc(var(--u) * 22);font-weight:800;white-space:nowrap}.bb .icon-btn.bb-icon{flex:none;width:max(44px,calc(var(--u) * 68));height:max(44px,calc(var(--u) * 68));font-size:max(20px,calc(var(--u) * 32));border-width:max(2px,calc(var(--u) * 3))}.bb-wall{flex:1;min-height:0;display:grid;grid-template-columns:var(--center);justify-content:center;column-gap:var(--gap);padding:0 calc(var(--u) * 32) calc(var(--u) * 26)}.bb[data-rounds="2"] .bb-wall{grid-template-columns:minmax(0,var(--col-max)) var(--center) minmax(0,var(--col-max))}.bb[data-rounds="3"] .bb-wall{grid-template-columns:repeat(2,minmax(0,var(--col-max))) var(--center) repeat(2,minmax(0,var(--col-max)))}.bb[data-rounds="4"] .bb-wall{grid-template-columns:repeat(3,minmax(0,var(--col-max))) var(--center) repeat(3,minmax(0,var(--col-max)))}.bb-col{min-width:0;min-height:0;display:flex;flex-direction:column}.bb-col-label{flex:none;height:calc(var(--u) * 60);margin:0;display:flex;align-items:center;justify-content:center;text-align:center;font-size:calc(var(--u) * 24);line-height:1;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--sun)}.bb[data-rounds="4"] .bb-col-label{font-size:calc(var(--u) * 20);letter-spacing:.02em;white-space:nowrap}.bb-col-label.done:after{content:"✓";margin-left:.4em;color:var(--mint)}.bb-col-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.bb-slot{position:relative;flex:1 1 0;min-height:0;display:flex;align-items:center}.bb-slot>.bb-card{width:100%}.bb-center-top{position:absolute;left:0;right:0;top:0;bottom:calc(100% - var(--final-at) + var(--final-h) / 2);display:flex;align-items:center;justify-content:center;padding-bottom:calc(var(--u) * 32)}.bb-final-slot{position:absolute;left:0;right:0;top:calc(var(--final-at) - var(--final-h) / 2);height:var(--final-h)}.bb-final-slot .bb-card{--face: var(--final-face);--name: var(--final-name)}.bb-center-bottom{position:absolute;left:0;right:0;top:calc(var(--final-at) + var(--final-h) / 2);bottom:0;display:flex;align-items:center;justify-content:center}.bb-wing .bb-slot:after,.bb-wing .bb-slot.has-in:before,.bb-final-slot.has-wings:before,.bb-final-slot.has-wings:after{content:"";position:absolute;pointer-events:none;border:0 solid var(--line)}.bb-wing.left .bb-slot:after{right:calc(var(--gap) / -2);width:calc(var(--gap) / 2);border-right-width:var(--lw)}.bb-wing.right .bb-slot:after{left:calc(var(--gap) / -2);width:calc(var(--gap) / 2);border-left-width:var(--lw)}.bb-slot.pair-high:after{top:calc(50% - var(--lw) / 2);height:calc(50% + var(--lw) / 2);border-top-width:var(--lw)}.bb-slot.pair-low:after{top:0;height:calc(50% + var(--lw) / 2);border-bottom-width:var(--lw)}.bb-slot.to-final:after{top:calc(50% - var(--lw) / 2);height:calc(var(--final-at) - 50% + var(--lw));border-top-width:var(--lw)}.bb-wing .bb-slot.has-in:before,.bb-final-slot.has-wings:before,.bb-final-slot.has-wings:after{top:calc(50% - var(--lw) / 2);width:calc(var(--gap) / 2);border-top-width:var(--lw)}.bb-wing.left .bb-slot.has-in:before,.bb-final-slot.has-wings:before{left:calc(var(--gap) / -2)}.bb-wing.right .bb-slot.has-in:before,.bb-final-slot.has-wings:after{right:calc(var(--gap) / -2)}.bb-slot.out-done:after,.bb-slot.in-done:before,.bb-final-slot.in-left-done:before,.bb-final-slot.in-right-done:after{border-color:var(--line-on)}.bb-slot.out-path:after,.bb-slot.in-path:before,.bb-final-slot.in-left-path:before,.bb-final-slot.in-right-path:after{border-color:var(--sun);filter:drop-shadow(0 0 calc(var(--u) * 8) rgba(255,209,102,.8))}.bb-card{position:relative;display:flex;flex-direction:column;gap:calc(var(--u) * 6);padding:calc(var(--u) * 8);border-radius:calc(var(--u) * 22);background:var(--card-bg);border:max(2px,calc(var(--u) * 3)) solid rgba(255,255,255,.3);box-shadow:0 calc(var(--u) * 10) calc(var(--u) * 28) #00000073}.bb-card.live{border-color:var(--sun);box-shadow:0 0 0 calc(var(--u) * 6) #ffd1664d,0 calc(var(--u) * 10) calc(var(--u) * 28) #00000073;animation:bb-glow 1.6s ease-in-out infinite alternate}.bb-card.path{border-color:var(--sun)}.bb-card.bye{background:#0d2c24bf;border-style:dashed}.bb-card.fresh{animation:bb-pop .52s var(--ease-pop) both}.bb-tag{position:absolute;z-index:1;top:0;left:50%;transform:translate(-50%,-58%);padding:calc(var(--u) * 4) calc(var(--u) * 14);border-radius:999px;font-size:max(12px,calc(var(--u) * 18));font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#fff;color:#06241a}.bb-card.live .bb-tag,.bb-card.final .bb-tag{background:var(--sun);color:#3a2a00}.bb-card.fresh .bb-tag{background:var(--mint);color:#003d2b}.bb-side{min-width:0;display:flex;align-items:center;gap:calc(var(--u) * 12);padding:calc(var(--u) * 6) calc(var(--u) * 12) calc(var(--u) * 6) calc(var(--u) * 8);border-radius:calc(var(--u) * 14)}.bb-side.won{background:var(--mint);color:#00281c}.bb-side.champ{background:var(--sun);color:#3a2a00}.bb-side.lost{color:#ffffffb3}.bb-side.lost .bb-face{filter:grayscale(.9) brightness(.75)}.bb-side.tbd{color:#ffffffc7}.bb-who{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:calc(var(--u) * 3)}.bb-name{max-width:100%;font-size:var(--name);font-weight:900;line-height:1.08;overflow-wrap:break-word;hyphens:auto;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.bb-side.tbd .bb-name{font-size:calc(var(--name) * .82);font-weight:800}.bb[data-rounds="3"] .bb-wing .bb-side:not(.bb-bye-row),.bb[data-rounds="4"] .bb-wing .bb-side:not(.bb-bye-row){display:grid;grid-template-columns:var(--face) minmax(0,1fr) auto;grid-template-areas:"face tag score" "name name name";align-items:center;column-gap:calc(var(--u) * 12);row-gap:calc(var(--u) * 4);padding:calc(var(--u) * 6) calc(var(--u) * 12)}.bb[data-rounds="3"] .bb-wing .bb-face,.bb[data-rounds="4"] .bb-wing .bb-face{grid-area:face}.bb[data-rounds="3"] .bb-wing .bb-who,.bb[data-rounds="4"] .bb-wing .bb-who{display:contents}.bb[data-rounds="3"] .bb-wing .bb-name,.bb[data-rounds="4"] .bb-wing .bb-name{grid-area:name;display:block;white-space:nowrap;text-overflow:ellipsis}.bb[data-rounds="3"] .bb-wing .bb-bot,.bb[data-rounds="4"] .bb-wing .bb-bot{grid-area:tag;justify-self:start}.bb[data-rounds="3"] .bb-wing .bb-score,.bb[data-rounds="4"] .bb-wing .bb-score{grid-area:score}.bb-bot{font-size:max(12px,calc(var(--name) * .6));font-weight:900;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:.1em .55em;border-radius:999px;background:#ffffff2e}.bb-side.won .bb-bot,.bb-side.champ .bb-bot{background:#00000024}.bb-score{flex:none;min-width:1.1em;text-align:right;font-size:var(--score);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;color:var(--sun)}.bb-side.won .bb-score,.bb-side.champ .bb-score{color:inherit}.bb-bye-row{justify-content:center;text-align:center;min-height:calc(var(--face) + var(--u) * 12);font-size:calc(var(--name) * .8);font-weight:900;color:#fff;border:max(2px,calc(var(--u) * 3)) dashed rgba(255,255,255,.5)}.bb-face{position:relative;flex:none;width:var(--face);height:var(--face)}.bb-face .bb-portrait{display:block;width:100%;height:100%}.bb-face .bb-badge{position:absolute;right:-16%;bottom:-12%;width:52%;height:52%;filter:drop-shadow(0 2px 2px rgba(0,0,0,.5))}.bb-face.tbd{display:grid;place-items:center;border-radius:50%;border:max(2px,calc(var(--u) * 3)) dashed rgba(255,255,255,.55);font-size:calc(var(--face) * .5);font-weight:900}.bb-feature{width:100%;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u) * 12);text-align:center;padding:calc(var(--u) * 22) calc(var(--u) * 22) calc(var(--u) * 28);border-radius:calc(var(--u) * 30);background:linear-gradient(180deg,#1e3b2b,#0d2c24);border:max(3px,calc(var(--u) * 5)) solid var(--sun);box-shadow:0 0 calc(var(--u) * 60) #ffd16640,0 calc(var(--u) * 16) calc(var(--u) * 40) #00000080}.bb-kicker{font-size:max(13px,calc(var(--u) * 24));font-weight:900;letter-spacing:.22em;text-transform:uppercase;color:#3a2a00;background:var(--sun);padding:.25em 1em;border-radius:999px}.bb-next-round{font-size:calc(var(--u) * 38);font-weight:900;line-height:1.1}.bb[data-rounds="4"] .bb-next-pair{--contender-face: calc(var(--u) * 100)}.bb[data-rounds="4"] .bb-contender-name,.bb[data-rounds="4"] .btn.bb-play{font-size:calc(var(--u) * 34)}.bb-next-pair{--contender-face: calc(var(--u) * 124);position:relative;width:100%;display:flex;align-items:flex-start;justify-content:center;gap:calc(var(--u) * 16)}.bb-contender{--face: var(--contender-face);flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u) * 8)}.bb-contender-name{max-width:100%;font-size:calc(var(--u) * 40);font-weight:900;line-height:1.05;overflow-wrap:break-word;hyphens:auto}.bb-contender-team{max-width:100%;font-size:max(12px,calc(var(--u) * 21));font-weight:800;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-vs{position:absolute;left:50%;top:calc(var(--contender-face) / 2);transform:translate(-50%,-50%);font-size:calc(var(--u) * 46);font-weight:900;color:var(--sun)}.bb .btn.bb-play{font-size:calc(var(--u) * 40);padding:.6em 1.4em;margin-top:calc(var(--u) * 6)}.bb-champ{--face: calc(var(--u) * 170);background:linear-gradient(180deg,#4d3c0e,#1d2b18)}.bb-champ .bb-face{animation:bb-bob 1.4s ease-in-out infinite alternate}.bb-champ-name{max-width:100%;font-size:calc(var(--u) * 76);font-weight:900;line-height:1;color:var(--sun);overflow-wrap:break-word;text-shadow:0 calc(var(--u) * 4) 0 rgba(0,0,0,.4)}.bb-champ-line{font-size:calc(var(--u) * 28);font-weight:900}.bb-trophy{display:flex;flex-direction:column;align-items:center;gap:calc(var(--u) * 6);text-align:center}.bb-trophy-cup{font-size:calc(var(--u) * 92);line-height:1;opacity:.7;filter:grayscale(.5)}.bb-trophy.won .bb-trophy-cup{opacity:1;filter:drop-shadow(0 0 calc(var(--u) * 26) rgba(255,209,102,.9));animation:bb-bob 1.4s ease-in-out infinite alternate}.bb-trophy-cap{font-size:calc(var(--u) * 26);font-weight:900}.bb-trophy.won .bb-trophy-cap{color:var(--sun)}@keyframes bb-glow{to{box-shadow:0 0 0 calc(var(--u) * 10) #ffd1666b,0 calc(var(--u) * 10) calc(var(--u) * 28) #00000073}}@keyframes bb-pop{0%{transform:scale(.94)}}@keyframes bb-bob{to{transform:translateY(calc(var(--u) * -8)) scale(1.03)}}.bb.bb-is-stack{--u: clamp(.56px, calc(100vw / 680), .9px);--face: calc(var(--u) * 76);--name: max(16px, calc(var(--u) * 32));--score: calc(var(--u) * 46);overflow-x:hidden;overflow-y:auto}.bb-is-stack .bb-head{position:sticky;top:0;z-index:3;flex-wrap:wrap;gap:8px 12px;padding:12px 16px;background:#031310;box-shadow:0 6px 16px #00000073}.bb-is-stack .bb-title{font-size:max(20px,calc(var(--u) * 44))}.bb-is-stack .bb-keys{display:none}.bb-is-stack .bb-progress{order:5}.bb-stack{display:flex;flex-direction:column;gap:28px;padding:20px 16px 32px}.bb-round{display:flex;flex-direction:column;gap:16px}.bb-is-stack .bb-col-label{height:auto;justify-content:flex-start;font-size:max(15px,calc(var(--u) * 28))}.bb-round-list{display:flex;flex-direction:column;gap:22px}.bb-is-stack .bb-next-pair{--contender-face: calc(var(--u) * 130)}.bb-is-stack .bb-contender-name{font-size:max(18px,calc(var(--u) * 40))}.bb-is-stack .btn.bb-play{font-size:max(20px,calc(var(--u) * 40))}
