@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400..800&family=Cinzel:wght@500;700&family=Jost:wght@300;400;500;600&display=swap";.hub-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin:0 0 16px}.hub-hero__title{font-family:var(--font-display);font-weight:800;font-size:clamp(34px,6vw,72px);line-height:.98;letter-spacing:-.03em;color:var(--bento-encre);margin:0}.hub-live{justify-self:end;align-self:end;background:var(--bento-creme-card);border:2px solid var(--bento-ink-border);border-radius:var(--bento-radius-md);box-shadow:var(--bento-shadow-pop);padding:12px 16px;min-width:190px}.hub-live__row{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--bento-encre-faint)}.hub-live__dot{width:9px;height:9px;border-radius:999px;background:var(--bento-success);box-shadow:0 0 0 0 var(--bento-success);animation:livePing 1.8s ease-out infinite}@keyframes livePing{0%{box-shadow:0 0 #2fbf7180}70%{box-shadow:0 0 0 8px #2fbf7100}to{box-shadow:0 0 #2fbf7100}}.hub-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;grid-template-areas:"profile profile profile profile profile profile profile plateau  plateau  plateau   plateau   plateau" "streak  streak  streak  training training training training training friend    friend    friend    friend" "recent  recent  recent  recent  recent  event    event    event    community community community community" "shop    shop    shop    shop    shop    shop     shop     shop     shop      shop      shop      shop"}.hub-area-profile{grid-area:profile}.hub-area-plateau{grid-area:plateau}.hub-area-streak{grid-area:streak}.hub-area-training{grid-area:training}.hub-area-friend{grid-area:friend}.hub-area-recent{grid-area:recent}.hub-area-event{grid-area:event}.hub-area-community{grid-area:community}.hub-area-shop{grid-area:shop}@media(max-width:1080px)and (min-width:721px){.hub-bento{grid-template-columns:1fr 1fr;grid-template-areas:"profile  profile" "plateau  plateau" "streak   training" "friend   friend" "recent   recent" "event    community" "shop     shop"}}@media(max-width:720px){.hub-hero{grid-template-columns:1fr;align-items:start}.hub-live{justify-self:stretch}.hub-bento{grid-template-columns:1fr;grid-template-areas:"profile" "plateau" "streak" "training" "friend" "recent" "event" "community" "shop"}}@media(max-width:980px){.hub-hero{grid-template-columns:1fr;align-items:start}.hub-live{justify-self:stretch}}.tile{position:relative;display:flex;flex-direction:column;background:var(--bento-creme-card);color:var(--bento-encre);border:2px solid var(--bento-ink-border);border-radius:var(--bento-radius-lg);padding:20px;box-shadow:var(--bento-shadow-pop-lg);animation:tilePop .34s ease both;transition:transform .14s ease,box-shadow .14s ease}.tile:hover{transform:translateY(-2px);box-shadow:var(--bento-shadow-pop-xl)}.tile--ink{background:var(--bento-ink-card);color:#fff;border-color:var(--bento-ink-border)}.bento-cta{background:var(--bento-corail);color:#fff;border:2px solid var(--bento-ink-border);border-radius:var(--bento-radius-sm);padding:14px 24px;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;box-shadow:var(--bento-shadow-pop-lg)}.bento-cta:hover{transform:translateY(-2px);box-shadow:var(--bento-shadow-pop-xl)}.bento-cta:active{transform:translateY(2px);box-shadow:var(--bento-shadow-pop)}.bento-cta--hero{padding:18px 38px;font-size:22px;border-radius:14px}.hub-bento :focus-visible,.hub-hero :focus-visible,.home-shell :focus-visible,.home-shell .hub-cta:focus-visible{outline:2px solid var(--bento-encre);outline-offset:3px}.mastery-fill{background:linear-gradient(90deg,var(--bento-corail),var(--bento-lime))}.board-shine{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;overflow:hidden;pointer-events:none;z-index:2}.board-shine:after{content:"";position:absolute;top:-25%;bottom:-25%;left:-80%;width:40%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.42) 45%,rgba(255,92,57,.22) 60%,transparent 100%);transform:translate(0) skew(-14deg);animation:boardShine 8s ease-in-out infinite}@keyframes boardShine{0%,72%{transform:translate(0) skew(-14deg);opacity:0}77%{opacity:1}93%{transform:translate(500%) skew(-14deg);opacity:1}to{transform:translate(500%) skew(-14deg);opacity:0}}@keyframes tilePop{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.tile{animation:none;transition:none}.tile:hover{transform:none}.bento-cta{transition:none}.bento-cta:hover,.bento-cta:active{transform:none}.hub-live__dot{animation:none}.board-shine:after{animation:none;opacity:0}*[style*=pulse]{animation:none!important}}:root{--font-display: "Bricolage Grotesque", "Inter", system-ui, sans-serif;--font-body: "Jost", system-ui, sans-serif}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}body{font-family:Jost,system-ui,sans-serif;background:#fbf0e4;color:#1a1a1a;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#1a1a1a38;border-radius:8px}button{font-family:inherit}.piece-wrap.clickable:hover .selectable{transform:scale(1.04)}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.9}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes captureOut{0%{transform:scale(1) rotate(0);opacity:1}to{transform:scale(.32) rotate(-16deg);opacity:0}}@keyframes shockwave{0%{transform:scale(.4);opacity:.6}to{transform:scale(2.1);opacity:0}}@keyframes boardShake{0%,to{transform:translate(0)}25%{transform:translate(-2px,1px)}50%{transform:translate(2px,-1px)}75%{transform:translate(-1px,-1px)}}@keyframes decisiveFlash{0%{opacity:0}20%{opacity:.35}to{opacity:0}}@keyframes basculeBurst{0%{transform:scale(.55);opacity:.7}to{transform:scale(1.7);opacity:0}}@keyframes cubeRoll{0%{transform:rotate(-18deg) scale(.9)}60%{transform:rotate(6deg) scale(1.06)}to{transform:rotate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.piece-wrap.clickable:hover .selectable{transform:none}.decisive-flash{animation:none!important;opacity:0!important}}@keyframes turnFlash{0%{opacity:0}18%{opacity:1}42%{opacity:.25}62%{opacity:.85}to{opacity:0}}@keyframes botDot{0%,80%,to{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@keyframes coldHalo{0%,to{opacity:.25}50%{opacity:.6}}@keyframes flameFlicker{0%,to{transform:scale(1) rotate(-2deg);opacity:.9}50%{transform:scale(1.12) rotate(2deg);opacity:1}}@keyframes coinSpin{to{transform:rotateY(360deg)}}@keyframes coinPop{0%{transform:scale(.7) rotateY(0)}60%{transform:scale(1.12)}to{transform:scale(1)}}.hub-lift{transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.hub-lift:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0006;border-color:var(--accent)}.hub-cta{transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.hub-cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px #0007;filter:brightness(1.04)}.hub-cta:active{transform:translateY(0)}.hub-cta:focus-visible{outline:2px solid var(--bento-encre);outline-offset:3px}.hub-btn:focus-visible{outline:2px solid var(--bento-encre);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid var(--bento-encre);outline-offset:2px;border-radius:6px}@media(prefers-reduced-motion:reduce){.hub-lift,.hub-cta{transition:none}.hub-lift:hover,.hub-cta:hover,.hub-cta:active{transform:none}*[style*=flameFlicker],*[style*=rise]{animation:none!important}.bot-dot{animation:none!important;opacity:.85!important;transform:none!important}.cold-halo{animation:none!important;opacity:.4!important}}.game-screen{--board-frame-pad: 9px;height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding:6px clamp(10px,2.5vw,22px)}.game-inner{flex:1;min-height:0;width:100%;max-width:max(1600px,calc(100dvh + 520px));margin:0 auto;display:flex;flex-direction:column;position:relative}.game-topbar{position:absolute;top:0;right:0;width:clamp(320px,30vw,460px);z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.game-topbar>*{pointer-events:auto}.game-arena{flex:1;min-height:0;display:flex;gap:18px;align-items:stretch}.game-board-col{position:relative;flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.board-stack{position:relative;display:flex;flex-direction:column;align-items:center}.game-panel-col{flex:0 0 auto;width:clamp(320px,30vw,460px);min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:14px;padding-top:42px}.board-area{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:fit-content;max-width:100%;margin:0 auto}.player-strip{margin-left:56px;margin-right:56px}.board-row{display:grid;grid-template-columns:auto auto auto;grid-template-areas:"rl board rr";align-items:center;justify-content:center;gap:10px}.board-row>.board-stack{grid-area:board}.board-rotate-wrap{display:flex;flex-direction:column;align-items:center}.board-rotate-wrap--l{grid-area:rl}.board-rotate-wrap--r{grid-area:rr}.board-rotate{transition:transform .12s ease,box-shadow .12s ease}.board-rotate:not(:disabled):hover{transform:translateY(-1px)}.board-rotate:not(:disabled):active{transform:translateY(1px)}@media(prefers-reduced-motion:reduce){.board-rotate{transition:none}.board-rotate:hover,.board-rotate:active{transform:none}}@media(max-width:480px){.hide-narrow{display:none!important}}@media(max-width:979px){.game-screen{--board-frame-pad: 6px;height:auto;min-height:100dvh;overflow-x:clip;padding:8px 4px}.game-inner{flex:none}.game-topbar{position:static;pointer-events:auto;margin-bottom:8px}.game-arena{flex-direction:column;gap:12px}.game-board-col,.board-stack{width:100%}.game-panel-col{width:100%;overflow:visible;padding:0 4px}.board-area{width:100%}.player-strip{margin-left:0;margin-right:0}.board-row{grid-template-columns:1fr 1fr;grid-template-areas:"board board" "rl    rr";gap:8px}.board-rotate-wrap--l{justify-self:end}.board-rotate-wrap--r{justify-self:start}}
