.gi>svg{width:100%;height:100%;display:block;overflow:visible}.gi-tile>img{width:100%;height:100%;display:block}.gi-tile>.gi-pause,.gi-tile.gi-still>.gi-play,:is(a,button,label):hover .gi-tile.gi-still>.gi-pause{display:none}.gi-tile.gi-still>.gi-pause,:is(a,button,label):hover .gi-tile.gi-still>.gi-play{display:block}.gi-still *{animation-play-state:paused!important}.gi-settle *{animation-iteration-count:3!important;animation-fill-mode:forwards!important}:is(a,button,label):hover .gi-still *,.gi-still:hover *{animation-play-state:running!important}.gi-load-loading .hop{transform-box:fill-box;transform-origin:50% 100%;animation:.9s cubic-bezier(.45,0,.55,1) infinite gi-hop}.gi-load-loading .sh{transform-box:fill-box;transform-origin:50%;animation:.9s cubic-bezier(.45,0,.55,1) infinite gi-hop-shadow}.gi-load-splash .sl{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out 1.1s infinite gi-breathe}.gi-load-splash .ci{transform-box:fill-box;transform-origin:50%;animation:.55s cubic-bezier(.34,1.56,.64,1) both gi-grow}.gi-load-splash .dot{transform-box:fill-box;transform-origin:50%;animation:.45s cubic-bezier(.34,1.56,.64,1) .45s both gi-pop}.gi-load-splash .kd{transform-box:fill-box;transform-origin:50%;animation:.6s cubic-bezier(.22,1,.36,1) .25s both gi-rise}.gi-load-connecting .dt{transform-box:fill-box;transform-origin:50%;animation:gi-link 1.2s ease-in-out var(--d,0s) infinite both}.gi-load-matchmaking .rg{transform-box:fill-box;transform-origin:50%;animation:2s cubic-bezier(.2,.6,.4,1) infinite gi-search}.gi-load-matchmaking .r2{animation-delay:1s}.gi-load-matchmaking .orb{transform-box:fill-box;transform-origin:50%;animation:2.4s linear infinite gi-spin}.gi-load-page-load .t{transform-box:fill-box;transform-origin:50%;animation:gi-tile 1.4s ease-in-out var(--d,0s) infinite both}.gi-load-review-load .ev{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-eval}.gi-load-review-load .mg{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite gi-scan}.gi-menu-bot .an{animation:1.6s ease-in-out infinite gi-glint}.gi-menu-bot .ey{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite gi-blink}.gi-menu-bot .hd{transform-box:fill-box;transform-origin:50% 100%;animation:3.2s ease-in-out infinite gi-bob}.gi-menu-blitz .gl{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite gi-glow}.gi-menu-blitz .bt{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite gi-zap}.gi-menu-bullet .bl{transform-box:fill-box;transform-origin:50%;animation:1s ease-in-out infinite gi-dart}.gi-menu-bullet .ln{transform-box:fill-box;transform-origin:50%;animation:1s ease-in-out infinite gi-streak}.gi-menu-rapid .hd{transform-box:fill-box;transform-origin:50%;animation:3s linear infinite gi-spin}.gi-menu-classical .hgf{transform-box:fill-box;transform-origin:50%;animation:4s cubic-bezier(.65,0,.35,1) infinite gi-turn-over}.gi-menu-classical .tp{transform-box:fill-box;transform-origin:50% 100%;animation:4s linear infinite gi-drain}.gi-menu-classical .bt{transform-box:fill-box;transform-origin:50% 100%;animation:4s linear infinite gi-fill}.gi-menu-classical .fl{animation:4s linear infinite gi-stream}.gi-menu-history .ar{transform-box:fill-box;transform-origin:50%;animation:2.4s cubic-bezier(.65,0,.35,1) infinite gi-rewind}.gi-menu-invite .pl{transform-box:fill-box;transform-origin:50%;animation:2s ease-in-out infinite gi-glide}.gi-menu-invite .tr{animation:1s linear infinite gi-trail}.gi-menu-learn .cp{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite gi-bob}.gi-menu-learn .ts{transform-box:fill-box;transform-origin:0 0;animation:2.4s ease-in-out infinite gi-swing}.gi-menu-tournaments .md{transform-box:view-box;transform-origin:50px 37px;animation:2.4s ease-in-out infinite gi-medal}.gi-menu-tournaments .sp{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out .6s infinite both gi-twinkle}.gi-menu-leaderboard .tp{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-lift}.gi-menu-leaderboard .st{transform-box:view-box;transform-origin:50px 33px;animation:2.4s cubic-bezier(.65,0,.35,1) infinite gi-star-turn}.gi-menu-leaderboard .sp{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite both gi-twinkle}.gi-menu-leaderboard .s2{animation-delay:.6s}.gi-menu-watch .lv{animation:1.2s ease-in-out infinite gi-glint}.gi-menu-watch .rg{transform-box:fill-box;transform-origin:50%;animation:1.2s cubic-bezier(.2,.6,.4,1) infinite gi-broadcast}.gi-menu-watch .kn{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-nod}.gi-play-turn .r1,.gi-play-turn .r2{transform-box:fill-box;transform-origin:50%;animation:1.8s cubic-bezier(.2,.6,.4,1) infinite gi-ripple}.gi-play-turn .r2{animation-delay:.9s}.gi-play-turn .nod{transform-box:fill-box;transform-origin:50% 100%;animation:1.8s ease-in-out infinite gi-nod}.gi-play-thinking .dt{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite gi-dot}.gi-play-thinking .d2{animation-delay:.15s}.gi-play-thinking .d3{animation-delay:.3s}.gi-play-check .fl{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite gi-flash}.gi-play-check .sk{transform-box:fill-box;transform-origin:50% 100%;animation:1.2s ease-in-out infinite gi-tremble}.gi-play-capture .pw{transform-box:fill-box;transform-origin:50% 100%;animation:1.6s ease-in-out infinite gi-reel}.gi-play-capture .pt{transform-box:fill-box;transform-origin:50%;animation:1.6s cubic-bezier(.2,.7,.3,1) infinite gi-spark}.gi-play-castling .k{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-castle-king}.gi-play-castling .r{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-castle-rook}.gi-play-low-time .pu{transform-box:fill-box;transform-origin:50%;animation:.8s ease-in-out infinite gi-pulse}.gi-play-low-time .cl{transform-box:fill-box;transform-origin:50% 60%;animation:.8s ease-in-out infinite gi-jitter}.gi-play-low-time .hd{transform-box:fill-box;transform-origin:50%;animation:1.6s linear infinite gi-spin}.gi-play-promotion .pw{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-promote-pawn}.gi-play-promotion .qn{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-promote-queen}.gi-play-promotion .sp{transform-box:fill-box;transform-origin:50%;animation:gi-twinkle 1.6s ease-in-out var(--d,0s) infinite}.gi-review-rating-up .ln{stroke-dasharray:100;animation:.9s ease-out .2s both gi-draw}.gi-review-rating-up .ah{transform-box:fill-box;transform-origin:100% 0;animation:.4s cubic-bezier(.34,1.56,.64,1) .95s both gi-pop}.gi-review-rating-up .nm{transform-box:fill-box;transform-origin:50%;animation:.5s cubic-bezier(.22,1,.36,1) 1.1s both gi-rise}.gi-end-win .cr{transform-box:fill-box;transform-origin:50% 100%;animation:1.6s ease-in-out infinite gi-lift}.gi-end-win .sp{transform-box:fill-box;transform-origin:50%;animation:1.6s ease-in-out infinite gi-twinkle}.gi-end-win .s2{animation-delay:.5s}.gi-end-win .s3{animation-delay:1s}.gi-end-draw .l{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-lean-left}.gi-end-draw .r{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-lean-right}.gi-end-draw .hf{transform-box:fill-box;transform-origin:50%;animation:.5s cubic-bezier(.34,1.56,.64,1) both gi-pop,2.4s ease-in-out .5s infinite gi-bob}.gi-end-timeout .al{transform-box:fill-box;transform-origin:50% 60%;animation:1.4s ease-in-out infinite gi-ring}.gi-end-lose .cd{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite gi-drift}.gi-end-lose .dp{animation:gi-drop 1s ease-in var(--d,0s) infinite both}.gi-end-lose .sd{transform-box:fill-box;transform-origin:50% 100%;animation:3s ease-in-out infinite gi-sulk}.gi-end-resign .fg{transform-box:fill-box;transform-origin:0%;animation:1.6s ease-in-out infinite gi-wave}.gi-end-checkmate .kf{transform-box:fill-box;transform-origin:80% 100%;animation:3s ease-in infinite gi-topple}.gi-end-checkmate .bd{transform-box:fill-box;transform-origin:50%;animation:3s ease-out infinite gi-stamp}.gi-end-rematch .bd{transform-box:fill-box;transform-origin:50%;animation:2.4s cubic-bezier(.65,0,.35,1) infinite gi-quarter}.gi-moment{animation:1.6s ease-out both gi-moment}.gi-learn-puzzles .pz{transform-box:fill-box;transform-origin:50% 60%;animation:2.4s cubic-bezier(.4,0,.2,1) infinite gi-snap}.gi-learn-puzzles .sp,.gi-learn-daily .sp,.gi-learn-classics .sp{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite both gi-twinkle}.gi-learn-puzzles .s2,.gi-learn-daily .sp{animation-delay:.6s}.gi-learn-daily .kn{transform-box:fill-box;transform-origin:50% 100%;animation:1.2s cubic-bezier(.45,0,.55,1) infinite gi-hop}.gi-learn-analysis .ev{animation:2.4s ease-in-out infinite gi-eval-bar}.gi-learn-analysis .lens{animation:2.4s ease-in-out infinite gi-peer}.gi-learn-analysis .gl{animation:1.2s ease-in-out infinite gi-glint}.gi-learn-openings .pg{transform-box:fill-box;transform-origin:0%;opacity:0;animation:2.4s ease-in-out infinite gi-page}.gi-learn-tactics .ar{stroke-dasharray:100;animation:2.4s ease-in-out infinite gi-fork}.gi-learn-tactics .tg{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite gi-hit}.gi-learn-tactics .kn{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-lift}.gi-learn-middlegame .cr{transform-box:fill-box;transform-origin:50%;animation:2.4s cubic-bezier(.3,0,.2,1) infinite gi-lock}.gi-learn-endgames .pw{animation:2.4s ease-in-out infinite gi-step}.gi-learn-endgames .up{animation:1.2s ease-in-out infinite gi-glint}.gi-learn-strategy .nd{transform-origin:50px 52px;animation:2.4s ease-in-out infinite gi-needle}.gi-learn-classics .kg{transform-box:fill-box;transform-origin:50% 100%;animation:2.4s ease-in-out infinite gi-lift}@keyframes gi-moment{0%{opacity:0;transform:scale(.4)}14%{opacity:1;transform:scale(1.08)}22%,82%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.gi-burst .gi-spark{transform-box:fill-box;transform-origin:50%;animation:.65s cubic-bezier(.2,.7,.3,1) both gi-burst}@keyframes gi-hop{0%,to{transform:translateY(0)scale(1.05,.95)}14%,86%{transform:translateY(0)scale(1)}50%{transform:translateY(-20px)scale(.98,1.03)}}@keyframes gi-hop-shadow{0%,to{opacity:.2;transform:scaleX(1)}50%{opacity:.08;transform:scaleX(.55)}}@keyframes gi-grow{0%{transform:scale(0)}}@keyframes gi-pop{0%{transform:scale(0)}70%{transform:scale(1.25)}}@keyframes gi-rise{0%{opacity:0;transform:translateY(26px)}}@keyframes gi-breathe{50%{transform:scale(1.04)}}@keyframes gi-link{0%,70%,to{opacity:.3;transform:scale(.7)}35%{opacity:1;transform:scale(1.15)}}@keyframes gi-search{0%{opacity:.75;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@keyframes gi-spin{to{transform:rotate(360deg)}}@keyframes gi-tile{0%,60%,to{opacity:1;transform:scale(1)}30%{opacity:.45;transform:scale(.55)}}@keyframes gi-eval{0%,to{transform:scaleY(.5)}30%{transform:scaleY(.72)}60%{transform:scaleY(.3)}80%{transform:scaleY(.58)}}@keyframes gi-scan{25%{transform:translate(12px,8px)}50%{transform:translate(4px,16px)}75%{transform:translate(-6px,6px)}}@keyframes gi-glint{50%{opacity:.35}}@keyframes gi-blink{0%,44%,52%,to{transform:scaleY(1)}48%{transform:scaleY(.1)}}@keyframes gi-bob{50%{transform:translateY(-3px)}}@keyframes gi-glow{50%{transform:scale(1.1)}}@keyframes gi-zap{0%,30%,to{transform:scale(1)rotate(0)}10%{transform:scale(1.12)rotate(-6deg)}20%{transform:scale(.96)rotate(4deg)}}@keyframes gi-dart{50%{transform:translate(6px)}}@keyframes gi-streak{50%{opacity:.6;transform:translate(4px)scaleX(1.3)}}@keyframes gi-turn-over{0%,80%{transform:rotate(0)}to{transform:rotate(180deg)}}@keyframes gi-drain{80%,to{transform:scaleY(.05)}}@keyframes gi-fill{0%{transform:scaleY(.05)}80%,to{transform:scaleY(1)}}@keyframes gi-stream{80%,to{opacity:0}}@keyframes gi-rewind{0%,20%{transform:rotate(0)}80%,to{transform:rotate(-360deg)}}@keyframes gi-glide{50%{transform:translate(4px,-5px)rotate(-4deg)}}@keyframes gi-trail{to{stroke-dashoffset:-11px}}@keyframes gi-swing{25%{transform:rotate(10deg)}75%{transform:rotate(-8deg)}}@keyframes gi-ripple{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.42)}}@keyframes gi-nod{0%,50%,to{transform:rotate(0)}15%{transform:rotate(-8deg)}30%{transform:rotate(4deg)}}@keyframes gi-dot{0%,60%,to{opacity:.55;transform:translateY(0)}30%{opacity:1;transform:translateY(-7px)}}@keyframes gi-flash{50%{opacity:.8;transform:scale(.9)}}@keyframes gi-tremble{0%,60%,to{transform:rotate(0)}8%{transform:rotate(-9deg)}18%{transform:rotate(8deg)}28%{transform:rotate(-6deg)}38%{transform:rotate(4deg)}48%{transform:rotate(-2deg)}}@keyframes gi-reel{0%,30%,to{transform:rotate(0)scale(1)}8%{transform:rotate(-10deg)scale(1.05)}18%{transform:rotate(8deg)scale(.95)}}@keyframes gi-spark{0%{opacity:0;transform:translateY(14px)scale(.3)}12%{opacity:1}45%{opacity:1;transform:translateY(-4px)scale(1)}75%,to{opacity:0;transform:translateY(-10px)scale(0)}}@keyframes gi-burst{0%{opacity:1;transform:translateY(22px)scale(.9)}55%{opacity:1}to{opacity:0;transform:translateY(-14px)scale(0)}}@keyframes gi-castle-king{0%,15%{transform:translate(0)}45%,70%{transform:translate(50px)}to{transform:translate(0)}}@keyframes gi-castle-rook{0%,20%{transform:translate(0)}35%{transform:translate(-45px,-40px)}50%,70%{transform:translate(-89px)}85%{transform:translate(-45px,-40px)}to{transform:translate(0)}}@keyframes gi-pulse{50%{opacity:.7;transform:scale(1.12)}}@keyframes gi-jitter{25%{transform:rotate(-4deg)}75%{transform:rotate(4deg)}}@keyframes gi-promote-pawn{0%,30%,to{opacity:1;transform:translateY(0)}45%,92%{opacity:0;transform:translateY(-14px)}}@keyframes gi-promote-queen{0%,38%,96%,to{opacity:0;transform:scale(.6)}55%,88%{opacity:1;transform:scale(1)}}@keyframes gi-twinkle{0%,to{opacity:0;transform:scale(0)rotate(0)}50%{opacity:1;transform:scale(1)rotate(45deg)}}@keyframes gi-draw{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes gi-lift{40%,60%{transform:translateY(-5px)scale(1.04)}}@keyframes gi-lean-left{25%,50%{transform:rotate(7deg)}}@keyframes gi-lean-right{25%,50%{transform:rotate(-7deg)}}@keyframes gi-ring{0%,50%,to{transform:rotate(0)}5%,15%{transform:rotate(-10deg)}10%,20%{transform:rotate(10deg)}25%{transform:rotate(-7deg)}30%{transform:rotate(7deg)}35%{transform:rotate(-4deg)}40%{transform:rotate(4deg)}}@keyframes gi-drift{0%,to{transform:translate(-2px)}50%{transform:translate(2px)}}@keyframes gi-drop{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(12px)}}@keyframes gi-sulk{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes gi-wave{25%{transform:skewY(-4deg)scaleX(.94)}75%{transform:skewY(4deg)scaleX(.97)}}@keyframes gi-topple{0%,20%,to{transform:rotate(0)}42%{transform:rotate(80deg)}48%{transform:rotate(72deg)}54%,85%{transform:rotate(78deg)}}@keyframes gi-stamp{0%,40%,56%,to{transform:scale(1)}48%{transform:scale(1.3)}}@keyframes gi-quarter{0%,35%{transform:rotate(0)}50%,85%{transform:rotate(90deg)}to{transform:rotate(180deg)}}@keyframes gi-medal{0%,85%,to{transform:rotate(0)}15%{transform:rotate(12deg)}35%{transform:rotate(-9deg)}55%{transform:rotate(5deg)}72%{transform:rotate(-2deg)}}@keyframes gi-star-turn{0%,40%{transform:rotate(0)}75%,to{transform:rotate(72deg)}}@keyframes gi-broadcast{0%{opacity:0;transform:scale(1)}10%{opacity:1}to{opacity:0;transform:scale(2.4)}}@media (prefers-reduced-motion:reduce){.gi-tile>.gi-play{display:none!important}.gi-tile>.gi-pause{display:block!important}.gi *,.gi-burst *,.gi-moment{animation:none!important}.gi-burst{display:none}}@keyframes gi-snap{0%,55%,to{transform:translate(0)rotate(0)}18%{transform:translate(-3px,-9px)rotate(-12deg)}38%{transform:translate(0)rotate(0)scale(1.06,.94)}46%{transform:scale(.98,1.02)}}@keyframes gi-eval-bar{0%,to{stroke-dasharray:52 200}30%{stroke-dasharray:74 200}60%{stroke-dasharray:30 200}80%{stroke-dasharray:60 200}}@keyframes gi-peer{30%{transform:translate(-4px,3px)}65%{transform:translate(3px,-3px)}}@keyframes gi-page{0%,30%{opacity:0;transform:scaleX(1)}33%{opacity:1}62%{opacity:1;transform:scaleX(-1)}72%,to{opacity:0;transform:scaleX(-1)}}@keyframes gi-fork{0%,to{stroke-dashoffset:0}12%{stroke-dashoffset:100px}40%{stroke-dashoffset:0}}@keyframes gi-hit{0%,38%,to{transform:scale(1)}48%{transform:scale(1.3)}58%{transform:scale(1)}}@keyframes gi-lock{0%,60%,to{transform:scale(1)rotate(0)}20%{transform:scale(1.25)rotate(-45deg)}45%{transform:scale(.92)rotate(0)}}@keyframes gi-step{35%,60%{transform:translateY(-8px)}}@keyframes gi-needle{20%{transform:rotate(-35deg)}45%{transform:rotate(18deg)}65%{transform:rotate(-6deg)}80%{transform:rotate(2deg)}}
